Zeigen Sie: Wenn es möglich ist, für zwei beliebige Turing-Maschinen
zu entscheiden, ob sie dieselbe Sprache akzeptieren, so ist es auch
möglich, für beliebige Turing-Maschinen zu entscheiden, ob sie die leere
Sprache akzeptieren.
gesucht: Erkennt die Turing-Maschine
die leere Sprache
?
Konstruktion einer Turing-Maschine
,
die für jedes Wort
ablehnt
a) Konstruieren Sie eine Turing-Maschine
,
welche die Multiplikation zweier natürlicher Zahlen implementiert. Dabei
sollen sowohl die Eingaben als auch die Ausgabe unär kodiert sein.
input:"11_111"blank: _start state: skip_right_atable:skip_right_a:1: R_:{R: skip_right_b}skip_right_b:1: R_:{write: S,L: skip_left_b} # move left over the inputsskip_left_b:1: L_:{L: skip_left_a}skip_left_a:1: L_:{R: take1} # subtract one from atake1:1:{write: _,R: skip_input}_:{R: cleanup} # skip right over inputs and outputsskip_input:[_,1]: RS:{R: skip_output}skip_output:1: R_:{L: skip_output_to_b} # add 1 to output for every 1 in b and turn 1 to 2 in bskip_output_to_b:1: LS:{L: flip_b}flip_b:2: L1:{write:2,R: append_1}_:{R: unflip_b}append_1:[2, S,1]: {R: append_1}_:{write:1,L: skip_output_to_b} # turn 2 to 1 in bunflip_b:2:{write:1,R: unflip_b}S:{L: skip_left_b} # erase up to and including "S"cleanup:[_,1]: {write: _, R: cleanup}S:{write: _,R: done}done:
Aufgabe 1.4
Auf Folie
27 der 2. Vorlesung vom 11.4.2024 wird innerhalb des
Widerspruchsbeweises zur Berechenbarkeit der Busy-Beaver-Funktion eine
Turingmaschine
mit Alphabet
verwendet, welche die Funktion
berechnet. b) Geben Sie eine Einband-Turingmaschine über dem
Alphabet
an, die die Funktion
berechnet.
(Beim Verwenden von IF x != 0 THEN scheint es einen Bug
zu geben und das ganze Programm einfach nicht zu laufen.)
result := b
# <if a > 0>
nonzero := 0
LOOP a DO
nonzero := 1
END
LOOP nonzero DO
# </if a > 0>
LOOP b DO
# <if b > 0>
nonzero := 0
LOOP b DO
nonzero := 1
END
LOOP nonzero DO
# </if b > 0>
# now we are inside WHILE b != 0
aminusb := a
LOOP b DO
aminusb := aminusb - 1
END
# <if aminusb > 0>
nonzero := 0
LOOP aminusb DO
nonzero := 1
END
else := 1
LOOP nonzero DO
# </if aminusb > 0>
# if a > b
LOOP b DO
a := a - 1
END
else := 0
END
LOOP else DO
# if b <= a
LOOP a DO
b := b - 1
END
END
END
END
result := a
END
Aufgabe 2.3
Zeigen Sie, dass es keine Many-One-Reduktion vom Halteproblem
von Turing-Maschinen auf das Leerheitsproblem
von Turing-Maschinen gibt.
ist semi-entscheidbar und unentscheidbar. Daraus folgt
ist nicht co-semi-entscheidbar. (Wäre
semi-entscheidbar und
ebenfalls semi-entscheidbar (gleichbedeutend mit
ist co-semi-entscheidbar), wäre
entscheidbar.)
ist nicht co-semi-entscheidbar und
ist nicht co-semi-entscheidbar
(das Komplement zu
)
ist nicht semi-entscheidbar
Um einen Widerspruch herbeizuführen, ist zu zeigen, dass
semi-entscheidbar ist, bspw. mit einer Reduktion
.
Theorem
9.8 beweist, dass
semi-entscheidbar ist
(
ist in Kapitel
9.2.3 (Seite 403) als die Sprache der Universellen Turing-Maschine
definiert
(
ist eine Turing-Maschine,
).):
Konstruktion einer nicht-deterministische
Turing-Maschine
mit der Eingabe
nutzt seine nicht-deterministischen Fähigkeiten, um
zu raten.
wird auf das Band geschrieben.
Halteproblem:
Die Turing-Maschine
wird auf
simuliert.
Akzeptiert
,
so akzeptiert auch
.
Sollte
also irgendeine Eingabe akzeptieren
(),
rät
diese und akzeptiert somit die Eingabe
.
Damit ist
semi-entscheidbar.
Widerspruch: Es kann somit keine Many-One-Reduktion
geben.
Zeigen Sie, dass jede semi-entscheidbare Sprache
auf das Halteproblem
many-one-reduziert werden kann.
Dazu muss eine totale turing-berechenbare Funktion
gefunden werden. Da
semi-entscheidbar ist existiert eine Turing-Maschine
,
die alle Worte
akzeptiert und ewig läuft, wenn
.
Idee:
mit
konstruiert einer Turing-Maschine
,
die zuerst das Band löscht, dann
auf das Band schreibt und anschließend das Halteproblem
simultiert.
Wenn
auf
hält, hält auch
und die Eingabe
wird akzeptiert. Ist
läuft
und damit auch
ewig.
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. a) Die Menge der Instanzen des Postschen
Korrespondenzproblems, welche eine Lösung haben, ist
semi-entscheidbar.
wahr, das PCP ist semi-enscheidbar. Wenn ein PCP
mit
“Dominosteinen” eine Lösung der Länge
hat, dann kann diese Lösung mittels Brute-Force in
gefunden werden und die Turing-Maschine hält.
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. b) Das Postsche Korrespondenzproblem ist bereits über
dem Alphabet
nicht entscheidbar.
wahr, TODO
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. c) Es ist entscheidbar, ob eine Turingmaschine nur
Wörter akzeptiert, die Palindrome sind. (Ein Palindrom ist ein Wort
mit
.)
falsch, TODO
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. d)
ist semi-entscheidbar.
wahr
Konstruktion einer Turing-Maschine
mit der Eingabe
als Semi-Entscheider für
:
lösche das Band
schreibe
auf das Band
simuliere
auf
akzeptiert
,
dann war
hält
nicht, hält auch
nicht
semi-entscheidbar
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. e) Es ist nicht entscheidbar, ob die von einer
deterministischen Turing-Maschine berechnete Funktion total ist.
wahr: Ist
total?
Hält
für
?
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. f) Es gibt reguläre Sprachen, die nicht
semi-entscheidbar sind.
Aufgabe 3.1
Besitzen folgende Instanzen
des Postschen Korrespondenzproblems Lösungen? Begründen Sie Ihre
Antwort.
a)
Lösung für
Besitzen folgende Instanzen
des Postschen Korrespondenzproblems Lösungen? Begründen Sie Ihre
Antwort.
b)
womöglich, aber keine Lösung für
Besitzen folgende Instanzen
des Postschen Korrespondenzproblems Lösungen? Begründen Sie Ihre
Antwort.
c)
womöglich, aber keine Lösung für
import multiprocessingfrom functools import cachepost = [# ("a", "aaa"),# ("abaa", "ab"),# ("ab", "b"), ("ab", "aba"), ("baa", "aa"), ("aba", "baa"),# ("bba", "a"),# ("ba", "baa"),# ("ba", "aba"),# ("ab", "bba"),]@cachedef path_to_strings(path):ifnot path:return ([], []) a, b = path_to_strings(path[:-1]) i = path[-1]return (a + [post[i][0]], b + [post[i][1]])def find_solution(worker_num, q, finished): depth =0whileTrue: path = q.get()iflen(path) > depth: depth =len(path)print("worker", worker_num, "depth:", depth)assert depth <20# generate both strings top, bottom = path_to_strings(path)if"".join(top) =="".join(bottom): finished.put(path)break# create new paths from the curent path plus each tuplefor i inrange(len(post)): q.put(path + (i,))# intial paths of length 1 each starting with another PCP tupleq = multiprocessing.Queue()for i inrange(len(post)): q.put((i,))# start 8 processes that will write their results to finishedfinished = multiprocessing.Queue()workers = [ multiprocessing.Process(target=find_solution, args=(i, q, finished))for i inrange(8)]for worker in workers: worker.start()try:# wait for the first result result = finished.get()finally:# kill all workersfor worker in workers: worker.kill() worker.join()# print resultprint(result)top, bottom = path_to_strings(result)print(top, "==", bottom)
Aufgabe 3.2
Zeigen Sie, dass das Postsche Korrespondenzproblem über einem
einelementigen Alphabet entscheidbar ist.
Jede Instanz des Postschen Korrespondenzproblem über einem
einelementigen Alphabet
ist durch eine Menge
,
wobei
,
gegeben. Die Lösung ist berechenbar, genau dann wenn eine Lösung
existiert:
(Die Reihenfolge der Elemente in der Lösung
ist beliebig vertauschbar, da
.)
Die erzeugten Worte sind gleich, wenn sie die gleiche Länge
haben.
Lösbarkeit:
(triviale Lösung):
und
:
sonst alle
oder alle
:
Es ist also lediglich zu prüfen, ob die Instanz
ein Element
beinhaltet oder
zwei Elemente
mit
und
mit
beinhaltet.
Beispiele:
Aufgabe 3.3
Es sei
ist eine Turing-Maschine, welche
akzeptiert, falls sie
akzeptiert,
wobei
das zu
umgekehrte Wort ist. Zeigen Sie, dass
nicht entscheidbar ist.
Beweis:
Redunktionsfunktion
für
konstruiert eine Turing-Maschine
simuliert
auf
Da
,
akzeptiert
.
wird erweitert, dass
auch
akzeptiert.
Da
nicht entscheidbar ist und
existiert, ist
nicht entscheidbar.
Aufgabe 3.4
Zeigen Sie, dass weder das Äquivalenzproblem
für Turing-Maschinen noch dessen Komplement
semi-entscheidbar ist, wobei
,
.
Zeigen Sie dazu, dass
und
gilt. Weshalb zeigt dies die Aussage?
für
,
da
für
ist eine Turing-Maschine, die ein
akzeptiert, z.B.:
mit
erwartet als erstes Zeichen
,
löscht dieses, geht nach rechts
simuliert
,
weil jedes Wort
mit
beginnt und damit
,
da
ist nicht co-semi-entscheidbar
ist nicht co-semi-entscheidbar
ist nicht semi-entscheidbar
ist nicht co-semi-entscheidbar
ist nicht co-semi-entscheidbar
ist nicht semi-entscheidbar
Sei
eine unentscheidbare Sprache. Zeigen Sie: a)
hat eine Teilmenge
,
die entscheidbar ist.
mit Entscheider
:
hat nur einen Zustand, der ein nicht-akzeptierender Endzustand ist.
Sei
eine unentscheidbare Sprache. Zeigen Sie: b)
hat eine Obermenge
,
die entscheidbar ist.
mit Entschieder
:
hat nur einen Zustand, der ein akzeptierender Endzustand ist.
Sei
eine unentscheidbare Sprache. Zeigen Sie: c) Es gibt jeweils nicht nur eine sondern unendlich
viele entscheidbare Teilmengen bzw. Obermengen wie in (a) und (b).
Jede überabzählbare Menge
hat unendlich viele abzählbare Teilmengen
.
Wenn
abzählbar ist, dann ist
entscheidbar.
mit
(Das Alphabet von
wird um weitere Zeichen, die nicht in
liegen, erweitert.): Es existieren unendlich viele
.
Aufgabe 4.1
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. a) Falls
gilt, dann auch
falsch, für eine deterministische Turing-Maschine in P lässt
sich auch immer eine nicht-deterministische Turing-Maschine in
NP konstruieren.
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. b) Es gibt Probleme, die NP-hard, aber nicht
NP-vollständig sind.
wahr, Gegenbeispiel
:
Jedes Problem in NP kann auf
reduziert werden
,
aber
(siehe Ackermann-Funktion, Busy-Beaver, …) und damit nicht
NP-complete.
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. c) Polynomielle Reduzierbarkeit ist nicht
transitiv.
falsch, Many-One-Reduktionen sind transitiv: aus
mit
und
mit
folgt
mit
.
Eine polynomielle Reduktion ist eine Many-One-Reduktion mit
polynomieller Laufzeit. Eine Verkettung von polynomiellen Funktion
erzeugt auch wieder eine polynomielle Funktion.
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. d) Ist
und
,
dann ist auch
.
wahr, für
existiert eine deterministische Turing-Maschine mit polynomieller
Laufzeit
als Entscheider. Jedes Wort in
in
lässt sich entscheiden, indem man es mit einer Funktion
in ein Wort
in
überführt und anschließend der Entscheider
simuliert. Sowohl
als auch
laufen in polynomieller Zeit, also ist
in P entscheidbar.
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. e) Ist
eine NP-vollständige Sprache und gilt
,
dann ist auch
eine NP-vollständige Sprache.
wahr, da
polynomiell entscheidbar ist und
mit einer polynomiellen Funktion in
überführt werden kann, muss auch der Entscheider für
ebenfalls polynomiell lange laufen. Damit liegt
in NP. Da
aber auch in NP-hard liegt, muss also auch
in NP-hard liegen. Da
in NP und NP-hard liegt, liegt es in
NP-complete.
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. f) Ist
eine NP-vollständige Sprache und gilt
,
dann ist auch
eine NP-vollständige Sprache.
falsch,
ist möglich.
Gegenbeispiel:
Reduktion mit
Aufgabe 4.2
Zeigen Sie, dass das Wortproblem deterministischer endlicher
Automaten in LogSpace liegt:
ist
ist ein DFA, der
akzeptiert,
dann gilt
Der Speicherbedarf ist mit
beschränkt. Der Automat ist wie folgt definiert
.
Um
zu simulieren, muss die aktuelle Position in
und der aktuelle Zustand von
gespeichert werden. Da der Automat
deterministisch ist, kann er sich immer nur in genau einem
befinden. Also
mit
und
mit
zu speichern. Solange
und
nicht unär kodiert sind, ist
mit
als Länge der Kodierung der Zahl
.
Aufgabe 4.3
Wir betrachten das folgende Problem
:
Gegeben sind zwei gerichtete Graphen
und
sowie eine Zahl
.
Gefragt ist, ob es Teilmengen
und
gibt, so dass
ist und es eine Bijektion
gibt, so dass gilt
. a) Zeigen Sie
.
ermittelt, ob
und
isomorphe Subgraphen mit
Knoten enthalten.
genau dann, wenn eine Lösung
,
,
in polynomieller Zeit überprüft werden kann:
def check(V1_, V2_, f):assertlen(V1_) ==len(V2_)for u in V1_:for v in V1_: u_v_in_E1 =Falsefor e in E1:if (u, v) == e: u_v_in_E1 =Trueif u_v_in_E1: u2 = f(u) u2_in_V2 =Falsefor x in V2_:if u2 == x: u2_in_V2 =Trueassert u2_in_V2 v2 = f(v) v2_in_V2 =Falsefor x in V2_:if v2 == x: v2_in_V2 =Trueassert v2_in_V2 u2_v2_in_E2 =Falsefor e in E2:if (u2, v2) == e: u2_v2_in_E2 =Trueassert u2_v2_in_E2
check(V1_, V2_, f) hat eine
Laufzeit
mit
der Laufzeit von
.
Damit ist check(V1_, V2_, f)
polynomiell. Überprüfung der Lösung ist in polynomieller Zeit möglich,
damit ist
.
Wir betrachten das folgende Problem K: Gegeben sind zwei gerichtete
Graphen
und
sowie eine Zahl
.
Gefragt ist, ob es Teilmengen
und
gibt, so dass
ist und es eine Bijektion
gibt, so dass gilt
. b) Zeigen Sie, dass
ein NP-schweres Problem ist. Zeigen Sie dafür, dass das Problem
CLIQUE auf K in polynomieller Zeit reduzierbar
ist.
CLIQUE sucht für einen ungerichteten Graph
und
einen Subgraph
mit
,
und
,
so dass jeder Knoten des Subgraphs mit jedem anderen Knoten des
Subgraphs verbunden ist.
:
gegeben: ungerichteter Graph
und
ist ungerichtet
()
Führe
aus:
()
mit
()
()
sucht also einen Subgraph, der sowohl in
als auch
enthalten ist. (Da
ist
und spart die Bijektion der Knoten.) Da in
alle Knoten miteinander verbunden sind, ist der Subgraph nur in
enthalten, wenn dort auch alle Knoten des Subgraphs miteinander
verbunden sind.
Ergebnis:
mit
,
jeder Knoten in
ist mit jedem anderen Knoten in
verbunden
CLIQUE ist auch wieder ein ungerichteter Graph, alss muss
noch umgewandelt werden, um die Lösung von CLIQUE zu erhalten:
()
Zeigen Sie, dass NP unter Kleene-Stern abgeschlossen
ist.
Es ist zu zeigen
gegeben:
entscheidet in
,
ob
oder
gesucht: nicht-deterministische Turing Maschine
,
die in
entscheidet, ob
oder
Beweis:
nicht-deterministische Turing-Maschine
rät Aufteilung von
in
mit
in
überprüfbar
akzeptiert das leere Wort
simuliert
für jedes
in
akzeptiert
jedes
akzeptiert
sonst
lehnt ab
Aufgabe 5.1
Wir betrachten das folgende Problem
:
Gegeben eine aussagenlogische Formel
mit
Variablen, gibt es eine erfüllende Belegung von
,
bei der mindestens die Hälfte aller in
vorkommenden Variablen mit “true” belegt sind? a) Formalisieren Sie dieses Problem als Sprache und
zeigen Sie, dass
gilt.
nicht-deterministische Turing-Maschine:
rät
prüft in polynomieller Zeit, ob
erfüllt ist
prüft in polynomieller Zeit, ob mindestens die Hälfte aller in
vorkommenden Variablen mit “true” belegt sind
Wir betrachten das folgende Problem
:
Gegeben eine aussagenlogische Formel
mit
Variablen, gibt es eine erfüllende Belegung von
,
bei der mindestens die Hälfte aller in
vorkommenden Variablen mit “true” belegt sind? b) Zeigen Sie, dass K ein NP-schweres Problem ist.
(),
Reduktionsfunktion:
Eingabe
mit
erweitere
um
weitere Variablen, die alle mit “true” belegt sein müssen:
die Hälfte aller Variablen in
ist mit
belegt
Da
und nicht
gefragt war, ist die Laufzeit der Reduktion egal, wird wohl aber doch
polynomiell sein.
Aufgabe 5.2
Im folgenden Solitaire-Spiel haben wir ein Spielbrett der
Größe
gegeben. Als Ausgangsposition liegt auf jeder der
Positionen entweder ein blauer Stein, ein roter Stein, oder gar nichts.
Das Spiel wird nun so gespielt, dass Steine vom Brett genommen werden
bis in jeder Spalte nur noch Steine einer Farbe liegen, und in jeder
Zeile mindestens ein Stein liegen bleibt. In diesem Fall ist das Spiel
gewonnen. Es ist möglich, dass man ausgehend von einer Ausgangsposition
das Spiel nicht gewinnen kann. a) Formalisieren Sie das Problem, für eine gegebene
Ausgangsposition im Solitaire-Spiel zu entscheiden, ob es möglich ist,
das Spiel zu gewinnen, als ein Entscheidungsproblem
SOLITAIRE.
Im folgenden Solitaire-Spiel haben wir ein Spielbrett der
Größe
gegeben. Als Ausgangsposition liegt auf jeder der
Positionen entweder ein blauer Stein, ein roter Stein, oder gar nichts.
Das Spiel wird nun so gespielt, dass Steine vom Brett genommen werden
bis in jeder Spalte nur noch Steine einer Farbe liegen, und in jeder
Zeile mindestens ein Stein liegen bleibt. In diesem Fall ist das Spiel
gewonnen. Es ist möglich, dass man ausgehend von einer Ausgangsposition
das Spiel nicht gewinnen kann. b) Zeigen Sie, dass
gilt.
nicht-deterministische Turing-Maschine:
Rät ausgehend vom Ausgangsbrett eine erfüllende End-Position.
Falls keine Endposition existiert, dann akzeptiere
nicht.
Prüfe für jede der
Spalten, ob alle Steine die gleiche Farbe haben.
Prüfe für jede der
Zeilen, ob diese mindestens einen Stein enthält.
In
Schritten lässt sich aus der Endposition das Ausgangsbrett
wiederherstellen, indem die Steine, so wie sie auf dem Ausgangsbrett
lagen, wieder zur Endposition hinzugefügt werden ohne bereits liegende
Steine zu ersetzen.
Für eine gegebene Endposition lässt sich also in
überprüfen, ob diese zu der Ausgangsposition passt
Im folgenden Solitaire-Spiel haben wir ein Spielbrett der
Größe
gegeben. Als Ausgangsposition liegt auf jeder der
Positionen entweder ein blauer Stein, ein roter Stein, oder gar nichts.
Das Spiel wird nun so gespielt, dass Steine vom Brett genommen werden
bis in jeder Spalte nur noch Steine einer Farbe liegen, und in jeder
Zeile mindestens ein Stein liegen bleibt. In diesem Fall ist das Spiel
gewonnen. Es ist möglich, dass man ausgehend von einer Ausgangsposition
das Spiel nicht gewinnen kann. c) Zeigen Sie, dass SOLITAIRE ein
NP-schweres Problem ist, indem Sie zeigen, dass 3-SAT
in polynomieller Zeit auf SOLITAIRE reduzierbar ist.
TODO
Aufgabe 5.3
Sei
ein Alphabet und
.
Wir sagen, dass
auf
in logarithmischen Platz reduzierbar ist, und schreiben
,
falls es eine Many-One-Reduktion von
nach
gibt, die in logarithmischen Platz berechenbar ist. Begründen Sie: Gilt
und
,
dann gilt auch
.
Anmerkung: Bei dieser Aufgabe ist nicht nach einem vollständigen Beweis,
sondern eher nach einer Beweisidee gefragt.
Problem: lediglich das Arbeitsband der Reduktion
bzw.
ist mit
beschränkt, die Ausgabe von
bzw.
kann aber
sein.
Wir zeigen, dass für zwei logspace-berechenbare Funktion
auch
logspace-berechenbar ist. Seien dazu
und
Turing-Maschinen, die mit logarithmischer Platzbeschränkung die
Funktionen
und
berechnen.
Eine erste Idee, eine Turing-Maschine
zu erhalten, die
berechnet, ist, zuerst
auf der Eingabe aufzurufen, das Zwischenergebnis zu speichern, und dann
auf diesem Zwischenergebnis laufen zu lassen. Diese Idee
funktioniert jedoch nicht: zwar benutzt
bei Eingabe
nur zusätzlich logarithmischen Platz zur Berechnung von
.
Dieses Ergebnis kann jedoch polynomiell groß sein in der Länge von
– und damit exponentiell in der Größe des zur Verfügung stehenden
Platzes, der ja logarithmisch in der Größe von
beschränkt ist. Damit kann das Zwischenergebnis
nicht vollständig gespeichert werden und dieser Ansatz funktioniert
nicht.
Wir können aber diese Idee so modifizieren, dass sie funktioniert!
Dazu berechnen wir die Zeichen von
“on demand”: wir verändern
so, dass sie nur das
-te
Symbol von
berechnet. Dies kann erreicht werden, indem
mit einem weiteren Zähler
versehen wird, der um eins hochgezählt wird, wann immer
ein Symbol ausgeben möchte. Ist der Wert von
gleich
,
gibt
das entsprechende Zeichen aus und hält an.
Um
in LogSpace zu berechnen, gehen wir nun wie folgt vor: wir
simulieren die Berechnung von
.
Wann immer diese Berechnung ein Symbol von
lesen möchte, simulieren wir
wie oben beschrieben. Beide Simulationen können in logspace durchgeführt
werden, und damit kann auch
in logspace berechnet werden.
Diese Berechnung von
ist recht ineffizient, da Symbole von
möglicherweise mehrfach berechnet werden. Wir haben aber potentiell
nicht genug Platz, um das gesamte Wort
zu speichern. Wir tauschen also “Platz gegen Zeit”.
Aufgabe 5.4
PCP-k ist das folgende Entscheidungsproblem: Gegeben: eine Zahl
in unärer Kodierung und eine Instanz
des Postschen Korrespondenzproblems, d.h. eine endliche Folge von
Wortpaaren
über einem Alphabet
,
also
für
. Gefragt: Gibt es eine Lösung für
mit maximaler Länge
?
Oder genauer: Gibt es eine Folge von Zahlen
,
so dass gilt:
wobei
ist und
für alle
? a) Zeigen Sie, dass PCP-k entscheidbar
ist.
PCP ist semi-entscheidbar. Da zusätzlich mit
noch ein Abbruchkriterium gegeben ist, lassen sich in
alle möglichen Kombinationen durchprobieren. (Für jedes
mit
kann aus
Dominosteinen des PCP-Problems gewählt werden.) Wenn
also in den
möglichen Kombinationen keine Lösung gefunden wurde, kann eine Lösung
des PCP-k ausgeschlossen werden.
PCP-k ist entscheidbar.
PCP-k ist das folgende Entscheidungsproblem: Gegeben: eine Zahl
in unärer Kodierung und eine Instanz
des Postschen Korrespondenzproblems, d.h. eine endliche Folge von
Wortpaaren
über einem Alphabet
,
also
für
. Gefragt: Gibt es eine Lösung für
mit maximaler Länge
?
Oder genauer: Gibt es eine Folge von Zahlen
,
so dass gilt:
wobei
ist und
für alle
? b) Zeigen Sie, dass PCP-k in NP
liegt.
Eine Lösung
des allgemeinen PCP lässt sich in polynomieller Zeit
verifizieren. Damit lässt sich auch PCP-k mit
in polynomieller Zeit verifizieren.
Wir betrachten das japanische Spiel Gomoku, welches von zwei Spielern
und
auf einem
-Brett
gespielt wird. Die Spieler setzen abwechselnd ihre Steine auf das Brett,
und derjenige Spieler, der zuerst fünf Steine in einer Reihe
(horizontal, vertikal, oder diagonal) gelegt hat, gewinnt. Spieler
beginnt.
Verallgemeinertes Gomoku wird statt auf einem Brett fester
Größe auf einem beliebigen
-Brett
gespielt. Eine Position in diesem Spiel ist eine Belegung der Felder des
Spielbretts mit Steinen der Spieler
und
,
wie sie in einem wirklichen Spiel auftreten könnte. Sei
wobei
die zeilenweise Kodierung der Position
über einem festen Alphabet ist. Argumentieren Sie, warum
gilt.
TODO
Aufgabe 6.5
Welche der folgenden Quantifizierten Booleschen Formeln (QBFs) sind
wahr? Begründen Sie Ihre Antwort. a)
wahr,
verlangt, dass eine mögliche Belegung für
existiert für die Formel
wahr ist. Eine Möglichkeit ist
.
Welche der folgenden Quantifizierten Booleschen Formeln (QBFs) sind
wahr? Begründen Sie Ihre Antwort. b)
falsch,
verlangt, dass für alle möglichen Belegungen für
die Formel
wahr ist. Gegenbeispiel:
Welche der folgenden Quantifizierten Booleschen Formeln (QBFs) sind
wahr? Begründen Sie Ihre Antwort. c)
falsch, es existiert kein
für das
wahr ist.
Welche der folgenden Quantifizierten Booleschen Formeln (QBFs) sind
wahr? Begründen Sie Ihre Antwort. d)
wahr, für jedes
ist die Formel
mit
erfüllt.
Welche der folgenden Quantifizierten Booleschen Formeln (QBFs) sind
wahr? Begründen Sie Ihre Antwort. e)
falsch, für alle
existiert zwar
,
damit
wahr ist, aber für
ist
nicht wahr.
Welche der folgenden Quantifizierten Booleschen Formeln (QBFs) sind
wahr? Begründen Sie Ihre Antwort. f)
Angenommen, Spieler
ist am Zug. Beschreiben Sie eine Gewinnstrategie für
.
X
Aufgabe N
Zeigen Sie, dass für jedes PSpace-vollständige Problem
auch das Komplement
ein PSpace-vollständiges Problem ist.
Die Entscheider
für
darf zum Entscheiden eines Wortes
höchstens
Speicher nutzen. Der Entscheider
simuliert
auf und kehrt anschließend dessen Ergebnis um. Damit braucht
genauso viel Speicher wie
.
Aufgabe O
Zeigen Sie: ist
,
dann sind alle Sprachen
NP-vollständig.
TODO
Aufgabe 7.1
Zeigen Sie, dass das Wortproblem für linear beschränkte
Turingmaschinen (LBA)
ein PSpace-vollständiges Problem ist. Zur Erinnerung (aus Formale Systeme): Ein linear beschränkte
Turingmaschine (linear bounded automaton, LBA) ist eine
nichtdeterministische Turingmaschine, die den Lese-/Schreibkopf nicht
über das letzte Eingabezeichen hinaus bewegen kann. Versucht sie das, so
bleibt der Kopf stattdessen an der letzten Bandstelle stehen.
Wir zeigen zuerst
.
Dafür muss zuerst geprüft werden, ob eine gegeben Eingabe von der Form
ist, wobei
ein LBA ist. Dabei ist leicht zu sehen, dass in polynomieller
Zeit geprüft werden kann, ob
die Kodierung einer Turing-Maschine ist. Um zu sehen, dass
ein LBA ist, genügt es dann zu prüfen, ob
niemals ein ␣ überschreibt, und bei Lesen des ␣ dieses nicht
überschreibt und den Lesekopf nach links bewegt. Auch dies kann in
polynomieller Zeit geprüft werden.
Als nächstes muss ein Entscheider für
prüfen, ob
die Eingabe
akzeptiert. Dazu beobachten wir, dass die Maschine
höchstens
Konfigurationen durchläuft, bevor sie in eine Schleife gerät. Es genügt
also, die Maschine
für höchstens
Schritte zu simulieren um zu entscheiden, ob
das Wort
erkennt. Die Simulation von
selbst benötigt nur linear Platz (da
ein LBA ist), und hinzu kommt noch Platz für einen Zähler,
dessen Wert höchstens
ist und der deswegen höchstens Platz
benötigt. Dies gesamte Simulation kann also in polynomiellen Platz
ausgeführt werden.
Wir zeigen nun, dass
PSpace-hart ist. Sei dazu
und sei
eine polynomiell platzbeschränkte Turing-Maschine, die
entscheidet. Sei
ein Polynom, welches den Platzverbrauch von
beschränkt. Ohne Einschränkung sei dabei
für alle
.
Definiere dann
durch
wobei
ein neues Symbol ist, so dass
gilt.
Sei nun
die Turing-Maschine, welche
auf der Eingabe simuliert und dabei das
-Zeichen
wie behandelt. Dies kann erreicht werden, indem in der Übergangsfunktion
von
jedes Vorkommen von durch
ersetzt wird, und zusätzlich noch die Transition hinzugefügt wird, dass
bei Lesen von den Lesekopf nach links bewegt und wieder schreibt. Dann
ist
ein LBA und es gilt
Also ist
eine polynomiell zeitbeschränkte Reduktion von
auf
.
Da
beliebig gewählt war folgt, dass
PSpace-hart ist.
TODO
Aufgabe 7.2
Begründen Sie folgende Aussagen: a) Ist
,
dann ist
.
und
Begründen Sie folgende Aussagen: b) Ist
,
dann gilt
,
und
.
Für jedes Problem
liegt sein Komplement
.
Wäre
,
dann wäre
,
aber
.
Das würde bedeutet
,
da
.
Mit
folgt
Widerspruch:
kann also nicht gelten.
Aufgabe 7.3
Wir betrachten folgendes Scheduling-Problem: Gegeben sind Prüfungen
und Studierende
,
so dass jede Prüfung von einer bestimmten Menge von Studierenden
abgelegt wird. Die Aufgabe ist, die Prüfungen so in Zeitslots zu legen,
dass niemand zwei Prüfungen im selben Zeitslot ablegen muss.
Formalisieren Sie die Frage, ob solch ein Prüfungsplan mit höchstens
Zeitslots möglich ist, als eine formale Sprache und zeigen Sie, dass
diese NP-vollständig ist. Nutzen Sie dazu die Tatsache, dass
Färbbarkeit von Graphen NP-vollständig ist.
Es gibt eine Zuordnung von
Studenten auf
Prüfungen in
Zeitslots ohne
Überschneidungen
ist NP-complete, wenn
:
ungerichteter Graph
und die Anzahl der Farben
von
für jede Kante
:
ein Schüler
hat die Prüfungen
und
Löse das Scheduling-Problem.
Polynomielle Reduktion mit
existiert, damit ist
.
Aufgabe 7.4
Zeigen Sie, dass folgendes Problem unentscheidbar ist: Gegeben eine
Turing-Maschine
und eine Zahl
,
ist
eine
-zeitbeschränkte
Turing-Maschine?
Seien
,
Formeln und
eine Variable. Zeigen Sie, dass dann gilt
.
Es handelt sich um zwei verschiedene
,
für
ist aber egal, ob eine der Bedingungen vom eigenen
erfüllt werden oder ein allgemeines
eine der Bedingungen erfüllt, deshalb können die Existenzquantoren hier
zusammengefasst werden.
Aufgabe 8.1
Gegeben sei ein Universum aus verschiedenen Personen und Speisen und
ein Prädikat
,
so dass
ausdrückt “x mag y”. a) “Übersetzen” Sie folgende prädikatenlogische Formeln
in natürlichsprachlich formulierte Aussagen:
.
.
.
Jeder mag Eiscreme.
Jeder mag irgendwas.
TODO
Gegeben sei ein Universum aus verschiedenen Personen und Speisen und
ein Prädikat
,
so dass
ausdrückt “x mag y”. a) “Übersetzen” Sie folgende natürlichsprachlich
formulierte Aussagen in prädikatenlogische Formeln:
Tom mag keinen Fisch.
Jeder, der Pizza mag, mag auch Spaghetti.
Es gibt niemanden, der alles mag.
Aufgabe 8.2
Welche der angegebenen Strukturen sind Modelle der folgenden Formel?
a)
mit Grundmenge
und
;
ist kein Modell, da
()
nicht erfüllt ist.
Welche der angegebenen Strukturen sind Modelle der folgenden Formel?
b)
mit Grundmenge
und
;
ist kein Modell, da
()
nicht erfüllt ist.
Welche der angegebenen Strukturen sind Modelle der folgenden Formel?
c)
mit Grundmenge
und
;
ist ein Modell.
Welche der angegebenen Strukturen sind Modelle der folgenden Formel?
d)
mit Grundmenge
für ein Alphabet
und
;
ist ein Modell.
Welche der angegebenen Strukturen sind Modelle der folgenden Formel?
e)
mit Grundmenge
für eine Menge
und
;
ist ein Modell.
Aufgabe 8.3
a) Geben Sie je eine erfüllbare Formel in
Prädikatenlogik mit Gleichheit an, so dass alle Modelle
höchstens drei,
mindestens drei,
genau drei
Elemente in der Grundmenge besitzen.
TODO
TODO
TODO
b) Geben Sie je eine erfüllbare Formel in
Prädikatenlogik mit Gleichheit an, so dass das zweistellige
Prädikatensymbol
in jedem Modell als der Graph einer
injektiven Funktion,
surjektiven Funktion,
bijektiven Funktion
interpretiert wird. (Der Graph einer Funktion
ist die Relation
.)
Aufgabe 8.4
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. a) Sind
und
Mengen von prädikatenlogischen Formeln, dann folgt aus
und
auch
.
wahr TODO
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. b) Jede aussagenlogische Formel ist eine
prädikatenlogische Formel.
wahr, Aussagenlogik ist Prädikatenlogik ohne Prädikate, Variablen
oder Quantoren
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. c) Eine prädikatenlogische Formel
ist genau dann allgemeingültig, wenn
unerfüllbar ist.
wahr TODO
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. d) Es gilt
bedeutet, dass
kommuntativ ist
bedeutet, dass
transitiv ist
bedeutet, dass
reflexiv ist
Für alle
muss gelten, dass auch
und durch die Transitivität von
und
folgt
.
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. a) Jede Formel in Pränexform ist in Skolemform.
falsch, Formeln in Pränexform können einen
-Quantor
enthalten.
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. b) Jede Formel in Skolemform ist in Pränexform.
wahr, alle
-Quantoren
stehen am Anfang der Formel.
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. c) Jede Formel ist äquivalent zu einer bereinigten
Formel.
wahr, gebundene Variablen können umbenannt werden.
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. d) Jede Formel ist äquivalent zu einer bereinigten
Formel in Pränexform.
wahr, bei Umwandlung in Pränexform finden nur äquivalenzerhaltende
Operation statt.
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. e) Jede Formel ist äquivalent zu einer bereinigten
Formel in Skolemform.
falsch, eine Formel in Skolemform ist nur
erfüllbarkeits-äquivalent.
Aufgabe T
Formalisieren Sie die folgenden Aussagen in Prädikatenlogik: a) Jeder Drache ist glücklich, wenn alle seine
Drachen-Kinder fliegen können.
Formalisieren Sie die folgenden Aussagen in Prädikatenlogik: b) Grüne Drachen können fliegen.
Formalisieren Sie die folgenden Aussagen in Prädikatenlogik: c) Ein Drache ist grün, wenn er Kind mindestens eines
grünen Drachen ist.
Formalisieren Sie die folgenden Aussagen in Prädikatenlogik: d) Alle grünen Drachen sind glücklich.
Zeigen Sie, dass die letzte Aussage aus den ersten drei folgt.
Aufgabe 9.1
Formalisieren Sie Bertrand Russells Barbier-Paradoxon
Der Barbier rasiert genau diejenigen Personen, die sich nicht selbst
rasieren.
als eine prädikatenlogische Formel und zeigen Sie, dass diese
unerfüllbar ist.
Nehmen Sie dafür an, dass der Barbier durch eine Konstante
repräsentiert wird und dass für die Relation * rasiert y durch
ein zweistelliges Prädikatensybol
ausgedrückt wird.
Für
:
kann also nicht definiert werden, um die Formel zu erfüllen.
Aufgabe 9.2
Bestimmen Sie zu jeder der folgenden Formeln eine äquivalente
bereinigte Formel in Pränexform. a)
Äquivalenz auflösen:
Bereinigung:
Implikationen auflösen:
:
Quantoren nach vorne ziehen:
Bestimmen Sie zu jeder der folgenden Formeln eine äquivalente
bereinigte Formel in Pränexform. b)
Bereinigung:
Implikation auflösen:
Quantoren nach vorne ziehen:
Bestimmen Sie zu jeder der folgenden Formeln eine äquivalente
bereinigte Formel in Pränexform. c)
Bereinigung:
Implikationen auflösen:
:
Quantoren nach vorne ziehen:
Aufgabe 9.3
Bestimmen Sie zu jeder der folgenden Formeln eine
erfüllbarkeitsäquivalente bereinigte Formel in Skolemform. a)
:
Bestimmen Sie zu jeder der folgenden Formeln eine
erfüllbarkeitsäquivalente bereinigte Formel in Skolemform. b)
:
Bestimmen Sie zu jeder der folgenden Formeln eine
erfüllbarkeitsäquivalente bereinigte Formel in Skolemform. c)
(
ist nicht notwendig, schadet aber auch nicht.)
:
:
Aufgabe 9.4
Zeigen Sie, dass Allgemeingültigkeit von Formeln der Prädikatenlogik
erster Stufe in Skolemform entscheidbar ist.
Es sei
eine quantorenfreie Formel mit Variablen
.
Dann gilt
ist allgemeingültig
ist unerfüllbar
ist unerfüllbar (Skolemisierung mit Konstanten
).
Es ist also
allgemiengültig genau dann, wenn
unerfüllbar ist. Letzteres ist aber essentiell eine aussagenlogische
Formel, und deren Erfüllbarkeit ist entscheidbar.
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. a) Zwei prädikatenlogische Formeln
und
sind äquivalent, wenn die Formel
allgemeingültig ist.
wahr, TODO
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. b) Jede erfüllbare Formel der Prädikatenlogik erster
Stufe hat ein endliches Modell.
falsch,
kann unendlich sein.
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. c) Jede erfüllbare Formel der Prädikatenlogik erster
Stufe hat ein abzählbares Modell.
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. d) Jede Skolemformel hat höchstens eine
Herbrand-Interpretation.
TODO
Welche der folgenden Aussagen sind wahr? Begründen Sie Ihre
Antwort. e) Jede Skolemformel hat mindestens ein
Herbrand-Modell.
falsch, lediglich jede erfüllbare Skolemform hat ein
Herbrand-Modell.
Aufgabe V
Zeigen Sie, dass man das Resolutionsverfahren der Prädikatenlogik
erster Stufe auch zum Nachweis von semantischen Konsequenzen nutzen
kann, indem Sie die Äquivalenz der folgenden Aussagen nachweisen: a)
.
TODO
Zeigen Sie, dass man das Resolutionsverfahren der Prädikatenlogik
erster Stufe auch zum Nachweis von semantischen Konsequenzen nutzen
kann, indem Sie die Äquivalenz der folgenden Aussagen nachweisen: b)
ist unerfüllbar.
TODO
Zeigen Sie, dass man das Resolutionsverfahren der Prädikatenlogik
erster Stufe auch zum Nachweis von semantischen Konsequenzen nutzen
kann, indem Sie die Äquivalenz der folgenden Aussagen nachweisen: c)
ist allgemeingültig.
Hierbei sei
für
.
TODO
Zeigen Sie, dass man das Resolutionsverfahren der Prädikatenlogik
erster Stufe auch zum Nachweis von semantischen Konsequenzen nutzen
kann, indem Sie die Äquivalenz der folgenden Aussagen nachweisen: d)
ist unerfüllbar.
Hierbei sei
für
.
TODO
Aufgabe 10.1
Bestimmen Sie jeweils einen allgemeinsten Unifikator für die
folgenden Unifikationsprobleme, oder begründen Sie, warum kein
allgemeinster Unifikator existiert. Verwenden Sie hierfür den
Algorithmus aus der Vorlesung. Dabei sind
,
Variablen und
,
Konstanten. a)
Eliminierung:
Löschen, Zerlegung, Orietierung oder Eliminierung nicht möglich
Bestimmen Sie jeweils einen allgemeinsten Unifikator für die
folgenden Unifikationsprobleme, oder begründen Sie, warum kein
allgemeinster Unifikator existiert. Verwenden Sie hierfür den
Algorithmus aus der Vorlesung. Dabei sind
,
Variablen und
,
Konstanten. b)
Zerlegung:
Zerlegung:
Bestimmen Sie jeweils einen allgemeinsten Unifikator für die
folgenden Unifikationsprobleme, oder begründen Sie, warum kein
allgemeinster Unifikator existiert. Verwenden Sie hierfür den
Algorithmus aus der Vorlesung. Dabei sind
,
Variablen und
,
Konstanten. c)
Eliminierung:
Orientierung:
Löschen, Zerlegung, Orietierung oder Eliminierung nicht möglich
Bestimmen Sie jeweils einen allgemeinsten Unifikator für die
folgenden Unifikationsprobleme, oder begründen Sie, warum kein
allgemeinster Unifikator existiert. Verwenden Sie hierfür den
Algorithmus aus der Vorlesung. Dabei sind
,
Variablen und
,
Konstanten. d)
Zerlegung:
Löschen:
Zerlegung:
Aufgabe 10.2
Sei
ein
-stelliges
Prädikatssymbol und seien
,
Terme. Ferner sei
eine Substitution. Hierbei bezeichne
und
jeweils den Existenz- bzw. Allabschluss über alle in
syntaktisch vorkommenden Variablen. Welche der folgenden Aussagen sind
richtig? Begründen Sie jeweils Ihre Antwort. a) Falls
und
unifizierbar sind, so ist folgende Formel der Prädikatenlogik mit
Gleichheit allgemeingültig:
b) Falls
erfüllbar ist, so sind
und
unifizierbar.
beide wahr,
und
sind unifizierbar genau dann, wenn es eine Substitution gibt, sodass
.
Wenn
erfüllt ist, gibt es eine Substitution bei der
und damit muss auch
gelten.
Sei
ein
-stelliges
Prädikatssymbol und seien
,
Terme. Ferner sei
eine Substitution. Hierbei bezeichne
und
jeweils den Existenz- bzw. Allabschluss über alle in
syntaktisch vorkommenden Variablen. Welche der folgenden Aussagen sind
richtig? Begründen Sie jeweils Ihre Antwort. c) Ist
ein Unifikator für
und
,
so ist folgende Formel der Prädikatenlogik mit Gleichheit
allgemeingültig:
d) Ist
allgemeingültig, so ist
ein Unifikator für
und
.
TODO
beide falsch, wenn
mit
und
dann wäre zwar
aber
für
.
Sei
ein
-stelliges
Prädikatssymbol und seien
,
Terme. Ferner sei
eine Substitution. Hierbei bezeichne
und
jeweils den Existenz- bzw. Allabschluss über alle in
syntaktisch vorkommenden Variablen. Welche der folgenden Aussagen sind
richtig? Begründen Sie jeweils Ihre Antwort. e) Ist
ein Unifikator für
und
,
so ist folgende Formel der Prädikatenlogik mit Gleichheit
allgemeingültig:
TODO
Sei
ein
-stelliges
Prädikatssymbol und seien
,
Terme. Ferner sei
eine Substitution. Hierbei bezeichne
und
jeweils den Existenz- bzw. Allabschluss über alle in
syntaktisch vorkommenden Variablen. Welche der folgenden Aussagen sind
richtig? Begründen Sie jeweils Ihre Antwort. f) Ist
ein Unifikator für
und
,
so ist folgende Formel der Prädikatenlogik mit Gleichheit
allgemeingültig:
TODO
Aufgabe 10.3
Zeigen Sie mittels prädikatenlogischer Resolution folgende
Aussagen: a) Die Aussage “Der Professor ist glücklich, wenn alle
seine Studenten Logik mögen” hat als Folgerung “Der Professor ist
glücklich, wenn er keine Studenten hat”.
…
ist ein Professor
…
ist Student von
…
mag Logik
…
ist glücklich
“Der Professor ist glücklich, wenn alle seine Studenten Logik mögen”
“Der Professor ist glücklich, wenn er keine Studenten hat”
Formel 2.6 ist in 1.7 enthalten, bzw.
.
Zeigen Sie mittels prädikatenlogischer Resolution folgende
Aussagen: b) In Aufgabe T von Übungsblatt 9 folgt die letzte
Aussage 4 aus den ersten drei 1-3:
Jeder Drache ist glücklich, wenn alle seine Drachen-Kinder fliegen
können.
Grüne Drachen können fliegen.
Ein Drache ist grün, wenn er Kind mindestens eines grünen Drachen
ist.
Alle grünen Drachen sind glücklich.
Zur Vereinfachung darf hier angenommen werden, dass alle Individuen
Drachen sind.
…
ist ein Kind von
…
kann fliegen
…
ist glücklich
…
ist grün
Klauseln:
2 + 3:
4 + 5:
1 + 6:
Alle grünen Drachen sind glücklich.
Aufgabe 10.4
Gegeben sind die folgenden Formeln in Skolemform.
wobei
und
Konstanten sind. a) Geben Sie die zugehörigen Herbrand-Universen
und
an.
:
keine Konstanten; Funktionen
,
:
Konstanten
,
;
Funktionen
:
Gegeben sind die folgenden Formeln in Skolemform.
wobei
und
Konstanten sind. b) Geben Sie je ein Herbrand-Modell an oder begründen
Sie, warum kein solches existiert.
Gegeben sei die folgende Kino-Datenbank bestehend aus den drei
Tabellen Filme, Spielstätten und Kinoprogramm. Geben Sie die
nachfolgenden Anfragen jeweils in Form einer prädikatenlogische Formel
an: a) Wer ist der Regisseur von Der Hobbit 1?
Gegeben sei die folgende Kino-Datenbank bestehend aus den drei
Tabellen Filme, Spielstätten und Kinoprogramm. Geben Sie die
nachfolgenden Anfragen jeweils in Form einer prädikatenlogische Formel
an: b) Welche Kinos spielen Der Hobbit 1?
Gegeben sei die folgende Kino-Datenbank bestehend aus den drei
Tabellen Filme, Spielstätten und Kinoprogramm. Geben Sie die
nachfolgenden Anfragen jeweils in Form einer prädikatenlogische Formel
an: c) Gibt es ein Kino welches einen Film von Christopher
Nolan zeigt?
Gegeben sei die folgende Kino-Datenbank bestehend aus den drei
Tabellen Filme, Spielstätten und Kinoprogramm. Geben Sie die
nachfolgenden Anfragen jeweils in Form einer prädikatenlogische Formel
an: d) Welche Paare von Schauspielern spielen gemeinsam in
mindestens einem Film?
Gegeben sei die folgende Kino-Datenbank bestehend aus den drei
Tabellen Filme, Spielstätten und Kinoprogramm. Geben Sie die
nachfolgenden Anfragen jeweils in Form einer prädikatenlogische Formel
an: e) Welche Paare von Schauspielern spielen gemeinsam in
genau einem Film?
Aufgabe 11.2
Gegeben sind die folgenden Formeln in Skolemform.
wobei
und
Konstanten sind.
Geben Sie die Herbrand-Expansion
und
an.
Aufgabe 11.3
Führen Sie für die folgenden Formeln eine Resolution durch, um zu
zeigen: a) Für
und
gilt
.
3 + 2:
1 + 4:
Führen Sie für die folgenden Formeln eine Resolution durch, um zu
zeigen: b) Für
und
gilt
.
b) Berechnen Sie die Mengen
,
,
,
.
An welchem Punkt wird der Grenzwert erreicht?
… welche
lassen sich mit den bereits berechneten
berechnen?
es gibt keine weiteren Fakten für
mit
Aufgabe 12.2
Sei
die Kantenrelation eines gerichteten Graphen
mit (endlicher) Knotenmenge
.
Weiter sei
das dazugehörige Datalog-Prädikat mit
für alle
.
Formalisieren Sie die nachfolgenden Probleme als Datalog-Programme,
d.h. geben Sie Regeln an, die für einen gegebenen Graphen eine Lösung
für das jeweilige Problem liefern.
a) Nicht-Terminiertheit: Alle Paare von Knoten, die
über eine Kante miteinander verbunden sind, so dass der Knoten mit der
eingehenden Kante wieder verlassen werden kann.
Sei
die Kantenrelation eines gerichteten Graphen
mit (endlicher) Knotenmenge
.
Weiter sei
das dazugehörige Datalog-Prädikat mit
für alle
.
Formalisieren Sie die nachfolgenden Probleme als Datalog-Programme,
d.h. geben Sie Regeln an, die für einen gegebenen Graphen eine Lösung
für das jeweilige Problem liefern.
b) Erreichbare Knoten: Alle Knoten, die von einem
festen Startknoten
erreichbar sind.
Sei
die Kantenrelation eines gerichteten Graphen
mit (endlicher) Knotenmenge
.
Weiter sei
das dazugehörige Datalog-Prädikat mit
für alle
.
Formalisieren Sie die nachfolgenden Probleme als Datalog-Programme,
d.h. geben Sie Regeln an, die für einen gegebenen Graphen eine Lösung
für das jeweilige Problem liefern.
c) Alternative Wege: Alle Paare von Knoten, die
sowohl über einen Weg der Länge eins als auch über einen Weg der Länge
zwei verbunden sind.