Computational Complexity; Slides 7, HT 2021 Space Complexity, Time/Space Hierarchy Theorems

Computational Complexity; Slides 7, HT 2021 Space Complexity, Time/Space Hierarchy Theorems

Computational Complexity; slides 7, HT 2021 Space complexity, time/space hierarchy theorems Prof. Paul W. Goldberg (Dept. of Computer Science, University of Oxford) HT 2021 Paul Goldberg Space complexity 1 / 14 Road map I mentioned classes like LOGSPACE (usually calledL), SPACE(f (n)) etc. How do they relate to each other, and time complexity classes? Next: Various inclusions can be proved, some more easy than others; let's begin with \low-hanging fruit"... e.g., I have noted: TIME(f (n)) is a subset of SPACE(f (n)) (easy!) We will see e.g.L is a proper subset of PSPACE, although it's unknown how they relate to various intermediate classes, e.g.P, NP Various interesting problems are complete for PSPACE, EXPTIME, and some of the others. Paul Goldberg Space complexity 2 / 14 Convention: In this section we will be using Turing machines with a designated read only input tape. So, \logarithmic space" becomes meaningful. Space Complexity So far, we have measured the complexity of problems in terms of the time required to solve them. Alternatively, we can measure the space/memory required to compute a solution. Important difference: space can be re-used Paul Goldberg Space complexity 3 / 14 Space Complexity So far, we have measured the complexity of problems in terms of the time required to solve them. Alternatively, we can measure the space/memory required to compute a solution. Important difference: space can be re-used Convention: In this section we will be using Turing machines with a designated read only input tape. So, \logarithmic space" becomes meaningful. Paul Goldberg Space complexity 3 / 14 Space Complexity Definition. Let M be a Turing accepter and S : N ! N a monotone growing function. M is S-space bounded if for all input words w, M halts and uses at most S(jwj) non-input tape cells. 1 DSPACE(S): languages L for which there is an S-space bounded k-tape deterministic Turing accepter deciding L for some k ≥ 1. 2 NSPACE(S): languages L for which there is an S-space bounded non-deterministic k-tape Turing accepter deciding L for some k ≥ 1. Paul Goldberg Space complexity 4 / 14 Space Complexity Classes Deterministic Classes: LOGSPACE := S DSPACE(d log n) d2N PSPACE := S DSPACE(nd ) d2N d EXPSPACE := S DSPACE(2n ) d2N Non-Deterministic versions: NLOGSPACE etc In the above defs, a single separate work-tape is sufficient. Straightforward observation: LOGSPACE ⊆ PSPACE ⊆ EXPSPACE ⊆ ⊆ ⊆ NLOGSPACE ⊆ NPSPACE ⊆ NEXPSPACE Paul Goldberg Space complexity 5 / 14 O(f (n)) time2 O(f (n)) time2 Proof. Based on configuration graphs (next 2 slides) and a bound on the number of possible configurations. Build the configuration graph Find a path from the start to an accepting stop configuration. Elementary relationships between time and space Easy observation: For all functions f : N ! N: DTIME(f ) ⊆ DSPACE(f ) NTIME(f ) ⊆ NSPACE(f ) A bit harder: For all monotone growing functions f : N ! N: DSPACE(f ) ⊆ DTIME(2O(f )) NSPACE(f ) ⊆ DTIME(2O(f )) Paul Goldberg Space complexity 6 / 14 Elementary relationships between time and space Easy observation: For all functions f : N ! N: DTIME(f ) ⊆ DSPACE(f ) NTIME(f ) ⊆ NSPACE(f ) A bit harder: For all monotone growing functions f : N ! N: DSPACE(f ) ⊆ DTIME(2O(f )) NSPACE(f ) ⊆ DTIME(2O(f )) Proof. Based on configuration graphs (next 2 slides) and a bound on the number of possible configurations. O(f (n)) Build the configuration graph time2 Find a path from the start to an accepting stop configuration. O(f (n)) time2 Paul Goldberg Space complexity 6 / 14 Number of Possible Configurations Let M := (Q; Σ; Γ; q0; ∆; Fa; Fr ) be a 1-tape Turing accepter. (plus input tape) Recall: Configuration of M is a triple( q; p; x) where q 2 Q is the current state, p 2 N is the head position, and x 2 Γ∗ is the tape content. Let w 2 Σ∗ be an input to M, n := jwj If M is f (n)-space bounded we can assume that p ≤ f (n) and jxj ≤ f (n) Hence, there are at most jΓjf (n) · f (n) · jQj = 2O(f (n)) different configurations on inputs of length n. Paul Goldberg Space complexity 7 / 14 Configuration Graphs Let M := (Q; Σ; Γ; q0; ∆; Fa; Fr ) be a 1-tape Turing accepter. f (n) space bounded Configuration graph G(M; w) of M on input w: Directed graph with Vertices: All possible configurations of M up to length f (jwj) Edges: Edge( C1; C2) 2 E(G(M; w)), if C1 `M C2 A computation of M on input w corresponds to a path in G(M; w) from the start configuration to a stop configuration. Hence, to test if M accepts input w, construct the configuration graph and find a path from the start to an accepting stop configuration. Paul Goldberg Space complexity 8 / 14 Basic relationships Recall:L commonly denotes LOGSPACE;NL=NLOGSPACE L ⊆ NL ⊆ P ⊆ PSPACE ⊆ ⊆ NP ⊆ NPSPACE ⊆ EXPTIME ⊆ EXPSPACE ⊆ ⊆ NEXPTIME ⊆NEXPSPACE Paul Goldberg Space complexity 9 / 14 Consequence: NP ⊆ PSPACE similarly, NEXPTIME is a subset of EXPSPACE Generally, non-deterministic time f (n) allows O(f (n)) non-deterministic \guesses"; try them all one-by-one, in lexicographic order, over-writing previous attempts. Simulating non-deterministic computations with limited space Easy observation: SAT can be solved in linear space Just try every possible assignment, one after another, reusing space. Paul Goldberg Space complexity 10 / 14 Simulating non-deterministic computations with limited space Easy observation: SAT can be solved in linear space Just try every possible assignment, one after another, reusing space. Consequence: NP ⊆ PSPACE similarly, NEXPTIME is a subset of EXPSPACE Generally, non-deterministic time f (n) allows O(f (n)) non-deterministic \guesses"; try them all one-by-one, in lexicographic order, over-writing previous attempts. Paul Goldberg Space complexity 10 / 14 So we can update the previous diagram L ⊆ NL ⊆ P PSPACE ⊆ ⊆ ⊆ NP NPSPACE ⊆ EXPTIME EXPSPACE ⊆ ⊆ ⊆ NEXPTIME NEXPSPACE By the time hierarchy theorem (coming up next),P ( EXPTIME, NP ( NEXPTIME By the space hierarchy theorem,NL ( PSPACE, PSPACE ( EXPSPACE. Paul Goldberg Space complexity 11 / 14 Time Hierarchy theorem proper complexity function f : roughly, an increasing function that can be computed by a TM in time f (n) + n For f (n) ≥ n a proper complexity function, we have TIME(f (n)) is a proper subset of TIME((f (2n + 1))3): It follows that P is a proper subset of EXPTIME. Proof sketch: consider \time-bounded halting language" Hf := fhM; wi : M accepts w after at most f (jwj) stepsg 3 Hf belongs to TIME((f (n)) ): construct a universal TM that uses \quadratic overhead" to simulate a step of M. (The theorem can be strengthened by using a more economical UTM, but as stated it's good enough for P(EXPTIME.) n Next point: Hf 62 TIME(f (b 2 c)). Paul Goldberg Space complexity 12 / 14 Time Hierarchy theorem Reminder: Hf := fhM; wi : M accepts w after ≤ f (jwj) stepsg n To prove Hf 62 TIME(f (b 2 c)): n Suppose MHf decides Hf in time f (b 2 c). Define \diagonalising" machine: Df (M) : if MHf (hM; Mi) = \yes" then \no" else \yes" Does Df accept its own description? Contradiction! Corollary P is a proper subset of EXPTIME. Paul Goldberg Space complexity 13 / 14 Space Hierarchy Theorem Theorem. (Space Hierarchy Theorem) Let S; s : N ! N be functions such that 1 S is space constructible, and 2 S(n) ≥ n, 3 s = o(S). Then DSPACE(s) ( DSPACE(S). Reminder: item 3 means that limn!1(s(n)=S(n)) = 0. Proof later, but note that LOGSPACE is a proper subset of PSPACE, is proper subset of EXPSPACE Paul Goldberg Space complexity 14 / 14.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    17 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us