• Keine Ergebnisse gefunden

Logik, Berechenbarkeit und Komplexit¨ at

N/A
N/A
Protected

Academic year: 2022

Aktie "Logik, Berechenbarkeit und Komplexit¨ at"

Copied!
81
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Skript zur Vorlesung

Logik, Berechenbarkeit und Komplexit¨ at

Sommersemester 2008

Prof. Dr. Steffen Reith reith@informatik.fh-wiesbaden.de

Fachhochschule Wiesbaden

Fachbereich Design Informatik Medien

Erstellt von: Steffen Reith Zuletzt ¨uberarbeitet von: Steffen Reith

Email: reith@informatik.fh-wiesbaden.de Erste Version vollendet: Juli 2006

Version: 1072 Date: 2009-01-01

(2)
(3)

Durch nichts zeigt sich mathematischer Unverstand deutlicher als durch ein ¨Ubermaß an Genauigkeit im Zahlenrechnen.

Carl Friedrich Gauß

Dieses Skript ist aus der Vorlesung

”Logik, Berechenbarkeit und Komplexit¨at“ des Master- Studiengangs

”Informatik“ an der Fachhochschule Wiesbaden hervorgegangen. Ich danke allen H¨oreren dieser Vorlesung f¨ur konstruktive Anmerkungen und Verbesserungen. Naturgem¨aß ist ein Skript nie fehlerfrei (ganz im Gegenteil!) und es ¨andert (mit Sicherheit!) sich im Laufe der Zeit. Deshalb bin ich auf weitere Verbesserungvorschl¨age angewiesen und freue mich auch ¨uber weitere Anregungen durch die H¨orer.

(4)
(5)

Inhaltsverzeichnis

1. Logik 1

1.1. Aussagenlogik . . . 1

1.1.1. Syntax und Semantik der Aussagenlogik . . . 1

1.1.2. Einige grundlegende Eigenschaften von aussagenlogischen Formeln . . . . 5

1.1.3. Normalformen . . . 7

1.1.4. Hornformeln . . . 10

1.1.5. Resolution . . . 13

1.2. Pr¨adikatenlogik der ersten Stufe (PL1) . . . 17

1.2.1. Syntax und Semantik . . . 17

1.2.2. Einige grundlegende Eigenschaften von Formeln der PL1 . . . 23

1.2.3. Die Pr¨anexnormalform . . . 24

2. Berechenbarkeit 26 2.1. Die Unentscheidbarkeit der PL1 . . . 26

2.2. Berechenbarkeit und die Churchsche These . . . 30

2.2.1. Turingmaschinen und Turingberechenbarkeit . . . 30

2.2.2. RAMs und RAM-Berechenbarkeit . . . 32

2.2.3. Die Churchsche These . . . 34

2.3. Entscheidbarkeit, das Halteproblem und der Satz von Rice . . . 35

3. Komplexit¨at 40 3.1. Effizient l¨osbare Probleme: die Klasse P . . . 40

3.1.1. Das Problem der 2-F¨arbbarkeit . . . 42

3.2. Effizient ¨uberpr¨ufbare Probleme: die Klasse NP . . . 46

3.3. Schwierigste Probleme inNP: der Begriff derNP-Vollst¨andigkeit . . . 49

3.3.1. Traveling Salesperson ist NP-vollst¨andig . . . 51

3.4. Die Auswirkungen der NP-Vollst¨andigkeit . . . 52

3.5. Der Umgang mitNP-vollst¨andigen Problemen in der Praxis . . . 54

A. Grundlagen und Schreibweisen 59 A.1. Mengen . . . 59

A.1.1. Die Elementbeziehung und die Enthaltenseinsrelation . . . 59

A.1.2. Definition spezieller Mengen . . . 59

A.1.3. Operationen auf Mengen . . . 60

A.1.4. Gesetze f¨ur Mengenoperationen . . . 60

A.1.5. Tupel (Vektoren) und das Kreuzprodukt . . . 61

A.1.6. Die Anzahl von Elementen in Mengen . . . 61

A.2. Relationen und Funktionen . . . 62

A.2.1. Eigenschaften von Relationen . . . 62

A.2.2. Eigenschaften von Funktionen . . . 62

A.2.3. Permutationen . . . 63

A.3. Summen und Produkte . . . 64

A.3.1. Summen . . . 64

A.3.2. Produkte . . . 65

A.4. Gebr¨auchliche griechische Buchstaben . . . 65

B. Einige formale Grundlagen von Beweistechniken 66 B.1. Direkte Beweise . . . 66

B.1.1. Die Kontraposition . . . 67

B.2. Widerspruchsbeweise . . . 67

(6)

B.5. Induktionsbeweise und das Induktionsprinzip . . . 68

B.5.1. Die vollst¨andige Induktion . . . 69

B.5.2. Induktive Definitionen . . . 69

B.5.3. Die strukturelle Induktion . . . 70

Index 71

Literaturverzeichnis 75

(7)

1

1. Logik

1.1. Aussagenlogik

Die Aussagenlogik studiert die Verkn¨upfung von Aussagen (, sprachliche atomare Gebilde).

Dabei interessiert nur der Wahrheitswert (kurz: WW) einer Aussage:

i) Wahrheitswert 1 ,Aussage wahr ii) Wahrheitswert 0 ,Aussage falsch Damit sind die Aussagen

”Wiesbaden liegt am Rhein“ und

”2 + 5 = 7“

logisch gleichwertig. Aber auch die Aussagen

”Wiesbaden liegt am Mittelmeer“ und

”2 + 5 = 6“

sind gleichwertig, da sie beide falsch sind.

Im weiteren verwenden wir f¨ur solche Aussagen spezielle Variablen, so genannteWahrheitswer- tevariablen (kurz: WW-Variable), die nur die Werte 0 oder 1 annehmen k¨onnen.

Beliebige Aussagenverkn¨upfen wir durchKonnektoren:

Umgangssprachlicher Name Symbol Name in der Logik

und Konjunktion

oder Alternative, Disjunktion

nicht ¬ Negation

wenn . . . so (dann) Implikation

genau dann, wenn Aquivalenz¨

Wie wollen wir nun die Verkn¨upfungen von Aussagen konstruieren?

Beispiel 1 Seien A, B und C Aussagenvariablen f¨ur drei beliebige Aussagen. Ist die folgende Gesamtaussage wahr (unabh¨angig vom Wahrheitsgehalt der Einzelaussagen A, B und C)?

Genau dann, wenn ausCfolgt, dassAnicht gilt und wenn ausAund dem Nichtgelten von B folgt, dass B gilt oder C nicht gilt, k¨onnen nicht gleichzeitig A und C gelten.

Dies kann man mit den oben eingef¨uhrten Konnektoren als

(((C→ ¬A)∧((A∧ ¬B)→(B∨ ¬C)))↔ ¬(A∧C)) schreiben.

1.1.1. Syntax und Semantik der Aussagenlogik

Obwohl die Syntax von Formeln der Aussagenlogik anschaulich klar ist, brauchen wir pr¨azise Definitionen von Syntax und Semantik, um sp¨ater mathematische Beweise f¨uhren zu k¨onnen:

Definition 2 (Syntax der Aussagenlogik) Die Menge der Formeln der Aussagenlogik ist induktiv wie folgt definiert:

(IA) Atomare Formeln: Das sind die Aussagenvariablenx1, x2, x3, . . . (oft auch x, y und z)

(8)

(IS) Zusammengesetzte Formeln:

Ist H eine Formel, so auch ¬H.

Sind H1 und H2 Formeln, so auch (H1∧H2), (H1∨H2), (H1→H2) und (H1 ↔H2).

LAL =def {H|H ist eine aussagenlogische Formel} Bemerkung 3

Bis jetzt haben aussagenlogische Formeln keinerlei Bedeutung, sondern sind rein syntakti- sche Gebilde (

”Strings“).

Treten in einer Formel H die Variablen x1, . . . , xn auf, so soll dies durch H(x1, . . . , xn) notiert werden.

Zur Definition der Bedeutung / Semantik von Formeln der Aussagenlogik ben¨otigen wir Boo- lesche Funktionen:

Definition 4 Eine Funktionf:{0,1}n→ {0,1} heißt (n-stellige) Boolesche Funktion.

Da der Definitionsbereich einer Booleschen Funktion endlich ist, k¨onnen sie durch Wahrheits- wertetabellen (kurz: WW-Tabelle) angegeben werden:

Definition 5 Einstellige Boolesche Funktionen:

x id(x) not(x)

0 0 1

1 1 0

Zweistellige Boolesche Funktionen (Auswahl):

x y and(x, y) or(x, y) imp(x, y) aeq(x, y) xor(x, y)

0 0 0 0 1 1 0

0 1 0 1 1 0 1

1 0 0 1 0 0 1

1 1 1 1 1 1 0

Lemma 6 Es gibt22n n-stellige Boolesche Funktionen.

Beweis: ¨Ubung. #

Nun k¨onnen wir die Semantik / Bedeutung der aussagenlogischen Formeln festlegen:

Definition 7 (Semantik der Aussagenlogik) Die Funktion I:LAL → {0,1} (

”Interpreta- tionsfunktion“) ist induktiv wie folgt definiert:

(IA) I(x1), I(x2), I(x3), . . . ist gegeben (Belegung der Aussagenvariablen).

(9)

1.1 Aussagenlogik 3 (IS) Seien H, H1, H2∈LAL, dann

I(¬H) =def not(I(H))

I(H1∧H2) =def and(I(H1), I(H2))

I(H1∨H2) =def or(I(H1), I(H2))

I(H1→H2) =def imp(I(H1), I(H2))

I(H1↔H2) =def aeq(I(H1), I(H2))

I(H1⊕H2) =def xor(I(H1), I(H2))

Mit Hilfe einer InterpretationsfunktionI (,Belegung der Wahrheitswertevariablen) wird einer Formel H(x1, . . . , xn) ein Wahrheitswert zugeordnet, d.h. jede aussagenlogische FormelH legt eine Boolesche Funktion fH fest:

fH(a1, . . . , an) =def I(H(x1, . . . , xn)), wobei I(xi) =ai∈ {0,1}f¨ur 1≤i≤n

Beispiel 8 BestimmefH1 f¨urH1 =¬(¬x∨¬y). Es gilt alsoI(H1) =I(¬(¬x∨¬y)) = not(I(¬x∨

¬y)) = not(or(I(¬x), I(¬y))) = not(or(not(I(x)),not(I(y)))).

I(x) I(y) not(I(x)) not(I(y)) or(. . .) not(. . .)

0 0 1 1 1 0

0 1 1 0 1 0

1 0 0 1 1 0

1 1 0 0 0 1

Also gilt fH1(x, y) = and(x, y) =fxy(x, y), d.h. syntaktisch verschiedene Formeln k¨onnen se- mantisch gleich sein.

Bemerkung 9

Oft werden die Spalten einer WW-Tabelle aus Bequemlichkeitsgr¨unden mit den entspre- chenden (Sub)formeln benannt (statt der dazugeh¨origen Booleschen Funktion).

Abweichend von der Definition der Syntax lassen wir aus ¨Ubersichtlichkeits- oder Bequem- lichkeitsgr¨unden manchmal Klammern weg, wenn die vollst¨andige Klammerung durch den Kontext klar ist.

Beispiel 10 Der Fachbereichsrat einer hessischen Informatikfakult¨at beschloss eine neue Pr¨u- fungsordnung, in der auch die erlaubten F¨acherkombinationen geregelt wurden. Zur Auswahl stehen die F¨acher Theologik, Praxologie und Schaltkreisl¨oten, sowie ein Appelwoipraktikum.¨ Es wurde festgelegt, dass eine g¨ultige F¨acherkombination alle folgenden Bedingungen erf¨ullen muss:

i) Wurde das ¨Appelwoipraktikum nicht erfolgreich absolviert, so muss die Praxologiepr¨ufung bestanden werden.

ii) War ein Student in der Praxologie- oder Schaltkreispr¨ufung nicht erfolgreich, so muss Theo- logik und das ¨Appelwoipraktikum bestanden werden.

iii) Hat ein Kandidat weder die Pr¨ufung in Theologik noch in Praxologie bestanden, so muss die Schaltkreisvorlesung und das ¨Appelwoipraktikum bestanden werden.

Obwohl diese Pr¨ufungsordnung das Ergebnis eines sehr schwierigen Abstimmungsprozesses war, lehnte das Ministerium die Pr¨ufungsordnung wegen

”undurchsichtigen Formulierungen“ ab. Die Fakult¨at wurde aufgefordert, die Pr¨ufungsbedingungen ¨aquivalent so umzuformen, dass m¨oglichst wenige, einfache Alternativen entstehen. Helfen Sie dem Dekan bei dieser schweren Arbeit.

(10)

Zur L¨osung f¨uhren wir folgende WW-Variablen ein:

t , ”Hat Theologik bestanden“

p , ”Hat Praxologie bestanden“

s, ”Hat Schaltkreisl¨oten bestanden“

a, ”Hat ¨Appelwoipraktikum bestanden“

und formalisieren die Aussagen zu:

i) (¬a→p)≡a∨p ii) (¬p∨ ¬s)→(t∧a) iii) (¬t∧ ¬p)→(s∧a)

Nun stellen wir folgende WW-Tabelle auf:

t p s a (b) (c) (d) (e) (f) (g) (h) (i)

0 0 0 0 0 1 0 0 1 0 0 0

0 0 0 1 1 1 0 0 1 0 0 0

0 0 1 0 0 1 0 0 1 0 0 0

0 0 1 1 1 1 0 0 1 1 1 0

0 1 0 0 1 1 0 0 0 0 1 0

0 1 0 1 1 1 0 0 0 0 1 0

0 1 1 0 1 0 0 1 0 0 1 1

0 1 1 1 1 0 0 1 0 1 1 1

1 0 0 0 0 1 0 0 0 0 1 0

1 0 0 1 1 1 1 1 0 0 1 1

1 0 1 0 0 1 0 0 0 0 1 0

1 0 1 1 1 1 1 1 0 1 1 1

1 1 0 0 1 1 0 0 0 0 1 0

1 1 0 1 1 1 1 1 0 0 1 1

1 1 1 0 1 0 0 1 0 0 1 1

1 1 1 1 1 0 1 1 0 1 1 1

Wobei die Bezeichnungen der Spalten gegeben sind durch:

(b) ,¬a→p

(c) ,(¬p∨ ¬s)

(d) , (t∧a)

(e) , (¬p∨ ¬s)→(t∧a)

(f) , (¬t∧ ¬p)

(g) ,(s∧a)

(h) ,(¬t∧ ¬p)→(s∧a)

(i) , (a)(d)(g)

Also kann man die Anweisungen vereinfachen zu: Es m¨ussen das ¨Appelwoipraktikum und die Theologik bestanden werden oder Praxologie und Schaltkreisl¨oten muss erfolgreich absolviert wer- den.

Beispiel 11 Folgende Aussagen sind gegeben:

i) Jeder, der ein gutes Geh¨or hat, kann richtig singen.

ii) Niemand ist ein wahrhafter Musiker, wenn er nicht seine Zuh¨orer begeistern kann.

iii) Niemand, der kein gutes Geh¨or hat, kann seine Zuh¨orerschaft begeistern.

iv) Niemand, außer einem wahrhaften Musiker, kann eine Sinfonie schreiben.

(11)

1.1 Aussagenlogik 5 Nun stellt sich die Frage: Welche Eigenschaften muss jemand notwendigerweise besitzen, wenn er eine Sinfonie geschrieben hat?

Zur L¨osung f¨uhren wir folgende WW-Variablen ein:

xG , ”Hat ein gutes Geh¨or“

xS ,”Kann richtig singen“

xZ ,”Kann seine Zuh¨orer begeistern“

xM , ”Ist ein wahrhafter Musiker“

xI , ”Kann Sinfonie schreiben“

und formalisieren die Aussagen zu:

(i) xG→xS (ii) xM →xZ

(iii) xZ →xG (iv) xI →xM

Nun sind erf¨ullende Belegungen gesucht mit I(xI) = 1. Folgende Idee vereinfacht die Aufgabe:

SeienH1, H2aussagenlogische Formeln, dannI(H1→H2) = 1gdw.I(H1)≤I(H2). DaI(xI) = 1 muss auch I(xM) = I(xZ) = I(xG) = I(xS) = 1 gelten. D.h. jemand der eine Sinfonie geschrieben hat, muss alle anderen angesprochenen Eigenschaften haben.

1.1.2. Einige grundlegende Eigenschaften von aussagenlogischen Formeln Definition 12

i) Zwei aussagenlogische FormelnH1, H2 heißen (logisch)¨aquivalent(Schreibweise: H1 ≡H2) genau dann wenn (kurz gdw. ) f¨ur jede Interpretation I gilt I(H1) =I(H2).

ii) Eine aussagenlogische Formel H heißt erf¨ullbar gdw. es eine Interpretation I gibt mit I(H) = 1.

iii) Eine aussagenlogische Formel H heißt allgemeing¨ultig(Tautologie) gdw. f¨ur alle Interpre- tationen I gilt I(H) = 1.

iv) Gilt f¨ur eine InterpretationI und eine aussagenlogische Formel H I(H) = 1, dann heißt I Modellvon H (Schreibweise: I |=H). Ist I ein Modell von H, so vereinbaren wir auch die Sprechweise: H gilt unter der BelegungI.

Damit ergibt sich die folgende Eigenschaft:

H erf¨ullbar gdw.¬H nicht allgemeing¨ultig Eigenschaft 13 Die folgenden Eigenschaften sind ¨aquivalent:

(i) H1≡H2

(ii) fH1 =fH2

(iii) (H1 ↔H2) ist allgemeing¨ultig

Beweis: ¨Ubung #

Es gelten die folgenden ¨Aquivalenzen, die durch Aufstellen der WW-Tabelle gezeigt werden k¨onnen:

(12)

Satz 14 Er gelten die folgenden ¨Aquivalenzen:

H1∧H2 H2∧H1 Kommutativgesetz

H1∨H2 H2∨H1 Kommutativgesetz

H1(H2∧H3) (H1∧H2)∧H3 Assoziativit¨atsgesetz H1(H2∨H3) (H1∨H2)∨H3 Assoziativit¨atsgesetz H1(H2∨H3) (H1∧H2)(H1∧H3) Distributivgesetz H1(H2∧H3) (H1∨H2)(H1∨H3) Distributivgesetz

H1∨H1 H1 Duplizit¨atsgesetz

H1∧H1 H1 Duplizit¨atsgesetz

H1(H1∨H2) H1 Absorptionsgesetz

H1(H1∧H2) H1 Absorptionsgesetz

¬(H1∧H2) ≡ ¬H1∨ ¬H2 de-Morgansche Regel

¬(H1∨H2) ≡ ¬H1∧ ¬H2 de-Morgansche Regel

¬¬H H doppelte Verneinung

H1 →H2 ≡ ¬H1∨H2 Aufl¨osung der Implikation H1 ↔H2 ((H1∧H2)(¬H1∧ ¬H2)) Aufl¨osung der ¨Aquivalenz H1 →H2 ≡ ¬H2→ ¬H1 Kontraposition

Bemerkung 15

Man kann beobachten, dass die ¨Aquivalenzen aus Theorem 14 analog auch f¨ur die Men- genoperationen Schnitt (∩,∧), Vereinigung (∪,∨) und Komplement ( ,¬) gelten.

Die Konnektoren

”→“ und

”↔“ k¨onnen durch die Konnektoren

”∧“,

”∨“ und

”¬“ ¨aquiva- lent ersetzt werden.

Damit k¨onnen die Definitionen von Syntax und Semantik der Aussagenlogik

”abgespeckt“

werden (die F¨alle f¨ur

”→“ und

”↔“ bzw.

imp“ und

aeq“ einfach entfernen).

D.h. wir verwenden H1 H2 als Abk¨urzung f¨ur ¬H1∨H2 und H1 H2 als Abk¨urzung von ((H1∧H2)(¬H1∧ ¬H2)).

Da (bzw. ∨) kommutativ und assoziativ sind, k¨onnen wir uns im folgenden Fall die Klammerung sparen und vereinfachen wie folgt:

n i=1

Hi =def (H1∧H2∧. . .∧Hn) =def (H1(H2(H3∧. . .(Hn1∧Hn). . .)))

bzw.

n i=1

Hi =def (H1∨H2∨. . .∨Hn) =def (H1(H2(H3∨. . .(Hn1∨Hn). . .)))

(13)

1.1 Aussagenlogik 7 Beispiel 16 Mit Hilfe dieser Regeln k¨onnen wir Beispiel 10 nun auch durch Umformungen l¨osen:

(¬a→p)∧((¬p∨ ¬s)→(t∧a))∧((¬t∧ ¬p)→(s∧a))

(a∨p)∧((p∧s)∨(t∧a))∧((t∨p)∨(s∧a))

(a∨p)∧((p∧s)∨(t∧a))∧(t∨p∨s)∧(t∨p∨a)

Absorb.

(a∨p)∧((p∧s)∨(t∧a))∧(t∨p∨s)

(a∨p)∧((p∧s)∨t)∧((p∧s)∨a)∧(t∨p∨s)

(a∨p)∧(p∨t)∧(s∨t)∧(p∨a)∧(s∨a)∧(t∨p∨s)

Absorb.+Dupl.

(a∨p)∧(p∨t)∧(s∨t)∧(s∨a)

2×Distr.

(a(p∧s))∧(t(p∧s))

Distr.

(a∧t)∨(p∧s)

Wodurch sich die schon bekannten Regeln der Pr¨ufungsordnung ergeben: Es m¨ussen das Ap- pelwoipraktikum und die Theologik bestanden werden oder Praxologie und Schaltkreisl¨oten muss erfolgreich absolviert werden.

Wir definieren die folgenden weiteren Abk¨urzungen: H1=def H und H0=def ¬H.

Lemma 17 F¨ur jede InterpretationI gilt:

(i) I(Hσ) = 1 gdw.I(H) =σ f¨urσ ∈ {0,1}

(ii) I(∧n

i=1Hi) = 1 gdw. f¨ur alle i∈ {1, . . . , n} gilt I(Hi) = 1 (iii) I(∨n

i=1Hi) = 1 gdw. es gibt eini∈ {1, . . . , n} mit I(Hi) = 1

Beweis: ¨Ubung #

1.1.3. Normalformen Definition 18

Ein Literal ist eine WW-Variable oder eine negierte WW-Variable. Dabei wird eine un- negierte WW-Variable als positives und eine negierte WW-Variable als negatives Literal bezeichnet.

Eine Disjunktion von Literalen heißt Klausel, d.h. eine Klausel ist von der Form∨m

i=1Li = (L1∨L2∨. . .∨Lm), wobei m∈Nist und L1, . . . , Lm Literale sind.

Eine Formel H ist in konjunktiver Normalform (kurz: KNF), falls sie eine Konjunktion von Klauseln ist:

H= (

n i=1

(

mi

j=1

Li,j)), wobei n, m1, . . . , mnN und Li,j Literale

Eine Formel H ist in disjunktiver (alternativer) Normalform (kurz: DNF), falls sie eine Disjunktion von Konjunktionen von Literalen ist:

H= (

n i=1

(

mi

j=1

Li,j)),wobei n, m1, . . . , mnN und Li,j Literale

Beispiel 19

KNF-Formeln: ((x∨y∨z)∧(¬x∨ ¬y∨ ¬z)),x∨y, x

(14)

DNF-Formeln: ((x∧y∧ ¬z)∨(¬x∧ ¬y∧ ¬z)), x∨y, x

Satz 20 Jede FormelH ist ¨aquivalent zu einer Formel in disjunktiver Normalform. Es gilt:

H(x1, . . . , xn) = ∨

fH(a1,...,an)=1

n j=1

xajj

Beispiel 21

H(x1, x2, x3) = x1(x2∨x3)

fH(a1,a2,a3)=1(xa11 ∧xa22 ∧xa33)

(x1∧ ¬x2∧x3)(x1∧x2∧ ¬x3)(x1∧x2∧x3) D.h. die DNF von H kann man aus der WW-Tabelle

”ablesen“.

Beweis: F¨ur jede Interpretation I gilt:

I(

fH(a1,...,an)=1

n

j=1xajj) = 1 gdw. es gibt einn-Tupel (a1, . . . , an) mitfH(a1, . . . , an) = 1 und I(∧n

j=1xajj) = 1

gdw. es gibt einn-Tupel (a1, . . . , an) mitfH(a1, . . . , an) = 1 und I(xajj) = 1 f¨ur alle 1≤j ≤n

gdw. es gibt einn-Tupel (a1, . . . , an) mitfH(a1, . . . , an) = 1 und I(xj) =aj f¨ur alle 1≤j≤n

gdw. fH(I(x1), . . . , I(xn)) = 1 gdw. I(H(x1, . . . , xn)) = 1 D.h.I |=H gdw.I |=∨

fH(a1,...,an)=1

n

j=1xajj, alsoH(x1, . . . , xn)

fH(a1,...,an)=1

n

j=1xajj. # Bemerkung 22

Der Beweis von Satz 20 liefert einen Algorithmus, der zu einer beliebigen aussagenlogischen Formel H eine ¨aquivalente DNF-Formel berechnet: H −→ Wahrheitswertetabelle von H berechnen −→ DNF-Formel ablesen.

Zu einer Formel H kann es verschiedene ¨aquivalente DNF-Formeln geben:

x∨y≡(x∧ ¬y)∨(¬x∧y)∨(x∧y)

Die mit Hilfe von Satz 20 konstruierte Formel hat eine besondere Eigenschaft: In jedem Disjunkt kommt jede Variable (negiert oder unnegiert) genau einmalvor. Eine solche DNF- Formel heißt in kanonisch disjunktiver Normalform (kurz: kDNF).

Satz 23 Jede FormelH ist ¨aquivalent zu einer Formel in konjunktiver Normalform. Es gilt:

H(x1, . . . , xn) = ∧

fH(a1,...,an)=0

n j=1

x1jaj

Beispiel 24

H(x1, x2, x3) = x1(x2∧x3)

(x1∨x2∨x3)(x1∨x2∨ ¬x3)(x1∨ ¬x2∨x3) D.h. die KNF von H kann man aus der WW-Tabelle

”ablesen“.

(15)

1.1 Aussagenlogik 9 Beweis:

H ≡ ¬¬H ≡ ¬( ∨

f¬H(a1,...,an)=1

n

j=1xajj) (vgl. Satz 20 f¨ur¬H)

( ∧

f¬H(a1,...,an)=1

¬n

j=1xajj) (via Regel von de-Morgan)

( ∧

f¬H(a1,...,an)=1

n

j=1¬xajj) (via Regel von de-Morgan)

( ∧

fH(a1,...,an)=0

n

j=1x1jaj)

Die letzte Zeile gilt, da ¬xσ ≡x1σ, denn¬x0≡ ¬¬x≡x≡x1 bzw.¬x1 ≡ ¬x≡x0. # Bemerkung 25

Der Beweis von Satz 23 liefert einen Algorithmus, der zu einer beliebigen aussagenlogischen Formel H eine ¨aquivalente KNF-Formel berechnet: H −→ Wahrheitswertetabelle von H berechnen −→ KNF-Formel ablesen.

Zu einer Formel H kann es verschiedene ¨aquivalente KNF-Formeln geben:

(x∨y)∧(¬x∨z)≡(x∨y∨z)∧(x∨y∨ ¬z)∧(¬x∨y∨z)∧(¬x∨ ¬y∨z)

Der oben skizzierte Algorithmus liefert eine KNF-Formel mit der Eigenschaft, dass in jeder Klausel jede Variable (negiert oder unnegiert) genau einmal vorkommt. Eine solche KNF-Formel heißt in kanonisch konjunktiver Normalform (kurz: kKNF).

Ein sehr wichtiges (Berechnungs-) Problem, das in der Theoretischen Informatik h¨aufig be- nutzt wird und dessen Varianten auch von großer praktischer Relevanz sind, ist das so genannte Erf¨ullbarkeitsproblem (engl.

”satisfiability problem“):

Problem: SAT

Eingabe: Aussagenlogische FormelH Frage: HatH eine erf¨ullende Belegung?

F¨ur dieses Problem ist kein effizienter Algorithmus bekannt1, d.h. man muss im schlimmsten Fall alle 2n Belegungen von H(x1, . . . , xn) durchprobieren. SAT ist ein typisches Problem f¨ur eine ganze Klasse von (schweren) Problemen f¨ur die kein praktisch brauchbarer Algorithmus bekannt ist (Stichwort:NP-Vollst¨andigkeit, siehe z.B. Abschnitt 3 oder [RV01b]).

Sogar die Einschr¨ankung auf KNF-Formeln mit drei Variablen pro Klausel (3 -SAT) ist noch ein schweres Problem und von gleicher Schwierigkeit wie SAT. ¨Ahnlich schwer ist TAUT, ein Problem bei dem gefragt wird, ob eine Formel eine Tautologie ist.

Problem: 3-SAT

Eingabe: Aussagenlogische FormelH in KNF mit max. 3 Literalen pro Klausel Frage: HatH eine erf¨ullende Belegung?

Damit ist offensichtlich Problem: KNF-SAT

Eingabe: Aussagenlogische FormelH in KNF Frage: HatH eine erf¨ullende Belegung?

1D.h. man kennt keinen Algorithmus, der f¨ur eine gegebene FormelH(x1, . . . , xn) das Erf¨ullbarkeitsproblem in ochstensp(n) Schritten l¨ost, wobeipein festes Polynom ist (Polynomialzeit).

(16)

auch eine schweres Problem.

Beispiel 26 Eine Formel H legt die gegebene WW-Tabelle fest:

x1 x2 x3 H

0 0 0 1

0 0 1 0

0 1 0 0

0 1 1 0

1 0 0 1

1 0 1 1

1 1 0 0

1 1 1 0

Damit ergibt sich die folgende kanonische DNF:

H≡ (¬x1∧ ¬x2∧ ¬x3)(x1∧ ¬x2∧ ¬x3)∨

(x1∧ ¬x2∧x3) und die kanonische KNF:

H≡ (x1∨x2∨ ¬x3)(x1∨ ¬x2∨x3)∧

(x1∨ ¬x2∨ ¬x3)(¬x1∨ ¬x2∨x3) (¬x1∨ ¬x2∨ ¬x3)

Bemerkung 27

Die Umformung in eine DNF- oder KNF-Formel kannzu einer sehr langen Formel f¨uhren (Wenn die Ausgangsformel die L¨angenhat, kann eine Formel der L¨angeO(2n) entstehen.

Stichwort: Die Anwendung der Distributivgesetze kann in einem Umformungsschritt die L¨ange etwa verdoppeln).

Oft hat eine kurze Formel in DNF eine lange Darstellung in KNF (und umgekehrt).

1.1.4. Hornformeln

Wir haben gesehen, dass das Erf¨ullbarkeitsproblem f¨ur aussagenlogische Formeln sehr schwer ist.

F¨ur einen in der Praxis wichtigen Spezialfall ist das nicht so. Diese speziellen aussagenlogischen Formeln heißen Hornformeln (nach dem MathematikerAlfred Horn)2.

Definition 28 Eine KNF-Formel heißt Hornformel, wenn jede ihrer Klauseln h¨ochstens eine unnegierte Variable (, positives Literal) enth¨alt.

Beispiel 29 Die Formel H(x1, . . . , x5) ist eine Hornformel:

H≡ (¬x1∨ ¬x2∨x5)(x2∨ ¬x3∨ ¬x4∨ ¬x6)(¬x5∨ ¬x6)(x4)∧

(¬x1∨x3∨ ¬x4)(x1∨ ¬x4)(x1∨ ¬x5)

Hornformeln sind deshalb so wichtig, weil man ihre Klauseln wie folgt umformen kann:

(¬x1∨ ¬x2∨. . .∨ ¬xm∨xk) (¬(x1∧x2∧. . .∧xm)∨xk)

(x1∧x2∧. . .∧xm)→xk

Solche Bedingungsmengen haben große Bedeutung f¨ur Datenbanken und in der k¨unstlichen Intelligenz (z.B. bedeutet die PROLOG-Anweisung

”spass :- witz,lustig“ eigentlich: Wenn

”Witz“

und ”Lustig“, dann

”Spass“).

Beispiel 30 Wir verwenden hier zus¨atzlich die Konstanten 0und 1(also Abk¨urzungen f¨ur eine unerf¨ullbare Formel und eine Tautologie). F¨ur jede Interpretation gilt: I(0) =def 0 und I(1) =def

1. Dann kann man die Hornformel aus Beispiel 29 schreiben als:

H≡ ((x1∧x2)→x5)((x3∧x4∧x6)→x2)((x5∧x6)0)(1→x4) ((x1∧x4)→x3)(x4 →x1)(x5→x1)

2*1918 Lower East Side, Manhattan (USA) -2001 in Pacific Palisades (USA)

(17)

1.1 Aussagenlogik 11 Definition 31 Die Klausel, die kein Literal enth¨alt, nennen wir leere Klausel (Schreibweise:

()). F¨ur jede Interpretation I gilt I(()) = 0, d.h. die leere Klausel ist unerf¨ullbar.

Wir betrachten nun folgenden Algorithmus, der die Erf¨ullbarkeit von Hornformeln effizient testet:

Algorithmus 1: Hornalgorithmus Eingabe : HornformelH(x1, . . . , xn)

Ergebnis:true, wenn H erf¨ullbar,false sonst

while (es gibt eini, so dass die Klausel(xi) in H vorkommt) { nimm das kleinste solche i;

eliminiere alle Klauseln in denenxi unnegiert vorkommt;

/* Nur hier kann die leere Klausel entstehen */

eliminiere¬xi aus allen Klauseln;

}

if (Klausel () entstanden){ return false;

}else{

return true;

}

Beispiel 32 Sei die folgende FormelH(x1, . . . , x5) als Eingabe f¨ur Algorithmus 1 gegeben:

H≡ (¬x1∨ ¬x2∨x5)(x2∨ ¬x3∨ ¬x4∨ ¬x6)(¬x5∨ ¬x6)(x4) (¬x1∨x3∨ ¬x4)(x1∨ ¬x4)(x1∨ ¬x5)

Nach Ausf¨uhrung des 1. Durchlaufs der while-Schleife(i= 4):

(¬x1∨ ¬x2∨x5)(x2∨ ¬x3∨ ¬x6)(¬x5∨ ¬x6)(¬x1∨x3)(x1)(x1∨ ¬x5) Nach Ausf¨uhrung des 2. Durchlaufs der while-Schleife(i= 1):

(¬x2∨x5)(x2∨ ¬x3∨ ¬x6)(¬x5∨ ¬x6)(x3) Nach Ausf¨uhrung des 3. Durchlaufs der while-Schleife(i= 3):

(¬x2∨x5)(x2∨ ¬x6)(¬x5∨ ¬x6)

Nach diesem Schritt bricht die while-Schleife ab, da keine Klausel der Form (xi) vorhanden ist. Auch die Klausel () kommt nach dem 3. Durchlauf nicht vor, deshalb ist die Hornformel H erf¨ullbar.

Zum jetzigen Zeitpunkt ist nicht klar, warum Algorithmus 1 korrekt ist. Dies wollen wir nun kl¨aren.

Lemma 33 (Schleifeninvariante) Entsteht bei einem Durchlauf der while-Schleife des Hor- nalgorithmus (Algorithmus 1) aus einer Formel H die Formel H durch das Eliminieren der Variablen xi, so gilt f¨ur jede Interpretation I:

I(H) = 1 gdw. (I(H) = 1 und I(xi) = 1) Beweis:

SeiI(H) = 1, dann auchI(K) = 1 f¨ur jede KlauselK vonH. Insbesondere f¨ur die Klausel (xi) gilt I((xi)) = 1, also I(xi) = 1. Sei nunK eine beliebige Klausel inH:

(18)

Fall 1: (K∨ ¬xi) ist Klausel inH, dann I(K) =or(I(K),0) =I(K∨ ¬xi) = 1.

Fall 2: K ist Klausel inH, dann ist sowieso I(K) = 1.

Also ist I(K) = 1 f¨ur alle KlauselnK von H und damitI(H) = 1.

Sei I(H) = 1 undI(xi) = 1, also I(K) = 1 f¨ur alle Klauseln K von H. Sei K nun eine beliebige Klausel in H:

Fall 1: Wenn K = (K∨xi), dannI(K)≥I(xi) = 1.

Fall 2: Wenn K = (K∨ ¬xi), dann istK Klausel inH und damitI(K)≥I(K) = 1.

Fall 3: Wederxinoch¬xikommen inKvor, dann istKauch Klausel inH, alsoI(K) = 1.

Zusammen: F¨ur alle KlauselnK von H giltI(K) = 1, also ergibt sich I(H) = 1. # Folgerung 34 Ist aus der HornformelHnach Verlassen der while-Schleife des Hornalgorithmus (Algorithmus 1) die Formel H entstanden, dann gilt f¨ur jede Interpretation I:

I(H) = 1 gdw. (I(H) = 1 und I(xi) = 1)

Beweis: Direkte Folge von Lemma 33 #

Lemma 35 Ist aus der Hornformel H nach Verlassen der while-Schleife des Hornalgorithmus (Algorithmus 1) die Formel H entstanden, so gilt:

i) Kommt die Klausel() in H vor, so giltI(H) = 0 f¨ur jede Interpretation I.

ii) Kommt die Klausel()inHnicht vor, so giltI(H) = 1f¨ur die InterpretationI mitI(xi) = 1 gdw.(xi wurde durch den Hornalgorithmus eliminiert).

Beweis:

Aussage i): Die leere Klausel () kommt in H vor, dann gilt I(H) = 0 f¨ur jede Interpretation I. Also muss aufgrund von Folgerung 34I(H) = 0 gelten.

Bem.: () ist entstanden, weil negative Literale¬xigestrichen wurden, aber es giltI(xi) = 1 laut Folgerung 34.

Aussage ii): Die Klausel () kommt inH nicht vor, dann muss in jeder Klausel K mindestens ein negatives Literal existieren. Wir w¨ahlen

I(xi) =

{ I(xi) = 1 , falls xi durch den Hornalgorithmus eliminiert wurde I(xi) = 0 , sonst

Dann gilt I(K) = 1 f¨ur jede Klausel K von H, also I(H) = 1. Mit Folgerung 34 gilt

dann I(H) = 1. #

Bemerkung 36

Die von uns konstruierte Belegung ist die, die kleinstm¨ogliche Wahrheitswerte zuordnet.

Es kann noch weitere erf¨ullende Belegungen geben, denn wurdexi nicht eliminiert, so muss nicht immer I(xi) = 0 gew¨ahlt werden.

Beispiel 37 Im Beispiel 32 wurdenx1, x3 undx4eliminiert. Also istI0(x1) =I0(x3) =I0(x4) = 1 und I0(x2) =I0(x5) =I0(x6) = 0 eine erf¨ullende Belegung. Aber auchI1 und I2

x1 x2 x3 x4 x5 x6

I0 1 0 1 1 0 0

I1 1 0 1 1 1 0

I2 1 1 1 1 1 0

sind erf¨ullende Belegungen.

(19)

1.1 Aussagenlogik 13 Satz 38 Der Hornalgorithmus (Algorithmus 1) ist korrekt und ben¨otigt O(|H|4) Schritte.

Beweis:

Die Korrektheit folgt direkt aus Lemma 35.

Mit |H| =def

”Anzahl der Buchstaben von H“ bezeichnen wir die L¨ange der Formel3 H.

Sei H(x1, . . . , xn) die Eingabe des Hornalgorithmus:

Da in jedem Durchlauf genau eine Variable eliminiert wird, haben wir maximal n Schleifendurchl¨aufe.

Bei einem Durchlauf muss jede Klausel betrachtet (suchen) und evtl. ge¨andert werden.

Laufzeit: O(|K|2).

Gesamte Laufzeit: |{z}n

#Schleifendurchl¨aufe

·

# der Klauseln

z}|{m ·O(|K|2)≤n· |H| ·O(|H|2) =O(|H|4).

Diese Absch¨atzung ist extrem grob, zeigt aber, dass der Hornalgorithmus in Polynomialzeit arbeitet.

1.1.5. Resolution

Wir wissen schon: F¨ur SAT und 3 -SAT gibt es vermutlich keine Algorithmen, die in der Praxis ausreichend schnell sind und f¨uralle aussagenlogischen Formeln die Erf¨ullbarkeit testen. D.h. wir k¨onnen nicht hoffen, dass ein Algorithmus Af¨ur SAT oder 3 -SAT existiert mit:

Wenn H erf¨ullbar, dann stopptA mit dem Ergebnis

”erf¨ullbar“

Wenn H unerf¨ullbar, dann stopptA mit dem Ergebnis

”unerf¨ullbar“

A arbeitet max. O(|H|k) Schritte f¨ur ein festesk∈N (

”Polynomialzeit“) Ein einfacher, aber nicht schneller Algorithmus f¨ur SAT ist

Algorithmus 2: Erf¨ullbarkeit von aussagenlogischen Formeln Eingabe : Formel H(x1, . . . , xn)

Ergebnis:true, wenn H erf¨ullbar,false sonst stelle die WW-Tabelle von H auf;

pr¨ufe alle Eintr¨age der WW-Tabelle;

if (eine Zeile der WW-Tabelle hat eine 1 in der Spalte H){ return true;

} else{

return false;

}

Eine Formel H hat maximal |H|Variablen, d.h. die WW-Tabelle kann maximal 2|H| Eintr¨age haben und damit ist die Rechenzeit des obigen Algorithmus mindestens O(2|H|) (kein Poly- nom!). Damit ist dieser Algorithmus f¨ur die Praxis unbrauchbar (vgl. Abbildung 7 auf Seite 45).

Wesentlich bessere Algorithmen sind f¨ur SAT und 3 -SAT aber nicht bekannt.

Hoffnung: Wir k¨onnen das Erf¨ullbarkeitsproblem wenigstens f¨ur einen (m¨oglichst großen) Teil der Formeln schnell l¨osen. Der Resolutionsalgorithmus f¨ur KNF-SAT soll dies leisten.

Wir legen fest: Klauseln enthalten nie eine Variable negiert und unnegiert (solche Klauseln k¨onnte man sowieso streichen, denn sie sind allgemeing¨ultig).

3z.B.|(xy)|= 5 und|((xy)z)|= 9

(20)

Definition 39 Sind(C1∨x)und (C2∨ ¬x)Klauseln und kommt in der Klausel(C1∨C2) keine Variable negiert und unnegiert vor, so heißt (C1∨C2) Resolvent von (C1∨x) und (C2∨ ¬x).

Beispiel 40 Sei H = (x∨y)

| {z }

=K1

(¬y)

|{z}

=K2

(¬x∨z)

| {z }

=K3

(x∨ ¬y∨z)

| {z }

=K4

(y∨ ¬z)

| {z }

=K5

, dann sind die Resol- venten der Klauseln von H:

K6 = (x) ist Resolvent von K1 und K2,

K7 = (y∨z) ist Resolvent von K1 und K3,

K8 = (x∨z) ist Resolvent von K1 und K4,

K9 = (¬z) ist Resolvent von K2 und K5,

K10= (¬y∨z) ist Resolvent von K3 und K4 und

K11= (¬x∨y) ist Resolvent von K3 und K5.

Der Resolvent von (x) und (¬x) ist die leere Klausel (). F¨ur jede Interpretation I gilt wieder I(()) = 0.

Definition 41 Sei H eine KNF-Formel und R1, . . . , Rm alle Resolventen von Klauseln in H, die nicht schon Klauseln in H sind, dann ist

Res(H) =def H∧R1∧R2∧. . .∧Rm.

Beispiel 42 Mit Beispiel 40 gilt deshalb Res(H) =H∧K6∧K7∧. . .∧K11. Definition 43 Sei H eine KNF-Formel, dann definieren wir induktiv f¨urk∈N:

Res0(H) =def H

Resk+1(H) =def Res(Resk(H))

Beispiel 44 Mit Bezug auf Beispiel 40 ergibt sich:

Res0(H) =H,

Res1(H) =H∧K6∧. . .∧K11,

Res2(H) = Res1(H)∧K12∧. . .∧K15, wobei K12= (y) ist Resolvent von K1 und K11, K13= (z) ist Resolvent von K2 und K7, K14= (¬x) ist Resolvent von K2 und K11 und K15= (x∨ ¬y) ist Resolvent von K4 und K9,

Res3(H) = Res2(H)∧K16∧K17, wobei

K16= () ist Resolvent von K2 und K12 und K17= (x∨ ¬z) ist Resolvent von K5 und K15,

Res4(H) = Res3(H),

Res5(H) = Res4(H) und deshalb

Resn(H) = Res3(H) f¨ur n≥3.

(21)

1.1 Aussagenlogik 15 Im Beispiel 44 zeigte es sich, dass nach 3 Schritten keine neuen Resolventen mehr gebildet wer- den k¨onnen. Das n¨achste Lemma zeigt, dass f¨ur jede KNF-Formel dieser Zustand nach endlich vielen Schritten erreicht ist. Diese Eigenschaft werden wir sp¨ater dazu benutzen, einen Algorith- mus zu formulieren, der berechnet, ob eine KNF-Formel unerf¨ullbar ist.

Lemma 45 F¨ur jede KNF-FormelH gilt:

i) Es gibt eink≥0 mit Resk(H) = Resk+1(H) (

”Fixpunkt von Res(·)(·)“) ii) Aus Resk(H) = Resk+1(H) folgtResk+i(H) = Resk(H) f¨ur alle i≥0.

Beweis:

i): Bei jedem Schritt von Resk(H) nach Resk+1(H) kommen h¨ochstens Klauseln dazu. Bei n Variablen gibt es h¨ochstens 3n verschiedene Klauseln, denn jede dern Variablen kann in einer Klausel nicht vorkommen, unnegiert vorkommen oder negiert vorkommen. Also gibt es maximal 3n verschiedene k mit Resk(H) ̸= Resk+1(H) und deshalb muss es ein k N mit Resk(H) = Resk+1(H) geben.

ii): Wir zeigen die Aussage via Induktion ¨uber i:

(IA) Seii= 0, dann gilt Resk+0(H) = Resk(H).

(IV) Es gibt eink, so dass f¨ur alle i≥0 gilt Resk+i(H) = Resk(H).

(IS) i i+ 1: Es gilt Resk+(i+1)(H) = Res(Resk+i(H)) (IV)= Res(Resk(H)) = Resk+1(H) (IV)=

Resk(H). #

Definition 46 F¨ur die KNF-Formel H sei kH das kleinste k mit Resk(H) = Resk+1(H). Wir legen fest:

Res(H) =def ReskH(H)

Mit Hilfe des folgenden Lemmas zeigen wir, dass die Hinzunahme der Resolventen zu einer logisch ¨aquivalenten Formel f¨uhrt. Damit ver¨andert die Resolventenbildung die Eigenschaft der Unerf¨ullbarkeit einer KNF-Formel nicht.

Lemma 47 Seien H, K1 und K2 Formeln und ist x eine Aussagenvariable, dann gilt:

H∧(K1∨x)∧(K2∨ ¬x)≡H∧(K1∨x)∧(K2∨ ¬x)∧(K1∨K2)

Beweis: Wir m¨ussen zeigen, dass f¨ur alle I giltI(H(K1∨x)∧(K2∨ ¬x)) =I(H(K1∨x)∧ (K2∨ ¬x)∧(K1∨K2)).

Sei I(H∧(K1∨x)∧(K2∨ ¬x)) = 1, dannI(H) =I(K1∨x) =I(K2∨ ¬x) = 1.

Fall 1: Wenn I(x) = 1, dannI(K2∨ ¬x) =I(K2) = 1 und damitI(K1∨K2) = 1.

Fall 2: Wenn I(x) = 0, dannI(K1∨x) =I(K1) = 1 und damitI(K1∨K2) = 1.

In beiden F¨allen ergibt sichI(H(K1∨x)∧(K2∨ ¬x)) = 1

Sei I(H∧(K1∨x)∧(K2∨ ¬x)∧(K1∨K2)) = 1, dann sicherlich auchI(H∧(K1∨x)∧

(K2∨ ¬x)) = 1. #

Lemma 48 F¨ur jede KNF-FormelH gilt:

i) H≡Res(H)

ii) H≡Resk(H) f¨ur jedes k≥0 iii) H≡Res(H)

(22)

Beweis: Aussage i) ist eine direkte Folge von Lemma 47, Aussage ii) folgt aus Aussage i) und

Punkt iii) ergibt sich mitii). #

Der n¨achste Satz zeigt die Korrektheit des Resolutionsmethode, mit der wir entscheiden k¨onnen, ob eine gegebene KNF-Formel erf¨ullbar ist.

Satz 49 Eine KNF-Formel H ist genau dann erf¨ullbar, wenn die leere Klausel () nicht in Res(H) enthalten ist.

Beweis:

SeiH erf¨ullbar. Es gilt mit Lemma 48 auchH≡Res(H). DaH erf¨ullbar ist, existiert ein I mit I(H) =I(Res(H)) = 1. Dann kann () keine Klausel von Res(H) sein, da f¨ur alle I gilt: I(()) = 0.

Wir zeigen diese Aussage durch Kontraposition (siehe Abschnitt B.1.1 auf Seite 67) und Induktion ¨uber die Anzahln der Variablen in der Formel H.

(IA) Sein= 0, dann istH= () die einzig m¨ogliche Formel und damit ()Res(H).

(IV) SeiH(x1, . . . , xn) nicht erf¨ullbar, dann gilt ()Res(H).

(IS) n→n+ 1:H(x1, . . . , xn+1) sei nicht erf¨ullbar und habe die Form

xn+1kommt nicht vor

z }| {

H1∧H2∧. . .∧Hk

alle Klauseln mitxn+1

z }| {

(H1 ∨xn+1)(H2 ∨xn+1)∧. . .∧(Hl∨xn+1)

(H1′′∨ ¬xn+1)(H2′′∨ ¬xn+1)∧. . .∧(Hm′′ ∨ ¬xn+1)

| {z }

alle Klauseln mit¬xn+1

D.h. inH1, . . . , Hk,H1, . . . , HlundH1′′, . . . , Hm′′ kommen sowohlxn+1als auch¬xn+1nicht vor.

Wir definieren

F0(x1, . . . , xn) =def H1∧. . . Hk∧H1. . .∧Hl und

F1(x1, . . . , xn) =def H1∧. . . Hk∧H1′′. . .∧Hm′′

Beh. F0 und F1 sind nicht erf¨ullbar.

Ann. F0 w¨are erf¨ullbar, dann existiert ein I mit I |= F0, d.h. I(H1) = · · · = I(Hk) = I(H1) =. . . I(Hl) = 1. Da xx+1 in F0 nicht vorkommt, k¨onnen wir I(xn+1) = 0 w¨ahlen.

Dann gilt:

I(Hi) = 1 f¨ur 1≤i≤k,

I(Hi∨xn+1) = or(I(Hi), I(xn+1)) = or(I(Hi),0) =I(Hi) = 1 f¨ur 1≤i≤lund

I(Hi′′∨ ¬xn+1) = or(I(Hi′′), I(¬xn+1)) = or(I(Hi),not(I(xn+1))) = or(I(Hi),1) = 1 f¨ur 1≤i≤m.

Damit ist I(H) = 1, d.h. H w¨are erf¨ullbar. Widerspruch. Also war die Annahme falsch und damit ist F0 unerf¨ullbar.

Analog: F1 nicht erf¨ullbar.

Die Formeln F0 und F1 haben nur n Variablen und sind unerf¨ullbar, also gilt mit der Induktionsvoraussetzung, dass die leere Klausel in Res(F0) und Res(F1) vorkommt. Nun unterscheiden wir f¨urF0 zwei F¨alle:

Abbildung

Abbildung 1: Beispiel f¨ ur eine Eingabe des PCPs Satz 80 (Church) Das Problem PL1-TAUT ist unentscheidbar.
Abbildung 2: Die Bestandteile einer Turingmaschine
Abbildung 3: Die Bestandteile einer Random-Access Maschine
Abbildung 4: Liste aller g¨ ultigen RAM-Befehle
+6

Referenzen

ÄHNLICHE DOKUMENTE

Geben Sie alle einstelligen Booleschen Funktionen

3 z.B.. Im Beispiel 1.44 zeigte es sich, dass nach 3 Schritten keine neuen Resolventen mehr gebil- det werden k¨ onnen. Das n¨ achste Lemma zeigt, dass f¨ ur jede KNF-Formel

Zeigen Sie, dass sich auch die Bilder dieser Geraden im Punkt f(z 0 ) im rechten Winkel schneiden. Ubungsklausur ¨ Zur Teilnahme an der ¨ Ubungsklausur am Samstag, den 02.07.2011,

Martin Fuchssteiner Katrin Krohne. TECHNISCHE UNIVERSIT¨

Universit¨ at Regensburg, Institut f¨ ur Theoretische Physik Winter

Universit¨ at Regensburg, Institut f¨ ur Theoretische Physik Winter

Eine Schulklasse hat am Montag zwei Stunden Sport, leider nur eine Stun- de Mathematik, zwei Stunden Deutsch und eine Stunde Latein?. Wie viele M¨ oglichkeiten f¨ ur den