1 / 25

An Infinite Automaton Characterization of Double Exponential Time

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). Infinite automata. a. Input alphabet 

nika
Download Presentation

An Infinite Automaton Characterization of Double Exponential Time

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. 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. Infinite automata a • 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 Ta transforming words to words uu’ iff Tatransforms u to u’

  3. a xxx b xx a a yxx b $ x b yx b yyx b  y c b yy c yyy c Example:Infinite automaton for { anbncn| n>0} • Ta defines { (xn, xn+1) / n > 0}  {($, x)} • Tb defines { (ym xn, ym+1 xn-1) / n > 0, m  0} • Tc defines { (ym xn, ym+1 xn-1) / n > 0, m  0}

  4. 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. {(an,(bc)n)} is a regular relation a/b q0 q1  /c

  5. 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. 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. {(an, bn cn) / n>0 } can be effected (non regular relation) • Infinite automata with pushdown transducer relations define r.e. languages (undecidable)

  7. 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. {(an, bn cn) / n>0 } can still be effected Theorem Infinite automata with restricted pushdown transducers define precisely the class 2ETIME ( in 22O(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. 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. Outline of the talk • Infinite automata • 2ETIME Upper Bound • 2ETIME Lower Bound • Conclusions

  10. Upper Bound • Two steps: • (polynomial time) reduction of membership for infinite automata with restricted pushdown transducers to emptiness for bounded-phase multi-stack pushdown automata (k-MPA) • 2Etime solution of k-MPA emptiness • Improvement of the 2|A| 2O(poly(k)) solution given in [LICS’07]

  11. Bounded-phase multi-stack pushdown automata[La Torre, P.Madhusudan, Parlato, LICS’07] • Finite set of states Q • An initial state q0Q • Final states F  Q • Actions: • internal move • push onto one stack • pop from one stack finite control phase-switch phase-switch RUN phase1 phase2 phase3 pop1 pop1 pop1 push1 push2 pop2 push1 push2 push1 A phase is a sub-run where only • A unique stack can be popped • all stacks can be pushed onto

  12. Reduction • We reduce membership of BPTIAs to emptiness of k-MPAs am a1 a2 u0 u1 u2 um-1 um c1 c2 cm Ta1 Ta2 Tam Simulating of the Inf. Aut. onw=a1a2 … am with an MPA Guess u0єL(INIT) and push it into SIN For every i=1,2, …, m: 1) simulate Tai reading from SIN and writing onto SOUT 2) Empty the original stack 3) Move SOUT into SIN Accept if umєL(FINAL) control states INIT c1 RES c2 RES cm RES FINAL SOUT SIN original stack can be accomplished withO(|w|) phases

  13. Emptiness for k-MPAs Reduction to emptiness of tree automata The key idea is the use of Stack trees

  14. a e b a a’ a’ b a b’ e b’ a’ a, a’ – push/pop 1st st b, b’ – push/pop 2nd st e – internal Nested edges become local Linear edges lost!! Stack Trees [LICS’07] (a,1) 1 (e,1) (a’, 1) 2 6 (b,1) 3 7 (b,1) 11 (a,1) (b’,2) (a,1) 8 (b’,2) 9 4 10 (a’,3) (a’,1) (e,2) 5 12 4 8 10 1 2 3 5 6 7 9 11 12

  15. 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 2O(k)) Simulation of a k-MPA on the stack-trees Successor (Tree Walking Aut. of size 2O(k))

  16. 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 px > py x < y Intuition for case c) push push pop pop … py … px … root(x) … x … root(y) … y x<y px > py where px =ParentRoot(x) py= ParentRoot (y)

  17. Tree automata for the linear order zx zy ≤ #phases … … 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<y px > py where px =ParentRoot(x) py= ParentRoot (y) Tree automaton for c) • Simulate the TA for a) or b) to check zx, zy • Check if zx reach x and zy reaches y with the same phase sequence (guessed in the root) • State space 2O(k) Inductive definition Base case : a) and b) Inductive step : c) px py x y

  18. Successor Motivation for case c) push push pop pop … py … … rootx x y px c) x and y of the same phase but in diff subtrees: --hard z  ParentRoot(x); z’  Predecessor(z) whilephaseT(RightChild(z’)) ≠ phaseT(x) z’  Predecessor(z); y =RightChild(z’);} 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

  19. Tree walking automaton for Successor • 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 = 2O(k) ProcedureSuccessor(x) if EndPhase(x) then return NextPhase(phaseT(x)); elseif (y  PrefixSucc(x) exists) then return(y); else { z  ParentRoot(x); z’  Predecessor(z) whilephaseT(RightChild(z’)) ≠ phaseT(x) z’  Predecessor(z); returnRightChild(z’);} ProcedurePredecessor(x) if BeginPhase(x) then return PrevPhase(phaseT(x)); elseif (y  PrefixPred(x) exists) then return(y); else { z  ParentRoot(x); z’  Successor(z) whilephaseT(RightChild(z’)) ≠ phaseT(x) z’  Successor(z); returnRightChild(z’);}

  20. Outline of the talk • Infinite automata • 2ETIME Upper Bound • 2ETIME Lower Bound • Conclusions

  21. Lower bound (reduction) • Reduction from • the membership problem for alternating machines working in 2O(w) space to • the membership problem for BPTAs Extract all the consecutive confs from the TM run Guess a TM run on w … a1 a2 am Check all consecutive confs are correct

  22. Checking the moves The sequence of moves: #u1#v1#u2#v2 ... #um#vm • Checking if uivi is similar to checking if c = c’ • In each step transform every #ui#vi 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 ui/vi onto the stack • Write all odd symbols of ui/vi on the output tape • Copy the stack content on the output tape • Check symbol equality #u1#v1#u2#v2 ... #um#vm #even(vm) #even(um) ... #even(v2) #even(u2) #even(v1) #even(u1) #odd(vm) #odd(um) ... #odd(v2) #odd(u2) #odd(v1) #odd(u1) phases required log 2|w| = |w| output tape

  23. Outline of the talk • Infinite automata • 2ETIME Upper Bound • 2ETIME Lower Bound • Conclusions

  24. 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

  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

More Related