- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
What is a recursive and recursively enumerable language?
Let us understand the concept of recursive language before learning about the recursively enumerable language in the theory of computation (TOC).
Recursive Language
A language L is recursive (decidable) if L is the set of strings accepted by some Turing Machine (TM) that halts on every input.
Example
When a Turing machine reaches a final state, it halts. We can also say that a Turing machine M halts when M reaches a state q and a current symbol ‘a’ to be scanned so that δ(q, a) is undefined.
There are TMs that never halt on some inputs in any one of these ways, So we make a distinction between the languages accepted by a TM that halts on all input strings and a TM that never halts on some input strings.
Recursive Enumerable Language
A language L is recursively enumerable if L is the set of strings accepted by some TM.
If L is a recursive enumerable language then −
If w ∈ L then a TM halts in a final state,
If w ∉ L then a TM halts in a non-final state or loops forever.
If L is a recursive language then −
If w ∈ L then a TM halts in a final state,
If w ∉ L then TM halts in a non-final state.
Recursive Languages are also recursive enumerable
Proof − If L is a recursive then there is TM which decides a member in language then −
M accepts x if x is in language L.
M rejects on x if x is not in language L.
According to the definition, M can recognize the strings in language that are accepted on those strings.
- Related Articles
- Show that the set of all languages that are not recursively enumerable on {a} is not countable?
- What is non-enumerable property in JavaScript and how can it be created?
- Explain recursive function in C language with program
- What is the importance of "enumerable" attribute in defining a property in JavaScript object?
- What is Recursive Descent Parser?
- What is a recursive method call in C#?
- What is a Computer language?
- What is a query language in DBMS?
- What is Programming Language?
- What is a malloc function in C language?
- What is a multidimensional array in C language?
- What is a simple assertion in C language?
- What is a context sensitive language in TOC?
- What is a string? Declare and initialize the strings in C language
- What is Java programming language?
