This preview shows page 127 - 130 out of 164 pages.
Today we’ll talk about∙NL-completeness∙NL=coNL (this differs from what we think is true for NP)127
Lecture19Notes on Theory of ComputationRecall that L=SPACE(log?) and NL=NSPACE(log?). We have a nice hierarchy:L⊆NL⊆P⊆NP⊆PSPACE.We don’t know whether these containments are proper.We can show that PSPACE andNL are different (and will eventually do so), so not everything in the picture collapses down.Most people believe that these spaces are all different; however, we don’t know adjacentinclusions are proper.However, NL=coNL shows that surprising things do happen, and we do have unexpectedcollapses.First let’s review a theorem from last time.Theorem(Theorem 18.6):NL⊆P.Proof.For a NL-machine?, a configuration of?on?is (?, ?1, ?2, ?).The number ofconfigurations of?on?is polynomial in?where?=|?|(?is fixed). The computationgraph is the graph where∙nodes are configurations, and∙edges show how?can move.Here is a polynomial time algorithm that simulates?. “On input?,1. Construct the computation graph.2. Test if there is a path from start to accept (using any polynomial time algorithm forPATH).3. Acceptif yes and rejectif no.”128
Lecture19Notes on Theory of ComputationS1L vs. NLNow we turn our attention to L vs. NL. We’ll show that the situation is analogous to thesituation of P vs.NP. How much space deterministically do we actually need for a NLproblem?We can do it with polynomial space but that’s pretty crude.We can do muchbetter.We have using Savitch’s Theorem thatNL = NSPACE(log?)⊆SPACE(log2?)We stated Savitch’s Theorem for space bounds≥?; with space bounds of≥log?the sameargument goes through.No one knows whether we can reduce the exponent, or whetherL=NL.(We will show that SPACE(log?) is provably different fron SPACE(log2?), using thehierarchy theorem 20.1. When we increase the amount of space/time, we actually get newstuff. But maybe some other argument could show NL⊆SPACE(log?).)We will show that there are NL-complete problems, an example of which is PATH. Ifyou can solve PATH or any other NL-complete problems in deterministic log space, then itbrings down everything with it to L. We’ll show everything in NL is reducible to the PATHproblem.This shouldn’t be a surprise because it’s what we did in the previous theorem:whether a machine accepts is equivalent to whether there’s a path. We’ll just need to defineNL-completeness in the appropriate way and then we’ll be done by the argument given inthe NL⊆P theorem.Definition 19.1:?is NL-complete if1.?∈NL2. Every NL-problem islog-spacereducible to?: for every?∈NL,?≤??.We need to define what it means to be log-space reducible. We have to be careful becausethe input is roughly?, and the output is roughly?. we don’t want to count the output ofmachine in the space bound. The input and output should be kept seprate.