Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Theoretische Informatik » Selbsthalteproblem » Antwort erstellen » Hallo Gast [Anmelden|Registrieren]

Antwort erstellen
Benutzername: (du bist nicht eingeloggt!)
Thema:
Nachricht:

HTML ist nicht erlaubt
BBCode ist erlaubt
Smilies sind erlaubt
Bilder sind erlaubt

Smilies: 21 von 33
smileWinkDaumen hoch
verwirrtAugenzwinkerngeschockt
Mit ZungeGottunglücklich
Forum Kloppebösegroßes Grinsen
TanzentraurigProst
TeufelSpamWillkommen
LehrerLOL HammerZunge raus
Hilfe 
aktuellen Tag schließen
alle Tags schließen
fettgedruckter Textkursiver Textunterstrichener Text zentrierter Text Hyperlink einfügenE-Mail-Adresse einfügenBild einfügen Zitat einfügenListe erstellen CODE einfügenPHP CODE farbig hervorheben
Spamschutz:
Text aus Bild eingeben
Spamschutz

Die letzten 4 Beiträge
Tobias

Du musst das Paradoxon erkennen:

M' hält auf Eingabe M nur, wenn M auf <M> nicht hält, also HALTETEST(M) = 0 gilt.

HALTETEST(M') = 1 --> M' hält auf <M'> --> HALTETEST(M') = 0

HALTETEST(M') = 0 --> M' hält auf <M'> nicht --> HALTETEST(M') = 1
donvito

Hmm, ich würde sagen HALTETEST(M') hält, ist aber bissel verzwickt, da sich das ganze ja quais endlos selbst aufruft.
Tobias

Deine Reduktionrichtung ist falsch.

Du sagst: HALT nicht entscheidbar => HALT_Selbst nicht entscheidbar

Das ist falsch, denn HALT_Selbst ist eine Einschränkung des allgemeinen Problems, also ein Spezialfall von HALT.

Verallgemeinert gilt: Ist S ein Spezialfall von A, dann gilt:
S nicht entscheidbar => A nicht entscheidbar
A entscheidbar => S entscheidbar
die anderen Folgerungsrichtungen sind im Allgemeinen nicht zutreffend.

Es handelt sich bei dem gesuchten Beweis um den Beweis der Nichtentscheidbarkeit des speziellen Halteproblems. Man führt ihn durch Konstruktion eines Paradoxons.

Er geht so:

Nimm an, das Problem HALT_Selbst wäre entscheidbar. Dann gäbe es eine Turingmaschine HALTETEST, die folgende Funktion berechnet:

HALTETEST(TM M) = 1 falls M hält auf <M>
HALTETEST(TM M) = 0 falls M hält nicht auf <M>

Jetzt konstruieren wir eine TM M', die HALTETEST als Unterprogramm verwendet:

M'(TM M):
Falls HALTETEST = 1 gehe in Endlosschleife
Sonst terminiere.

Was passiert nun bei Aufruf von HALTETEST(M') ?
donvito Selbsthalteproblem

Wie löse ich diese Aufgabe:
Zeigen Sie, dass die Sprache
HALT_Selbst = {<M> | DTM M hält auf Eingabe <M>}
nicht entscheidbar ist?

Ich habe versucht so zu argumentieren:
^Das "normale" Halteproblem ist wie folge definiert: {<M, w> |M ist eine TM und hält auf Eingabe w}. Dieses ist laut Vorlesung nicht entscheidbar. Angenommen, es gibt eine TM, die HALT entscheidet. Dann entscheidet diese TM auch HALT_Selbst, denn letzlich ist die Codierung einer Maschine nichts anderes als ein x-beliebiges Wort, da die TM nicht erkennen kann, ob es sich um ihre eigene Codierung handelt.
Da jedoch das Halteproblem nicht entscheidbar ist, ist auch das Selbsthalteproblem nicht entscheidbar.

Was kann man hier noch verbessern? Stimmt das so überhaupt?