Space Complexity - PowerPoint PPT Presentation

1 / 42
About This Presentation
Title:

Space Complexity

Description:

Geography Game: 17. Generalized geography:(GG) Eg. Player 1: moves ... winning strategy for the generalized geography game played on graph G starting at node b. ... – PowerPoint PPT presentation

Number of Views:299
Avg rating:3.0/5.0
Slides: 43
Provided by: chun67
Category:

less

Transcript and Presenter's Notes

Title: Space Complexity


1
Space Complexity
2
  • Def
  • Let M be a deterministic Turing Machine that
    halts on all inputs.
  • Space Complexity of M is the function fN?N,
    where f(n) is the maximum number of tape cells
    that M scans on any input of length n.

Def Let f N?N be a function. SPACE(f(n))L L
is a language decided by an O(f(n)) space
DTM NSPACE(f(n))L L is a language decided by
an O(f(n)) space NTM
3
  • Eg.
  • SAT is NP-complete.
  • SAT can be solved in linear(O(m)) space.
  • M1On input lt?gt, where ? is a Boolean formula
  • For each truth assignment to the variables x1,xm
    of ?.
  • Evaluate ? on that truth assignment.
  • If ? ever evaluate to 1, ACCEPT if not, REJECT.

x1 x2 x3 xn
4
Let ALLNFAltAgt A is a NFA and L(A)?
  • Eg.
  • ALLNFA can be decided in nondeterministic linear
    space, but not known to be in NP or co-NP.
  • NOn input ltMgt where M is an NFA
  • Place a marker on the start state of the NFA.
  • Repeat 2q times, where q is the number of states
    of M.
  • Non-deterministically select an input symbol
  • and change the positions of the markers
    on Ms
  • states to simulate reading that symbol.
  • Accept if Stages 2 and 3 reveal some string that
    M rejects, that is, if at some point none of the
    markers lie on accept states of M. Otherwise,
    reject.

Why 2q ?
5
Savitchs Theorem(1970)
  • For any function fN?N, where f(n)?n,
  • NSPACE(f(n))?SPACE(f2(n)).
  • pf
  • N an non-deterministic TM deciding a language A
    in space f(n).
  • Goal Construct a det TM M deciding A in space
    f2(n).
  • Let ? be an input string to N.
  • t integer
  • c1,c2 configurations of N on ?.

6
  • CANYIELD(c1,c2,t) accept if starting from c1 N
    has a branch entering configuration c2 in t
    steps o/w rejects.
  • CANYIELDOn input c1,c2 and t
  • If t1, test whether c1c2 or c1 c2, then
    accept else reject.
  • If tgt1, then for each configuration cm of N on ?
    using space f(n).
  • Run CANYIELD(c1,cm, )
  • Run CANYIELD(cm,c2, )
  • If 3 4 both accept, then accept else reject.

7
  • caccept accept configuration.
  • cstart start configuration of N on ?.
  • Select a constant d so that N has no more than
    2df(n) configurations using f(n) tape space, n
    ? .
  • MOn input ?
  • output the result of CANYIELD(cstart, caccept,
    2df(n)).
  • CANYIELD is a recursive procedure
  • Recursive depthlog22df(n)O(f(n))
  • Each recursive call of CANYIELD use O(f(n))
    space.
  • Thus, it uses O(f2(n)) space.

8
  • PSPACE is the class of languages (or problems)
    that are decidable in polynomial space on a det.
    TM.
  • PSPACE SPACE(nk).
  • Thm
  • P?NP ? PSPACENPSPACE ?EXPTIME TIME( )
  • Def (PSPACE completeness)
  • A language (or problem) B is PSPACE-complete if
    it satisfies 2 conditions
  • B is in PSPACE, and
  • Every A in PSPACE is poly-time reducible to B.

9
universal quantifier,
existential quantifier,
? quantified Boolean formula fully
quantified Boolean formula
10
  • TQBF given a fully quantified Boolean formula,
    is it true?
  • Thm TQBF is PSPACE-complete.
  • pf
  • TQBF is in PSPACE
  • TOn input ? a fully quantified Boolean
    formula
  • 1) If ? has no quantifier, then it is an
    expression with only constants, so evaluate ? and
    accept if it is true otherwise reject.

11
  • If ? ?x?, recursively call T on ?, first with
    x0, and then x1. If either result is accept,
    then accept o/w reject.
  • If ? ?x?, recursively call T on ? with x0, and
    x1. If both results are accept, then accept o/w
    reject.
  • TQBF is PSPACE-hard
  • Let A be a language decided by a TM M in space nk
    for some constant k.
  • Show A?pTQBF.

12
  • M accepts ? iff ? is true.
  • c1,c2 configurations, t integer
  • Construct a formula ? c1,c2,t
  • ? ?Cstart,Caccept,h, h2df(n).
  • ? c1,c2,t?m1,?(c3,c4)?(c1,m1),(m1,c2) ?c3,c4,
  • Configuration size O(f(n))
  • Recursion depth lg2df(n)O(f(n))
  • Formula size O(f2(n))
  • ?c1,c2,t?m, ?c1,m, ? ?m,c2,
  • What is the formula size?

f
?
?
  • x ?y, z... ?
  • x(xy)?(xz)?...

13
Winning Strategies for games
  • ? ?x1 ?x2 ?x3Qxk?
  • Q represents either a ? or an ? quantifier.
  • Two players player A player E.
  • Take turns selecting the values of x1,, xk.
  • Player A selects values for the variables that
    are bound to ?.
  • Player E selects values for the variables that
    are bound to ?.
  • Player E wins, if ? is TRUE.
  • Player A wins, if ? is FALSE.

14
Eg.
  • Let ?1 ?x1 ?x2 ?x3(x1? x2) ? (x2 ? x3) ? (x2?
    x3)
  • Player E has a winning strategy.
  • Let ?2 ?x1 ?x2 ?x3(x1? x2) ? (x2 ? x3) ? (x2?
    x3)
  • Player A has a winning strategy.

15
  • FORMULA-GAMElt?gt player E has a winning
    strategy in the formula game associated with ?.
  • Thm FORMULA-GAME is PSPACE-complete.
  • pf
  • ??TQBF exactly when ??FORMULA-GAME.

16
Geography Game
17
Generalized geography(GG)
  • Eg.
  • Player 1 moves first.
  • Player 2 moves second.
  • Player 1 has a winning strategy
  • Starts at node 1,
  • Player 1 choose 3
  • Player 2 choose 5
  • Player 1 choose 6
  • Player 2 cannot move anywhere
  • Thus, player 1 wins.

18
  • GGltG,bgt player 1 has a winning strategy for
    the generalized geography game played on graph G
    starting at node b.
  • Thm GG is PSPACE-complete.
  • Pf
  • MOn input ltG,bgt, G directed graph b a node
    of G.
  • 0. REJECT if b has no outgoing edge.
  • 1. Remove node b and all arrows touching it to
    get a new graph G1.
  • 2. For each of the nodes b1,b2,,bk that b
    originally pointed at, recursively call M on
    ltG,bigt.
  • 3. If all of these accept, player 2 has a winning
    strategy in the original game, so REJECT. O/w
    player 2 doesnt have a winning strategy, so
    player 1 has, thus ACCEPT.

19
  • The only space required is for storing the
    recursion stack.
  • The level of recursion can be at most m, which is
    the number of node in G.
  • Each level uses poly. Space, thus in total M uses
    poly. space.

20
  • Next need to show GG is PSPACE-hard
  • FORMULA-GAME?pGG.
  • ? ?x1 ?x2 ?x3Qxk?
  • ?p
  • ltG,bgt
  • Player 1 in GG player E in formula game.
  • Player 2 in GG player A in formula game.

In conjunctive normal form.
21
? ?x1 ?x2 Qxk(x1? x2? x3) ? (x2? x3? ) ??
()
For simplicity, let Q?
22
  • 1)
  • If ? is FALSE, player 2 may win by selecting the
    unsatisfied clause.
  • Then any literal that player 1 may pick is FALSE
    and is connected to the side the diamond that
    hasnt been played.
  • Thus player 2 may choose the node in the diamond,
    then player 1 cannot move and lose.

23
  • 2)
  • If ? is TRUE, any clause that player 2 picks
    contains a TRUE literal.
  • Player 1 choose that TRUE literal.
  • ?it is true, ? it is connected to the side of the
    diamond that has been chosen.
  • So, player 2 cannot move and lose.

24
  • The class of L and NL
  • LSPACE(log n)
  • NLNSPACE(log n)
  • Eg.
  • PATHltG,s,tgt G is a directed graph that has a
    directed path from s to t.
  • PATH Given a directed graph G and two vertices s
    and t, is there a directed path from s to t?

25
  • Def If M is a TM

read only input tape working tape
A configuration of M on ? is a setting of the
state, work tape, and the position of the tape
heads.
26
  • If M runs in f(n) space on ?, ?n, then the
    number of configurations of M on ? is
  • gf(n)f(n) c n ? 2O(f(n))
  • c state number.
  • g number of tape symbol

Possible work tape.
Head position of input head.
State position.
Possible state.

f(n)
27
  • Savitchs theorem is true for f(n)?lgn
  • note that the definition of configurations is
    different for small space case. But the proof is
    the same.

28
NL-completeness NL?L
  • Def (log space reducibility)
  • A log space transducer is a TM with (1) a
    readonly input tape (2) a write-only output
    tape (3) a read/write work tape.
  • A log space transducer M computes a function
    f???, where f(n) is the string remaining on
    the output tape after M halts when it starts with
    ? on input tape. f is called log space computable
    function.
  • A?LB, if A is mapping reducible to B by using a
    log space computable function.

May contain O(logn) symbols.
29
  • Def A language B is NL-complete if
  • B?NL and
  • Every A in NL is log space reducible to B.
  • Thm If A ?LB and B ?L then A?L.
  • Cor If any NL-complete language is in L then
    LNL.

30
Thm PATH is NL-complete.
  • Pf
  • It has been shown in class that PATH?NL.
  • Need to show that for any A?NL, A?LPATH.
  • Let M be a NTM that decides A in O(log n) space.
    Given an input ?, construct a graph G and 2
    vertices s and t in log space, where G has a
    directed path from s to t iff M accepts ?.
  • V(G) configurations of M on ?.
  • (c1,c2)?E(G) if c1 c2.
  • s start configuration, t accept configuration.

31
  • Need to show that reduction operates in log
    space. I.e. need to describe Gs vertices and
    edges in log space.
  • Each configuration needs c logn space, for some
    constant c.
  • Try all c logn bit string and test with M on ? to
    see if it is a legal configuration, if yes, put
    it into vertex set.
  • For any c1, c2, test if c1 c2 with M on ?.

Takes O(log n) space.
32
  • Cor NL? P.
  • PATH ?P ? NL?P (?)
  • co-NL B B is in NL
  • B x x ?B
  • Thm NL co-NL.

33
Thm NL co-NL.
  • Robert Szelepcsenyi, The method of forcing for
    nondeterminitic automata, Bull of the EATCS, 33,
    p.96-100, 1987.
  • N. Immerman, Nondeterministic space is closed
    under complementation, SIAM J. on computing 17,
    p.935-938, 1988 .

Gödel award.
34
Thm NL co-NL.
  • pf
  • PATH is NL-complete ? PATH ? co-NL.
  • If ltG,s,tgt ?PATH, then there is no directed path
    in G from s to t.
  • Every A ?co-NL has A?LPATH.
  • The rest shows PATH ?NL.

35
  • MOn input G, s, t
  • c01 / counter
    /
  • For i0 to m-1 / mof vertex /
  • ci10
  • d0
  • For each node v in G
  • For each node u in G
  • Non-det. Either skip or perform the
    following steps
  • Non-det. Follow a path of length i
    from s, and if
  • non of the nodes met are u,
    reject.
  • Increase d.
  • If (u,v) ?E(G), then increase ci1
    and goto 6
  • with next v.
  • 11. If d?ci, then reject.

36
  • 12. For each node u in G
  • 13. Non-det., either skip or perform these steps
  • 14. nondeterminitically follow a path of
    length i from s
  • and if none of the nodes met are u,
    reject.
  • 15. If ut, then reject.
  • 16. Increase d.
  • 17. If d?cm, then reject, otherwise accept.
  • The algorithm needs to store ci, d, i, j and a
    pointer to the head of a path . Thus, it runs in
    log space.

Aiu u is reachable from s within i
steps. CiAi, s Ai?Ai1.
37
Nondeterminitic Space is Closed under Complement
  • NSPACE co-NSPACE.
  • L?NSPACE ? L?co-NSPACE.
  • Robert Szelepcsenyi The method of forcing for
    nondeterministic automaya, Bull of the EATCS,
    33, p. 96-100, 1987.
  • N. Immerman Nondeterministic space in closed
    under complementation, SIAM J. on computing, 17,
    p. 935-938, 1988.

38
  • M a nondeterminitic S(n)-bounded-space TM.
  • Each configuration of M can be described in
    O(S(n)).
  • c0 Initial configuration of M.
  • RchM,x(t)
  • The number of configurations reachable by
    computation on input x in at most t steps
    starting at c0.

39
  • M0 Input x, n, t, u
  • accept if u is reachable in t1
    steps.
  • m0
  • for each configuration v of M do
  • non-det simulate M on x during at
    most t steps, checking if v is reached.
  • if so, then
  • mm1
  • if M on input x goes from v to u
    then accept.
  • if mn then reject
  • else abort by halting in a nonfinal state.

40
  • M1 Input x
  • n1 t0
  • for t from 1 to t(x) do
  • m0
  • for each configuration u do
  • if u is reachable from c0 in t1 steps
  • then mm1
  • nm

Call M0(x,n,t,u)
41
  • n is RchM,x(t) for each t.
  • Thm If S(n)?log n and S is space constructible
    then NSPACE(S) is closed under complementation.
  • pf
  • Call M1 on x to compute RchM,X(tx).
  • For each configuration u call M0 on
    ltx,n,t(x),ugt.
  • If No accepting configuration accessible, then
    accept.

42
Input M, s, x. Compute initial conf. C0.
  • NTM accept L(M).
  • I10
  • for each conf. C do
  • if C0 1C then I1I11
  • DI1 K1
  • While Klt2S(n)
  • I20
  • for each conf. C2 do
  • I10
  • for each conf. C1 do
  • guess path C0 ?K C1
  • if ? a correct path, I1
  • if C1 1 C2 then
  • if C2 is accept conf., STOP
    REJECT else I2 exit inner loop
  • if I1?D, then STOP
  • if (DI2) then ACCEPT else K DI2

I1 Rch(k-1) I2 Rch(k)
Write a Comment
User Comments (0)
About PowerShow.com