Title: An Infinite Automaton Characterization of Double Exponential Time
1An 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)
-
2Infinite 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 Ta
transforming words to words - u u iff Ta transforms u to u
3Example Infinite automaton for
anbncn ngt0
- Ta defines (xn, xn1) / n gt 0 ? (, x)
- Tb defines (ym xn, ym1 xn-1) / n gt 0, m ?
0 - Tc defines (ym xn, ym1 xn-1) / n gt 0, m ?
0
4Infinite 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
5Infinite 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)
6Infinite 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 gt 0 can be effected
- (non regular relation)
- Infinite automata with pushdown transducer
relations define r.e. languages (undecidable)
7Infinite 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 gt 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
8Known results
- Rational graphs capture Context-Sensitive
Languages (Morvan-Stirling, 2001) - Synchronized rational graphs are sufficient to
capture CSLs (Rispal, 2002) - Term-automatic graphs capture ETIME (Meyer, 2007)
- Prefix-recognizable graphs capture Context-Free
Languages (Caucal, 1996) - Survey on Infinite Automata (Thomas, 2001)
9Outline of the talk
- Infinite automata
- 2ETIME Upper Bound
- 2ETIME Lower Bound
- Conclusions
10Upper 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 2A 2O(poly(k)) solution
given in LICS07
11Bounded-phase multi-stack pushdown automataLa
Torre, P.Madhusudan, Parlato, LICS07
- 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
push2
push1
push2
pop2
push1
push1
- A phase is a sub-run where only
- A unique stack can be popped
- all stacks can be pushed onto
12Reduction
- We reduce membership of BPTIAs to emptiness of
k-MPAs
am
a1
a2
u0
u1
um
u2
um-1
c1
c2
cm
Ta1
Ta2
Tam
Simulating of the Inf. Aut. on wa1a2 am with
an MPA
Guess u0 ? L(INIT) and push it into SIN For every
i1,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
c1
c2
cm
INIT
FINAL
RES
RES
RES
SOUT
original stack
SIN
can be accomplished with O(w) phases
13Emptiness for k-MPAs
- Reduction to emptiness of tree automata
- The key idea is the use of Stack trees
14Stack Trees LICS07
- 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!!
8
10
4
1 2 3 5 6 7
9 11 12
15Emptiness 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))
16linear order (xlty)
- a) x and y in diff phases c) x and y
of the same phase - -- easy phase(x) lt 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
xlty ? px gt py where px ParentRoot(x)
py ParentRoot (y)
17Tree automata for the linear order
a) x and y in diff phases c) x and y
of the same phase -- easy phase(x) lt
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
xlty ? px gt 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
18Successor
c) x and y of the same phase but in diff
subtrees --hard z ?
ParentRoot(x) z ?
Predecessor(z) while
phaseT(RightChild(z))
? phaseT(x) z ?
Predecessor(z) y RightChild(z)
- if x and y in diff phases
- --easy
- EndPhase(x) and
- yNextPhase(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
19Tree 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)
Procedure Successor(x) if EndPhase(x) then
return NextPhase(phaseT(x)) elseif (y ?
PrefixSucc(x) exists) then
return(y) else z ? ParentRoot(x)
z ? Predecessor(z) while
phaseT(RightChild(z))
? phaseT(x) z ?
Predecessor(z) return RightChild(z)
Procedure Predecessor(x) if BeginPhase(x) then
return PrevPhase(phaseT(x)) elseif (y ?
PrefixPred(x) exists) then
return(y) else z ? ParentRoot(x)
z ? Successor(z) while
phaseT(RightChild(z))
? phaseT(x) z ?
Successor(z) return RightChild(z)
20Outline of the talk
- Infinite automata
- 2ETIME Upper Bound
- 2ETIME Lower Bound
- Conclusions
21Lower 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
22Lower 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
am
a2
Check all consecutive confs are correct
23Checking the moves
- The sequence of moves u1v1 u2v2 ...
umvm - Checking if ui?vi is similar to checking if c
c - In each step transform every uivi into two
pairs of half size. Repeat until we get only
pairs of length 1. (O(w) steps)
- For j1,,w
- For i1,,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
u1v1 u2v2 ... umvm
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 2w w
output tape
24Outline of the talk
- Infinite automata
- 2ETIME Upper Bound
- 2ETIME Lower Bound
- Conclusions
25Conclusions
- 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
26Conclusions
- Can we show alternate proofs of classic results
using infinite automata? - Eg. NLco-NL
- NLINSPACE co-NLINSPACE
- Can we capture P or NP?
- Expressive power of deterministic infinite
automata