1 / 14

Deterministic Turing Machines

Deterministic Turing Machines. Constituents. …. …. Infinite tape Head Transition diagram. q 1. q 0. q f. Unique accept state. Also no arrows are coming out. Formal definition. A Deterministic Turing Machine (DTM) is a sextuple (Q, Σ, Γ, δ, q 0 , q f ) where:

chelsia
Download Presentation

Deterministic Turing Machines

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Deterministic Turing Machines

  2. Constituents … … • Infinite tape • Head • Transition diagram q1 q0 qf Unique accept state. Also no arrows are coming out.

  3. Formal definition A Deterministic Turing Machine (DTM) is a sextuple (Q, Σ, Γ, δ, q0, qf) where: • Q is a finite set of states • Σ is the input alphabet • Γ is the tape alphabet, Σ ⊆ Γ • There is a special blank symbol □ in Γ • q0 is the start state • qf is the final state • δ: Q x Γ → Q x Γ x {L,R,S}, where L stands for Left, R stands for Right and S stands for Stay.

  4. Formal definition (cont.) δ(q , a) = (q’ , b, L) means: “if you are in state q and the head in the tape points to symbol a then move to state q’, replace symbol a with symbol b in the tape and move the head one position to the left” Illustration: … … … … a b head head q‘ q‘ a→b,L a→b,L … … … … q q

  5. Determinism Determinism means that I have no choices! • The transition function δ sends pair (q,a) to at most one triple (q’, b, x) (in other words there is at most one arrow from state q reading symbol a –maybe there are no such arrows). • No ε-moves are allowed (I must read something in the tape in order to change state).

  6. Machine’s special status • Start: Be at initial state , the tape contains only the input and the head points to the first (leftmost symbol of the input) • Accept: Reach the accept state. The machine stops the computation and accepts (notice that part of the input might be unread). • Reject: Be in a state q (other than the accept state), read symbol a and find no outgoing arrows under symbol a. • Loop for ever: Enter a subset of states which repeat for ever (different than the “reject case”)

  7. Machine’s special status • Start: … … a b a a b head q1 a→b,R … q0

  8. Machine’s special status • Accept: … … b b a a b head … qf

  9. Machine’s special status • Reject: … … b b a a b head q’ a→b,R … … q

  10. Machine’s special status • Loop: … … b b a a b head … q b→b,S

  11. Recursive Languages • A language is recursive (or decidable, or computable) if there is a Turing Machine which: • Accepts for every string in the language • Rejects for every string not in the language

  12. Example • Find a DTM that computes the language L = {anbn : n ≥ 0}. High level program: • Repeat • Erase an a. • Pass along the rest of as. • Erase a b • Pass along the rest of bs. • Go to the beginning of the input. • Until either the whole input is erased (accept) or you find unmatched as or bs (reject).

  13. Example • Find a DTM that computes the language L = {anbn : n ≥ 0}. Answer: a → a , R x → x , R x → x, R b → b , R a → x, R b → x, R q0 q1 q2 □ → □ , R □ → □ , L □ → □ , R qf q3 a → a , L b → b , L x → x , L

  14. Testing Test the machine for several possible inputs to see if it works as it should. Test inputs: • ε (it should accept) • aaabbb (it should accept) • aaabb (it should reject) • aabbb (it should reject) • aabba (it should reject) (See file dtm_example.pptx).

More Related