Download presentation

Presentation is loading. Please wait.

Published byWalter Walker Modified over 4 years ago

2
NL equals coNL Section 8.6 Giorgi Japaridze Theory of Computability

3
Giorgi Japaridze Theory of Computability NL equals coNL Section 8.6

4
The statement of the theorem and the main lemma (*) 8.6.a Giorgi Japaridze Theory of Computability Theorem 8.27 NL = coNL. Proof Idea. It is sufficient to prove the following: PATH coNL, i.e. PATH’ NL (*) coNL is defined as {A | the complement A’ of A is in NL}. Indeed, assuming that (*) holds, consider any language A in NL. Since PATH is NL-complete, there is a log space reduction f of A to PATH. The same f, of course, is also a log space reduction of A’ to PATH’. By (*), however, PATH’ NL. Hence A’ NL and thus A coNL. For the opposite direction, consider any language A in coNL, so that A’ NL. Then there is a log space reduction f of A’ to PATH. Hence f is also a reduction of A to PATH’. By (*), however, PATH’ NL. So, A NL. To summarize, as long as (*) is true, we have A NL iff A coNL for all A, meaning that NL=coNL. It remains to understand why (*) holds. This will be done through constructing an NL algorithm M for PATH’.

5
Solving PATH’ when c is known 8.6.b Giorgi Japaridze Theory of Computability Let c be the number of nodes in graph G that are reachable from the start node s, and assume c is already known. Let m be the number of all nodes. One by one, M goes through all nodes of G and nondeterministically guesses whether each node is reachable from s. Whenever a node u is guessed to be reachable, M verifies this guess by additionally guessing a path (of length m) from s to u, and rejects if the guessed path does not hit u. In addition, if the target node t is ever guessed to be reachable, M rejects. M counts the number of nodes (successfully) guessed to be reachable and, once this number hits c, M accepts. That is because M knows that the remaining nodes, including t, are not reachable, so there is no path from s to t. It now remains to see how M can compute c in logarithmic space.

6
Computing the number c 8.6.c Giorgi Japaridze Theory of Computability For each i=0,1,...,m, let A i be the set of nodes at a distance i from s, and c i be the number of such nodes. Thus, c 0 =1 and c m =c. M calculates c i+1 from c i by going through all the nodes of G, determining whether each is a member of A i+1, and counting the members. To determine whether a node v is in A i+1, M uses an inner loop to go through all the nodes of G and guesses whether each node is in A i. Each positive guess is verified by a path of length i from s. For each node u verified to be in A i, M tests whether (u,v) is an edge of G. If it is an edge, v is in A i+1. Additionally, the number of nodes verified to be in A i is counted. At the completion of the inner loop, if the total number of nodes verified to be in A i is not c i, not all members of A i have been found, so this computation branch rejects. If the count equals c i and v has not yet been shown to be in A i+1, M concludes that it isn’t in A i+1. Then M goes on to the next v in the outer loop.

7
L, NL and coNL versus P and PSPACE 8.6.d Giorgi Japaridze Theory of Computability This is what we know: 1. L NL = coNL P PSPACE 2. L, NL, coNL PSPACE Open problems: 1. L = NL, coNL? 2. NL, coNL = P? 3. P = PSPACE? At least one of these two equalities does not hold; but which one we do not know (probably both)

Similar presentations

© 2020 SlidePlayer.com Inc.

All rights reserved.

To make this website work, we log user data and share it with processors. To use this website, you must agree to our Privacy Policy, including cookie policy.

Ads by Google