In der Berechenbarkeitstheorie und der rechnerischen Komplexitätstheorie ist eine -Einsen-Reduktion eine Reduktion, die Fälle eines Entscheidungsproblems in Fälle eines zweiten Entscheidungsproblems umwandelt. Somit können Reduzierungen verwendet werden, um die relative rechnerische Schwierigkeit zweier Probleme zu messen. Man sagt, dass A auf B reduziert wird, wenn B in Laiengesetzen schwieriger zu lösen ist als A. Das heißt, jeder Algorithmus, der B löst, kann auch als Teil eines (sonst relativ einfachen) Programms verwendet werden, das A löst.
Viele-Eins-Reduktionen sind ein Sonderfall und eine stärkere Form der Turing-Reduktionen. Bei vielen Reduzierungen kann das Orakel (dh unsere Lösung für B) am Ende nur einmal aufgerufen werden, und die Antwort kann nicht geändert werden. Das heißt, wenn wir zeigen wollen, dass Problem A auf Problem B reduziert werden kann, können wir unsere Lösung für B nur einmal in unserer Lösung für A verwenden, im Gegensatz zur Turing-Reduktion, wo wir unsere Lösung für B so oft verwenden können benötigt beim Lösen von A.
Dies bedeutet, dass viele Reduzierungen von Instanzen eines Problems den Instanzen eines anderen zugeordnet werden, während Turing-Reduzierungen die Lösung für ein Problem berechnen, vorausgesetzt, das andere Problem ist leicht zu lösen. Die Reduzierung um ein Vielfaches ist bei der Trennung von Problemen in verschiedene Komplexitätsklassen effektiver. Die erhöhten Beschränkungen für viele Ermäßigungen machen es jedoch schwieriger, sie zu finden.
Many-one-Reduktionen wurden erstmals von Emil Post in einer 1944 veröffentlichten Publikation verwendet. [1] Später verwendete Norman Shapiro das gleiche Konzept 1956 unter dem Namen starke Reduzierbarkeit [2].
Definitionen [ edit ]
Formale Sprachen [19599011]
A und B sind formale Sprachen über den Alphabeten Σ bzw. Γ. A Viele-Eins-Reduktion von A bis B ist eine insgesamt berechenbare Funktion f : * → Γ * das die Eigenschaft besitzt, dass Jedes Wort w ist in A wenn und nur dann, wenn f ( w ) in B ist (das ist , ).
Wenn eine solche Funktion existiert f sagen wir, dass A viele-eins reduzierbar oder m-reduzierbar bis ist ] B und schreiben
Wenn es eine -Injektiv-Reduktionsfunktion gibt, dann sagen wir A 1 -reduzible oder Eins-Eins bis B reduzieren und schreiben
- ]
Subsets von natürlichen Zahlen [ edit ]
Gegeben zwei Sätze sagen wir ist viele-eins reduzierbar bis und schreibt
Wenn eine berechenbare Gesamtfunktion existiert A
- ]
Viele-Eins-Äquivalenz und 1-Äquivalenz [ edit
Wenn wir sagen A viele-eins Äquivalent oder m-Äquivalent bis
If wir sagen A 1-Äquivalent bis Viele-Eins-Vollständigkeit (m-Vollständigkeit) edit Eine Menge B B Many-One Complete oder einfach m-complete genannt, wenn B rekursiv aufgezählt und jeder rekursiv aufzählbare Satz A reduzierbar auf B . Viele-Eins-Reduzierungen unterliegen oft Ressourcenbeschränkungen, z. B. dass die Reduktionsfunktion in polynomialer Zeit oder logarithmischem Raum berechnet werden kann ; Einzelheiten finden Sie unter Polynomial-Time-Reduktion und Log-Space-Reduktion. Angesichts von Entscheidungsproblemen A und B und eines Algorithmus N der Fälle von B löst, können wir eine Vielfach-Reduktion von A verwenden bis B zur Lösung von Instanzen von A in: dass eine Klasse C von Sprachen (oder eine Teilmenge der Potenzgruppe der natürlichen Zahlen) unter vielfacher Reduzierbarkeit geschlossen ist, wenn keine Reduktion von einer Sprache in vorliegt C an eine Sprache außerhalb C . Wenn eine Klasse unter einer Reduzierbarkeit von vielen Eins geschlossen wird, kann eine Vielfachreduzierung verwendet werden, um zu zeigen, dass ein Problem in C vorliegt, indem ein Problem in C darauf reduziert wird. Viele-Eins-Reduzierungen sind wertvoll, da die meisten gut untersuchten Komplexitätsklassen unter einer bestimmten Reduzierbarkeit von Eins-zu-Eins geschlossen werden, darunter P, NP, L, NL, Co-NP, PSPACE, EXP und viele andere. Diese Klassen werden jedoch nicht unter willkürlichen Vielfachsenkungen geschlossen. Viele-Eins-Reduzierungen mit Ressourcenbeschränkungen [ edit ]
Eigenschaften [ edit ]
[ edit ]
Không có nhận xét nào:
Đăng nhận xét