Wyrocznia do oddzielenia NP od CoNP


12

Jak udowodnić, że ? Właśnie szukam takiej wyroczni TM M i języka rekurencyjnego L ( M ) = L, dla którego to się utrzymuje.NPAcoNPAML(M)=L

Znam dowód gdzie można pokazać, że nie jest wyrocznią takie, że PN P i wyrocznią takie, że P = N P . Mam wskazówkę, że powinienem znaleźć taką wyrocznię A , rozszerzając dowód P AN P A, ale gdziekolwiek szukam i czytam, wszędzie jest „oczywiste” lub „proste”, ale po prostu nie rozumiem, jak to udowodnić. .APANPAAPA=NPAAPANPA


6
Nie jest jasne, czy podążałeś za wskazówkami. Jestem zaskoczony, że jest oczywista, ale można znaleźć dowód w (na przykład) Computational Złożoność: A Modern Approach przez Arora i Barak. PANPA

Odpowiedzi:


9

coNP

Wyjaśnię wymaganą modyfikację poniżej, ale najpierw spójrzmy na oryginalny dowód.

A=nAniiPMi{xyA |x|=|y|}NPA

MiA0mmMimMimMiAmlub mniej pozostanie taki sam). Daje to pewność, że nie zdecyduje poprawnie w języku i dokończy dowód.MiA

Następnie, zakłada się, że maszyny były c O N P w miejscu P . Musimy zmodyfikować dowód, aby upewnić się, że M ja nie rozpozna L . Jeśli się zgadza, zachowujemy A jak poprzednio i wszystko działa dobrze, jak w oryginalnym dowodzie. Jeśli odrzuci, musimy dodać ciąg do zestawu, aby upewnić się, że nie odpowiada poprawnie. Nadal możemy symulować M i za pomocą części A, którą mamy, problem polega na tym, że M i może sprawdzać wszystkie ciągi długości n . W tym przypadku sposób, w jaki C OMicoNPPMiALAMiAMincoNPmA

ADSpace(nω(1))


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.