Ich lese über beschäftigte Bibernummern und wie sie asymptotisch größer werden als jede berechenbare Funktion. Warum ist das so? Liegt es an der Unberechenbarkeit der Busy Beaver-Funktion? Wenn ja, werden dann alle nicht berechenbaren Funktionen asymptotisch größer als die berechenbaren?
Bearbeiten:
Großartige Antworten unten, aber ich möchte in einfachem Englisch erklären, was ich von ihnen verstehe.
Wenn es eine berechenbare Funktion f gab, die schneller wuchs als die Busy-Beaver-Funktion, dann bedeutet dies, dass die Busy-Beaver-Funktion durch f begrenzt ist. Mit anderen Worten, eine Turing-Maschine müsste einfach für f (n) viele Schritte laufen, um das Stopp-Problem zu entscheiden. Da wir wissen, dass das Stopp-Problem nicht zu entscheiden ist, ist unsere anfängliche Voraussetzung falsch. Daher wächst die Busy-Beaver-Funktion schneller als alle berechenbaren Funktionen.
quelle
Antworten:
Wenn Sie eine nicht berechenbare Menge natürlicher Zahlen verwenden, nimmt die charakteristische Funktion der Menge nur die Werte und ist nicht berechenbar. Es ist also nicht so, dass jede nicht berechenbare Funktion sehr schnell wächst, sie kann sogar begrenzt werden.{ 0 , 1 }
Die Busy Beaver-Funktion wächst schneller als jede berechenbare Funktion, weil sie dafür konstruiert ist. Der Beweis, dass es nicht berechenbar ist, wird erbracht, indem zunächst bewiesen wird, dass es schneller wächst als jede berechenbare Funktion.
Allgemeiner gesagt, eine Menge hat "hyperimmunfreien Grad", wenn jede von A berechenbare Funktion durch eine berechenbare Funktion begrenzt ist. Sicherlich hat jeder berechenbare Satz einen hyperimmunfreien Grad. Es ist bekannt, dass es auch viele nicht berechenbare Mengen gibt, die hyperimmunfrei sind. Es ist also nicht so, dass alles, was nicht berechenbar ist, eine schnell wachsende Funktion berechnen muss.A ⊆ N EIN
Es ist jedoch auch der Fall, dass ein nicht berechenbarer Reset nicht hyperimmunfrei ist. Wenn re ist und durch den Index e aufgezählt wird , ist die Funktion f so, dass f ( n ) = k, wenn e n in k Schritten aufzählt , und f ( n ) = 0, wenn e n nicht aufzählt , aus B aber dies berechenbar Funktion ist genau dann durch eine berechenbare Funktion begrenzt, wenn B berechenbar ist.B e f f(n)=k e n k f(n)=0 e n B B
quelle
Wenn eine Funktion wächst schneller (oder langsamer) als jede Funktion in einem Satz F von Funktionen, dh f ∈ & ohgr; ( g ) (oder o ( g ) ) für alle Funktionen g ∈ F , dann klar f ∉ F . Dies wird verwendet, um zu zeigen, dass die Besetzt-Biber-Funktion nicht berechenbar ist. Ein weiteres Beispiel ist der Beweis, dass die - berechenbare und totale - Ackermann-Funktion nicht primitiv rekursiv ist.f F f∈ω(g) o(g) g∈F f∉F
Das Gegenteil muss nicht unbedingt gelten. Die Halteproblemfunktion nimmt Werte in also in O ( 1 ) ¹; Es ist klar, dass berechenbare Funktionen so schnell und schneller wachsen.{0,1} O(1)
Es gibt sicherlich Sätze von Funktionen , für die Laufzeit ist sowohl eine notwendige und ausreichende Mitgliedschaftskriterium, nämlich diejenigen, die gekennzeichnet durch Laufzeit, wie beispielsweise
.Poly={f:N→N∣∃k.f∈O(nk)}
quelle