Entscheidungsprobleme gegen Funktionen

8

Die Komplexitätstheorie scheint eher auf Entscheidungsproblemen als auf Funktionen zu beruhen.

Wer hat dies zuerst eingeführt und was ist der Grund für diese Wahl?

Zum Beispiel wird Edmonds 'Papier "Pfade, Bäume und Blumen" im Allgemeinen als Quelle des Begriffs " der die Menge der "nachvollziehbaren" Probleme darstellt, und dies ist der Weg, den wir eingeschlagen haben.P.T.ichme

Thinniyam Srinivasan Ramanatha
quelle

Antworten:

7

Ein weiterer Grund ist, dass dies häufig ohne Verlust der Allgemeinheit geschieht, da häufig (wenn auch nicht immer - siehe unten) die Komplexität von Funktionen und Entscheidungsprobleme gleichwertig sind. Jedes Entscheidungsproblem kann als eine Funktion betrachtet werden, deren einzige Werte 0 und 1 sind. Umgekehrt gibt es bei einer Funktion mehrere zugehörige Entscheidungsprobleme, die normalerweise die gleiche Komplexität wie , zum Beispiel:ff

  • i f ( x ) }{(x,ich):: Das te Bit von ist 1 .ichf(x)}}
  • {(x,k)::f(x)k}} (oder )

Hier ist ein Beispiel, in dem sich die Komplexität von Funktionsklassen und den zugehörigen Sprachklassen zu unterscheiden scheint: [ Wagner 1987 "Log Query Classes" , Hemaspaandras 1987er These , Buss & Hay 1991 ], aber wenn dann und [ Selman 1994 ]. F P N P [ log ] = F P N P t t N P = R P P = U P.P.N.P.[Log]]=P.ttN.P.F.P.N.P.[Log]]=F.P.ttN.P.N.P.=R.P.P.=U.P.

(Hier bedeutet das Orakel dass die Maschine O ( log n ) Abfragen zu jedem Problem in N P (z. B. SAT) durchführen kann. Die Notation P N P t t bedeutet P mit ein N P Oracle, aber in dem die Oracle Abfragen sind nicht-adaptive : bei Eingabe x , das , wenn y i ist die i - ten String an den Oracle abgefragt, dann y i hängt nicht von den Antworten auf alle früheren Oracle Anrufe. Entsprechend bei Eingabe xN.P.[Log]]Ö(Logn)N.P.P.ttN.P.P.N.P.xyichichyichxDie Maschine erstellt eine Liste ohne das Orakel abzufragen, fragt das Orakel nach allen y i ab und erhält die Antworten. Anschließend berechnet sie, ohne das Orakel erneut abzufragen.)y1,,ymyich

Joshua Grochow
quelle
5

Die Komplexitätstheorie baut auf der Berechenbarkeitstheorie auf, und die typische Formulierung von Problemen in der Berechenbarkeitstheorie sind Entscheidungsprobleme, die sich natürlich daraus ergeben, dass sie als Fragen zur Mengenmitgliedschaft aufgestellt werden.

Die Wurzeln der Berechenbarkeitstheorie reichen zurück, aber wenn Sie das erste starke Beispiel für ein Entscheidungsproblem wollen, dann ist Hilberts Entscheidungsproblem das ur-Beispiel - es ist deutsch für "Entscheidungsproblem".

Luke Mathieson
quelle
4

Nur ein Teil der Geschichte:

Das wegweisende Papier von Hartmanis und Stearns aus dem Jahr 1963 "Über die rechnergestützte Komplexität von Algorithmen" führte die Definitionen der quantifizierten Zeit- und Raumkomplexität in das Multitape-Turing-Maschinenmodell ein und zeigte, dass ein TM bei mehr Zeit / Raum mehr Dinge berechnen kann.

... Der Rechenaufwand einer Sequenz ist daran zu messen, wie schnell eine Multitape-Turing-Maschine die Bedingungen der Sequenz ausdrucken kann. ...

Wobei "Sequenz" eine generische Sequenz ist. Wenn sie dann eine T-berechenbare Sequenz definieren, beschränken sie die Aufmerksamkeit auf binäre Sequenzen:

α=ein1ein2...

S.T.T.(n)S.T.

Und dann in Korollar 2.8:

n

Mit einem Rückwärtslink zu Hilbert und Church / Turings Arbeit zum Stoppproblem:

T.αS.T.
Marzio De Biasi
quelle