# Direct reduction from $st\text{-}non\text{-}connectivity$ to $st\text{-}connectivity$

We know that $st\text{-}non\text{-}connectivity$ is in $\mathsf{NL}$ by Immerman–Szelepcsényi theorem theorem and since $st\text{-}connectivity$ is $\mathsf{NL\text{-}hard}$ therefore $st\text{-}non\text{-}connectivity$ is many-one log-space reducible to $st\text{-}connectivity$. But is there a direct/combinatorial reduction that doesn't go through the configuration graph of the Turing machines in $\mathsf{NL}$?

$\mathsf{stConnectivity}$ (a.k.a. $stPATH$):

Given directed graph $G$ and vertices $s$ and $t$,

Is there a directed path from vertex $s$ to vertex $t$?

### Clarifications:

You can assume a graph is given by its adjacency matrix (however this is not essential since standard representations of graphs are log-space convertible to each other.)

It is possible to unpack the proof of $\mathsf{NL\text{-}hard}$ness of $st\text{-}connectivity$ and move it into the proof so the proof does not use it that theorem as a lemma. However this is still the same construction essentially. What I am looking for is not this, I want a conceptually direct reduction. Let me give an analogy with the $\mathsf{NP}$ case. We can reduce various $\mathsf{NP\text{-}complete}$ problems to each other by using the fact that they are in $\mathsf{NP}$ therefore reduce to $SAT$ and $SAT$ reduces to the other problem. And we can unpack and combine these two reductions to get a direct reduction. However it is often possible to give a conceptually much simpler reduction that doesn't go through this intermediate step (you can remove mentioning it, but it is still there conceptually). For example, to reduce $HamPath$ or $VertexCover$ or $3\text{-}Coloring$ to $SAT$ we don't say $HamPath$ is in $\mathsf{NP}$ and therefore reduces to $SA$ since $SAT$ is $\mathsf{NP\text{-}hard}$. We can give a simple intuitive formula that is satisfiable iff the graph has a Hamiltonian path. Another example, we have reductions from other problems in $\mathsf{NL}$ to $st\text{-}Connectivity$ which do not rely on $\mathsf{NL\text{-}complete}$ness of $st\text{-}Connectivity$, e.g. $Cycle$, $StronglyConnected$, etc, they involve modification on the input graph (and do not refer to any Turing machines that is solving them).

I still don't see any reason why this cannot be done for this one. I am looking for a reduction of this kind.

It might be the case that this is not possible and any reduction would conceptually go through the $\mathsf{NL\text{-}hard}$ness result. However I don't see why that should be the case, why the situation would be different from the $\mathsf{NP}$ case. Obviously to give a negative answer to my question we would need to be more formal about when does a proof conceptually include another proof (which is proof theory question that AFAIK not settle in a satisfactory way). However note that for a positive answer one does not need such a formal definition and I am hoping that is the case. (I will think about how to formalize what I am asking in a faithful way when I find more free time. Essentially I want a reduction that would work even if we didn't know that the problem is complete for $\mathsf{NL}$.)

Using the proof of Immerman–Szelepcsényi theorem is fine, using $\mathsf{NL\text{-}complete}$ness of $stPATH$ and configuration graph of an $\mathsf{NL}$ machine is what I want to avoid.

• @Raphael, I like to use a different font for the names of mathematical concepts like complexity classes as is the common practice in the literature. Please don't remove them. – Kaveh Oct 9 '12 at 18:12
• Sorry, but that looks horrible. If you must, use a different font, but then please be consistent: you mix mathsf with standard math font, and even use different fonts in one word! – Raphael Oct 9 '12 at 22:09
• @Raphael, I am using them in a consistent way. Mathsf is used for distinguishing complexity classes. I will think about moving "complete" and "hard" outside into text part (the problem with that is it would make them typed using different fonts.) – Kaveh Oct 9 '12 at 22:33
• "Consistent" is not equal to "typographically pleasing". (Furthermore, the distinction is not really needed here, especially not the one between complexity classes and problems (which, adding to the pain, look awful in raw math font)). – Raphael Oct 10 '12 at 6:31
• @Raphael, sure, I didn't claim so. You objected to "inconsistency" of the way I use them, I just wanted to point out that is not the case. My style is to distinguish names of mathematical concept like $\mathsf{P}$ from the rest of math/text and I would like to do it in a consistent way. Anyway, I will think about how to make it typographically nicer while preserving the style. – Kaveh Oct 10 '12 at 7:46

Given an instance $G=(V,E),s,t$, we construct a new graph $G'=(V',E'),s',t'$. The "major vertices" of $V'$ record the following information: the current distance $d$ from $s$, the number of vertices of distance at most $d-1$, the number of vertices of distance $d-1$ counted so far, the current vertex we're guessing if it has distance at most $d-1$, the number of vertices of distance at most $d$ counted so far, the current vertex we're determining whether it has distance at most $d$. The minor vertices handle the part where we guess a path of length at most $d-1$ to a vertex which we guess to be of distance at most $d-1$. Edges that involve showing the vertex $t$ is reachable from $s$ are dropped. For each vertex which we're testing at the current distance, we only move forward to the next vertex if we have accounted for all vertices of smaller distance. When moving from distance $d$ to distance $d+1$, we copy the requisite information. The starting vertex $s'$ accounts for the fact that $s$ is the only vertex of distance zero. The ending vertex $t'$ is pointed at by all vertices representing the fact that the process has finished up to (and including) distance $n-1$, where $n=|V|$.