• Keine Ergebnisse gefunden

Lehrstuhl f¨ur Programmierparadigmen Daniel Wasserrab

N/A
N/A
Protected

Academic year: 2022

Aktie "Lehrstuhl f¨ur Programmierparadigmen Daniel Wasserrab"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Lehrstuhl f¨ ur Programmierparadigmen

Daniel Wasserrab

daniel.wasserrab@kit.edu

Theorembeweiserpraktikum – SS 2010

http://pp.info.uni-karlsruhe.de/lehre/SS2010/tba

Blatt 1: Deduktion Besprechung: 13.04.2010

1 Nat¨ urliches Schließen

In dieser Aufgabe geht es um den Kalk¨ ul des nat¨ urlichen Schließens, mit dessen Hilfe einige Lemmas der Aussagen-Logik bewiesen werden sollen (n¨ achste Seite).

F¨ ur die Beweise gelten die folgenden Spielregeln:

Es d¨ urfen nur diese Lemmas verwendet werden:

(Anzeigen der Lemmas mittel thm

lemma-Name) notI: (A =⇒ False) =⇒ ¬ A

,

notE:[[¬ A; A]] =⇒ B

,

conjI:[[A; B]] =⇒ A ∧ B

,

conjE:[[A ∧ B; [[A; B]] =⇒ C]] =⇒ C

,

disjI1: A =⇒ A ∨ B

,

disjI2: A =⇒ B ∨ A

,

disjE:[[A ∨ B; A =⇒ C; B =⇒ C]] =⇒ C

,

impI: (A =⇒ B) =⇒ A −→ B

,

impE:[[A −→ B; A; B =⇒ C]] =⇒ C

,

mp:[[A −→ B; A]] =⇒ B

iffI:[[A =⇒ B; B =⇒ A]] =⇒ A = B

,

iffE:[[A = B; [[A −→ B; B −→ A]] =⇒ C]] =⇒ C classical: (¬ A =⇒ A) =⇒ A

Es d¨ urfen nur die Methoden

rule

,

erule

und

assumption

verwendet werden.

Beispiel:

lemma imp uncurry: "(P −→ (Q −→ R)) −→ P ∧ Q −→ R"

apply(rule impI) apply(rule impI) apply(erule conjE) apply(erule impE)

apply assumption apply(erule mp) apply assumption done

(2)

lemma I: "A −→ A"

oops

lemma "A ∧ B −→ B ∧ A"

oops

lemma "(A ∧ B) −→ (A ∨ B)"

oops

lemma "((A ∨ B) ∨ C) −→ A ∨ (B ∨ C)"

oops

lemma K: "A −→ B −→ A"

oops

lemma "(A ∨ A) = (A ∧ A)"

oops

lemma S: "(A −→ B −→ C) −→ (A −→ B) −→ A −→ C"

oops

lemma "(A −→ B) −→ (B −→ C) −→ A −→ C"

oops

lemma "¬ ¬ A −→ A"

oops

lemma "A −→ ¬ ¬ A"

oops

lemma "(¬ A −→ B) −→ (¬ B −→ A)"

oops

lemma "((A −→ B) −→ A) −→ A"

oops

lemma "A ∨ ¬ A"

oops

lemma deMorgan1:"(¬ (A ∨ B)) = (¬ A ∧ ¬ B)"

oops

lemma deMorgan2:"(¬ (A ∧ B)) = (¬ A ∨ ¬ B)"

oops

Anmerkung: Ist Ihnen bei den Beweisen der De Morgan-Regeln etwas aufgefallen?

Theorembeweiserpraktikum – ¨ Ubung 1 2

Referenzen

ÄHNLICHE DOKUMENTE

Die Big-Step und Small-Step-Semantiken verwenden f¨ ur Ausdr¨ ucke die Semantikfunktionen A J K und B J K , die f¨ ur alle Ausdr¨ ucke und Zust¨ ande definiert sind und in einem

Typsicherheit l¨ asst sich auch f¨ ur eine Big-Step-Semantik zeigen, in dieser Aufgabe f¨ ur While T : (a) ¨ Andern Sie die Auswertungsrelation so, dass eine Anweisung mit einem

4.1 wurde eine Small-Step-Semantik f¨ ur die idealisierte Assembler-Sprache ASM

Wurde ein Bezeichner erkannt, so soll in der Symboltabelle nachgeschlagen (find or insert symbol (”symbolstring”)) werden welchem Token-Typ er entspricht (symbol−>id). Dazu muss

Die Menge der nat¨ urlichen Zahlen N l¨ asst sich als Teilmenge der reellen Zahlen R wie folgt definieren:.. (a) 0 ist eine nat¨

5.3 haben wir die While-Sprache um Bl¨ ocke mit lokalen Variablen erweitert und operatio- nale Semantiken daf¨

Insbesondere f¨ ur Datenflussanalysen die nur Aussagen ¨ uber einzelne Werte machen (und nicht ¨ uber Beziehungen zwischen Werte) ist es trivial die Datenfluss- analyse als

Somit l¨ asst sich nicht garantieren, dass die L¨ osung als F¨ arbung f¨ ur das urspr¨ ungliche Programm