Übungen zu "Grundlagen der Logik in der Informatik"

Werbung
Übungen zu ”Grundlagen der Logik in der Informatik” - WS15/16
1/6
Übungen zu ”Grundlagen der Logik in der Informatik” WS15/16
Donnerstag 14:15-15:45, Cauerstraße 7/9, Raum 0.154-115
Freitag 14:15-15:45, Martenstr. 3, Raum 02.134-113
Daniel Hausmann
[email protected]
Friedrich-Alexander-Universität Erlangen
Department Informatik
Lehrstuhl 8
November 18, 2015
Übungen zu ”Grundlagen der Logik in der Informatik” - WS15/16 | Wiederholung | Widerholung aus der Vorlesung
2/6
Beweis-Regeln des Fitch-Kalküls (Konjunktion, Negation, Falsum)
Notation: Wir schreiben Φ ` ϕ, wenn ϕ per Regeln aus Annahmen in Φ
(Φ Menge von Formeln) rein syntaktisch herleitbar ist.
(∧I )
ϕ ψ
ϕ∧ψ
(¬I )
(⊥I )
(∧E1 )
ϕ`⊥
¬ϕ
¬ϕ
ϕ
⊥
ϕ∧ψ
ϕ
(∧E2 )
(¬E )
¬¬ϕ
ϕ
(⊥E ) ⊥
ϕ
ϕ∧ψ
ψ
Übungen zu ”Grundlagen der Logik in der Informatik” - WS15/16 | Wiederholung | Widerholung aus der Vorlesung
Beweis-Regeln des Fitch-Kalküls (Disjunktion, Implikation)
(∨I1 )
ϕ
ϕ∨ψ
(∨I2 )
(→ E )
ψ
ϕ∨ψ
ϕ→ψ
ψ
(∨E )
ϕ
ϕ`χ
(→ I )
ψ`χ
χ
ϕ`ψ
ϕ→ψ
Satz (Korrektheit und Vollständigkeit des Fitch-Kalküls)
Für alle Mengen von Formeln Φ und alle Formeln φ,
Φ |= ψ
⇔
Φ ` ψ.
ϕ∨ψ
3/6
Übungen zu ”Grundlagen der Logik in der Informatik” - WS15/16 | Übungsblatt 4 | Aufgabe 1 (Präsenzaufgabe)
Aufgabe 1 - Beweise in Fitch
Beweisen Sie folgende aussagenlogische Formeln im Fitch-Kalkül:
1
¬A → (A → B)
2
(A → (B ∧ C )) → (A → B)
3
(A ∧ (B → ¬A)) → (A ∧ ¬B)
4/6
Übungen zu ”Grundlagen der Logik in der Informatik” - WS15/16 | Übungsblatt 4 | Aufgabe 2 (Präsenzaufgabe)
Aufgabe 2 - Beweise in Coq
Wir betrachten den folgenden Beweis von (q → p) → (¬p → ¬q):
1
Require Import Classical_Prop.
(** Lemmas für klassische Logik *)
Parameters p q : Prop.
(** Deklaration aussagenlogischer
Variablen p und q *)
(** T1 ist der Name des Theorems *)
(** Anfang des Beweises **)
2
3
4
5
6
7
8
9
10
11
12
13
Theorem T1 : (q->p)->(~p->~q).
Proof.
intro A.
intro B.
intro C.
assert p as D.
apply A; exact C.
apply B; exact D.
Qed.
(** Ende des Beweises **)
Die Namen A, B und C werden als Bezeichnungen für die
Zwischenschritte verwendet; intro, apply, assert und exact sind
Taktiken, ähnlich zu Fitch-Regeln.
5/6
Übungen zu ”Grundlagen der Logik in der Informatik” - WS15/16 | Übungsblatt 4 | Aufgabe 2 (Präsenzaufgabe)
6/6
Aufgabe 2 - Beweise in Coq
Lesen Sie das Coq-Cheat-Sheet von Andrej Bauer, und identifizieren
Sie die Einführungs- und Eliminations-Regeln des Fitch-Kalküls als
Coq-Taktiken (bzw. einfache Kombinationen davon) wie im Kapitel
“Basic Tactics” beschrieben.
Formalisieren Sie die Beweise aus Aufgabe 1 in Coq.
Fitch-Regel
Coq-Taktik
∧I
split
∧E1
destruct H as [H0 ]; exact H0.
∧E2
destruct H as [ H0]; exact H0.
∨I1
left; exact H.
∨I2
right; exact H.
∨E
destruct H as [L|R]; apply H0; exact L; apply H1; exact L.
→I
intro
→E
apply H; exact H0.
¬I
intro
¬E
apply NNPP.
⊥I
apply H; exact H0.
⊥E
contradiction.
Herunterladen