How to Construct a Turing Machine that will accepts the language L = {0i0j0k/ i < j < k}.
1 Answers
I take this to mean the language 0^i 0^j 0^k | i < j < k
. At least, I don't see any other obvious interpretations of it.
The shortest string in this language is obtained by taking i = 0
, j = 1
and k = 2
'; this yields the string 000
in the language.
Note also that all strings of more than three zeroes are also in the language since we can take i = 0
, j = 1
and k = n - 1
(for n >= 3
).
Our language is thus equal to 0^n | n >= 3
. This language is regular. A minimal DFA for this language is as follows:
Q s Q'
q0 0 q1
q1 0 q2
q2 0 q3
q3 0 q3
Here, q3
is the only accepting state and q0
is the initial state. This assumes the input alphabet consists only of 0
; if it consists of more than that, you will need a dead state and extra productions.
Translating from a DFA to a TM is left as an exercise.

- 27,682
- 3
- 38
- 73