Berechenbarer Operator

Begriff aus der theoretischen Informatik

Berechenbare Operatoren (auch: effektive Operatoren; engl.: recursive operator, effective operator) sind in der theoretischen Informatik, genauer in der Berechenbarkeitstheorie, Manipulationen partieller Funktionen, die durch Turing-Maschinen realisiert werden. Berechenbare Funktionale sind durch Turing-Maschinen vermittelte Zuordnungen von Funktionen zu natürlichen Zahlen. Berechenbare Funktionale werden benötigt, um berechenbare Operatoren mathematisch exakt zu definieren. Neben ihrer eigenständigen Bedeutung in der Berechenbarkeitstheorie bilden berechenbare Operatoren die technische Grundlage der algorithmischen Lerntheorie. Berechenbare Operatoren bilden einen Spezialfall der Aufzählungsoperatoren.

Definition Bearbeiten

Es bezeichne im Folgenden   die Menge aller partiellen Abbildungen   natürlicher Zahlen,   bezeichne die Teilmenge der totalen Funktionen. Weiter sei   eine berechenbare Kodierungsfunktion für endliche Tupel natürlicher Zahlen (bspw. die Cantorsche Paarungsfunktion). Identifiziert man eine Funktion   mit ihrem Graphen, so erlaubt   wiederum, diese als Teilmenge der natürlichen Zahlen aufzufassen:  .

Intuitive Fassung Bearbeiten

  • Ein Operator   heiße berechenbar, falls es eine Turing-Maschine gibt, die für beliebige (nicht notwendigerweise selbst berechenbare) Aufzählungen des Graphens   als Eingabe ihrerseits den Graphen von   aufzählt.
  • Er heiße total berechenbar bzw. allgemein berechenbar (engl.: total recursive, general recursive), falls er zusätzlich totale Funktionen wieder in totale Funktionen überführt,  .

Für diese Definition muss die Arbeitsweise einer Turing-Maschine leicht modifiziert werden: Statt einer einzelnen natürlichen Zahl erhält sie nun sukzessive immer längere, endliche Anfangsstücke der entsprechenden Aufzählung von   als Eingabe. Diese Definition lässt sich leicht (bspw. durch multiple Eingabebänder) auf Operatoren   für beliebige Stelligkeiten   erweitern.

Formale Fassung Bearbeiten

Es sei   eine effektive Nummerierung aller partiellen Funktionen mit endlichem Definitionsbereich. Für jede rekursiv aufzählbare Menge   sei eine berechenbare Aufzählung   mit Bildmenge   bzw.   fixiert.

  • Ein Funktional   heiße berechenbar, falls es eine rekursiv aufzählbare Menge   gibt, so dass für alle partielle Funktionen   und natürliche Zahlen   gilt:  .

In diesem Fall ist dann   für das erste solche Tripel  , das von   aufgezählt wird.

  •   heiße total berechenbar wenn es berechenbar und für totale Funktionen selbst total ist, also  .

Entsprechendes gilt für Funktionale  .

  • Ein Operator   heiße berechenbar falls es ein berechenbares Funktional   derart gibt, dass für beliebige partielle Funktionen   und natürliche Zahlen   gilt:  .
  •   heiße total berechenbar, falls der Operator totale Funktionen auf totale abbildet,  .

Analog werden Operatoren   durch Funktionale   definiert.

Erläuterung Bearbeiten

Durch die Nummerierung der   erhält die rekursiv aufzählbare Menge   den Charakter eines Suchraums. Zur Berechnung des entsprechenden Funktionals   wird nach Einträgen zu endlichen Einschränkungen der Funktion   gesucht. Falls kein passender Eintrag gefunden wird, terminiert die Berechnung nie und das Funktional bleibt an dieser Stelle undefiniert. Die Fixierung der aufzählenden Prozedur   sichert, dass   wohldefiniert ist.

Die Eingabefunktion   wird von einer externen Quelle zur Verfügung gestellt, weshalb weder die Funktion selbst noch die gewählte Aufzählung berechenbar zu sein braucht. Dies lässt sich so interpretieren, dass die Turing-Maschine während der Berechnung einen menschlichen Nutzer zur Eingabe immer neuer Paare   auffordert. In anderen Worten lernt die Turing-Maschine die Eingabefunktion und transformiert diese gleichzeitig. Die obige Definition sichert, dass das Ergebnis dieser Manipulation nicht von der Reihenfolge abhängt in der der Graph von   präsentiert wird.

Während effektive Operatoren stets total sind, braucht dies für die zugrunde liegenden Funktionale nicht zu gelten, denn ggf. gibt es nicht-totale Funktionen im Bild des Operators. Es ist daher zu beachten, dass es Operatoren gibt, die total und berechenbar sind, aber nicht total berechenbar im Sinne der Definition. Ein Beispiel ist der konstante Operator, der jede Funktion auf die überall undefinierte Funktion   abbildet, dieser ist berechenbar mit der Wahl  .

Beispiele Bearbeiten

  • Ein konstanter Operator ist genau dann effektiv, wenn die Zielfunktion berechenbar ist, bspw.   die Nachfolgerfunktion.
  • Identität:  .
  • Links-Shift:  .
  • Auswertung an der Stelle  :  .

Eigenschaften Bearbeiten

Es bezeichne   die Klasse der berechenbaren Funktionen und analog   die Teilmenge der total berechenbaren Abbildungen. Außerdem sei   eine effektive Nummerierung von   (bspw. die Gödel-Nummerierung aller deterministischen Turing-Maschinen), daher ist durch   die kanonische Nummerierung aller rekursiv aufzählbaren Mengen gegeben.

Aus der obigen Definition ergeben sich sofort einige wichtige Eigenschaften:

  • Es gibt eine effektive Nummerierung   aller berechenbaren Operatoren, nämlich durch die Setzung  .
  • Für jeden berechenbaren Operator gibt es eine total berechenbare Funktion  , so dass  .
    • Insbesondere überführen berechenbare Operatoren berechenbare Funktionen wieder in berechenbare Funktionen,  , dies motiviert die Bezeichnung.
    • Für allgemein berechenbare Operatoren gilt zusätzlich  .
  • Die Komposition (allgemein) berechenbarer Operatoren ist wieder (allgemein) berechenbar.
    • Es gibt sogar eine total berechenbare Funktion  , so dass  .

Für berechenbare Operatoren  , partielle Funktionen   und natürliche Zahlen   gilt:

  • Monotonie:  .
  • Kompaktheit:  .
  • Stetigkeit:  .

Eigentlich sind Kompaktheit und Stetigkeit zwei Formulierungen derselben Eigenschaft. Der Begriff Kompaktheit stellt dabei auf die Kompaktheitssätze der mathematischen Logik ab. Stetigkeit dagegen weist darauf hin, dass berechenbare Operatoren tatsächlich als Abbildungen stetig sind, wenn man   mit der Topologie versieht, die durch die Basismengen   erzeugt wird.

Operator-Rekursionssatz Bearbeiten

Das fundamentale Theorem über berechenbare Operatoren ist der Operator-Rekursionssatz von John Case:

Für jeden berechenbaren Operator   existiert eine total berechenbare Funktion   streng monoton wachsend, so dass gilt:  .

Der Satz liefert anschaulich gesprochen unendlich viele Programme   berechenbarer Funktionen, die sich allesamt ihrer selbst und der durch   beschriebenen Transformation gewahr sind.

Aufzählbare Reduktion Bearbeiten

Seien   partielle Funktionen.

  • Die Abbildung   heiße aufzählbar reduzierbar auf (engl.: enumeration reducible to) bzw. partiell berechenbar in  ,  , falls es einen berechenbaren Operator   gibt, so dass  .

Die Reduktion   definiert eine Präordnung auf der Menge  , insbesondere ist die Relation transitiv. Für je zwei berechenbare Funktionen   gilt dabei  , außerdem gibt es in   keine Funktion die bzgl.   echt unter der Klasse   der berechenbaren Abbildungen liegt. Beides lässt sich leicht mittels konstanter Operatoren (s. o.) zeigen.

Für total berechenbare Abbildungen   gilt sogar, dass   genau dann berechenbar in   ist, wenn der Graph von   (als Menge natürlicher Zahlen) Turing-reduzierbar auf den Graphen von   ist,  . Im Allgemeinen ist die aufzählbare Reduktion aber mit der Turing-Reduktion unvergleichbar.

Quellen Bearbeiten

  • John W. Case: Periodicity in Generations of Automata. In: Mathematical Systems Theory. 8. Jahrgang, Nr. 1. Springer-Verlag, 1974, S. 15–32, doi:10.1007/BF01761704.
  • Sharma Jain et al.: Systems That Learn. 2nd Auflage. MIT Press, Cambridge, Massachusetts 1999, ISBN 0-262-10077-0, S. 19.
  • Hartley Rogers, Jr.: Theory of Recursive Functions and Effective Computability. McGraw-Hill, Cambridge, Massachusetts 1987, ISBN 0-262-68052-1, S. 145–149.