
\documentstyle[12pt]{article}
\setlength{\oddsidemargin}{0.0in}
\setlength{\textwidth}{6.5in}
\setlength{\textheight}{8.8in}
\setlength{\topmargin}{-0.4in}

%\usepackage{amsfonts} 



\newcommand{\ket}[1]{|#1\rangle}
\newcommand{\bra}[1]{\langle#1|}
\newcommand{\ontop}[2]{{\begin{array}{l} {#1} \\ {#2} \end{array}}}
\newcommand{\stackket}[2]{{\Big | \hskip -5pt \ontop{#1}{#2} \hskip -3pt  \Big \rangle}}
\newcommand{\stackbra}[2]{{\Big \langle \hskip -5pt \ontop{#1}{#2} \hskip -3pt  \Big |}}
\newcommand{\stackketbra}[2]{{ \stackket{#1}{#2} \stackbra{#1}{#2} }}
\newcommand{\ra}{\rangle}
\newcommand{\la}{\langle}
\newcommand{\ketbra}[2]{|#1\rangle\langle#2|}
\newcommand{\braket}[2]{\langle {#1} | {#2} \rangle}

\newcommand{\NP}{{\bf{NP}}}
\newcommand{\classP}{{\bf{P}}}
\newcommand{\EXP}{{\bf{EXP}}}
\newcommand{\NEXP}{{\bf{NEXP}}}
\newcommand{\coNP}{\mbox{{\bf{co-NP}}}}
\newcommand{\coNL}{\mbox{{\bf{co-NL}}}}
\newcommand{\NL}{\mbox{{\bf{NL}}}}





\begin{document}

   \pagestyle{myheadings}
   \thispagestyle{plain}
   \newpage
   \noindent
   \begin{center}
   \framebox{
      \vbox{\vspace{2mm}
    \hbox to 6.28in { {\bf CS 262: Computational Complexity
                        \hfill Due: February 19, 2010} }
       \vspace{4mm}
       \hbox to 6.28in { \hfill {\Large Homework 4} \hfill
               }
       \vspace{2mm}
       \hbox to 6.28in { {\it Instructor: Sandy Irani} \hfill }
      \vspace{2mm}}
   }
   \end{center}
   \vspace*{4mm}

{\bf Do two of the three problems below.}

\begin{enumerate}
\item An input to the problem {\sc ST-NON-CONN} is a graph $G$ along
with vertices $s$ and $t$ in $G$. The language {\sc ST-NON-CONN} consists of
all triplets $(G,s,t)$ such that there is not a path from $s$ to $t$ in $G$.
Prove that {\sc ST-NON-CONN} is complete for the class \coNL.

\item
In the Arora-Boak text gives an alternative definition of the class \NL~ which makes
use of a Turing Machine with a special read-once tape. The head on a read-once tape starts at the
left-most end of the non-blank symbols written on the tape and
can only move to the right or stay in the same place (i.e. it can never move left).
The alternative definition says that a language $L$ is in \NL~ if there is a
deterministic Turing Machine M (called a {\em verifier}) with a special read-once tape and
a polynomial $p$ such that for every $x \in \Sigma^*$, 
$$ x \in L \Leftrightarrow \exists u \in \Sigma^{p(|x|)} \mbox{~such that~} M(x,u)=1,$$
where $M(x,u)$ is the output of $M$ when $x$ is placed on the input tape and $u$ is placed on its
special read-once tape and $M$ uses $O(\log n)$ space on its work tape for every input $x$.

Prove that this definition is equivalent to the definition using non-deterministic Turing
Machines discussed in class.

\item Prove that if in the above definition, the read-once tape is replaced with a read-only
tape (which could be read many times), then the resulting class is \NP.

\end{enumerate}

\end{document}
