theiory 2.docx

Embed Size (px)

Citation preview

  • 7/28/2019 theiory 2.docx

    1/12

    [next ] [ prev ] [ prev-tail ] [tail] [up]

    4.3 Nondeterminism versus Determinism

    From Nondeterminism to Determinism

    Deterministic Turing Transducers with Two AuxiliaryWork Tapes

    Nondeterministic finite-state transducers can compute some functions that no deterministicfinite-state transducer can. Similarly, nondeterministic pushdown automata can accept somelanguages that no deterministic pushdown automaton can. However, every language that isaccepted by a nondeterministic finite-state automaton is also accepted by a deterministic finite-state automaton.

    From Nondeterminism to Determinism

    The following theorem relates nondeterminism to determinism in Turing transducers.

    Theorem 4.3.1 Every Turing transducer M 1 has a corresponding deterministic Turingtransducer M 2 such that

    a. M2 accepts the same inputs as M 1, that is, L(M 2) = L(M 1). b. M2 halts on exactly the same inputs as M 1.c. M2 has an output y on a given input only if M 1 can output y on such an input, that is,

    R(M 2) R(M 1).

    Proof Consider any m auxiliary-work-tape Turing transducer M 1 and any input x for M 1. Let1, . . . , r denote the transition rules of M 1. Let C i1 it denote the configuration that M 1 reaches

    on input x from its initial configuration, through a sequence of moves that uses the sequence of transition rules i1 it. If no such sequence of moves is possible, then C i1 it is assumed todenote an undefined configuration. The desired Turing transducer M 2 can be a deterministic m +1 auxiliary-work-tape Turing transducer of the following form.

    M2 on the given input x searches along the sequence C , C 1, C2, . . . , C r , C11, C12, . . . , C rr , C111 ,C112 , . . . , C rrr , . . . for an accepting configuration of M 1 on input x.

    M2 halts in an accepting configuration upon reaching an accepting configuration of M 1. M2 haltsin a rejecting configuration upon reaching a t, such that all the configurations C i1 it of M 1 areundefined. In an accepting computation, M 2 provides the output associated with the accepting

    configuration of M 1.

    A computation of M 2 on input x proceeds as follows. M 2 lists the strings = i 1 it in {1, . . . , r}*on its first auxiliary work tape, one at a time, in canonical order until either of the following twoconditions holds (see the flowchart in Figure 4.3.1 ).

    http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse4.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse4.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse4.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.html#tailtheory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.html#tailtheory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.html#tailtheory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#tailtheory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#tailtheory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#tailtheory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-four.html#theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-four.html#theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-four.html#theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk.html#Q2-50003-12http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk.html#Q2-50003-12http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q1-50003-13http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q1-50003-13http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q1-50003-14http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q1-50003-14http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q2-50003-13http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q2-50003-13http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13006r4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13006r4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13006r4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13006r4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q2-50003-13http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q1-50003-14http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q1-50003-13http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk.html#Q2-50003-12http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-four.html#theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#tailtheory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.html#tailtheory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse4.html
  • 7/28/2019 theiory 2.docx

    2/12

    Figure4.3.1

    "Simulation" of a nondeterministic Turing transducer M 1 by a deterministic Turingtransducer M 2.

    a. M2 determines a string = i 1 it in {1, . . . , r}*, such that C i1 it is an acceptingconfiguration of M 1 on input x. Such a configuration corresponds to the acceptingcomputation C C i1 Ci1 it of M 1 on input x. In such a case, M 2 has the same outputas the accepting computation of M 1, and it halts in an accepting configuration.

    M2 finds out whether a given C i1 it is a defined configuration by scanning over the string

    i1 it while trying to trace a sequence of moves C C i1 Ci1 it of M 1 on input x.During the tracing M 2 ignores the output of M 1.

    M2 uses its input head to trace the input head movements of M 1. M2 uses its finite-statecontrol to record the states of M 1. M2 uses m of its auxiliary work tapes to trace thechanges in the corresponding auxiliary work tapes of M 1.

    M2 determines the output of M 1 that corresponds to a given string i 1 it by scanning thestring and extracting the output associated with the corresponding sequence of transitionrules i1 it.

    b. M2 determines a t, such that C i1 it is an undefined configuration for all the strings = i 1 it in {1, . . . , r}*. In such a case, M 2 halts in a nonaccepting configuration.

    M2 determines that a given string i 1 it corresponds to an undefined configuration C i1 it by verifying that M 1 has no sequence of moves of the form C C i1 Ci1 it on input x.The verification is made by a tracing similar to the one described in (a).

  • 7/28/2019 theiory 2.docx

    3/12

    M2 uses a flag in its finite-state control for determining the existence of a t, such that C i1it are undefined configurations for all i 1 it in {1, . . . , r}*. M 2 sets the flag to 1

    whenever t is increased by 1. M 2 sets the flag to 0 whenever a string i 1 it is determined,such that C i1 it is a defined configuration. M 2 determines that the property holdswhenever t is to be increased on a flag that contains the value of 1.

    Example 4.3.1 Let M 1 be the nondeterministic, one auxiliary-work-tape Turing transducer given in Figure 4.3.2 (a).

    Figure4.3.2

    (a) A nondeterministic Turing transducer M. (b) A deterministic Turing transducer that computes the same function as M. (The asterisk * stands for the current symbolunder the corresponding head.)

    M1 computes the relation { (ww rev, w rev) | w is in {a, b} + }. On input abba the Turing transducer M1 has an accepting computation C C 1 C12 C124 C1246 C12465 C124657 that corresponds tothe sequence of transition rules 1 2 4 6 5 7 .

    Let M 2 be the deterministic Turing transducer in Figure 4.3.2 ( b). M 2 computes the same functionas M 1 and is similar to the Turing transducer in the proof of Theorem 4.3.1 . The main differenceis that here M 2 halts only in its accepting computations.

    On input abba the Turing transducer M 2 lists the strings in {1, . . . , 7}* on its first auxiliary work tape, one at a time, in canonical order. The Turing transducer M 2 checks whether each of thosestrings = i 1 it defines an accepting computation C C i1 Ci1 it of M 1.

    http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13010r4.3.2http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13010r4.3.2http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13010r4.3.2http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13010r4.3.2http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13010r4.3.2http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13010r4.3.2http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13010r4.3.2http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13010r4.3.2
  • 7/28/2019 theiory 2.docx

    4/12

    The Turing transducer M 2 detects that none of the strings " ", "1", . . . , "7", "1 1", . . . , "7 7", . . ., "1 1 1 1 1 1", . . . , "1 2 4 6 5 6", representing the sequences , 1, . . . , 7, 1 1, . . . , 7 7, . . ., 1 1 1 1 1 1 , . . . , 1 2 4 6 5 6 , respectively, corresponds to an accepting computation of M1 on input abba. Then M 2 determines that the string "1 2 4 6 5 7", which represents thesequence 1 2 4 6 5 7 , corresponds to an accepting computation of M 1 on input abba. With this

    determination, the Turing transducer M 2 writes the output of this computation, and halts in anaccepting configuration.

    M2 uses the component "Trace on " to check, by tracing on the given input, that there exists asequence of moves of M 1 of the form C C i1 Ci1 it , for the = i 1 it that is stored in thefirst auxiliary work tape of M 2. Such a sequence of moves corresponds to an acceptingcomputation of M 1 if and only if it = 7. The component "Trace on " is essentially M 1 modified to follow the sequence of transition rules dictated by the content of the first auxiliarywork tape of M 2.

    M2 uses the components "Find the end of ," "Determine the next ," "Find the blank before ,"

    "Find on the input tape," and "Erase the second auxiliary work tape" to prepare itself for theconsideration of the next from the canonically ordered set {1, . . . , 7}*.

    Deterministic Turing Transducers with Two AuxiliaryWork Tapes

    The following proposition implies that Theorem 4.3.1 also holds when M 2 is a deterministic, twoauxiliary-work-tape Turing transducer.

    Proposition 4.3.1 Each deterministic Turing transducer M 1 has an equivalent deterministicTuring transducer M 2 with two auxiliary work tapes.

    Proof Consider any deterministic, m auxiliary-work-tape Turing transducer M 1. On a giveninput x, the Turing transducer M 2 simulates the computation C 0 C1 C2 that M 1 has on inputx.

    M2 starts by recording the initial configuration C 0 = (q 0x$, q 0, . . . , q 0, ) of M 1 on input x. ThenM2 repeatedly replaces the recorded configuration C i of M 1, with the next configuration C i+1 of the simulated computation.

    M2 halts upon reaching a halting configuration of M 1. M2 halts in an accepting configuration if and only if it determines that M 1 does so.

    M2 records a configuration C i = (uqv, u 1qv1, . . . , u mqvm, w) of M 1 in the following manner. Thestate q is stored in the finite-state control of M 2. The input head location of M 1 is recorded by thelocation of the input head of M 2. The output w of M 1 is recorded on the output tape of M 2. Thetuple (u 1, v1, . . . , u m, vm) is stored as a string of the form #u 1#v1# #u m#vm# on an auxiliarywork tape of M 2, where # is assumed to be a new symbol. The tuple is stored on the firstauxiliary work tape of M 2 when i is even and on the second auxiliary work tape when i is odd.

    http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q2-50003-14http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q2-50003-14http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q2-50003-14http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q2-50003-14http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q2-50003-14
  • 7/28/2019 theiory 2.docx

    5/12

    The Turing transducer M 2 starts a computation by laying a string of (2m + 1) symbols # in thefirst auxiliary work tape. Such a string represents the situation in which u 1 = v1 = = u m = vm = .M2 determines the transition rule (q, a, b 1, b2, . . . , b m, p, d 0, c1, d1, c2, d2, . . . , c m, dm, ) to beused in a given move by getting q from the finite-state control, a from the input tape, and b 1, . . ., bm from the auxiliary work tape that records #u 1#v1# #u m#vm#.

    Example 4.3.2 Let M 1 be the Turing transducer whose transition diagram is given inFigure 4.3.3 (a).

    http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14004r4.3.3http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14004r4.3.3http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14004r4.3.3http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14004r4.3.3
  • 7/28/2019 theiory 2.docx

    6/12

    Figure4.3.3

    The segment of the Turing transducer in part (b) determines the transition rule used by the Turing transducer in part (a) from state q 1.

    The Turing transducer M 2 in the proof of Proposition 4.3.1 can use a segment D as inFigure 4.3.3 ( b) to determine the transition rule that M 1 uses on moving from state q 1.

    D assumes that M 1 is in configuration (uq 1v, u 1q1v1, . . . , u mq1vm, w), that M 2 is in state q 1, that#u1#v1# #u m#vm# is stored on the first auxiliary work tape of M 2, and that the head of the firstauxiliary work tape is placed on the first symbol of #u 1#v1# #u m#vm#.

    Since Turing transducers can compute relations that are not functions, it follows thatnondeterministic Turing transducers have more definition power than deterministic Turingtransducers. However, Theorem 4.3.1 implies that such is not the case for Turing machines. Infact, Theorem 4.3.1 together with Proposition 4.3.1 imply the following corollary.

    Corollary 4.3.1 A function is computable (or, respectively, partially computable) by a Turingtransducer if and only if it is computable (or, respectively, partially computable) by adeterministic, two auxiliary-work-tape Turing transducer.

    [next ] [ prev ] [ prev-tail ] [front ] [up]

    [next ] [ prev ] [ prev-tail ] [tail] [up]

    4.3 Nondeterminism versus Determinism

    From Nondeterminism to Determinism Deterministic Turing Transducers with Two AuxiliaryWork Tapes

    Nondeterministic finite-state transducers can compute some functions that no deterministicfinite-state transducer can. Similarly, nondeterministic pushdown automata can accept somelanguages that no deterministic pushdown automaton can. However, every language that isaccepted by a nondeterministic finite-state automaton is also accepted by a deterministic finite-state automaton.

    From Nondeterminism to Determinism

    The following theorem relates nondeterminism to determinism in Turing transducers.

    Theorem 4.3.1 Every Turing transducer M 1 has a corresponding deterministic Turingtransducer M 2 such that

    a. M2 accepts the same inputs as M 1, that is, L(M 2) = L(M 1). b. M2 halts on exactly the same inputs as M 1.c. M2 has an output y on a given input only if M 1 can output y on such an input, that is,

    R(M 2) R(M 1).

    http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14004r4.3.3http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14004r4.3.3http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14004r4.3.3http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse4.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse4.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse4.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.html#tailtheory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.html#tailtheory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.html#tailtheory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-four.html#theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-four.html#theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-four.html#theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse4.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse4.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse4.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.html#tailtheory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.html#tailtheory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.html#tailtheory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#tailtheory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#tailtheory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#tailtheory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-four.html#theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-four.html#theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-four.html#theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk.html#Q2-50003-12http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk.html#Q2-50003-12http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q1-50003-13http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q1-50003-13http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q1-50003-14http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q1-50003-14http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q2-50003-13http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q2-50003-13http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q2-50003-13http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q1-50003-14http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q1-50003-13http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk.html#Q2-50003-12http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-four.html#theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#tailtheory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.html#tailtheory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse4.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-four.html#theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.html#tailtheory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse4.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14004r4.3.3http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14001t4.3.1
  • 7/28/2019 theiory 2.docx

    7/12

    Proof Consider any m auxiliary-work-tape Turing transducer M 1 and any input x for M 1. Let1, . . . , r denote the transition rules of M 1. Let C i1 it denote the configuration that M 1 reaches

    on input x from its initial configuration, through a sequence of moves that uses the sequence of transition rules i1 it. If no such sequence of moves is possible, then C i1 it is assumed todenote an undefined configuration. The desired Turing transducer M 2 can be a deterministic m +

    1 auxiliary-work-tape Turing transducer of the following form.

    M2 on the given input x searches along the sequence C , C 1, C2, . . . , C r , C11, C12, . . . , C rr , C111 ,C112 , . . . , C rrr , . . . for an accepting configuration of M 1 on input x.

    M2 halts in an accepting configuration upon reaching an accepting configuration of M 1. M2 haltsin a rejecting configuration upon reaching a t, such that all the configurations C i1 it of M 1 areundefined. In an accepting computation, M 2 provides the output associated with the acceptingconfiguration of M 1.

    A computation of M 2 on input x proceeds as follows. M 2 lists the strings = i 1 it in {1, . . . , r}*

    on its first auxiliary work tape, one at a time, in canonical order until either of the following twoconditions holds (see the flowchart in Figure 4.3.1 ).

    Figure4.3.1

    "Simulation" of a nondeterministic Turing transducer M1

    by a deterministic Turingtransducer M 2.

    a. M2 determines a string = i 1 it in {1, . . . , r}*, such that C i1 it is an acceptingconfiguration of M 1 on input x. Such a configuration corresponds to the acceptingcomputation C C i1 Ci1 it of M 1 on input x. In such a case, M 2 has the same outputas the accepting computation of M 1, and it halts in an accepting configuration.

    http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13006r4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13006r4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13006r4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13006r4.3.1
  • 7/28/2019 theiory 2.docx

    8/12

    M2 finds out whether a given C i1 it is a defined configuration by scanning over the stringi1 it while trying to trace a sequence of moves C C i1 Ci1 it of M 1 on input x.During the tracing M 2 ignores the output of M 1.

    M2 uses its input head to trace the input head movements of M 1. M2 uses its finite-state

    control to record the states of M 1. M2 uses m of its auxiliary work tapes to trace thechanges in the corresponding auxiliary work tapes of M 1.

    M2 determines the output of M 1 that corresponds to a given string i 1 it by scanning thestring and extracting the output associated with the corresponding sequence of transitionrules i1 it.

    b. M2 determines a t, such that C i1 it is an undefined configuration for all the strings = i 1 it in {1, . . . , r}*. In such a case, M 2 halts in a nonaccepting configuration.

    M2 determines that a given string i 1 it corresponds to an undefined configuration C i1 it

    by verifying that M 1 has no sequence of moves of the form C C i1 Ci1 it on input x.The verification is made by a tracing similar to the one described in (a).

    M2 uses a flag in its finite-state control for determining the existence of a t, such that C i1it are undefined configurations for all i 1 it in {1, . . . , r}*. M 2 sets the flag to 1

    whenever t is increased by 1. M 2 sets the flag to 0 whenever a string i 1 it is determined,such that C i1 it is a defined configuration. M 2 determines that the property holdswhenever t is to be increased on a flag that contains the value of 1.

    Example 4.3.1 Let M 1 be the nondeterministic, one auxiliary-work-tape Turing transducer given in Figure 4.3.2 (a).

    http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13010r4.3.2http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13010r4.3.2http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13010r4.3.2http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13010r4.3.2
  • 7/28/2019 theiory 2.docx

    9/12

    Figure4.3.2

    (a) A nondeterministic Turing transducer M. (b) A deterministic Turing transducer that computes the same function as M. (The asterisk * stands for the current symbolunder the corresponding head.)

    M1 computes the relation { (ww rev, w rev) | w is in {a, b} + }. On input abba the Turing transducer M1 has an accepting computation C C 1 C12 C124 C1246 C12465 C124657 that corresponds tothe sequence of transition rules 1 2 4 6 5 7 .

    Let M 2 be the deterministic Turing transducer in Figure 4.3.2 ( b). M 2 computes the same functionas M 1 and is similar to the Turing transducer in the proof of Theorem 4.3.1 . The main differenceis that here M 2 halts only in its accepting computations.

    On input abba the Turing transducer M 2 lists the strings in {1, . . . , 7}* on its first auxiliary work tape, one at a time, in canonical order. The Turing transducer M 2 checks whether each of thosestrings = i 1 it defines an accepting computation C C i1 Ci1 it of M 1.

    The Turing transducer M 2 detects that none of the strings " ", "1", . . . , "7", "1 1", . . . , "7 7", . . ., "1 1 1 1 1 1", . . . , "1 2 4 6 5 6", representing the sequences , 1, . . . , 7, 1 1, . . . , 7 7, . . ., 1 1 1 1 1 1 , . . . , 1 2 4 6 5 6 , respectively, corresponds to an accepting computation of M1 on input abba. Then M 2 determines that the string "1 2 4 6 5 7", which represents thesequence 1 2 4 6 5 7 , corresponds to an accepting computation of M 1 on input abba. With thisdetermination, the Turing transducer M 2 writes the output of this computation, and halts in anaccepting configuration.

    M2 uses the component "Trace on " to check, by tracing on the given input, that there exists asequence of moves of M 1 of the form C C i1 Ci1 it , for the = i 1 it that is stored in thefirst auxiliary work tape of M 2. Such a sequence of moves corresponds to an acceptingcomputation of M 1 if and only if it = 7. The component "Trace on " is essentially M 1

    http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13010r4.3.2http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13010r4.3.2http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13010r4.3.2http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13010r4.3.2
  • 7/28/2019 theiory 2.docx

    10/12

    modified to follow the sequence of transition rules dictated by the content of the first auxiliarywork tape of M 2.

    M2 uses the components "Find the end of ," "Determine the next ," "Find the blank before ,""Find on the input tape," and "Erase the second auxiliary work tape" to prepare itself for the

    consideration of the next from the canonically ordered set {1, . . . , 7}*.

    Deterministic Turing Transducers with Two AuxiliaryWork Tapes

    The following proposition implies that Theorem 4.3.1 also holds when M 2 is a deterministic, twoauxiliary-work-tape Turing transducer.

    Proposition 4.3.1 Each deterministic Turing transducer M 1 has an equivalent deterministicTuring transducer M 2 with two auxiliary work tapes.

    Proof Consider any deterministic, m auxiliary-work-tape Turing transducer M 1. On a giveninput x, the Turing transducer M 2 simulates the computation C 0 C1 C2 that M 1 has on inputx.

    M2 starts by recording the initial configuration C 0 = (q 0x$, q 0, . . . , q 0, ) of M 1 on input x. ThenM2 repeatedly replaces the recorded configuration C i of M 1, with the next configuration C i+1 of the simulated computation.

    M2 halts upon reaching a halting configuration of M 1. M2 halts in an accepting configuration if and only if it determines that M 1 does so.

    M2 records a configuration C i = (uqv, u 1qv1, . . . , u mqvm, w) of M 1 in the following manner. Thestate q is stored in the finite-state control of M 2. The input head location of M 1 is recorded by thelocation of the input head of M 2. The output w of M 1 is recorded on the output tape of M 2. Thetuple (u 1, v1, . . . , u m, vm) is stored as a string of the form #u 1#v1# #u m#vm# on an auxiliarywork tape of M 2, where # is assumed to be a new symbol. The tuple is stored on the firstauxiliary work tape of M 2 when i is even and on the second auxiliary work tape when i is odd.

    The Turing transducer M 2 starts a computation by laying a string of (2m + 1) symbols # in thefirst auxiliary work tape. Such a string represents the situation in which u 1 = v1 = = u m = vm = .M2 determines the transition rule (q, a, b 1, b2, . . . , b m, p, d 0, c1, d1, c2, d2, . . . , c m, dm, ) to beused in a given move by getting q from the finite-state control, a from the input tape, and b 1, . . .

    , bm from the auxiliary work tape that records #u 1#v1# #u m#vm#.Example 4.3.2 Let M 1 be the Turing transducer whose transition diagram is given inFigure 4.3.3 (a).

    http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q2-50003-14http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q2-50003-14http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q2-50003-14http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14004r4.3.3http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14004r4.3.3http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14004r4.3.3http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14004r4.3.3http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q2-50003-14http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#Q2-50003-14
  • 7/28/2019 theiory 2.docx

    11/12

    Figure4.3.3

    The segment of the Turing transducer in part (b) determines the transition rule used by the Turing transducer in part (a) from state q 1.

    The Turing transducer M 2 in the proof of Proposition 4.3.1 can use a segment D as inFigure 4.3.3 ( b) to determine the transition rule that M 1 uses on moving from state q 1.

    D assumes that M 1 is in configuration (uq 1v, u 1q1v1, . . . , u mq1vm, w), that M 2 is in state q 1, that#u1#v1# #u m#vm# is stored on the first auxiliary work tape of M 2, and that the head of the firstauxiliary work tape is placed on the first symbol of #u 1#v1# #u m#vm#.

    http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14004r4.3.3http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14004r4.3.3http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14004r4.3.3http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14004r4.3.3http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14001t4.3.1
  • 7/28/2019 theiory 2.docx

    12/12

    Since Turing transducers can compute relations that are not functions, it follows thatnondeterministic Turing transducers have more definition power than deterministic Turingtransducers. However, Theorem 4.3.1 implies that such is not the case for Turing machines. Infact, Theorem 4.3.1 together with Proposition 4.3.1 imply the following corollary.

    Corollary 4.3.1 A function is computable (or, respectively, partially computable) by a Turingtransducer if and only if it is computable (or, respectively, partially computable) by adeterministic, two auxiliary-work-tape Turing transducer.

    [next ] [ prev ] [ prev-tail ] [front ] [up]

    http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse4.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse4.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse4.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.html#tailtheory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.html#tailtheory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.html#tailtheory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-four.html#theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-four.html#theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-four.html#theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-four.html#theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.html#tailtheory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse2.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse4.htmlhttp://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-14001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fourse3.html#50003-13001t4.3.1