Theory of computation topic complexity classes space complexity sheshan srivathsa
This presentation is the property of its rightful owner.
Sponsored Links
1 / 25

THEORY OF COMPUTATION TOPIC:COMPLEXITY CLASSES SPACE COMPLEXITY SHESHAN SRIVATHSA PowerPoint PPT Presentation


  • 136 Views
  • Uploaded on
  • Presentation posted in: General

THEORY OF COMPUTATION TOPIC:COMPLEXITY CLASSES SPACE COMPLEXITY SHESHAN SRIVATHSA. Definition: Let M be a deterministic Turing Machine that halts on all inputs. Space Complexity of M is the function f:N N, where f(n) is the maximum number of tape cells that M scans on any input of length n.

Download Presentation

THEORY OF COMPUTATION TOPIC:COMPLEXITY CLASSES SPACE COMPLEXITY SHESHAN SRIVATHSA

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Theory of computation topic complexity classes space complexity sheshan srivathsa

THEORY OF COMPUTATIONTOPIC:COMPLEXITY CLASSESSPACE COMPLEXITYSHESHAN SRIVATHSA


Introduction

Definition:

Let M be a deterministic Turing Machine that halts on all inputs.

Space Complexity of M is the function f:NN, where f(n) is the maximum number of tape cells that M scans on any input of length n.

For any function f:NN, we define:

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}

INTRODUCTION


Introduction1

  • Low Space Classes:

    Definitions (logarithmic space classes):

  • L = SPACE(logn)

  • NL = NSPACE(logn)

INTRODUCTION


Analyzing space complexity

  • If M is a deterministic Turing machine that halts on an inputs, then the value ofspacereq(M) is the function f(n) defined so that, for any natural number n,f(n) isthe maximum number of tape squares that M reads on any input of length n.

  • If M is a nondeterministic Turing machine all of whose computational paths halt on all inputs, then the value of spacereq(M) is the function f(n) defined so that, for any natural number n,f(n) is the maximum number of tape squares that M reads onany path that it executes on any input of length n.

Analyzing Space Complexity


Example

0

0

0

0

SAT is NP-complete.

SAT can be solved in linear(O(m)) space.

M1=“On input <>, 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.”

EXAMPLE

x1 x2 x3… xn


Relating time and space complexity

Theorem: Given a Turing machine M = (K , 2:., r, 8, s, H) and assuming that spacereq(M) ~ n, the following relationships hold between M's time and space requirements:

spacereq(M) < timereq(M) E o (cspacereq(M) )

Proof: Spacereq(M) is bounded by timereq(M) since M must use at least one time step for every tape square it visits.

The upper bound on timereq(M) follows from the fact, since M halts, the number of steps that it can execute is bounded by the number of distinct configurations that it can enter. That number is given by the function MaxConfigs(M), as described above. Since MaxConjigs(M) E O(cspacereq(M»), timereq(M) E O(cspacereq(M»).

Relating Time and Space Complexity


Theory of computation topic complexity classes space complexity sheshan srivathsa

  • Savitch’s Theorem

Theorem

For any function f: NR+, where f(n)n, we have

NSPACE(f(n))  SPACE(f2(n)).

Proof:

Suppose language A can be decided by an NTM in k f(n) space,

for some constant k.

We shall show that it can be decided by a DTM in O((f(n))2) space.

Let  be an input string to N.

t: integer;

c1,c2: configurations of N on .


Savitch s theorem

CANYIELD(c1,c2,t) accept if starting from c1 N has a branch

entering configuration c2 in t steps; o/w rejects.

CANYIELD=“On input c1,c2 and t:

If t=1, test whether c1=c2 or c1├ c2, then accept; else reject.

If t>1, 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.”

Savitch’s Theorem


Theory of computation topic complexity classes space complexity sheshan srivathsa

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=|  |.

M=“On input 

output the result of CANYIELD(cstart, caccept, 2df(n)).”

CANYIELD is a recursive procedure:

  • Recursive depth:log22df(n)=O(f(n))

  • Each recursive call of CANYIELD use O(f(n)) space.

  • Thus, it uses O(f2(n)) space.


Example of savitch s algorithm

boolean PATH(a,b,d) {

if there is an edge from a to b then

return TRUE

else {

if (d=1) return FALSE

for every vertex v (not a,b) {

if PATH(a,v, d/2) and

PATH(v,b, d/2) then

return TRUE

}

return FALSE

}

}

2

3

1

4

Example of Savitch’s algorithm


Pspace and nspace

PSPACE is the class of languages (or problems) that are decidable in

polynomial space on a det. TM.

Similarly we can define NPSPACE to be the class of languages that are decidable in polynomial space by a NTM.

So, what is the relationship between PSPACE and NPSPACE?

PSPACE AND NSPACE


Theory of computation topic complexity classes space complexity sheshan srivathsa

PSPACE = NPSPACE

Theorem:

PSPACE = NPSPACE

Proof : If L is in PSPACE, then it must also be in NPSPACE because the deterministic Turing machine that decides it in polynomial time is also a nondeterministic Turing machine that decides it in polynomial time.

It is an important corollary of Savitch's Theorem.


Pspace completeness

Definition:

A language B is PSPACE-Completeif

  • BPSPACE

  • For every ASPACE, APB.

  • If B is just satisfies Condition 2, we say B is PSPACE-hard

PSPACE Completeness


P np and pspace

Theorem: P ⊆ PSPACE

Proof: If a language is decided by some DTM M in f(n) time, M cannot see more than f(n) cells.

Thus, TIME(f(n)) ⊆SPACE(f(n)),

So that P ⊆ PSPACE

P, NP, and PSPACE


Pspace and exptime

Proof: If a language is decided by some DTM M in f(n) space (where f(n) >=n), M can visit at most f(n) 2 O(f(n)) configurations (why?) Thus, M must run in f(n) 2 O(f(n)) time.

In other words, SPACE(f(n)) ⊆TIME(2O(f(n))),

so that PSPACE ⊆ EXPTIME.

P⊆NP⊆P SPACE⊆EXPTIME

PSPACE and EXPTIME


A hierarchy of complexity

A Hierarchy ofComplexity


The language qbf

Mathematical statements usually involve quantifiers: 8 (for all) and 9 (there exists)

• E.g., 8x F(x) means for every value of x, the statement F(x) is TRUE

• E.g., 9x F(x) means there exists some value of x such that F(x) is TRUE

•Boolean formulas with quantifiers are called quantified Boolean formulas

• E.g., 9y ( y = x+1) and 8x (9y ( y x)) are quantified Boolean formulas

The Language QBF


Theory of computation topic complexity classes space complexity sheshan srivathsa

All of the following are quantified Boolean expressions.

• (P 1\ ,R)~S

• 3P «P 1\ ,R) ~ S)

• \iR (3P «P 1\ ,R) ~ S»

• \iS (\iR (3P «P 1\ ,R) ~ S»).

All quantified Boolean expressions are in prenex normal form.


Tqbf is pspace complete

Theorem:TQBF is PSPACE-Complete

Proof:

  (s,t,|V|) is TRUE iff there is a path from s to t.

 is constructible in poly-time.

Thus, any PSPACE language is poly-time reducible to TQBF,

i.e. TQBFis PSPACE-hard.

Since TQBFPSPACE, it’s PSPACE-Complete.

TQBF is PSPACE Complete


Example 1

PSPACE-complete:

The generalized version of some common games we play are PSPACE-complete:

Tic-Tac-Toe

Game of the Amazons

EXAMPLE(1)


Example 2

Generalized Geography : Each city chosen must begin with the same letter that ended the previous city name.

EXAMPLE(2)


The classes l and nl

L=SPACE(log n)

NL=NSPACE(log n)

E.G : PATH={<G,s,t> | G is a directed graph that has a directed path from s to t}.

  • NL Completeness :

    A language B is NL-Complete if

  • BNL

  • For every ANL, ALB.

The Classes L and NL


The closure of space complexity classes under complement

Deterministic Space-Complexity Classes are Closed Under Complement

Theorem: For every function f(n) , dspace(f( n)) = co-dspace(f(n)).

Proof: If L is a language that is decided by some deterministic Turing machine M,

th en the deterministic Turing machine M' that is identical to M except that the

halting states y and n are reversed decides ~L. spacereq(M' ) = spacereq(M) .

So, if L E dspace(f( n)), so is ~L.

The Closure of Space Complexity ClassesUnder Complement


References

REFERENCES

www.cs.tau.ac.il/~safra/Complexity/Space.ppt space complexity

people.cs.nctu.edu.tw/~sctsai/fc/notes/SpaceComplexity.ppt

http://homepage.cs.uri.edu/faculty/hamel/courses/2013/spring2013/csc544/lecture-notes/18-space-complexity.pdf

2008 Elaine A Rich, Automata, Computability And Complexity, Theory And Application (CHAPTER 29).

http://www.cs.elte.hu/~lovasz/kurzusok/complexity.pdf.

http://en.wikipedia.org/wiki/True_quantified_Boolean_formula

http://www.cs.nthu.edu.tw/~wkhon/lectures/.


  • Login