¨Ubungsblatt 11

Werbung
Grundlagen der Logik in der Informatik
WS 2015
Übungsblatt 11
Abgabe der Lösungen: 01.02.–05.02.
Aufgabe 1
Die Natürlichen Zahlen als Modell (Präsenzaufgabe)
Sei N die Menge der natürlichen Zahlen einschließlich 0, also N = {0, 1, 2, . . .}. Stellen Sie N als
ein Modell einer Signatur dar, die aus den folgenden Symbolen besteht:
• eine Konstante (also ein 0-stelliges Funktionssymbol) 0;
• ein einstelliges Funktionssymbol s für die Nachfolgeroperation, z.B. s(0) = 1, s(1) = 2
etc.;
• zwei binäre Funktionssymbole + und × für Addition und Multiplikation.
Drücken Sie die folgenden Sätze als Formeln in Prädikatenlogik erster Stufe aus:
1. x ist kleiner oder gleich y (Achtung: ≤ gehört nicht zur Signatur);
2. 0 ist die kleinste natürliche Zahl;
3. x ist ein Teiler von y;
4. x ist eine Dreieckszahl (d.h. x ist ein Binomialkoeffizient der Form
y+1
2
für geeignetes y).
Überprüfen Sie dann die folgende Sätze der Peano-Arithmetik :
1. N |= ∀x. ∀y. (s(x) = s(y) → x = y);
2. N |= ∀x. ∀y. x + s(y) = s(x + y);
3. N |= ∀x. ∀y. x × s(y) = x + x × y.
Aufgabe 2
Fitch trifft Induktion
Die Axiome der Peano-Arithmetik (mit + und ×) lauten
PA1 . ∀x. ¬(0 = s(x));
PA2 . ∀x. ∀y. (s(x) = s(y)) → (x = y);
PA3 . ∀x. x + 0 = x;
PA4 . ∀x. ∀y. x + s(y) = s(x + y);
PA5 . ∀x. x × 0 = 0;
PA6 . ∀x. ∀y. x × s(y) = x × y + x;
(Präsenzaufgabe)
GLoIn, WS 2015
PA7 . ∀y1 , . . . , yn . φ(0, y1 , . . . , yn ) ∧ ∀x. (φ(x, y1 , . . . , yn ) → φ(s(x), y1 , . . . , yn )) .
→ ∀x. φ(x, y1 , . . . , yn )
Das letzte Axiom ist in Wirklichkeit ein Axiomenschema, das für jedes φ ein Axiom erzeugt,
eine sogenannte Instanz. Diese Instanzen heißen erwartungsgemäß Induktionsaxiome. Die schematische Formulierung ist eine Annäherung an das eigentlich beabsichtigte Induktionsprinzip,
das über eine Prädikatenvariable P anstelle von φ redet, aber in Prädikatenlogik erster Stufe
nicht ausdrückbar ist.
• Beweisen Sie die folgende Modifikation von PA3 in Fitch:
PA03 . ∀x. 0 + x = x.
• Formalisieren Sie Ihren Fitch-Beweis in Coq. Sie können die folgende Codevorlage verwenden.
1
Require Import Classical .
2
3
Parameter Nat : Set .
(* Typ der nat ü rlichen Zahlen *)
4
5
6
Parameters zero : Nat .
Parameters s : Nat -> Nat .
7
8
Parameters plus times : Nat -> Nat -> Nat .
9
10
11
Notation " A + B " := ( plus A B ).
Notation " A * B " := ( times A B ).
(* Infixnotation f ü r plus *)
(* Infixnotation f ü r times *)
12
13
Notation "0" := ( zero ).
14
15
16
17
18
19
20
21
Axiom
Axiom
Axiom
Axiom
Axiom
Axiom
Axiom
22
23
PA1 :
PA2 :
PA3 :
PA4 :
PA5 :
PA6 :
PA7 :
forall x : Nat , ~ (0 = s ( x )).
forall x y : Nat , ( s ( x ) = s ( y )) -> ( x = y ).
forall x : Nat , x + 0 = x .
forall x y : Nat , x + s ( y ) = s ( x + y ).
forall x : Nat , x * 0 = 0.
forall x y , x * s ( y ) = x * y + x .
forall P : Nat -> Nat -> Prop , forall y : Nat ,
( P 0 y /\ forall x : Nat , ( P x y -> P ( s x ) y ))
-> forall x , P x y .
24
25
Lemma PA3 ’: forall x : Nat , 0 + x = x .
26
27
(* Ihren Beweis hier einf ü gen *)
28
29
Qed .
Achtung! Natürliche Zahlen sind in Coq bereits implementiert. Gegenstand der Aufgabe ist
aber gerade eine (teilweise) Neuimplementierung. Beachten Sie, dass die Induktionsaxiome in
der Codevorlage in zwei Hinsichten von der Formulierung von PA7 abweichen:
• Statt mehrerer Variablen y1 , . . . , yn wird nur eine einzelne Variable y verwendet, was für
Zwecke der Aufgabe ausreicht.
• Statt eines Axiomenschemas wird echte Quantifizierung über Prädikate verwendet, was uns
strenggenommen von der Logik erster Stufe zur Logik zweiter Stufe führt (wie es auch der
2
GLoIn, WS 2015
ursprünglichen Absicht von Peano entspricht). Dies ist ein auf diese Aufgabe beschränkter
Sonderfall. Die notwendigen Instanzen von PA7 können Sie sich im Laufe Ihrer Beweise
wie folgt verschaffen:
specialize (PA7 (fun x y : Nat => <Induktionsbehauptung>)); intro.
Als ein einfaches, wenn auch nicht sinnvolles Beispiel wird durch
specialize (PA7 (fun x y : Nat => x = y)); intro.
die folgende Instanz von PA7 als Prämisse hinzugefügt:
forall y : Nat,
0 = y /\ (forall x : Nat, (x = y -> s x = y) -> forall x0 : Nat, x0 = y)
Aufgabe 3
Kommutativität von +
(9 Punkte)
Leiten Sie die Kommutativität von + aus den Peano-Axiomen her und formalisieren Sie Ihren
Beweis in Fitch oder in Coq, je nach Ihrer Wahl. Verwenden Sie dabei als Lemma die in Aufgabe 2
bewiesene Formel PA03 und beweisen Sie dazu ferner die folgende Modifikation von PA4 :
PA04 . ∀x. ∀y. s(y) + x = s(y + x).
Aufgabe 4
Modellbau in Peano-Arithmetik
(5 Punkte)
Peano-Arithmetik ist bekanntermaßen korrekt über natürlichen Zahlen, d.h. N |= φ gilt für jedes Peano-Axiom φ und somit auch für alle Theoreme der Peano-Arithmetik, d.h. alle durch
natürliches Schließen aus den Axiomen hergeleiteten Formeln. Peano-Arithmetik ist dennoch
nicht vollständig über N, eine Konsequenz des berühmten ersten Gödelschen Unvollständigkeitssatzes. Das bedeutet unter anderem, dass es andere Modelle als N gibt ( andere“ in einem
”
formal präzisen Sinn), die alle Peano-Axiome erfüllen. Solche Modelle werden auch Nichtstandardmodelle genannt. Man meint intuitiv, solche Modelle auf recht naive Weise konstruieren zu
können, was aber fehlschlägt, wie der folgende Versuch zeigt:
1. Erweitern Sie das Modell N auf N ∪ {∞}, indem Sie die Semantik von Funktionssymbolen
dahingehend vervollständigen, dass ∞ als Ergebnis ausgegeben wird, sobald mindestens
ein Argument zu ∞ evaluiert wird.
2. Beweisen Sie, dass das so definierte Modell kein Nichtstandardmodell der Peano-Arithmetik
ist (es also ein Peano-Axiom φ gibt, so dass N ∪ {∞} 6|= φ). Hinweis: Betrachten Sie das
Induktionsaxiom für φ(x) = ¬(x = s(x)).
Aufgabe 5
Schachbrett als Modell erster Stufe
(6 Punkte)
Formalisieren Sie die folgende Schachsituation als ein Modell M für die Signatur, die folgende
Symbole umfasst: drei Individuenkonstanten wKoenig, sKoenig und sDame; vier binäre Prädikate
LinksVon, RechtsVon, Hinter, Vor; und ein ternäres Prädikat Zwischen.
3
GLoIn, WS 2015
0Z0Z0Z0Z
Z0Z0Z0J0
6
0Z0Z0Z0Z
5
Z0Z0Z0Z0
4
0Z0Z0l0Z
3
Z0Z0Z0Z0
2
kZ0Z0Z0Z
1
Z0Z0Z0Z0
8
7
a
b
c
d
e
f
g
h
Die Semantik der Prädikate soll durch die jeweils offensichtliche geometrische Beziehung gegeben
sein. Stellen Sie sicher, dass die Uneindeutigkeit in der Argumentfolge der Prädikate so aufgelöst
ist, dass M die folgenden Formeln erfüllt: Vor(wKoenig, sKoenig), RechtsVon(wKoenig, sKoenig),
Zwischen(sDame, sKoenig, wKoenig).
Überprüfen Sie die folgenden Behauptung:
M |= ∃x. ∀y. ∃z. (¬(x = y) → Zwischen(y, x, z)).
Hinweis: Das Modell ist hier endlich; daher kann man Prädikate einfach durch Auflisten der
sie erfüllenden Tupel über dem Grundbereich definieren.
4
Herunterladen