Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

TGGC

1x Rätselkönig

Beiträge: 1 799

Beruf: Software Entwickler

  • Private Nachricht senden

11

17.11.2016, 12:43

Also aus den oben gegebenen Definitionen ergibt sich ja eine relativ simple Konstruktion dieser endrekursiven Funktion. Die rekursive Funktion r(x) terminiert fuer alle x in endlicher Zeit. Ich kann also in endlicher Zeit fuer alle x die B(x) erfuellen das r(x) berechnen, solange auch dies endlich ist. Damit kann ich dann z(x) konstruieren, schlimmstenfalls als abschnittsweise definiert (praktisch wäre das also eine LUT). Damit lässt sich meiner Meinung nach die Existenz eines B(x) und z(x) zeigen. Wenn ich das aber innerhalb einer beschraenkten Zeit t machen muss, dann ist dies nur moeglich wenn ich ein B(x) so waehlen kann, das ich alle r(x) innerhalb von t berechnen kann. D.h. aber umgekehrt das ich fuer jede beschraenkte Zeit t eine Funktion r'(x) konstruieren kann, die für jedes x nach endlicher Zeit hält, aber jeweils erst nach t, indem ich r'(x) = r(x) + s(x) definiere, wenn s(x) fuer jedes x eine Berechnungsdauer von mindestens t benötigt.

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

12

17.11.2016, 15:33

Theoretisch könnte man doch den gesamten Zustand einer Turingmaschine im Funktionsparameter x kodieren, dann kann man jede beliebige berechenbare Funktion "endrekursiv" angeben:
  • Die Funktion y(x) führt einen Schritt auf der Turingmaschine aus und liefert deren neuen Zustand.
  • Die Funktion z(x) liest die Ausgabe der Turingmaschine vom Band.
  • Die Abbruchbedingung B(x) ist genau dann wahr, wenn die Turingmaschine angehalten hat, also sich in einem Endzustand befindet.
Einziger Haken: Man muss "von außen" erst einmal den initialen Parameter x konstruieren, d.h. die Kodierung der gewünschten Turingmaschine inkl. Daten auf ihrem Band.

13

17.11.2016, 18:59

Theoretisch könnte man doch den gesamten Zustand einer Turingmaschine im Funktionsparameter x kodieren, dann kann man jede beliebige berechenbare Funktion "endrekursiv" angeben:
  • Die Funktion y(x) führt einen Schritt auf der Turingmaschine aus und liefert deren neuen Zustand.
  • Die Funktion z(x) liest die Ausgabe der Turingmaschine vom Band.
  • Die Abbruchbedingung B(x) ist genau dann wahr, wenn die Turingmaschine angehalten hat, also sich in einem Endzustand befindet.
Einziger Haken: Man muss "von außen" erst einmal den initialen Parameter x konstruieren, d.h. die Kodierung der gewünschten Turingmaschine inkl. Daten auf ihrem Band.

Stimmt! Eigentlich ziemlich simpel. Danke

MfG
Check

TGGC

1x Rätselkönig

Beiträge: 1 799

Beruf: Software Entwickler

  • Private Nachricht senden

14

17.11.2016, 23:53

Theoretisch könnte man doch den gesamten Zustand einer Turingmaschine im Funktionsparameter x kodieren
Ja, genau da liegt auch schon der Knackpunkt. Selbst wenn das theoretisch moeglich ist, praktisch dauert allein die Angabe dieser Kodierung schon wieder länger als jede beliebige endliche Zeit t.

Werbeanzeige