See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Diagonalsprache – Wikipedia

Diagonalsprache

aus Wikipedia, der freien Enzyklopädie

Die Diagonalsprache ist eine Formale Sprache aus der theoretischen Informatik aus dem Bereich der Entscheidungsprobleme. Sie ist als Menge so konstruiert, dass sie nicht semi-entscheidbar ist, also dass Elemente (Wörter) der Sprache nicht auf algorithmische Weise als zu der Sprache gehörig erkannt werden können. Es kann also keine Turingmaschine geben, die eine Ja-Antwort auf die Frage geben kann, ob ein Element zu der Sprache gehört.

Die Diagonalsprache ist die zentrale Konstruktion im Beweis der Unentscheidbarkeit des Halteproblems.

Inhaltsverzeichnis

[Bearbeiten] Einleitung

Die Konstruktion der Sprache basiert auf dem Prinzip der Diagonalisierung. Die Diagonalsprache ist die Menge aller Turingmaschinen, die nicht halten, wenn sie ihre eigene Kodierung als Eingabe bekommen. Eine Turingmaschine, welche diese Sprache semi-entscheiden könnte, dürfte weder in der Menge noch nicht in der Menge liegen, was zum Widerspruch zu angenommener Semi-Entscheidbarkeit führt.

Das Komplement der Diagonalsprache ist jedoch semi-entscheidbar. Es wird auch als das spezielle Halteproblem bezeichnet und ist das klassische Beispiel dafür, dass es semi-entscheidbare Sprachen gibt, die nicht entscheidbar sind, so dass die Klasse der entscheidbaren Sprachen eine echte Teilmenge der Klasse der semi-entscheidbaren Sprachen ist.

[Bearbeiten] Definition

Sei Mw die zu einer Kodierung w gehörige Turingmaschine. Dann ist die Diagonalsprache D definiert als: D := \{w \mid M_w ~\text{akzeptiert}~ w ~\text{nicht}\}

[Bearbeiten] D ist nicht semi-entscheidbar

Die Diagonalsprache ist nicht semi-entscheidbar, also rekursiv aufzählbar.

Wenn D semi-entscheidbar wäre, gäbe es eine Turingmaschine M, die D semi-entscheidet, so dass alle Elemente x \in D von M akzeptiert werden, und für Elemente x \notin D hält M ohne zu akzeptieren oder hält nicht. Sei w die Kodierung dieser Turingmaschine M, also M = Mw. Wenn Mw mit Eingabe w gestartet wird (also ihrer eigene Kodierung entscheiden soll), gibt es folgende Möglichkeiten:

  • Angenommen, w \in D:
    • Mw müsste w akzeptieren, denn Mw semi-entscheidet D.
    • Nach Definition von D ist damit aber w \notin D.
    • Widerspruch
  • Angenommen, w \notin D:
    • Mw darf w nicht akzeptieren, denn Mw semi-entscheidet D.
    • Wiederum nach Definition von D ist damit aber w \in D.
    • Widerspruch

Somit kann es eine solche Turingmaschine M nicht geben, die D semi-entscheidet.

[Bearbeiten] Das Komplement von D ist semi-entscheidbar

Das Komplement von D, das sogenannte spezielle Halteproblem, ist jedoch semi-entscheidbar. Definieren wir dieses als K := \{w \mid M_w ~\text{akzeptiert}~ w\}, so akzeptiert folgende Turingmaschine M die Menge K:

  • Bei Eingabe w wird Mw bei Eingabe w simuliert.
  • Sobald Mw in einer akzeptierenden Konfiguration hält, hält auch M und akzeptiert.

Damit ist klar, dass jede Eingabe w \in K genau dann von M akzeptiert wird, wenn Mw die Eingabe w akzeptiert. Für positive Eingaben, also w \in K, akzeptiert M die Eingabe. Für negative Eingaben, also w \notin K, hält M nicht in akzeptierender Konfiguration, hält also ohne in einen Endzustand zu gelangen oder hält gar nicht. Damit semi-entscheidet M die Sprache K.

Jedoch entscheidet M die Sprache K nicht, denn es kann negative Eingaben geben, auf denen die Turingmaschine nicht hält. Eine K entscheidende Turingmaschine kann es auch gar nicht geben, denn diese würde auch das Komplement von K (nämlich gerade die Diagonalsprache D) entscheiden, was nach obigen Ausführungen nicht sein kann.


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -