Satz von Friedberg und Muchnik

Aus testwiki
Zur Navigation springen Zur Suche springen

Der Satz von Friedberg und Muchnik ist ein Ergebnis der Berechenbarkeitstheorie und mathematischen Logik, das 1956/1957 unabhängig voneinander von Richard M. Friedberg und Albert Muchnik bewiesen wurde. Es besagt, dass es rekursiv aufzählbare Turinggrade gibt, die zwischen 0 und 0′ liegen. Damit gibt es also rekursiv aufzählbare Mengen, die nicht entscheidbar sind, aber im Sinne der Turingreduktion leichter als das Halteproblem. Für ihre Beweise entwickelten Friedberg und Muchnik eine neue Beweistechnik, die als Prioritätsmethode oder Prioritätsargument bekannt ist und die zu einer wichtigen Technik in der Berechenbarkeitstheorie wurde.

Geschichte

Emil Post untersuchte in einer Arbeit von 1944 die Turinggrade und fragte, ob es rekursiv aufzählbare Turinggrade zwischen 0 und 0′ gibt. Diese Frage wurde als Postsches Problem bekannt. Post definierte die einfachen Mengen und konnte zeigen, dass diese unter der many-one-Reduktion strikt zwischen den entscheidbaren Mengen und dem Halteproblem liegen, ohne dies auch für die stärkere Turingreduktion zeigen zu können. J.C.E. Dekker zeigte 1954, dass dies unmöglich ist, da es einfache Mengen in 0′ gibt.[1] Das Problem wurde 1956/57 unabhängig voneinander von Friedberg und Muchnik durch die neu entwickelte Prioritätsmethode gelöst. 1986 veröffentlichte Antonín Kučera eine neue Lösung, die kein Prioritätsargument benötigt.

Beweis

Idee

Der folgende Beweis folgt der Darstellung von Cooper 2004 und beruht auf den ursprünglichen Beweisen von Friedberg und Muchnik.

Es werden simultan zwei rekursiv aufzählbare Mengen A und B konstruiert, die aufeinander jeweils nicht Turing-reduzierbar sind: ATB und BTA. Wenn diese Bedingungen erfüllt sind, folgt direkt die Aussage des Satzes. Denn wenn A oder B entscheidbar wäre, ließe es sich auf die andere Menge Turing-reduzieren, und da alle rekursiv aufzählbaren Mengen auf das Halteproblem Turing-reduzierbar sind, können A und B auch nicht in 0′ liegen.

Diese Anforderungen werden durch eine unendliche Liste von Anforderungen sichergestellt. Sei Φ0,Φ1, eine berechenbare Aufzählung der Orakel-Turingmaschinen. Dann gibt es für jede Maschine Φi zwei Anforderungen:

  • R2i: Φi beschreibt keine Turingreduktion von A auf B. Formal: AΦiB
  • R2i+1: Φi beschreibt keine Turingreduktion von B auf A. Formal: BΦiA

Wenn alle R2i erfüllt sind, gibt es keine Turingreduktion von A auf B und es gilt ATB. Analog gilt BTA, wenn alle R2i+1 erfüllt sind.

Die Anforderungen sind nach ihrer Priorität geordnet, sodass R0 höchste Priorität hat, R1 zweithöchste etc.

Es werden berechenbare Folgen endlicher Mengen A0A1A2 und B0B1B2 konstruiert. A und B sind dann die unendlichen Vereinigungen dieser Folgen: A=iAi und B=iBi. Da die Folgen berechenbar sind, sind ihre Vereinigungen A und B rekursiv aufzählbar.

Es ist A0=B0=. Im s+1-ten Schritt der Konstruktion werden aus As und Bs die Mengen As+1As und Bs+1Bs konstruiert. Die Konstruktion wird von Strategien übernommen. Jede der Anforderungen hat eine Strategie, die versucht, diese Anforderung zu erfüllen.

Strategien

Intuition

Jede Strategie R2i muss erzwingen, dass eine Ungleichung AΦiB gilt. Hierzu gibt es zwei Möglichkeiten: entweder die Strategie fügt einen Zeugen x zu A hinzu, der nicht in ΦiB liegt, oder sie erzwingt, dass es einen Zeugen x gibt, der in ΦiB liegt und nie nach A gelangt. Dabei gibt es zwei Schwierigkeiten. Zum einen ist ΦiB nicht immer eine totale Funktion und die Frage ΦiB(x) ist daher unentscheidbar. Dies wird dadurch gelöst, dass die Strategie im s-ten Schritt der Konstruktion nur die ersten s Schritte der Berechnung von ΦiB(x) durchführt. Wenn ΦiB(x) nach t Schritten hält, dann wird die Strategie den Wert von ΦiB(x) im t-ten Schritt der Konstruktion erfahren und kann entsprechend bestimmen, ob x nach A gelangt oder nicht. Hält ΦiB(x) nicht, dann beschreibt Φi keine totale Funktion und somit keine Turingreduktion. Damit ist R2i automatisch erfüllt.

Zum anderen ist B während der Konstruktion von A noch nicht vorhanden, da beide Mengen simultan konstruiert werden. Daher erhält die Orakelmaschine Φi als Orakel im s-ten Schritt statt B die endliche Menge Bs. Eine Orakelturingmaschine kann, falls sie hält, nur endlich viele Orakelanfragen stellen. Damit genügt es, zu fordern, dass alle späteren Mengen Bt auf allen Zahlen xk (k ist größte Orakelanfrage in der Berechnung von ΦiB(x)) mit Bs übereinstimmen, um zu gewährleisten, dass ΦiBs(x)=ΦiB(x) ist. Die Strategie setzt daher k als B-Beschränkung fest, das heißt keine Strategie R2i+1 darf zukünftig Zahlen xk zu B hinzufügen.

Die Strategien R2i+1 arbeiten vollkommen analog, mit vertauschten Rollen von A und B. Diese Strategien können also analog A-Beschränkungen einführen, welche die R2i-Strategien in der Wahl der Zeugen beschränken. Eine Beschränkung kann nun aber auch den Zeugen einer bereits aktiven Strategie unbrauchbar machen, wenn dieser kleiner als k ist. Die Lösung ist, dass jede Strategie nur diejenigen Beschränkungen beachtet, die von einer Strategie höherer Priorität aufgestellt wurden. Erkennt eine Strategie, dass sie verletzt wurde, das heißt, dass eine von ihr aufgestellte Beschränkung von einer Strategie höherer Priorität verletzt wurde, wählt sie einen neuen Zeugen und beginnt von vorne.

Nun lässt sich wie folgt induktiv zeigen, dass jede Strategie nur endlich viele Male verletzt wird, also irgendwann endgültig erfüllt wird. Da R0 höchste Priorität hat, wird es nie verletzt. Da es für jedes Rs+1 nur endlich viele Anforderungen mit höherer Priorität gibt, die alle nach Induktionsvoraussetzung nur endlich oft verletzt werden, wird Rs+1 ebenfalls nur endlich oft verletzt, da es nur von Strategien mit höherer Priorität verletzt werden kann.

Formalisierung

Jede Anforderung der Form R2i hat eine Strategie, die sich wie folgt prozedural darstellen lässt:

  1. Wähle einen potentiellen Zeugen x für AΦiB, wobei x noch nicht in A liegt, über allen A-Beschränkungen mit höherer Priorität liegt und nicht schon als Zeuge gewählt wurde.
  2. In jedem späteren Schritt s, überprüfe ob eine der folgenden Bedingungen gilt:
    1. x liegt unter einer A-Beschränkung mit höherer Priorität. In diesem Fall wurde R2i verletzt und geht zurück nach (1).
    2. As(x)=0=ΦiBs(x)[s]. In diesem Fall geht die Strategie nach (3). Dabei ist ΦiBs(x)[s] das Ergebnis der ersten s Schritte der Berechnung von ΦiBs(x).
  3. x wird zu As+1 hinzugefügt.
  4. Sei z die größte Orakelanfrage, die bei der Berechnung von ΦiBs(x) gestellt wurde. Dann wird die B-Beschränkung z hinzugefügt.
  5. In jedem späteren Schritt s wird überprüft, ob x unter einer A-Beschränkung mit höherer Priorität liegt. Wenn ja, geht die Strategie nach (1) zurück.

Die Anforderungen R2i+1 haben analoge Strategien, in denen A und B vertauscht sind.

Dabei beginnt die Strategie für die n-te Anforderung ihre Aktivität im n-ten Schritt der Konstruktion bei (1). In jedem Schritt s sind alle Strategien Rk für ks aktiv. Damit müssen in jedem Schritt nur endlich viele Strategien berücksichtigt werden. Da jede Strategie berechenbar ist, ist somit wie gefordert jedes As und Bs berechenbar.

Wie oben gezeigt, wird jede Strategie nur endlich viele Male verletzt. Zudem ist zu zeigen, dass die Anforderung Ri erfüllt ist, wenn die zugehörige Strategie nicht mehr verletzt wird. Da jede Strategie Ri nur endlich oft verletzt wird und nach (1) zurückgeht, bleiben zwei mögliche Ergebnisse (hier für R2i dargestellt, analog für R2i+1):

  • R2i wartet unendlich lang bei (2), d. h. As(x)=0=ΦiBs(x)[s] wird für kein s erfüllt. Dann ist ΦiB(x) entweder undefiniert oder gleich 1. Da x nicht in A liegt, ist in beiden Fällen R2i erfüllt.
  • R2i erreicht (5), ohne wieder verletzt zu werden. Da x in (3) zu A hinzugefügt wurde, ist A(x)=1. Andererseits ist ΦiBs(x)=0. Aufgrund der von R2i hinzugefügten B-Beschränkung hat sich der relevante Teil von B nicht verändert und ΦiB(x)=ΦiBs(x)=0A(x).

Analog lässt sich zeigen, dass alle R2i+1 erfüllt werden.

Literatur

Einzelnachweise