Lecture: EXPSPACE-Completeness of Regular Expressions with Exponentiation, Study notes of Computational Methods

A lecture note from cs221: computational complexity course by prof. Salil vadhan at harvard university. The note covers the topic of expspace-completeness of regular expressions with exponentiation (r.e.e.'s). The note explains the concept of r.e.e.'s, their relationship with expspace, and provides a proof of their expspace-completeness using theorem 1. The document also discusses the importance of exponentiation (↑) and star (⋆) operators in the proof.

Typology: Study notes

2010/2011

Uploaded on 10/28/2011

thecoral
thecoral 🇺🇸

4.5

(30)

395 documents

1 / 4

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
CS221: Computational Complexity Prof. Salil Vadhan
Lecture 15: EXPSPACE-Completeness
10/25 Scribe: Ruggiero Cavallo
Contents
1 Announcements 1
2 EXPSPACE-Completeness 1
1 Announcements
Pick up PS3.
The material from this lecture is not covered in Papadimitriou.
2 EXPSPACE-Completeness
Regular expressions with exponentiation (r.e.e.’s) over Σ, ,·,,?,
aΣ, L(a) = {a}
L() =
L(ε) = {ε}, where εis the empty string.
L(R1·R2) = {xy :xL(R1), y L(R2)}[concatenation]
L(R1R2) = L(R1)L(R2)
L(R?) = L(R)?={x1x2· · · xk:k0,i xiL(R)}
L(R) = L(R·R . . . R) (note: succinctness of is tied to high complexity of the problem)
REE ={R:L(R) = Σ?}
Theorem 1 REE is EXPSPACE-complete.
Proof:
We’ll prove the theorem in two parts. First, we’ll show that REE is in EXPSPACE, and then
that REE is EXPSPACE-hard.
REE EXPSPACE
1
pf3
pf4

Partial preview of the text

Download Lecture: EXPSPACE-Completeness of Regular Expressions with Exponentiation and more Study notes Computational Methods in PDF only on Docsity!

CS221: Computational Complexity Prof. Salil Vadhan

Lecture 15: EXPSPACE-Completeness

10/25 Scribe: Ruggiero Cavallo

Contents

1 Announcements 1

2 EXPSPACE-Completeness 1

1 Announcements

  • Pick up PS3.
  • The material from this lecture is not covered in Papadimitriou.

2 EXPSPACE-Completeness

Regular expressions with exponentiation (r.e.e.’s) over Σ, ∅, · , ∪, ?, ↑

  • a ∈ Σ, L(a) = {a}
  • L(∅) = ∅
  • L(ε) = {ε}, where ε is the empty string.
  • L(R 1 · R 2 ) = {xy : x ∈ L(R 1 ), y ∈ L(R 2 )} [concatenation]
  • L(R 1 ∪ R 2 ) = L(R 1 ) ∪ L(R 2 )
  • L(R?) = L(R)?^ = {x 1 x 2 · · · xk : k ≥ 0 , ∀i xi ∈ L(R)}
  • L(R ↑) = L(R · R... R) (note: succinctness of ↑ is tied to high complexity of the problem)

REE = {R : L(R) = Σ?}

Theorem 1 REE is EXPSPACE-complete.

Proof:

We’ll prove the theorem in two parts. First, we’ll show that REE is in EXPSPACE, and then that REE is EXPSPACE-hard.

  • REE ∈ EXPSPACE

Following is an EXPSPACE algorithm that decides REE. Through a series of conversions, we attain a TM that has a non-accepting state reachable from its initial state just in case the given regular expression doesn’t generate Σ?.

Given a regular expression with exponentiation R of size n:

  1. Convert R to a standard reg exp. (without exponentiation [↑]) of size 2O(n)^ (call it R′).
  2. Convert R′^ to an NFA (non-deterministic finite automaton) N of size 2O(n).
  3. Convert N to DFA M of size 2^2 O(n).
  4. Test whether M has a non-accepting state reachable from its initial state.

But, we don’t need doubly exponential space (2^2 O(n) ). Why not? In Step 4, reachability on a graph

of size 2^2 O(n) can be done in space O

log^2 22 O(n)^

= 2O(n)^ by Savitch’s theorem. Step 3 can be

viewed as a space 2O(n)^ reduction. Instead of explicitly writing down its output M of size 2^2 O(n) , whenever Step 4 needs to access part of M , we just rerun Step 3, using workspace 2O(n).

  • REE is EXPSPACE-hard.

Given L accepted by a space 2n k TM M , without loss of generality assume M has 1 tape.

Given input x, we want to construct a r.e.e. (regular expression with exponentiation) RM,x such that L(RM,x) = Σ?^ iff M doesn’t accept x. (Note: proving that it doesn’t accept x is OK, since EXPSPACE is closed under complement; we’re actually reducing L to REE.)

Σ ={tape symbols of M } ∪ {[q, x] : q is a state of M , x is a tape symbol} ∪ {#} (separator symbol)

Idea: A string y ∈ Σ?^ will represent a computation of M on input x by including a sequence of configurations of M separated by #, e.g.,

abba[q 3 , b]bba

︸ ︷︷ ︸

worktape: length exactly 2n k

(Note that we can pad the worktape with blank symbols to ensure the desired length.) From the above example, if the TM moves its head to the right and writes a, then we get:

#abbaa[q 4 , b]ba#

We’ll define RM,x such that

L(RM,x) =

Σ?^ \ y if y represents correct accepting computation of M on x Σ?^ otherwise

The intuition for the above is that incorrect computations can be captured by representing local inconsistencies. So, it accepts all but the correct computation. Once you’ve realized that this is what you want to do, the construction of RM,x is not too difficult.

Corollary 2 REE ∈/

≤ SPACE(

n≤ )

and since TIME(t) ⊆ SPACE(t), we also have REE ∈/

≤ TIME(

n≤ ).

2.1 Commentary

  • Actually, REE is complete for SPACE(2O(n)) under linear-time reductions.
  • EXPSPACE-complete problems are really, really hard, even for small input lengths. But to make this precise, we should take into account the TM representation size.

Theorem 3 There is a language L in SPACE(O(2n)) such that for every n, if M decides L on inputs of length n, then either M takes space ≥ 2 n^ or |M | ≥ 2 n.

(You can make a similar, slightly weaker, statement for REE. Either you need infeasible program size or infeasible space.)

Proof Sketch:

  • The number of functions f : { 0 , 1 }n^ → { 0 , 1 } = 2^2 n
  • The number of TMs of size < 2 n^ (and space < 2 n) < 22 n .

⇒ ∀M ∃f : { 0 , 1 }n^ → { 0 , 1 } that is not solved by any TM of size < 2 n^ and space < 2 n.

We can find such an f in SPACE(O(2n)). Just go over all functions in lexicographical order and see if there’s a TM for it. §