Language Accepted By Turing machine
🧠 What Does It Mean for a Turing Machine to Accept a Language?
A Turing Machine (TM) is like a computer that reads an input string (made up of symbols from an alphabet) and tries to decide whether that string belongs to a particular language.
🔹 Example Idea
Think of a language as a set of words — for example:
A Turing machine is built in such a way that it can recognize the words in .
⚙️ How the Turing Machine Works
-
The input string (like
aabb
) is written on the tape. -
The machine starts in its start state.
-
It repeatedly follows the transition function δ, which tells it:
-
what to write on the tape,
-
whether to move left or right,
-
and which new state to go to next.
-
-
The machine continues until it reaches either:
-
the accepting state → ✅ (the string is accepted), or
-
the rejecting state → ❌ (the string is rejected).
-
If the machine never halts, it means it is still “thinking” forever.
📘 Definition (in Simple Words)
A string is accepted by a Turing Machine if,
starting with on the tape, eventually halts in its accepting state.
The set of all such strings is called the language accepted by :
So —
👉 If halts and accepts , then .
👉 If halts and rejects , or loops forever, then .
💬 Intuitive Meaning
The Turing Machine is like a checker:
-
If the input fits the rule of the language, it accepts.
-
If not, it rejects (or may never stop trying).
🔄 Recursively Enumerable (RE) Languages
A language is called recursively enumerable (or Turing-recognizable) if some Turing Machine accepts exactly that language.
That means:
-
For every word in the language, the TM will halt and accept.
-
For every word not in the language, the TM may either reject or loop forever.
Formally:
🔹 Example
Let
There exists a Turing machine that:
-
Checks each
a
is matched with oneb
. -
If all match correctly, it halts in accept state.
-
Otherwise, it halts in reject state.
So, is recursively enumerable — because such a machine exists.
Recognizable vs. Decidable Languages
Kozen further distinguishes two classes:
-
Turing-Recognizable (Recursively Enumerable) Languages
A language is Turing-recognizable if there exists a Turing Machine such that
(The machine halts and accepts all strings in , but may loop forever on others.) -
Turing-Decidable (Recursive) Languages
A language is Turing-decidable if there exists a Turing Machine that always halts and satisfies:-
accepts all strings in , and
-
rejects all strings not in .
-
Thus:
✅ Decidable vs. Recursively Enumerable
Type of Language | What the TM Does |
---|---|
Decidable (Recursive) | Always halts — accepts or rejects every input. |
Recursively Enumerable (RE) | Halts and accepts words in the language; may loop forever on others. |
In short:
Every decidable language is recursively enumerable,
but not every recursively enumerable language is decidable.
🧩 Summary
-
A Turing Machine accepts a string if it halts in the accepting state.
-
The set of all accepted strings forms the language accepted by the TM.
-
A recursively enumerable language is one that can be recognized by some TM — meaning the machine halts for words in the language, but might loop forever otherwise.
Comments
Post a Comment