Sie sind auf Seite 1von 5

Theoretische Grundlagen der Informatik C A U

AG Zuverlässige Systeme
Dirk Nowotka, Mitja Kulczynski & Malte Skambath Christian-Albrechts-Universität zu Kiel

Lösungsvorschlag für Übungsblatt 6


Hausaufgabe A1 6 Punkte
Ordnen Sie jeder der folgenden Sprachen alle der folgenden, zutreffenden Eigenschaften zu:
(1) Turing-entscheidbar (2) Turing-erkennbar (3) Co-Turing-erkennbar (4) aufzählbar
Eine Begründung ist nicht erforderlich.
a) H
b) t! an bn cn | n P N u ˇ )
c) w P t 0, 1, . . . , 9 u˚ ˇ floatp0.wq ď ?12
ˇ
ˇ (
d) xM y P t 0, 1 u˚ ˇˇ M ist TM mit t 0, 101, 110 u X LpM q ‰ H (
e) xM y P t 0, 1 u˚ ˇˇ M ist TM und terminiert bei Eingabe ε in 77 Schritten (
f) xM y P t 0, 1 u˚ ˇ M ist TM und es gibt ein v P t 0, 1 u˚ , sodass M bei Eingabe v in |v| Schritten terminiert

o Mit float bezeichnen wir die Konvertierung eines Wortes in seine rationale Interpretation. Es gilt z.B.
floatp0.123q “ 0, 123.

Lösung:
a) (1) (2) (3) (4)
b) (1) (2) (3) (4)
c) (1) (2) (3) (4)
d) (2) (4)
e) (1) (2) (3) (4)
f) (2) (4)


Hausaufgabe A2 ˇ ( 6 Punkte
˚
Gegeben sei die Sprache L “ w P t a, b u ˇ |w| ”2 0 . Begründen Sie, warum die folgenden Reduktions-
funktionen keine gültige Reduktion im Sinne der Vorlesung darstellen.

a) Die Reduktion H ALTεTM ď L kann mittels Reduktionsfuntkion f : t 0, 1 u˚ Ñ t a, b u˚ definiert durch


#
aa falls w gültige Kodierung einer TM und w P H ALTεTM ,
f pwq “
a sonst.

geführt werden.
b) Die Reduktion L ď H ALTεTM kann mittels Reduktionsfuntkion f : t a, b u˚ Ñ t 0, 1 u˚ ; f pwq “
xMw y, wobei die Turingmaschine Mw wie folgt definiert ist:
Mw “ „ Bei Eingabe x P t a, b u˚ arbeite wie folgt:
1. Lösche die Eingabe x vom Band und schreibe w auf das Band.
2. Prüfe ob |w| ”2 0 gilt.
3. Ist dies der Fall, akzeptiere die Eingabe. Sonst verwirf.“
geführt werden.
c) Die Reduktion H ALTεTM ď H ALTεTM kann mittels Reduktionsfunktion f : t 0, 1 u˚ Ñ t 0, 1 u˚ defi- Σ 30
niert durch #
xMxM y y falls w “ xM y gültige Kodierung einer TM,
f pwq “
xTy sonst.
geführt werden. Dabei ist T eine Turingmaschine, die niemals terminiert und die Turingmaschi-
ne MxM y ist wie folgt definiert:

Sommersemester 2022 Abgabe: 22. Mai 2021, 23:59


2
Theoretische Grundlagen der Informatik
MxM y “ „ Bei Eingabe x P t a, b u˚ arbeite wie folgt:
1. Lösche die Eingabe x vom Band.
2. Simuliere M über dem Band.
3. Hält M , so laufe endlos. Sonst halte an.“

Lösung:
a) Die Reduktionsfunktion f ist nicht berechenbar, da das Problem HaltεTM nach ö 3.25 Beispiel (Hal-
teproblem der leeren Eingabe) der Vorlesung nicht Turing-entscheidbar ist. Somit kann die Frage der
Gültigkeit von w P HaltεTM nicht beantwortet werden.
b) Die Funktion f ist wohldefiniert, stellt jedoch keine gültige Reduktionsfunktion dar. Betrachte hier-
für das Wort a P Σ˚ . Dann gilt a R L. Da die durch f induzierte Turingmaschine Ma jedoch ver-
werfend hält, gilt f paq “ xMa y P HaltεTM .
c) Die Funktion f ist nicht wohldefiniert. Ist M eine Turingmaschine mit xM y P HaltεTM , so terminiert
M nicht für das leere Wort. Da die durch f induzierte Turingmaschine MxM y die Turingmaschine M
simuliert, terminiert auch diese Simulation (in Schritt 2.) nicht. Folglich kann MxM y niemals den
„sonst“ Fall betreten und damit gilt immer xMxM y y R HaltεTM .


Hausaufgabe A3 18 Punkte
Zeigen Sie mittels Reduktion, dass die Sprachen
˚ ˇ
a) H ALTΣ
(
TM “ xM y M ist Turingmaschine, die für alle Eingaben hält
ˇ
b) C O -E MPTYTM “ t xM, N y | M und N sind TM und LpM q X LpN q ‰ H u
c) E VENTM “ t xM, wy | M ist TM, die nach einer geraden Anzahl von Schritten für w akzeptiert u
nicht Turing-entscheidbar sind.

Lösung:
˚
a) Wir zeigen, dass aus der Turing-Entscheidbarkeit der Sprache HaltΣ
TM die Turing-Entscheidbarkeit
von HaltTM folgen würde. Wir wissen jedoch, dass HaltTM nicht Turing-entscheidbar ist.
˚
Angenommen HaltΣ TM ist Turing-entscheidbar, dann gibt es eine Turingmaschine MHaltΣ˚ , welche
TM
die Sprache entscheidet. Dann lässt sich HaltTM mit der Turingmaschine MHaltTM entscheiden. Sei
x P t 0, 1 u˚ die Eingabe der Turingmaschine MHaltTM . Wir definieren die Reduktionsfunktion f :
t 0, 1 u˚ Ñ t 0, 1 u˚ durch
#
xMx1 y falls x “ xM, wy gültige Kodierung einer Turingmaschine M und eines Wortes w
f pxq “
xTy sonst.

Die Turingmaschine Mx1 definieren wir wie folgt:


Mx1 “ „ Bei Eingabe y arbeite wie folgt:
1. Lösche y vom Band.
2. Schreibe w auf das Band.
3. Simuliere M über w.“
Die Funktion f ist Turing-berechenbar, da die Überprüfung auf Gültigkeit einer Kodierung nach
Vorlesung berechenbar ist. Weiter sind auch das Löschen des Bandes, das schreiben des Wortes w
und auch die Simulation einer Turingmaschine nach Vorlesung berechenbar.
Die Turingmaschine MHaltΣ˚ die konstruierte Turingmaschine M 1 genau dann, wenn M für das
TM
Wort w anhält, denn es gilt für x P t 0, 1 u˚ die folgende Äquivalenz:

Sommersemester 2022 Lösungsvorschlag für Übungsblatt 6


3
Theoretische Grundlagen der Informatik

x P HaltTM ðñ x “ xM, wy und M hält beim Lesen von w (Definition HaltTM )


ðñ x “ xM, wy und Mx1 hält für alle Eingaben (Definition Mx1 )
˚ ˚
ðñ x “ xM, wy ^ xMx1 y P HaltΣ
TM (Definition HaltΣ
TM )
˚
ðñ f pxq P HaltΣ
TM (Definition f )

Folglich ist HaltTM mit der obigen Turingmaschine Turing-entscheidbar, was einen Widerspruch
˚
darstellt. Somit kann auch HaltΣ
TM nicht Turing-entscheidbar sein.
b) Wir zeigen, dass aus der Turing-Entscheidbarkeit der Sprache Co-EmptyTM die Turing-Entscheidbarkeit
von ATM folgen würde. Wir wissen jedoch, dass ATM nicht Turing-entscheidbar ist.

Angenommen Co-EmptyTM ist Turing-entscheidbar, dann gibt es eine Turingmaschine MCo-EmptyTM ,


welche die Sprache entscheidet. Dann lässt sich ATM mit der Turingmaschine MATM entscheiden.
Sei x P t 0, 1 u˚ die Eingabe der Turingmaschine MATM . Wir definieren die Reduktionsfunktion
f : t 0, 1 u˚ Ñ t 0, 1 u˚ durch
#
xM1 , M2 y falls x “ xM, wy gültige Kodierung einer Turingmaschine M und eines Wortes w
f pxq “
xT, Ty sonst.

Die Turingmaschine M1 mit einem Eingabealphabet Σ arbeitet wie folgt:


M1 “ „ Bei Eingabe x1 P Σ˚ arbeite wie folgt:
(1) Akzeptiere x1 .“
Die Turingmaschine M2 mit einem Eingabealphabet Σ arbeitet wie folgt:
M2 “ „ Bei Eingabe x2 P Σ˚ arbeite wie folgt:
(1) Lösche die Eingabe x2 vom Band.
(2) Schreibe w auf das Band.
(3) Simuliere M über dem Band.
(4) Akzeptiere, wenn M akzeptiert.
(5) Sonst verwerfe die Eingabe.“
Die Funktion f ist Turing-berechenbar, da das Überprüfen der Gültigkeit einer Kodierung nach
Vorlesung berechenbar ist. Weiter ist auch das Löschen, Schreiben von w auf das Band und die
Simulation einer Turingmaschine nach Vorlesung berechenbar.
Sei x P t 0, 1 u˚ . Wir erhalten nun für die gültige Kodierung eines Paares x “ xM, wy die folgende
Äquivalenz:

xM, wy P ATM ðñ M akzeptiert w (Definition ATM )


˚
ðñ M2 akzeptiert jede Eingabe x P Σ (Definition M2 )
˚
ðñ M2 und M1 akzeptieren jede Eingabe x P Σ (Definition M1 )
˚
ùñ LpM2 q “ LpM1 q “ Σ ‰ H (Def. Akzeptanz, Def. ˚)
˚
ðñ LpM2 q X LpM1 q “ Σ (Eigenschaften X)
ðñ xM1 , M2 y P Co-EmptyTM (Definition Co-EmptyTM )
ðñ f pxM, wyq P Co-EmptyTM (Definition f )

Sommersemester 2022 Lösungsvorschlag für Übungsblatt 6


4
Theoretische Grundlagen der Informatik
Weiter gilt auch

xM, wy R ATM ðñ M akzeptiert w nicht (Definition ATM )


ðñ M2 akzeptiert keine Eingabe (Definition M2 )
ðñ M2 akzeptiert keine Eingabe und
M1 akzeptiert jede Eingabe x P Σ˚ (Definition M1 )
˚
ðñ LpM2 q “ H ^ LpM1 q “ Σ (Def. Akzeptanz, Def. ˚)
ùñ LpM2 q X LpM1 q “ H (Eigenschaften X)
ðñ xM1 , M2 y R Co-EmptyTM (Definition Co-EmptyTM )
ðñ f pxM, wyq R Co-EmptyTM (Definition f )

Ist x keine gültige Kodierung einer Turingmaschine M und eines Wortes w, so gilt x R ATM . Weiter
gilt f pxq “ xT, Ty und damit LpTq X LpTq “ H X H “ H. Also auch f pxq R Co-EmptyTM
Somit gilt ATM ď Co-Empty, also ist auch Co-Empty nicht Turing-entscheidbar.
c) Wir zeigen, dass aus der Turing-Entscheidbarkeit der Sprache EvenTM die Turing-Entscheidbarkeit
von HaltεTM folgen würde. Wir wissen jedoch, dass HaltεTM nicht Turing-entscheidbar ist.
Angenommen EvenTM ist Turing-entscheidbar, dann gibt es eine Turingmaschine MEvenTM , welche
die Sprache entscheidet. Dann lässt sich HaltεTM mit der Turingmaschine MHaltεTM entscheiden. Sei
x P t 0, 1 u˚ die Eingabe der Turingmaschine MHaltεTM . Wir definieren die Reduktionsfunktion f :
t 0, 1 u˚ Ñ t 0, 1 u˚ durch
#
xNxM y , εy falls x “ xM y gültige Kodierung einer Turingmaschine
f pxq “
xTy sonst.

Die Turingmaschine NxM y definieren wir wie folgt:


NxM y “ „ Bei Eingabe y arbeite wie folgt:
1. Falls y ‰ ε, verwerfe die Eingabe.
2. Simuliere M .
3. Löschen den Bandinhalt.
4. Simuliere M .
5. Löschen den Bandinhalt.
6. Akzeptiere.“
Die Turingmaschine T ist die aus dem Skript bekannte Turingmaschine, die niemals terminiert.
Diese Funktion ist berechenbar, da das Überprüfen des Bandes auf leeren Inhalt mittels einer Tran-
sition
δpq0 , , Nq “ pq01 , q,
beziehungsweise
δpq0 , x, Nq “ pqrej , xq
für x P Γ in einem Schritt realisierbar ist.
Weiter ist die Simulation einer Turingmaschine und das Löschen des Bandinhalts nach Vorlesung
berechenbar.
Die beliebige Akzeptanz ist mit einer Transition

δpq, , Nq “ pqacc , q

für ein passendes q P Q ebenfalls in einem Schritt realisierbar.


Da die Turingmaschine T und auch die Dekodierung einer Eingabe berechenbar sind, ist die Funk-
tion f berechenbar.
Die Turingmaschine MEvenTM akzeptiert die Eingabe xNxM y , εy genau dann, wenn M für das Wort
ε anhält, denn es gilt für x P t 0, 1 u˚ :

Sommersemester 2022 Lösungsvorschlag für Übungsblatt 6


5
Theoretische Grundlagen der Informatik
„ùñ“ Sei x P HaltεTM . Dann gilt x “ xM y mit M ist eine Turingmaschine, die für ε hält. Somit
terminiert für f pxq “ xNxM y , εy auch die Turingmaschine NxM y . Weiter zeigen wir nun, dass
NxM y eine gerade Anzahl an Schritten benötigt. Wie bereits beschrieben, benötigen wir für
den Punkt 1. und Punkt 6. jeweils einen Schritt der Turingmaschine. Da die Simulation von
M über dem leeren Band terminiert, gibt es ein n P N, sodass M genau n-Schritte braucht,
um für ε zu terminieren. Für das Löschen der Eingabe benötigen wir ϕxM y pεq viele Schritte.
Insgesamt ergibt sich:

1 ` n ` |ϕxM y pεq| ` n ` |ϕxM y pεq| ` 1 “ 2 ¨ pn ` |ϕxM y pεq| ` 1q.

Somit gilt auch f pxq P EvenTM .


„ðù“ Sei x R HaltεTM . Ist x keine gültige Kodierung, so gilt f pxq “ xTy. Da T niemals terminiert, gilt
f pxq R EvenTM . Gilt x “ xM y mit M ist eine Turingmaschine, dann terminiert M für ε nicht,
da xM y R HaltεTM gilt. Somit terminiert für f pxq “ xNxM y , εy auch die Turingmaschine NxM y
nicht, da die Simulation von M in Schritt 2 niemals terminiert. Also gilt auch f pxq P EvenTM .
Folglich ist auch EvenTM nicht Turing-entscheidbar.

Sommersemester 2022 Lösungsvorschlag für Übungsblatt 6

Das könnte Ihnen auch gefallen