- CoNP
-
In der Komplexitätstheorie bezeichnet Co-NP eine Komplexitätsklasse. In ihr sind genau die Sprachen enthalten, deren Komplemente zu NP gehören, d. h. . Intuitiv gesprochen besteht Co-NP aus der Klasse der Sprachen, in denen der Beweis, dass ein Wort nicht zur Sprache gehört, nichtdeterministisch polynomiell ist.
Zum Beispiel ist Subset Sum ein NP-vollständiges Problem. Gefragt ist, ob es in einer endlichen Menge ganzer Zahlen eine nichtleere Teilmenge gibt, deren Elemente c als Summe haben. Das Gegenstück in Co-NP ist die Frage, ob alle nichtleeren Teilmengen nicht c als Summe haben.
Beziehung zu anderen Komplexitätsklassen
P ist eine Teilmenge von sowohl NP als auch Co-NP. Es wird angenommen, dass in beiden Fällen eine echte Teilmengenbeziehung vorliegt. Man vermutet außerdem, dass . Tatsächlich gilt folgender Satz: Wenn A NP-vollständig ist, dann ist genau dann, wenn . Der nicht-triviale Teil der Äquivalenz kann wie folgt gezeigt werden:
- : Sei . Weil A NP-schwer ist, ist , und damit . Wegen ist , und damit ist , also .
- :
Ganz analog lässt sich folgender Satz zeigen: Wenn A Co-NP-vollständig ist, dann ist genau dann, wenn .
Weil P unter Komplement abgeschlossen ist, gilt folgender Satz: Wenn , dann . Ob hiervon auch die Umkehrung gilt, ist unbekannt.Wenn ein Problem sowohl in NP als auch in Co-NP enthalten ist, so wird allgemein angenommen, dass es nicht NP-vollständig ist (da ansonsten ).
Primzahltest
Lange Zeit wurde vermutet, dass Primalität im Durchschnitt von NP und Co-NP liegt, aber nicht zu P gehört.
2002 wurde von Manindra Agrawal, Neeraj Kayal und Nitin Saxena der Beweis erbracht, dass es in polynomieller Zeit (genauer in möglich ist, zu entscheiden, ob eine vorgelegte Zahl prim ist oder nicht. Der AKS-Primzahltest liefert jedoch keine Primfaktorzerlegung.
Wikimedia Foundation.