fbpx
Wikipedia

Recursive language

In mathematics, logic and computer science, a formal language (a set of finite sequences of symbols taken from a fixed alphabet) is called recursive if it is a recursive subset of the set of all possible finite sequences over the alphabet of the language. Equivalently, a formal language is recursive if there exists a Turing machine that, when given a finite sequence of symbols as input, always halts and accepts it if it belongs to the language and halts and rejects it otherwise. In Theoretical computer science, such always-halting Turing machines are called total Turing machines or algorithms (Sipser 1997). Recursive languages are also called decidable.

The concept of decidability may be extended to other models of computation. For example, one may speak of languages decidable on a non-deterministic Turing machine. Therefore, whenever an ambiguity is possible, the synonym used for "recursive language" is Turing-decidable language, rather than simply decidable.

The class of all recursive languages is often called R, although this name is also used for the class RP.

This type of language was not defined in the Chomsky hierarchy of (Chomsky 1959). All recursive languages are also recursively enumerable. All regular, context-free and context-sensitive languages are recursive.

Definitions edit

There are two equivalent major definitions for the concept of a recursive language:

  1. A recursive formal language is a recursive subset in the set of all possible words over the alphabet of the language.
  2. A recursive language is a formal language for which there exists a Turing machine that, when presented with any finite input string, halts and accepts if the string is in the language, and halts and rejects otherwise. The Turing machine always halts: it is known as a decider and is said to decide the recursive language.

By the second definition, any decision problem can be shown to be decidable by exhibiting an algorithm for it that terminates on all inputs. An undecidable problem is a problem that is not decidable.

Examples edit

As noted above, every context-sensitive language is recursive. Thus, a simple example of a recursive language is the set L={abc, aabbcc, aaabbbccc, ...}; more formally, the set

 

is context-sensitive and therefore recursive.

Examples of decidable languages that are not context-sensitive are more difficult to describe. For one such example, some familiarity with mathematical logic is required: Presburger arithmetic is the first-order theory of the natural numbers with addition (but without multiplication). While the set of well-formed formulas in Presburger arithmetic is context-free, every deterministic Turing machine accepting the set of true statements in Presburger arithmetic has a worst-case runtime of at least  , for some constant c>0 (Fischer & Rabin 1974). Here, n denotes the length of the given formula. Since every context-sensitive language can be accepted by a linear bounded automaton, and such an automaton can be simulated by a deterministic Turing machine with worst-case running time at most   for some constant c[citation needed], the set of valid formulas in Presburger arithmetic is not context-sensitive. On positive side, it is known that there is a deterministic Turing machine running in time at most triply exponential in n that decides the set of true formulas in Presburger arithmetic (Oppen 1978). Thus, this is an example of a language that is decidable but not context-sensitive.

Closure properties edit

Recursive languages are closed under the following operations. That is, if L and P are two recursive languages, then the following languages are recursive as well:

  • The Kleene star  
  • The image φ(L) under an e-free homomorphism φ
  • The concatenation  
  • The union  
  • The intersection  
  • The complement of  
  • The set difference  

The last property follows from the fact that the set difference can be expressed in terms of intersection and complement.

See also edit

References edit

  • Michael Sipser (1997). "Decidability". Introduction to the Theory of Computation. PWS Publishing. pp. 151–170. ISBN 978-0-534-94728-6.
  • Chomsky, Noam (1959). "On certain formal properties of grammars". Information and Control. 2 (2): 137–167. doi:10.1016/S0019-9958(59)90362-6.
  • Fischer, Michael J.; Rabin, Michael O. (1974). "Super-Exponential Complexity of Presburger Arithmetic". Proceedings of the SIAM-AMS Symposium in Applied Mathematics. 7: 27–41.
  • Oppen, Derek C. (1978). "A 222pn Upper Bound on the Complexity of Presburger Arithmetic". J. Comput. Syst. Sci. 16 (3): 323–332. doi:10.1016/0022-0000(78)90021-1.

recursive, language, this, article, about, class, formal, languages, they, studied, mathematics, theoretical, computer, science, computer, languages, that, allow, function, call, itself, recursively, recursion, computer, science, this, article, includes, inlin. This article is about a class of formal languages as they are studied in mathematics and theoretical computer science For computer languages that allow a function to call itself recursively see Recursion computer science This article includes inline citations but they are not properly formatted Please improve this article by correcting them Parenthetical referencing has been deprecated convert to shortened footnotes June 2022 Learn how and when to remove this template message In mathematics logic and computer science a formal language a set of finite sequences of symbols taken from a fixed alphabet is called recursive if it is a recursive subset of the set of all possible finite sequences over the alphabet of the language Equivalently a formal language is recursive if there exists a Turing machine that when given a finite sequence of symbols as input always halts and accepts it if it belongs to the language and halts and rejects it otherwise In Theoretical computer science such always halting Turing machines are called total Turing machines or algorithms Sipser 1997 Recursive languages are also called decidable The concept of decidability may be extended to other models of computation For example one may speak of languages decidable on a non deterministic Turing machine Therefore whenever an ambiguity is possible the synonym used for recursive language is Turing decidable language rather than simply decidable The class of all recursive languages is often called R although this name is also used for the class RP This type of language was not defined in the Chomsky hierarchy of Chomsky 1959 All recursive languages are also recursively enumerable All regular context free and context sensitive languages are recursive Contents 1 Definitions 2 Examples 3 Closure properties 4 See also 5 ReferencesDefinitions editThere are two equivalent major definitions for the concept of a recursive language A recursive formal language is a recursive subset in the set of all possible words over the alphabet of the language A recursive language is a formal language for which there exists a Turing machine that when presented with any finite input string halts and accepts if the string is in the language and halts and rejects otherwise The Turing machine always halts it is known as a decider and is said to decide the recursive language By the second definition any decision problem can be shown to be decidable by exhibiting an algorithm for it that terminates on all inputs An undecidable problem is a problem that is not decidable Examples editAs noted above every context sensitive language is recursive Thus a simple example of a recursive language is the set L abc aabbcc aaabbbccc more formally the set L w a b c w a n b n c n for some n 1 displaystyle L w in a b c mid w a n b n c n mbox for some n geq 1 nbsp is context sensitive and therefore recursive Examples of decidable languages that are not context sensitive are more difficult to describe For one such example some familiarity with mathematical logic is required Presburger arithmetic is the first order theory of the natural numbers with addition but without multiplication While the set of well formed formulas in Presburger arithmetic is context free every deterministic Turing machine accepting the set of true statements in Presburger arithmetic has a worst case runtime of at least 2 2 c n displaystyle 2 2 cn nbsp for some constant c gt 0 Fischer amp Rabin 1974 Here n denotes the length of the given formula Since every context sensitive language can be accepted by a linear bounded automaton and such an automaton can be simulated by a deterministic Turing machine with worst case running time at most c n displaystyle c n nbsp for some constant c citation needed the set of valid formulas in Presburger arithmetic is not context sensitive On positive side it is known that there is a deterministic Turing machine running in time at most triply exponential in n that decides the set of true formulas in Presburger arithmetic Oppen 1978 Thus this is an example of a language that is decidable but not context sensitive Closure properties editRecursive languages are closed under the following operations That is if L and P are two recursive languages then the following languages are recursive as well The Kleene star L displaystyle L nbsp The image f L under an e free homomorphism f The concatenation L P displaystyle L circ P nbsp The union L P displaystyle L cup P nbsp The intersection L P displaystyle L cap P nbsp The complement of L displaystyle L nbsp The set difference L P displaystyle L P nbsp The last property follows from the fact that the set difference can be expressed in terms of intersection and complement See also editRecursively enumerable language Computable set RecursionReferences editMichael Sipser 1997 Decidability Introduction to the Theory of Computation PWS Publishing pp 151 170 ISBN 978 0 534 94728 6 Chomsky Noam 1959 On certain formal properties of grammars Information and Control 2 2 137 167 doi 10 1016 S0019 9958 59 90362 6 Fischer Michael J Rabin Michael O 1974 Super Exponential Complexity of Presburger Arithmetic Proceedings of the SIAM AMS Symposium in Applied Mathematics 7 27 41 Oppen Derek C 1978 A 222pn Upper Bound on the Complexity of Presburger Arithmetic J Comput Syst Sci 16 3 323 332 doi 10 1016 0022 0000 78 90021 1 Retrieved from https en wikipedia org w index php title Recursive language amp oldid 1170584274, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.