Download presentation
Presentation is loading. Please wait.
Published byTeresa Chestnut Modified over 9 years ago
1
1/25 An Infinite Automaton Characterization of Double Exponential Time Gennaro Parlato University of Illinois at Urbana-Champaign Università degli Studi di Salerno Salvatore La Torre (U. Salerno) P. Madhusudan (U. Illinois U-C)
2
2/25 Infinite automata Input alphabet Fix an alphabet States – all words * Initial and final states are defined by two regular languages INIT, FINAL transitions defined using rewriting: for each a there is a transducer T a transforming words to words u u’ iff T a transforms u to u’ a
3
3/25 Example: Infinite automaton for { a n b n c n | n>0} T a defines { (x n, x n+1 ) / n > 0} {($, x)} T b defines { (y m x n, y m+1 x n-1 ) / n > 0, m 0} T c defines { (y m x n, y m+1 x n-1 ) / n > 0, m 0} $ x xx xxx yxx yyx yyy yx yy y a a a b b b b b b c c c
4
4/25 Infinite automata using regular trasducers Transitions defined using regular trasducers A regular trasducer reads an input word and writes an output word using finitely many states A regular trasducer has edges of the form q –a/b q’ where a,b є {} Eg. {(a n,(bc) n )} is a regular relation q0q0 q1q1 a/b /c
5
5/25 Infinite automata & computational complexity A remarkable theorem (Morvan-Stirling ’01) Note: no ostensible bounds of time or space are placed on the machine! Theorem Infinite automaton with regular transducers precisely define context-sensitive languages (i.e. NLINSPACE)
6
6/25 Infinite automata with pushdown transducers Consider infinite automata with rewriting using pushdown automata Pushdown transducer transform words to words using a finite-state control and a work-stack Eg. {(a n, b n c n ) / n > 0 } can be effected (non regular relation) Infinite automata with pushdown transducer relations define r.e. languages (undecidable)
7
7/25 Infinite automata with restricted pushdown transducers Restricted pushdown transducers: Each transducer can switch between read the input tape and popping the stack only a bounded number of times Still powerful Eg. {(a n, b n c n ) / n > 0 } can still be effected Theorem Infinite automata with restricted pushdown transducers define precisely the class 2ETIME ( in 2 2 O(n) time ) Note: Again, no ostensible space or time limits States on a run can run for a very long time A logical characterization of 2ETIME by restricting the power of rewriting
8
8/25 Known results Rational graphs capture Context-Sensitive Languages (Morvan-Stirling, 2001) Synchronized rational graphs are sufficient to capture CSL’s (Rispal, 2002) Term-automatic graphs capture ETIME (Meyer, 2007) Prefix-recognizable graphs capture Context-Free Languages (Caucal, 1996) Survey on Infinite Automata (Thomas, 2001)
9
9/25 Outline of the talk Infinite automata 2ETIME Upper Bound 2ETIME Lower Bound Conclusions
10
10/25 Upper Bound Two steps: 1.(polynomial time) reduction of membership for infinite automata with restricted pushdown transducers to emptiness for bounded-phase multi-stack pushdown automata (k-MPA) 2.2Etime solution of k-MPA emptiness Improvement of the 2 |A| 2 O(poly(k)) solution given in [ LICS’07]
11
11/25 Bounded-phase multi-stack pushdown automata [La Torre, P.Madhusudan, Parlato, LICS’07] finite control A phase is a sub-run where only A unique stack can be popped all stacks can be pushed onto Finite set of states Q An initial state q 0 Q Final states F Q Actions: internal move push onto one stack pop from one stack phase-switch phase-switch RUN phase1 phase2 phase3 push2push1push2 pop1 pop2push1 pop1 push1 pop1
12
12/25 Simulating of the Inf. Aut. on w=a 1 a 2 … a m with an MPA We reduce membership of BPTIAs to emptiness of k-MPAs Reduction a1a1 u0u0 u1u1 umum u2u2 a2a2 u m-1 amam c1c1 c1c1 Ta1Ta1 c2c2 Ta2Ta2 cmcm TamTam c2c2 cmcm INITFINALRES original stackS IN S OUT control states RES Guess u 0 є L(INIT) and push it into S IN For every i=1,2, …, m: 1) simulate T a i reading from S IN and writing onto S OUT 2) Empty the original stack 3) Move S OUT into S IN Accept if u m є L(FINAL) can be accomplished with O(|w|) phases
13
13/25 Emptiness for k-MPAs Reduction to emptiness of tree automata The key idea is the use of Stack trees
14
14/25 a e b a a’ a’ b a b’ e b’ a’ a, a’ – push/pop 1 st st b, b’ – push/pop 2 nd st e – internal Nested edges become local Linear edges lost!! Stack Trees [LICS’07] (a’,1) (a,1) (e,1) (a’, 1) (b,1) (a,1) 1 2 3 4 5 6 7 8 (a’,3) 12 (b’,2) 11 (b’,2) (e,2) 9 10 8 4 1 2 3 5 6 7 9 11 12
15
15/25 Emptiness for k-MPAs Reduction to emptiness of tree automata The key idea is the use of stack-trees Two main parts: the set of stack-trees is regular linear order (Tree Aut. of size 2 O(k) ) Simulation of a k-MPA on the stack-trees Successor (Tree Walking Aut. of size 2 O(k) )
16
16/25 linear order (x<y) a) x and y in diff phases c) x and y of the same phase -- easy: phase(x) < phase(y) but in diff subtrees: -- hard: b) x and y of same phase and same tree –- easy x precedes y in the prefix traversal of the tree x p y where p x =ParentRoot(x) p y = ParentRoot (y) p x > p y x < y Intuition for case c) push push pop pop … p y … p x … root(x) … x … root(y) … y
17
17/25 a) x and y in diff phases c) x and y of the same phase -- easy: phase(x) < phase(y) but in diff subtrees: -- hard: b) x and y of same phase and same tree –- easy x precedes y in the prefix traversal of the tree … … zyzy zxzx ≤ #phases Tree automata for the linear order xy Inductive definition Base case : a) and b) Inductive step : c) Tree automaton for c) Simulate the TA for a) or b) to check z x, z y Check if z x reach x and z y reaches y with the same phase sequence (guessed in the root) State space 2 O(k) p x p y x p y where p x =ParentRoot(x) p y = ParentRoot (y)
18
18/25 Successor Motivation for case c) push push pop pop root x x y … p y … … p x a)if x and y in diff phases --easy EndPhase(x) and y=NextPhase(x) b) If x and y of same phase and same tree –- easy x is the predecessor of y in the prefix traversal of the tree c) x and y of the same phase but in diff subtrees: --hard z ParentRoot(x); z’ Predecessor(z) while phase T (RightChild(z’)) ≠ phase T (x) z’ Predecessor(z); y = RightChild(z’);}
19
19/25 Tree walking automaton for Successor Procedure Successor(x) if EndPhase(x) then return NextPhase(phase T (x)); elseif (y PrefixSucc(x) exists) then return(y); else { z ParentRoot(x); z’ Predecessor(z) while phase T (RightChild(z’)) ≠ phase T (x) z’ Predecessor(z); return RightChild(z’);} Procedure Predecessor(x) if BeginPhase(x) then return PrevPhase(phase T (x)); elseif (y PrefixPred(x) exists) then return(y); else { z ParentRoot(x); z’ Successor(z) while phase T (RightChild(z’)) ≠ phase T (x) z’ Successor(z); return RightChild(z’);} Look at Successor and Predecessor as a recursive program P At most k (=#phases) alive calls at any time Since k is fixed, P can be executed with finite memory O(k) The tree walking automata simulates P in its control Size of the tree walking automata = 2 O(k)
20
20/25 Outline of the talk Infinite automata 2ETIME Upper Bound 2ETIME Lower Bound Conclusions
21
21/25 Lower bound Direct simulation of Turing machines is unfeasible: Turing machines are usually two way and have read and write moves infinite automata accept a word w in “real-time”, i.e. in |w| steps double exponentially many steps of computation should be carried out by a single bounded-phase pushdown rewriting
22
22/25 Lower bound (reduction) Reduction from the membership problem for alternating machines working in 2 O(w) space to the membership problem for BPTAs a1a1 amam Guess a TM run on w a2a2 … Check all consecutive confs are correct Extract all the consecutive confs from the TM run
23
23/25 Checking the moves The sequence of moves: #u 1 #v 1 #u 2 #v 2... #u m #v m Checking if u i v i is similar to checking if c = c’ In each step transform every #u i #v i into two pairs of half size. Repeat until we get only pairs of length 1. (O(|w|) steps) For j=1,…,|w| For i=1,…,m Push all even symbols of u i /v i onto the stack Write all odd symbols of u i /v i on the output tape Copy the stack content on the output tape Check symbol equality #u 1 #v 1 #u 2 #v 2... #u m #v m #even(v m ) #even(u m )... #even(v 2 ) #even(u 2 ) #even(v 1 ) #even(u 1 ) #odd(v m ) #odd(u m )... #odd(v 2 ) #odd(u 2 ) #odd(v 1 ) #odd(u 1 ) output tape phases required log 2 |w| = |w|
24
24/25 Outline of the talk Infinite automata 2ETIME Upper Bound 2ETIME Lower Bound Conclusions
25
25/25 Conclusions Characterization of 2ETIME with infinite automata Alternate characterizations of complexity classes using rewriting theory Rewriting is classic (Thue, Post) but never applied to complexity theory Exact computational complexity of the emptiness problem for bounded-phase multi-stack pushdown automata
26
26/25 Conclusions Can we show alternate proofs of classic results using infinite automata? Eg. NL=co-NL NLINSPACE= co-NLINSPACE … Can we capture P or NP? Expressive power of deterministic infinite automata
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.