Re: NP vs co-NP



sanchopancho80 wrote:
why is it true that NP = co-NP if there is an NP-complete language L
whose complement is in NP, too?

My textbook argues as follows (cL denotes the complement of L): Because
every NP language S is polynomial-time reducible to L, i.e. S<L if
follows that cS is polynomial-time reducible to cL, i.e. cS<cL...
I don't understand this up to here. Why does cS<cL follow? Could anybody
help me?

Think about what that means. If S is polynomial-time reducible to L,
then there exists a polynomial-time computable function f on strings,
such that x is in S if and only if f(x) is in L. The normal path is
that you'd then try to decide S by computing f(x) for the input x, and
then calling the decider for L. But the exact same function f suffices
as a polynomial reduction from cS to cL! This is actually obvious; you
just have to take contrapositives, and note that (x is not in S) is the
same statement as (x is in cS).

--
Chris Smith
.



Relevant Pages

  • Re: Computer Program help
    ... signed decimal and two's complement binary ... > then convert the value entered to the other representation. ... this is a highly specialised language. ... which can then be compiled with a C compiler in the normal way. ...
    (comp.programming)
  • Re: isodigit
    ... With two's complement representations, there are very few operations that ... architectures as possible, which is more important for its ... language than is conforming to a simplified abstract model. ... Also, if the programmer is aware of such possibilities, the ...
    (comp.std.c)
  • Re: additional regular expression operators
    ... (i.e., the free monoid). ... A regular expression language contains symbols representing elements ... Now, your operation R~ above is the set complement, and R! ...
    (comp.compilers)
  • Re: Computer Program help
    ... > two's complement number for you. ... that's because C is not a very clean language. ... > elegant piece of code. ...
    (comp.programming)