Header Ads Widget

Language accepted by Turing machine

Language accepted by Turing machine

The Turing machine accepts all the language even though they are recursively enumerable. Recursive means repeating the same set of rules for any number of times and enumerable means a list of elements. The TM also accepts the computable functions, such as addition, multiplication, subtraction, division, power function, and many more.

Example:

Construct a Turing machine which accepts the language of aba over ∑ = {a, b}.

Solution:

We will assume that on input tape the string 'aba' is placed like this:

The tape head will read out the sequence up to the Δ characters. If the tape head is readout 'aba' string then TM will halt after reading Δ.

Now, we will see how this turing machine will work for aba. Initially, state is q0 and head points to a as:

Language accepted by Turing machine

The move will be δ(q0, a) = δ(q1, A, R) which means it will go to state q1, replaced a by A and head will move to right as:

Language accepted by Turing machine

The move will be δ(q1, b) = δ(q2, B, R) which means it will go to state q2, replaced b by B and head will move to right as:

Language accepted by Turing machine

The move will be δ(q2, a) = δ(q3, A, R) which means it will go to state q3, replaced a by A and head will move to right as:

Language accepted by Turing machine

The move δ(q3, Δ) = (q4, Δ, S) which means it will go to state q4 which is the HALT state and HALT state is always an accept state for any TM.

The same TM can be represented by Transition Table:

States

a

b

Δ

q0

(q1, A, R)

q1

(q2, B, R)

q2

(q3, A, R)

q3

(q4, Δ, S)

q4

The same TM can be represented by Transition Diagram:

Language accepted by Turing machine

Post a Comment

0 Comments