CoNP-đầy đủ có nghĩa là độ cứng NP?


12

CoNP-đầy đủ có nghĩa là độ cứng NP? Cụ thể, tôi có một vấn đề mà tôi đã chứng minh là hoàn thành coNP. Tôi có thể khẳng định rằng đó là NP-hard không? Tôi nhận ra rằng tôi có thể yêu cầu độ cứng coNP, nhưng tôi không chắc liệu thuật ngữ đó có phải là tiêu chuẩn hay không.

Tôi cảm thấy thoải mái với tuyên bố rằng nếu một vấn đề hoàn thành NP thuộc về coNP, thì NP = coNP. Tuy nhiên, các bài giảng này lưu ý rằng nếu một vấn đề NP-hard thuộc về coNP, thì NP = coNP. Điều này sau đó sẽ gợi ý rằng tôi không thể khẳng định rằng vấn đề của mình là NP-hard (hoặc tôi đã chứng minh coNP = NP, điều mà tôi rất nghi ngờ).

Có lẽ, có điều gì đó sai với suy nghĩ của tôi. Tôi nghĩ rằng một vấn đề hoàn thành coNP là NP-hard bởi vì:

  1. mọi vấn đề trong NP có thể được giảm xuống bổ sung của nó, sẽ thuộc về coNP.
  2. vấn đề bổ sung trong coNP làm giảm vấn đề hoàn thành coNP của tôi.
  3. do đó, chúng tôi đã giảm từ mọi vấn đề trong NP xuống hoàn thành coNP của tôi, vì vậy vấn đề của tôi là NP-hard.

trong một từ, không! ít nhất là dựa trên kiến ​​thức hiện tại. câu hỏi được kết nối chặt chẽ với P =? NP (hoặc nghiêm ngặt hơn là coNP =? NP cũng đang mở). lưu ý rằng nếu coNP NP được chứng minh thì P ≠ NP cũng được chứng minh vì P được đóng dưới bổ sung.
vzn

Câu trả lời:


10

You claim that every problem in NP can be reduced to its complement, and this is true for Turing reductions, but (probably) not for many-one reductions. A many-one reduction from L1 to L2 is a polytime function f such that for all x, xL1 iff f(x)L2.

If some problem L in coNP were NP-hard, then for any language MNP there would be a polytime function f such that for all x, xM iff f(x)L. Since L is in coNP, this gives a coNP algorithm for M, showing that NPcoNP, and so NP=coNP. Most researchers don't expect this to be the case, and so problems in coNP are probably not NP-hard.

The reason we use Karp reductions rather than Turing reductions is so that we can distinguish between NP-hard and coNP-hard problems. See this answer for more details (Turing reductions are called Cook reductions in that answer).

Finally, coNP-hard and coNP-complete are both standard terminology, and you are free to use them.


NP=?coNPco)NP-language to its complement?
G. Bach

That's correct, and that's also what I show in the answer. When I stated that it's not true for many-one reductions, I didn't mean it in the strictly logical sense, but rather in the sense that "the reduction you are thinking of is a Turing reduction but not a many-one reduction".
Yuval Filmus

Oh alright, yes that's probably the problem.
G. Bach

Thanks. What's a good reference for this? In particular for "NP=coNP under Cook reductions, but it is thought that they are different w.r.t. Karp reductions"?
Austin Buchanan

The believe that NP is different from coNP is rather widespread. Sometimes it is attributed to Stephen Cook. That NP-hardness is the same as coNP-hardness under Cook reductions follows immediately from the definition.
Yuval Filmus

6

The problem with that line of reasoning is the first step. In the deterministic case, you can decide xL with a TM M iff you can decide xL¯ with it, because the way to do it is just flip the output bit of M since its output only depends on x (if we compare with the verifier definition of NP).

In the nondeterministic case using the verifier definition, it's not known whether you can build an NP-verifier from a coNP-verifier or vice versa, and the problem is that they have different quantifiers in the definitions that the verifier machines must fulfill. Let LcoNP, then we have a verifier DTM M such that:

xLz{0,1}p(|x|):M(x,z)=1

For L¯, the verifier M' will have to fulfill

xL¯z{0,1}q(|x|):M'(x,z)=1

Why can't we then just use the NP-verifier M' of the language K to build a coNP-verifier M for K? The problem is the -quantifier required to have a coNP-verifier. The NP-verifier M' may give you 0 for some (wrong) certificate even for xK, so you can't go from to .

Maybe more abstractly: it's not clear how to build (in polynomial time) a machine that recognizes exactly the elements of a language, regardless of what certificate come with them, from a machine that recognizes exactly the elements of a language that have some certificate for it, but for which also some certificates don't work.


4
Surprisingly, however, it is known that NL=coNL, NPSPACE=coNPSPACE, and in general non-deterministic classes defined by space constraints are closed under complementation. This is the Immerman-Szelepcsényi theorem.
Yuval Filmus

Interesting, I didn't know that - but the intuition behind it probably is the way it always is with space classes: we can just reuse the space.
G. Bach

@G.Bach Not really, no. NL=co-NL is established by showing that s-t-non-connectivity is in NL. For larger space classes (the theorem only applies for space at least logn), you use s-t-(non)-connectivity on the configuration graph of the relevant Turing machine.
David Richerby
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.