Formale Methoden. Alexander Knapp, Gerhard Schellhorn. Universität Augsburg

Größe: px
Ab Seite anzeigen:

Download "Formale Methoden. Alexander Knapp, Gerhard Schellhorn. Universität Augsburg"

Transkript

1 Formale Methoden Alexander Knapp, Gerhard Schellhorn Universität Augsburg

2 Formale Methoden: Ziele (1) Grundlagen für die Softwareerstellung Mathematik von Spezifikations- und Programmiersprachen Vermeidung von Mißverständnissen und Unklarheiten Was bedeutet eine UML-Spezifikation? Welche Compileroptimierungen sind möglich? Ermöglichung von präzisen Vorhersagen und Tests Verständnisverbesserung Was sind gute, gut strukturierte und gut dokumentierte Programme? Was sind saubere Schnittstellen? Was ist eine gute Spezifikationssprache? A computer is a mathematical machine. A program is a mathematical expression. A programming language is a mathematical theory. Programming is a mathematical activity. C. Anthony R. Hoare, 1989 A. Knapp, G. Schellhorn: Formale Methoden 2

3 Formale Methoden: Ziele (2) Entwicklung von Software mit formalen Spezifikationen Formale Spezifikation der Anforderungen höhere Abstraktion als direkte Programmierung Validierung, Nachweis von (Sicherheits-)Eigenschaften Qualitätsverbesserung durch frühere Fehlererkennung Methodik, um von abstrakten Anforderungen zu Programmen zu kommen modulare Softwareentwicklung Aber: formale Spezifikationen beseitigen keine Mißverständnisse mit dem Kunden formale Methoden sind für den Softwareingenieur, nicht für den Kunden A. Knapp, G. Schellhorn: Formale Methoden 3

4 Formale Methoden: Ziele (3) Formaler, systemunterstützter Nachweis von Eigenschaften Beweise von Eigenschaften sichern Qualität der Spezifikation Beweise für die Korrektheit von Programmen bzgl. Spezifikation sichern Qualität der Programme formale Beweise kosten Zusatzaufwand Grad der Formalisierung immer eine Kosten/Nutzen-Abwägung! Proofs of programs are too boring for the social process of mathematics to work. Richard DeMillo, Richard Lipton, Alan Perlis, 1979 A. Knapp, G. Schellhorn: Formale Methoden 4

5 Spezifikationssprachen Eine Spezifikationssprache ist eine Sprache zur Beschreibung von Softwaresystemen oder der Anforderungen an Softwaresysteme. Beispiele automatenartige Spezifikationen (Statecharts etc.) algebraische Spezifikationen Programmiersprachen Grundsätzliches Vorgehen zur Definition Festlegung von Syntax und Semantik A. Knapp, G. Schellhorn: Formale Methoden 5

6 Spezifikationssprachen: Syntax und Semantik Syntax: Wie sehen zulässige Sprachkonstrukte aus? Formal: Definition einer Menge von zulässigen Texten (Zeichenketten) bei Rechnerunterstützung typischerweise durch Grammatik gegeben Semantik: Was bedeutet eine Zeichenkette? Formal: Zuordnung von mathematischen Strukturen (meist basierend auf Mengenlehre) Bei Programmiersprachen: Informell im Handbuch durch Beschreibung des Effekts jedes Konstrukts auf den Ausführungszustand A. Knapp, G. Schellhorn: Formale Methoden 6

7 Formales Beweisen Einbettung von Spezifikationen in eine formale Sprache, mit der Aussagen bewiesen werden können Formale Beweise ersetzen mathematische Beweise durch Berechnung mit einem Kalkül keine Fehler (wenn nur Kalkülregeln fehlerfrei) Logik = Syntax + Semantik + Kalkül Grundlegende Sprachen zur Formulierung von Aussagen: Aussagenlogik und Prädikatenlogik A. Knapp, G. Schellhorn: Formale Methoden 7

8 Überblick Logische Grundlagen Aussagenlogik Prädikatenlogik Spezifikation von Datenstrukturen Semantik von Programmen Beweisen mit Programmen Von abstrakten Spezifikationen zu konkreten Programmen algebraische Verfeinerung Datenverfeinerung A. Knapp, G. Schellhorn: Formale Methoden 8

9 Aussagenlogik Ein Satz ist, was an sich verneint oder bejaht werden kann. Chrysipp, Dialektische Definitionen (nach Diogenes Laertios) Der genannte Mann (Chrysipp) sagt, daß er (der Hund) öfters das fünfte Unbeweisbare anwendet, wenn er, auf eine Kreuzung von drei Wegen kommend, nachdem er zwei Wege, durch welche das Wild nicht gegangen ist, berochen hat, unmittelbar durch den dritten sich wirft, ohne ihn zu beriechen. Der alte (Meister) sagt nämlich, daß der Hund potentiell so schließt: Entweder hier, oder hier, oder hier ist das Wild durchgegangen; nun weder hier, noch hier; also hier. M. Tullius Cicero, Topica 57 Es krächzen selbst die Raben auf den Dächern, welche Implikationen richtig sind. Kallimachos (nach Sextus Empiricus) A. Knapp, G. Schellhorn: Formale Methoden 9

10 Aussagenlogik: Syntax (Endliche) Menge von atomaren Aussagen P (Propositionen) Proposition entweder wahr oder falsch Zeichenketten (verschieden von true, false,,,... ) z. B. P = {a, b, c} Definition Die Menge der aussagenlogischen Formeln F (P) über einer Menge von Propositionen P ist die kleinste Menge mit: P F (P) true, false F (P) Wenn A F (P), dann ( A) F (P). Wenn A, B F (P), dann (A B), (A B), (A B), (A B) F (P).,,,, heißen Junktoren. A. Knapp, G. Schellhorn: Formale Methoden 10

11 Formeln: Notation Klammern werden entsprechend der Bindungsstärken weggelassen: { } { } { } { } { } ( bedeutet: bindet stärker als) Außenklammern werden ebenfalls weggelassen. Aufzählungen mit, sind implizit nach rechts geklammert. Beispiele: a b c statt ((a ( b)) c) a b c d e statt (a ((( b) (c d)) e)) A. Knapp, G. Schellhorn: Formale Methoden 11

12 Formeln: Definitionsprinzip für Funktionen Um eine Funktion f auf Formeln F (P) zu definieren, verfahre rekursiv: 1. f (p) für Propositionen p P 2. f (false), f (true) 3. f ( A) unter Zuhilfenahme von f (A) 4. f (A B), f (A B), f (A B), f (A B) unter Zuhilfenahme von f (A), f (B) Beispiele: Anzahl der Junktoren (endliche) Menge der vorkommenden Propositionen Menge der Unterformeln einer Formel A. Knapp, G. Schellhorn: Formale Methoden 12

13 Formeln: Beweisprinzip für Eigenschaften Um zu zeigen, daß alle Formeln in F (P) eine Eigenschaft E haben, verfahre induktiv: 1. E(p) gilt für alle atomaren Formeln p P. 2. E(false), E(true) 3. Wenn E(A) für A F (P) gilt, dann auch E( A). 4. Wenn E(A) und E(B) für A, B F (P) gelten, dann auch E(A B), E(A B), E(A B), E(A B). Beispiel: Alle Formeln haben eine gerade Zahl von Klammern. A. Knapp, G. Schellhorn: Formale Methoden 13

14 Aussagenlogik: Semantik (1) Zuweisung eines Wahrheitswerts für jede aussagenlogische Formel Wahrheitswert hängt nur von Wahrheitswerten der vorkommenden Propositionen ab Definition Eine Interpretation I : P B ordnet jeder Proposition einen Wahrheitswert aus B = {ff, tt} zu. Die Semantikklammern umschließen immer Sprachkonstrukte und liefern deren Semantik. Hier hängt die Semantik P A I einer aussagenlogischen Formel A von einer Interpretation I ab. A. Knapp, G. Schellhorn: Formale Methoden 14

15 Aussagenlogik: Semantik (2) Definition Für jede Interpretation I wird einer aussagenlogischen Formel A als Semantik der folgende Wahrheitswert P A I zugeordnet: P p I = I(p) P false I = ff P true I = tt P A I = tt gdw. P A I = ff P A B I = tt gdw. P A I = tt und P B I = tt P A B I = tt gdw. P A I = tt oder P B I = tt P A B I = tt gdw. P A I = ff oder P B I = tt P A B I = tt gdw. P A I = P B I Die Definitionen für,, &c. entsprechen den üblichen Wahrheitstafeln. A. Knapp, G. Schellhorn: Formale Methoden 15

16 Modelle Definition Eine Interpretation I heißt ein Modell einer aussagenlogischen Formel A, geschrieben als I = A, falls P A I = tt. Definition Sei A eine aussagenlogische Formel. A ist erfüllbar, wenn es ein Modell von A gibt. A ist widersprüchlich (eine Kontradiktion), wenn es kein Modell von A gibt. A ist allgemeingültig (eine Tautologie), geschrieben als = A, wenn jede Interpretation ein Modell von A ist. Beispiele: a a ist allgemeingültig. a b ist erfüllbar, aber nicht allgemeingültig. a a ist widersprüchlich. Es gilt: A ist erfüllbar gdw. A ist nicht allgemeingültig. A. Knapp, G. Schellhorn: Formale Methoden 16

17 Tautologien (1) 1. (A B) (B A) Kommutativität 2. (A B) C A (B C) Assoziativität 3. A A A Idempotenz 4. (A B) (B A) Kommutativität 5. (A B) C A (B C) Assoziativität 6. A A A Idempotenz 7. A (B C) (A B) (A C) Distributivität 8. A (B C) (A B) (A C) Distributivität 9. (A B) A B DeMorgan 10. (A B) A B DeMorgan 11. A (A B) A Redundanz 12. A (A B) A Redundanz 13. A A Doppelnegation A. Knapp, G. Schellhorn: Formale Methoden 17

18 Tautologien (2) 14. (A B) ((B C) (A C)) Transitivität 15. A ((A B) B) Modus Ponens 16. (A A) A Selbstwiderlegung 17. (A B) ( B A) Kontraposition 18. (A A) B Ex falso quodlibet 19. (A B) ( A B) Implikation vs. Disjunktion 20. (A B) (A B) (B A) Äquivalenz 21. (A B) (A B) ( A B) Äquivalenz 22. (A B) ( A B) B Fallunterscheidung 23. A (B C) A B C geschachtelte Implikation 24. (A B) (B A) Kommutativität 25. ((A B) C) (A (B C)) Assoziativität A. Knapp, G. Schellhorn: Formale Methoden 18

19 Tautologien (3) 26. (A false) false And-false 27. (A true) A And-true 28. (A false) A Imp-false 29. (A true) true Imp-true 30. (true A) A true-imp 31. (false A) true false-imp 32. (A true) A Equiv-true 33. (A false) A Equiv-false 34. (A A) true triviale Disjunktion 35. (A A) false triviale Konjunktion Analog auch Or-true &c. A. Knapp, G. Schellhorn: Formale Methoden 19

20 Folgerbarkeit Folgerung von Theoremen aus (als wahr angenommenen) Axiomen Ax F (P) Definition Eine Interpretation I heißt ein Modell einer Menge von aussagenlogischen Formeln Ax, geschrieben als I = Ax, falls P A I = tt für alle A Ax. Die Menge Ax heißt erfüllbar, wenn es ein Modell von Ax gibt. Für endliche Mengen Ax ist I = Ax äquivalent zu I = A Ax A. Definition Eine aussagenlogische Formel A ist eine Folgerung aus einer Menge von aussagenlogischen Formeln Ax, geschrieben als Ax = A, wenn für jede Interpretation I mit I = Ax auch I = A gilt. A. Knapp, G. Schellhorn: Formale Methoden 20

21 Folgerbarkeit und Erfüllbarkeit Satz Zu Ax = A sind äquivalent: Ax { A} ist nicht erfüllbar. = ( Ax) A, falls Ax endlich. Reduktion des Folgerbarkeitsproblem auf die Suche nach einer erfüllenden Interpretation A. Knapp, G. Schellhorn: Formale Methoden 21

22 Erfüllbarkeit: Beispiel (1) n-damen-problem Ist es möglich, auf einem Schachbrett mit n n Feldern n Damen so zu plazieren, daß keine Dame direkt eine andere Dame schlagen kann? Suche einer Aufstellung, in der in jeder Zeile genau eine Dame, und auf keiner Spalte und keiner Diagonale zwei Damen A. Knapp, G. Schellhorn: Formale Methoden 22

23 Erfüllbarkeit: Beispiel (2) Codierung des n-damen-problems n 2 Variablen der Form p (x,y) mit x, y {1,..., n} p (x,y) für auf Feld (x, y) steht eine Dame 1. In jeder Zeile und Spalte nur eine Dame F 1 n n ( x=1 y=1 p(x,y) n i=x+1 p ) (i,y) F 2 n ( n x=1 y=1 p (x,y) ) n i=y+1 p (x,i) 2. Auf jeder Diagonale nur eine Dame F 3 n x=1 n y=1 n x=1 ( p (x,y) min(n x,n y) ) i=1 p (x+i,y+i) n y=1 (p (x,y) ) min(x 1,n y) i=1 p (x i,y+i) 3. In jeder Zeile (mindestens) eine Dame F 4 n y=1 n x=1 p (x,y) A. Knapp, G. Schellhorn: Formale Methoden 23

24 Sequenzenkalkül Ableitung aller allgemeingültigen Aussagen Erfunden von Gerhard Gentzen (1934) Hier: Fassung nach Oiva Ketonen (1944) arbeitet auf Sequenzen Charakteristik: versucht, Beweisziel auf Axiome zu reduzieren (schrittweise Vereinfachung des Problems); am menschlichen Beweisen orientiert Nur einer von vielen möglichen Kalkülen: Hilbertkalkül, natürliches Schließen, Tableaukalkül, Modellelimination, Resolutionskalkül A. Knapp, G. Schellhorn: Formale Methoden 24

25 Sequenzen Definition Seien A 1,..., A m, B 1,..., B n F (P). A 1,..., A m B 1,..., B n heißt Sequenz. A 1,..., A m heißt Antezedent (m 0). B 1,..., B n heißt Sukzedent (n 0). Γ, Γ 1,,... bezeichnen Listen von Formeln Γ = A 1,..., A m = [A 1,..., A m ] = B 1,..., B n = [B 1,..., B n ] Γ = A 1,..., A m B 1,..., B n Γ, A B = A 1,..., A m, A B Γ, A B, = A 1,..., A m, A B, B 1,..., B n [A1,..., A m ] = A 1... A m [] = true [B1,..., B n ] = B 1... B n [] = false A. Knapp, G. Schellhorn: Formale Methoden 25

26 Sequenzen: Semantik Auffassung einer Sequenz Γ als Γ Definition Eine Interpretation I ist ein Modell einer Sequenz Γ, geschrieben als I = Γ, wenn I = Γ. Eine Sequenz Γ ist eine Folgerung aus einer Menge von aussagenlogischen Formeln Ax, geschrieben als Ax = Γ, wenn für jede Interpretation I mit I = Ax auch I = Γ gilt. Insbesondere: Γ ist wahr, falls die Formeln in Γ widersprüchlich sind. A. Knapp, G. Schellhorn: Formale Methoden 26

27 Formeln und Sequenzen Lemma Sei I eine Interpretation, A eine aussagenlogische Formel und Ax eine Menge von aussagenlogischen Formeln. I = A I = A I = A I = A Ax = A Ax = A Ax = A Ax = A Definition Folgende Formeln und Sequenzen werden miteinander identifiziert: Γ Γ, falls Γ nicht leer, falls nicht leer A A false A. Knapp, G. Schellhorn: Formale Methoden 27

28 Eigenschaften von Sequenzen Lemma Seien I eine Interpretation, A, B aussagenlogische Formeln und Γ, Γ 1, Γ 2,, 1, 2 Listen von aussagenlogischen Formeln. I = Γ 1, Γ 2 I = Γ 2, Γ 1 I = Γ 1, 2 I = Γ 2, 1 I = Γ A, I = Γ, A I = Γ, A I = Γ A, I = Γ A B, I = Γ A, B, I = Γ A B, I = A, Γ B, I = Γ A B, I = Γ A, und I = Γ B, A. Knapp, G. Schellhorn: Formale Methoden 28

29 Form von Kalkülregeln Regel Γ Γ n n Γ Γ heißt Konklusion der Regel Γ 1 1,..., Γ n n heißen Prämissen der Regel Regeln ohne Prämissen (n = 0) heißen Axiome Regel gelesen als: Aus den Prämissen läßt sich die Konklusion ableiten Verwendung der Regel: Reduktion der Konklusion auf die Prämissen A. Knapp, G. Schellhorn: Formale Methoden 29

30 Regeln des Sequenzenkalküls für Aussagenlogik (AL) (1) Schreibweise: Interessierende Formel am Anfang A, Γ B, Γ 1, A, Γ 2 1, B, 2 Γ A B, statt Γ 1, Γ 2 1, A B, 2 (A) A, Γ A, (Lfalse) false, Γ (Rtrue) Γ true, A. Knapp, G. Schellhorn: Formale Methoden 30

31 Regeln des Sequenzenkalküls für Aussagenlogik (AL) (2) (L ) Γ A, A, Γ A, B, Γ (L ) A B, Γ (L ) A, Γ B, Γ A B, Γ (R ) A, Γ Γ A, (R ) Γ A, Γ B, Γ A B, Γ A, B, (R ) Γ A B, A. Knapp, G. Schellhorn: Formale Methoden 31

32 Regeln des Sequenzenkalküls für Aussagenlogik (AL) (3) (L ) Γ A, B, Γ A B, Γ A, B, Γ Γ A, B, (L ) A B, Γ (Cut) Γ A, Γ A, Γ A, Γ B, (R ) Γ A B, A, Γ B, B, Γ A, (R ) Γ A B, Γ 1 1 (Weak) Γ 1, Γ 2 1, 2 A. Knapp, G. Schellhorn: Formale Methoden 32

33 Sequenzenkalkül für AL: Beispiele (a b) a b a b (a b) (a b) a b a b, a b (a b) a b (L ) a, b, a b a b, a b (R ) a, b, a a, b, b a, b, a b a a, b a, b, a (R ) a a, b (A) (R ) (R ) A. Knapp, G. Schellhorn: Formale Methoden 33

34 Ableitbarkeit Definition Eine Sequenz Γ heißt mit AL ableitbar aus einer Menge von aussagenlogischen Formeln Ax, geschrieben als Ax AL Γ, wenn es eine Ableitung in AL für Γ aus Ax gibt, d. h. einen geschlossenen Beweisbaum, der als Wurzel die Sequenz Γ (die Konklusion) hat, als Blätter Sequenzen A mit A Ax (die Prämissen) und dessen innere Knoten durch Regeln von AL gebildet sind. Beweisprinzip für Beweisbäume (Ableitungen) Zeige, daß alle Blätter die Eigenschaft haben und alle Regeln die Eigenschaft erhalten. A. Knapp, G. Schellhorn: Formale Methoden 34

35 Ableitbarkeit in AL: Beispiel Ableitung für die Sequenz (a b) a b (DeMorgan ) a a, b (A) a, b, a (R ) b a, b (A) a, b, b (R ) (R ) a, b, a b a b, a b (R ) (a b) a b (L ) a a, b (A) b a, b (A) (L ) a b a, b a b, b a (L ) a b, a, b (L ) a, b (a b) (R ) a b (a b) (L ) (R ) (a b) a b A. Knapp, G. Schellhorn: Formale Methoden 35

36 Theorembeweiser KIV für AL In Datei specification specification constants a : bool; b : bool; c : bool; end specification In Datei sequents lemmas tertium-non-datur: a a ; DeMorgan- : (a b) a b ; DeMorgan- : (a b) a b ; Hilbert-1: a (b a) ; Hilbert-2: (a b) ( b a) ; Hilbert-3: ((a b) (a c)) (a (b c)) ; A. Knapp, G. Schellhorn: Formale Methoden 36

37 Verwendung von Schnitt und Abschwächung Schnitt (Cut) und Abschwächung (Weak) für Ableitungen von Tautologien in AL nicht nötig Für Ableitungen aus Axiomen entsprechen Schnitt und Abschwächung der Verwendung eines Lemmas Zu zeigen: Ax AL Γ Einführung von A Ax zu Ax AL A, Γ : A A, Γ Γ A, (Weak) (Cut) Γ A. Knapp, G. Schellhorn: Formale Methoden 37

38 Regelkorrektheit und Regelinvertierbarkeit von AL Lemma Für jede Regel (Γ Γ n n )/(Γ ) von AL und jede Interpretation I folgt aus I = {Γ 1 1,..., Γ n n }, daß I = Γ. Lemma Für jede Regel (Γ Γ n n )/(Γ ) von AL außer der Abschwächungsregel (Weak) und jede Interpretation I folgt aus I = Γ, daß I = {Γ 1 1,..., Γ n n }. A. Knapp, G. Schellhorn: Formale Methoden 38

39 Korrektheit Satz Wenn I = {Γ 1 1,..., Γ n n } und {Γ 1 1,..., Γ n n } AL Γ, dann I = Γ. Beweisskizze Regelkorrektheit und Induktion über Anzahl der angewandten Regeln Insbesondere: Korrektheit von AL Wenn Ax AL Γ, dann Ax = Γ. A. Knapp, G. Schellhorn: Formale Methoden 39

40 Invertierbarkeit Lemma Hat ein Beweisbaum ohne (Weak) die Konklusion Γ und eine Prämisse Γ mit I = Γ für eine Interpretation I, so ist auch I = Γ. Beweisskizze Regelinvertierbarkeit und Induktion über Anzahl angewandter Regeln Korrektheit verlangt, daß, wenn die Prämissen eines Beweisbaums wahr sind, dann auch die Konklusion wahr ist. Invertierbare Regeln gehen nie fehl: Ist die Konklusion beweisbar, so auch die Prämissen. Allerdings kann eine unpassende Regel den Beweisbaum doppelt so groß machen. A. Knapp, G. Schellhorn: Formale Methoden 40

41 Terminierung Satz Sei Γ eine Sequenz. Dann terminiert jedes Bilden eines Beweisbaums ohne (Cut) und (Weak). Beweisskizze Die maximale Höhe jedes Beweisbaums ist gleich der Anzahl der Junktoren in der Ausgangssequenz, da jede Regelanwendung (ohne (Cut) und (Weak)) wenigstens einen Junktor beseitigt. A. Knapp, G. Schellhorn: Formale Methoden 41

42 Entscheidbarkeit Satz Die Allgemeingültigkeit einer aussagenlogischen Formel ist entscheidbar durch Anwenden der Regeln des Sequenzenkalküls AL ohne (Cut) und (Weak): Es entsteht genau dann ein geschlossener Beweisbaum, wenn die Formel allgemeingültig ist. Beweisskizze Wegen Korrektheit Konklusion eines geschlossenen Beweisbaums allgemeingültig. Existenz eines geschlossenen Beweisbaums für allgemeingültige Formel als Konklusion: Bildungsprozeß terminiert; angenommen ergibt keinen geschlossenen Beweisbaum, d. h., es existiert eine Prämisse, auf die keine Regel anwendbar ist. Dann enthält die Prämisse nur atomare Aussagen und evtl. true links und false rechts, und Antezedent und Sukzedent haben keine gemeinsamen atomaren Aussagen. Wähle Interpretation I so, daß Atome im Antezedent wahr, im Sukzedent falsch; dann macht I die Prämisse falsch. Nach Invertierbarkeit ist die Konklusion für I falsch, im Widerspruch zur Allgemeingültigkeit der Konklusion. A. Knapp, G. Schellhorn: Formale Methoden 42

43 Erfüllbarkeit Verwendung des Sequenzenkalküls zur Konstruktion erfüllender Belegungen Satz Gegeben eine aussagenlogische Formel A erhält man alle erfüllenden Belegungen wie folgt: 1. Bilde die Sequenz A und wende Sequenzenkalkül an. 2. Zu jeder offenen Prämisse bilde die Belegungen I, die die Atome im Antezedent wahr, die im Sukzedent falsch machen (alles andere beliebig). A. Knapp, G. Schellhorn: Formale Methoden 43

44 Erfüllbarkeit: Beispiel Erfüllende Belegungen für a (b c) Sequenzenkalkül b a c a a b, c b c a a, b c a, b, c a, b c a (b c) Erfüllende Belegungen a b c ff tt ff b a ff tt tt b a ff ff tt c a ff tt tt c a tt ff ff a b, c A. Knapp, G. Schellhorn: Formale Methoden 44

45 Schwache Vollständigkeit Satz Wenn = Γ, dann AL Γ. Beweisskizze Bilde Beweisbaum (ohne (Cut) und (Weak)), bis keine Regel mehr anwendbar ist (Termination); falls er keine offene Prämisse hat, ist die Formel allgemeingültig wegen Korrektheit. Sonst bilde eine Belegung I, die eine offene Prämisse falsch macht; nach Regelinvertierbarkeit ist auch die Konklusion falsch für I, also nicht allgemeingültig. A. Knapp, G. Schellhorn: Formale Methoden 45

46 Deduktionstheorem Satz Ax {B} AL C gdw. Ax AL B C gdw. Ax AL B C. Beweisskizze in der oberen Äquivalenz: Füge in geschlossenem Beweisbaum für Ax {B} AL C allen Sequenzen links die Formel B hinzu; ergibt Beweisbaum. Die Prämisse B wird zum Axiom und verschwindet; Prämissen der Form B Ax werden mit Abschwächung wieder zu Ax. Die Konklusion ist das gewünschte Resultat. in der oberen Äquivalenz: Hänge an geschlossenen Beweisbaum für Ax AL B C einen Beweisbaum für Lemmaanwendung von B mit Γ leer und = C an. Untere Äquivalenz: Verwendung der ersten Äquivalenz. A. Knapp, G. Schellhorn: Formale Methoden 46

47 Starke Vollständigkeit Satz Ist Ax endlich, dann gilt mit Ax = Γ, daß Ax AL Γ. Beweisskizze Ax = Γ gdw. = Ax, Γ nach Folgerbarkeit; = Ax, Γ impliziert AL Ax, Γ nach schwacher Vollständigkeit; AL Ax, Γ gdw. Ax AL Γ nach Deduktionstheorem. Starke Vollständigkeit gilt auch für unendliche Mengen Ax. A. Knapp, G. Schellhorn: Formale Methoden 47

48 Konsistenz Definition Eine Menge Ax von Axiomen heißt konsistent, wenn sich aus Ax die leere Sequenz nicht ableiten läßt. Kalkül korrekt gdw. jede erfüllbare Menge konsistent Kalkül vollständig gdw. jede konsistente Menge erfüllbar Daraus Vollständigkeitssatz: Für jede konsistente Menge Konstruktion eines Modells. A. Knapp, G. Schellhorn: Formale Methoden 48

49 Substitution (1) Definition Für aussagenlogische Formeln A, B, C heißt A{B C} die Substitution (oder Ersetzung) von B durch C in A, gegeben durch: { C, falls p = B p{b C} = p, falls p B { C, falls ( A) = B ( A){B C} = (A{B C}), falls ( A) B { (A A C, falls (A A ) = B ){B C} = (A{B C}) (A {B C}), falls (A A ) B analog für die anderen Junktoren A. Knapp, G. Schellhorn: Formale Methoden 49

50 Substitution (2) Lemma Ist I = B C, dann gilt für jedes A: I = A gdw. I = A{B C}. Formeln können durch äquivalente Formeln ersetzt werden. Insbesondere darf man B durch C ersetzen, wenn B C eine Tautologie ist. A. Knapp, G. Schellhorn: Formale Methoden 50

51 Vereinfachung von Sequenzen (1) Reine Anwendung von Sequenzenkalkülregeln ergibt oft lange Beweise; Substitution für Abkürzungen A B{A true}, Γ A B, Γ A B{A false}, Γ A B, Γ A, Γ{A true} {A true} A, Γ A{B false} B, Γ A B, Γ Γ A B{A true}, Γ A B, Γ{A false} A, {A false} Γ A, Beispiel: Für A A zeige A A{A true}, d. h. A true, also A mit (And-true). A. Knapp, G. Schellhorn: Formale Methoden 51

52 Vereinfachung von Sequenzen (2) Zulässigkeit der Regel Def. Sem. Seq. I = A, Γ I = A Γ Taut. 23 I = A ( Γ ) Def. Sem. Impl. Taut. 32 Subst.lem. Def. Subst.fkt. Taut. 32 Def. Sem. Impl. Taut. 23 Def. Sem. Seq. A, Γ{A true} {A true} A, Γ I = A I = Γ I = A true I = Γ I = A true I = ( Γ ){A true} I = A true I = Γ{A true} {A true} I = A I = Γ{A true} {A true} I = A ( Γ{A true} {A true}) I = A Γ{A true} {A true} I = A, Γ{A true} {A true} A. Knapp, G. Schellhorn: Formale Methoden 52

53 Resolutionskalkül Nachweis der Unerfüllbarkeit von Aussagen erfunden von J. Alan Robinson (1965) operiert auf Klauselmengen aus konjunktiver Normalform Charakteristik: spezialisierte Schnittregel; geeignet für maschinelles Beweisen A. Knapp, G. Schellhorn: Formale Methoden 53

54 Literale und konjunktive Normalform Definition Ein Literal ist eine Proposition oder eine negierte Proposition. Definition Eine Formel ist in konjunktiver Normalform (CNF), wenn sie eine Konjunktion von Disjunktionen von Literalen ist; in jeder Disjunktion jede Proposition nur einmal vorkommt. A. Knapp, G. Schellhorn: Formale Methoden 54

55 Existenz der konjunktiven Normalform (1) Satz Zu jeder Formel A gibt es eine äquivalente Formel B, die entweder true oder false oder in konjunktiver Normalform ist. Beweisskizze Wiederholtes Umschreiben der Formel mittels Substitutionslemma. Implikationen und Äquivalenzen beseitigen mit Tautologien 19 und 21. true, false beseitigen mit And-false, And-true, Or-false, &c. Falls das Ergebnis true oder false ist, fertig. Negation nach innen schieben mit DeMorgan (Tautologien 9 und 10), Doppelnegationen beseitigen (Tautologie 13). über distribuieren mit Tautologie 7. doppelte Literale in Disjunktionen beseitigen mit Tautologie 3. Disjunktionen, die A und A enthalten löschen. A. Knapp, G. Schellhorn: Formale Methoden 55

56 Existenz der konjunktiven Normalform (2) Alternative Konstruktion der konjunktiven Normalform Bilde Sequenz A und wende Sequenzenkalkül an. Die entstehenden Prämissen seien P 1,..., P k. Für eine Prämisse P = A 1,..., A m B 1,..., B n sei disj(p) = A 1... A m B 1... B n. Dann gilt = A 1 i k disj(p i) wegen Korrektheit und Invertierbarkeit. 1 i k disj(p i) ist also die konjunktive Normalform. Spezialfälle: Wenn keine Prämisse: true; wenn leere Prämisse: false. A. Knapp, G. Schellhorn: Formale Methoden 56

57 Konjunktive Normalform: Beispiel Konstruktion einer konjunktiven Normalform von a (b c) Methode (1) a (b c) ( a b c) (b c a) Taut. 21 gdw. ( a b c) ( (b c) a) Taut. 19 gdw. (a b c) ( b c a) Taut. 9, 13 gdw. (a b c) ( b a) ( c a) Taut. 5 (CNF) Methode (2) a, b, c a, b a b, c b a a b c a (b c) a, c c a b c a A. Knapp, G. Schellhorn: Formale Methoden 57

58 Tseitin-Codierung Erzeugung einer erfüllbarkeitsäquivalenten CNF-Formel A zu einer Formel A Einführung von Hilfspropositionen für Junktoren A linear in der Größe von A Beispiel: a (b c) Einführung von x 2 für b c und Einführung von x 1 für a x 2 x 1 (a x 2 ) x 2 (b c) daraus konjunktive Normalform (x 1 a) (x 1 x 2 ) ( x 1 a x 2 ) ( x 2 b) ( x 2 c) (x 2 b c) (x 1 ) A. Knapp, G. Schellhorn: Formale Methoden 58

59 Klauseln Definition Eine Klausel ist eine Menge von Literalen. Eine Klauselmenge ist eine Menge von Klauseln. Eine Klausel wird als Disjunktion interpretiert; die leere Klausel wird als false angesehen. Eine Klauselmenge wird als Konjunktion interpretiert; die leere Klauselmenge entspricht true. Damit: Formeln in konjunktiver Normalform und true, false entsprechen Klauselmengen. Beispiel (a b c) ( b a) ( c a) {{a, b, c}, { b, a}, { c, a}} A. Knapp, G. Schellhorn: Formale Methoden 59

60 Resolutionskalkül Lemma Sind die Klauseln C 1 und C 2 mit p C 1 und p C 2 gemeinsam erfüllbar, dann ist die Klausel (C 1 C 2 ) \ {p, p} erfüllbar. Resolutionsregel p, C 1 p, C 2 C 1, C 2 Satz Eine Klauselmenge C ist genau dann unerfüllbar, wenn sich aus C durch Anwendung der Resolutionsregel die leere Klausel ableiten läßt. Beispiel: ( a b) (a) ( b) a, b a b b A. Knapp, G. Schellhorn: Formale Methoden 60

61 Unit-Resolution Lemma Die Klauseln {l} und C mit l C sind genau dann gemeinsam erfüllbar, wenn C \ { l} erfüllbar ist. Unit-Resolutionsregel l l, C C Boolean constraint propagation (BCP) Ersetzung der Klauseln {l} und C mit l C in einer Klauselmenge C durch C \ { l} zu neuer Klauselmenge C Beispiel: Anwendung von BCP auf (a) ( a b) (c b d) (a) ( a b) (c b d) (b) (c b d) c d A. Knapp, G. Schellhorn: Formale Methoden 61

62 Davis-Putnam-Logemann-Loveland-Algorithmus Prüfung einer aussagenlogischen Formel in CNF auf Erfüllbarkeit Grundlage vieler SAT-Beweiser zur Auffindung einer erfüllenden Belegung DPLL(A) A BCP(A) if A = true then return true else if A = false then return false else p choose vars(a ) return DPLL(A {p true}) DPLL(A {p false}) fi fi A. Knapp, G. Schellhorn: Formale Methoden 62

63 SAT-Beweiser Eingabeformat (DIMACS): Propositionen sind positive Zahlen, negiertes Atom n ist -n. Klausel als Folge von Literalen geschrieben, durch Leerzeichen getrennt, 0 beendet Klausel; Klauseln hintereinander geschrieben Zu Beginn der Datei eine Zeile mit: p cnf m n m ist die Nummer der maximalen Nummer einer Proposition n ist die Zahl der noch folgenden Zeilen in der Datei Ausgabeformat Liste der Propositionen, die mit tt zu belegen sind Beispiel: a ( b a) (c d) p cnf Ausgabe etwa 1 3 A. Knapp, G. Schellhorn: Formale Methoden 63

64 Zusammenfassung Aussagenlogik Syntax und Semantik Modelle, Folgerbarkeit, Erfüllbarkeit Sequenzenkalkül AL Korrektheit und Vollständigkeit Theorembeweiser KIV Resolutionskalkül Konjunktive Normalform, Klauseln SAT-Beweiser A. Knapp, G. Schellhorn: Formale Methoden 64

65 Prädikatenlogik Denn wenn A von jedem B und B von jedem C, muß A von jedem C ausgesagt werden. Aristoteles, Analytica Priora A 4, 25b37ff. Daraus der Vers:... Barbara, celarent, darii, ferion, baralipton, Celantes, dabitis, fapesmo, frisesomorum; Cesare, camestres, festino, baroco; darapti, Felapto, disamis, datisi, bocardo, ferison. Petrus Hispanus, Summulae Logicales 4.17 :. (z). ϕz ψz : ϕx :. ψx... Dies ist eine Form des Syllogismus in Barbara. Man setze z. B. ϕz. =. z ist ein Mensch, ψz. =. z ist sterblich, x = Sokrates. Dann wird die Aussage zu: Wenn alle Menschen sterblich sind und Sokrates ein Mensch ist, dann ist Sokrates sterblich. Alfred N. Whitehead, Bertrand Russell, Principia Mathematica, *10.26 A. Knapp, G. Schellhorn: Formale Methoden 65

66 Signaturen Definition Eine Signatur Σ = (S, F, P) besteht aus: einer endlichen Menge S von Sorten einer endlichen Menge F von Funktionssymbolen f : s s mit Argumentsorten s = s 1... s n S (Liste von Sorten) Resultatsorte s S endlicher Menge P von Prädikatsymbolen p : s Ein Funktionssymbol mit leerer Argumentliste heißt Konstante. Ein Prädikatsymbol mit leerer Argumentliste heißt Proposition. A. Knapp, G. Schellhorn: Formale Methoden 66

67 Signaturen: Beispiele Zugriffsmöglichkeiten auf einen Datentypen Gruppen Σ Grp = ({Elt}, {1 : Elt, : Elt Elt Elt, 1 : Elt Elt}, ) Natürliche Zahlen Σ Nat1 = ({Nat}, {0 : Nat, s : Nat Nat}, ) Σ Nat2 = ({Nat}, {0 : Nat, 1 : Nat, + : Nat Nat Nat}, {< : Nat Nat}) Wahrheitswerte Σ Bool = ({Bool},, {true :, false : }) Listen Σ List = ({Elt, List}, {empty : List, cons : Elt List List}, {isempty : List}) A. Knapp, G. Schellhorn: Formale Methoden 67

68 Signaturen in KIV specification sorts s1; s2; nat; set; constants c1, c2 : s1; : set; functions f : s1 s2 s2; + : nat nat nat; * : nat nat nat; predicates p : s1 s2; : set set; end specification A. Knapp, G. Schellhorn: Formale Methoden 68

69 Terme Definition Eine Variablenmenge X für eine Signatur Σ = (S, F, P) ist die Vereinigung von abzählbar unendlichen Mengen X s für jede Sorte s S. Definition Seien Σ = (S, F, P) eine Signatur und X eine Variablenmenge für Σ. Dann sind die Mengen T (Σ, X) s der Terme der Sorte s über Σ und X gegeben durch x X s ist ein Term der Sorte s. Sind t 1,..., t n Terme der Sorten s 1,..., s n und f : s 1... s n s F, dann ist f (t 1,..., t n ) ein Term der Sorte s. T (Σ, X) sind alle Terme (aller Sorten) über Σ und X. Beispiele: In Σ Grp : 1 (1), (x, 1) für x X Elt In Σ Nat1 : 0, s(s(s(0))) A. Knapp, G. Schellhorn: Formale Methoden 69

70 Algebren Definition Eine Algebra A = ((A s ) s S, (f A ) f F, (p A ) p P ) über einer Signatur Σ = (S, F, P) (kurz: eine Σ-Algebra) besteht aus: nichtleeren Mengen A s für jede Sorte s S (Trägermengen) Funktionen f A : A s1 A sn A s für alle f : s 1... s n s F Mengen p A A s1 A sn für alle p : s 1... s n P Die Klasse aller Σ-Algebren über Σ wird mit Alg(Σ) bezeichnet. A. Knapp, G. Schellhorn: Formale Methoden 70

71 Algebren: Beispiele Mögliche Interpretationen von Datentyp-Signaturen Für Σ Grp : A Grp+ additiv A Elt = Z 1 A Grp+ = 0, AGrp+(x, y) = x + y, 1 A Grp+ (x) = x Für Σ Nat1 : A Nat A Nat = { } 0 A Nat =, s A Nat (x) = x Für Σ List : A List(Nat) Listen über natürlichen Zahlen A Elt = N, A List = N empty A List(Nat) = ε, cons A List(Nat)(x, l) = x :: l isempty A List(Nat) = {ε} A. Knapp, G. Schellhorn: Formale Methoden 71

72 Belegungen Definition Eine Belegung (valuation) v : s S (X s A s ) ist eine Abbildung, die jedem Variablensymbol x X s einen Wert v(x) A s zuordnet. Definition Die Abänderung v{x a} der Belegung v für x X s und a A s ist gegeben durch (v{x a})(y) = { v(y) falls x y a falls x = y. A. Knapp, G. Schellhorn: Formale Methoden 72

73 Semantik von Termen Definition Sei A eine Σ-Algebra und v eine Belegung. Dann ist die Semantik (Auswertung) T t A v eines Terms t T (Σ, X) s der Sorte s der Wert in A s mit T x A v = v(x), falls x X; T f (t 1,..., t n ) A v = f A (T t 1 A v,..., T t n A v) für f : s 1... s n s F und t i T (Σ, X) si. A. Knapp, G. Schellhorn: Formale Methoden 73

74 Variablen eines Terms Für Terme gilt ein analoges Definitions- und Beweisprinzip wie für aussagenlogische Formeln. Definition Die Variablen var(t) eines Terms sind var(x) = {x} für x X; var(f (t 1,..., t n )) = var(t 1 )... var(t n ). Die Semantik eines Terms hängt nur von der Belegung der Variablen in var(t) ab (Koinzidenzlemma). Satz Sind v und w Belegungen und gilt v(x) = w(x) für alle Variablen x var(t), so ist T t A v = T t A w. Für Auswertung von Termen t mit var(t) = Belegung irrelevant. Schreibweise: T t A statt T t A v, falls var(t) = A. Knapp, G. Schellhorn: Formale Methoden 74

75 Substitution in Termen Definition Die Substitution einer Variablen x durch einen Term t in einem Term u, geschrieben als u{x t}, ist gegeben durch { t falls y = x y{x t} = für y X; y falls y x f (t 1,..., t n ){x t} = f (t 1 {x t},..., t n {x t}). Die Semantik des Terms u{x t} ist dieselbe wie die des Terms u unter einer Belegung, in der x den Wert von t hat (Substitutionslemma). Lemma T u{x t} A v = T u A v{x T t A v}. A. Knapp, G. Schellhorn: Formale Methoden 75

76 Formeln Definition Für eine Signatur Σ = (S, F, P) und eine Variablenmenge X für Σ ist die Menge der prädikatenlogischen Formeln F (Σ, X) gegeben durch true, false F (Σ, X); t 1 = t 2 F (Σ, X), falls t 1, t 2 T (Σ, X) s für ein s S; p(t 1,..., t n ) F (Σ, X), falls p : s 1... s n P und t i T (Σ, X) si für 1 i n; Wenn ϕ, ψ F (Σ, X), dann ( ϕ), (ϕ ψ), (ϕ ψ), (ϕ ψ), (ϕ ψ) F (Σ, X); Wenn ϕ F (Σ, X) und x X, dann ( x. ϕ), ( x. ϕ) F (Σ, X). A. Knapp, G. Schellhorn: Formale Methoden 76

77 Formeln: Notation Es gelten dieselben Präzendenz- und Klammerregeln wie bei Aussagenlogik. Zusätzlich: Quantoren binden am schwächsten x. ϕ ψ y. π ρ ( x. ((ϕ ψ) ( y. (π ρ)))) Quantoren binden immer soweit nach rechts wie möglich. Abkürzung: Listen von Quantoren x 1, x 2,..., x n. ϕ x 1. x x n. ϕ Beispiele: In Σ Grp : x. (x, 1 (x)) = 1 In Σ Nat2 : m, n. <(m, n) k. (k = 0) +(m, k) = n Oft auch Mixfix- statt Präfix-Schreibweise für Terme x x 1 statt (x, 1 (x)) A. Knapp, G. Schellhorn: Formale Methoden 77

78 Prädikatenlogische Spezifikationen in KIV specification sorts nat; constants zero : nat; one : nat; functions. +. : nat nat nat prio 9 right; predicates. <. : nat nat; variables m, n, k : nat; axioms commutativity+ : m + n = n + m; less : m < n k. (k = zero) m + k = n; end specification A. Knapp, G. Schellhorn: Formale Methoden 78

79 Semantik von Formeln Definition Für eine Algebra A und eine Belegung v ist die Semantik einer Formel F A A v der Wahrheitswert aus B mit F true A v = tt F false A v = ff F t 1 = t 2 A v = tt gdw. T t 1 A v = T t 2 A v F p(t 1,..., t n ) A v = tt gdw. (T t 1 A v,..., T t n A v) p A F ϕ A v = tt gdw. F ϕ A v = ff F ϕ ψ A v = tt gdw. F ϕ A v = tt und F ψ A v = tt F ϕ ψ A v = tt gdw. F ϕ A v = tt oder F ψ A v = tt F ϕ ψ A v = tt gdw. F ϕ A v = ff oder F ψ A v = tt F ϕ ψ A v = tt gdw. F ϕ A v = F ψ A v F x. ϕ A v = tt gdw. f. a. a A s : F ϕ A v{x a} = tt (für x X s ) F x. ϕ A v = tt gdw. ex. a A s : F ϕ A v{x a} = tt (für x X s ) A. Knapp, G. Schellhorn: Formale Methoden 79

80 Variablen einer Formel Definition Die Variablen var(ϕ) einer Formel ϕ sind gegeben durch var(true) = var(false) = var(t 1 = t 2 ) = var(t 1 ) var(t 2 ) var(p(t 1,..., t n )) = var(t 1 )... var(t n ) var( ψ) = var(ψ) var(ψ π) = var(ψ) var(π) für {,,, } var(qx. ψ) = {x} var(ψ) für Q {, } A. Knapp, G. Schellhorn: Formale Methoden 80

81 Freie Variablen einer Formel Definition Die freien Variablen fvar(ϕ) einer Formel ϕ sind gegeben durch fvar(true) = fvar(false) = fvar(t 1 = t 2 ) = var(t 1 ) var(t 2 ) fvar(p(t 1,..., t n )) = var(t 1 )... var(t n ) fvar( ψ) = fvar(ψ) fvar(ψ π) = fvar(ψ) fvar(π) für {,,, } fvar(qx. ψ) = fvar(ψ) \ {x} für Q {, } Eine Formel ohne freie Variablen heißt geschlossen. A. Knapp, G. Schellhorn: Formale Methoden 81

82 Koinzidenzlemma für Formeln Die Semantik einer Formel hängt nur von den freien Variablen ab (Koinzidenzlemma). Lemma Sind zwei Belegungen v und w gleich für alle freien Variablen einer Formeln ϕ, dann gilt F ϕ A v = F ϕ A w. Für geschlossene Formeln ϕ Belegung v irrelevant. A. Knapp, G. Schellhorn: Formale Methoden 82

83 Substitution in Formeln Definition Die Substitution ϕ{x t} einer Variablen x durch einen Term t in einer Formel ϕ ist gegeben durch true{x t} = true false{x t} = false (t 1 = t 2 ){x t} = t 1 {x t} = t 2 {x t} p(t 1,..., t n ){x t} = p(t 1 {x t},..., t n {x t}) ( ψ){x t} = (ψ{x t}) (ψ π){x t} = ψ{x t} π{x t} Qy. ψ falls y = x oder x / fvar(ψ) Qy. ψ{x t} falls y x, y / var(t), x fvar(ψ) (Qy. ψ){x t} = Qz. (ψ{y z}){x t} falls y x, y var(t), x fvar(ψ) (z neu, d. h. z / fvar(ψ) var(t)) A. Knapp, G. Schellhorn: Formale Methoden 83

84 Substitutionslemma für Formeln Die Formel ϕ{x t} ist wahr in der Algebra A unter der Belegung v genau dann, wenn die Formel ϕ unter einer abgeänderten Belegung wahr ist, in der x den Wert von t hat (Substitutionslemma). Lemma F ϕ{x t} A v = F ϕ A v{x T t A v}. Beispiel für Umbenennung bei Quantoren: m. n < m wahr über den natürlichen Zahlen (bei jeder Belegung von n). Nach dem Lemma darf für n jeder Term eingesetzt werden, und man erhält wieder eine wahre Aussage. Ersetzen von n durch m m würde ohne Umbenennung aber m. m m < m ergeben, was falsch ist. Das richtige Ergebnis ist m0. m m < m0. A. Knapp, G. Schellhorn: Formale Methoden 84

85 Gültigkeit und Modelle Definition Die Formel ϕ ist in A unter der Belegung v gültig, geschrieben als A, v = ϕ, wenn F ϕ A v = tt. Eine Algebra A ist ein Modell der Formel ϕ, geschrieben als A = ϕ, wenn für alle Belegungen v gilt: A, v = ϕ. Eine Algebra A ist ein Modell für die Formelmenge Φ, geschrieben als A = Φ, falls A = ϕ für alle ϕ Φ. Definition Sei ϕ eine Formel und Φ eine Formelmenge. ϕ ist eine Tautologie, in Zeichen = ϕ, falls A = ϕ für alle A Alg(Σ). ϕ ist erfüllbar in der Algebra A, falls es eine Belegung v mit A, v = ϕ gibt. Φ ist erfüllbar in der Algebra A, falls es eine Belegung v mit A, v = ϕ für alle ϕ Φ gibt. ϕ ist erfüllbar, falls ϕ ist erfüllbar in einer Algebra. Φ ist erfüllbar, falls Φ erfüllbar in einer Algebra. A. Knapp, G. Schellhorn: Formale Methoden 85

86 Tautologie, Erfüllbarkeit: Beispiele x = x, p(x) p(x) sind Tautologien. p(x) hat Modelle, ist erst recht erfüllbar (in mehr Algebren als den Modellen). x = y ist erfüllbar (in jeder Algebra) und hat ein Modell (das einelementige). x y, p(x) p(y) sind erfüllbar (aber nicht in jeder Algebra), haben keine Modelle Es gilt: ϕ ist Tautologie ϕ hat Modell ϕ ist erfüllbar, aber keine Umkehrung ϕ ist nicht erfüllbar genau dann, wenn ϕ eine Tautologie ist. A. Knapp, G. Schellhorn: Formale Methoden 86

87 Folgerbarkeit Definition Eine Formel ϕ ist eine Folgerung aus der Formelmenge Φ, geschrieben als Φ = ϕ, falls für alle A Alg(Σ) gilt: A = Φ impliziert A = ϕ. Φ als Axiome einer Datentypspezifikation Beispiel Für Σ Grp : Φ Grp x. x 1 = x x. 1 x = x x, y, z. x (y z) = (x y) z x. x x 1 = 1 x. x 1 x = 1 Dann Φ Grp = e. ( x. x e = x e x = x) e = 1. A. Knapp, G. Schellhorn: Formale Methoden 87

88 Eigenschaften der Prädikatenlogik Definition Ist fvar(ϕ) = {x 1,..., x n }, so ist der Allabschluß cl (ϕ) = x 1,..., x n. ϕ. 1. A, v = ϕ gdw. nicht A, v = ϕ (geschrieben als A, v = ϕ) 2. A, v = ϕ oder A, v = ϕ 3. A = ϕ oder A = ϕ, falls ϕ geschlossen 4. A = ϕ gdw. A = ϕ, falls ϕ geschlossen 5. A = ϕ gdw. A = cl (ϕ) 6. Φ = ϕ gdw. Φ = cl (ϕ) 7. Φ {ϕ} = ψ gdw. Φ {cl (ϕ)} = cl (ψ) 8. Φ {ϕ} = ψ gdw. Φ = cl (ϕ) ψ Aus Φ {ϕ} = ψ folgt nur für geschlossenes ϕ, daß Φ = ϕ ψ. Implikation und Folgerbarkeit fallen also nicht zusammen: x > 0 = x. x > 0 ist wahr, = x > 0 x. x > 0 ist falsch (über N) A. Knapp, G. Schellhorn: Formale Methoden 88

89 Eigenschaften von Quantoren Satz Wenn z / fvar(ϕ) \ {y}, so gelten: A, v = y. ϕ gdw. A, v = z. ϕ{y z}, = ( y. ϕ) ( z. ϕ{y z}). Beweisskizze Aus Substitutionslemma. Satz Für jede Formel ϕ gelten = ( x. ϕ) ϕ{x t}, = ϕ{x t} ( x. ϕ). Beweisskizze Aus Substitutionslemma. A. Knapp, G. Schellhorn: Formale Methoden 89

90 Tautologien für Quantoren (1) Sei y / fvar(ϕ). Q1. ( x. ϕ) ( y. ϕ{x y}) Q2. ( x. ϕ) ( y. ϕ{x y}) Q3. ( x. ϕ) ( x. ϕ) Q4. ( x. ϕ) ( x. ϕ) Q5. ( x. y. ϕ) ( y. x. ϕ) Q6. ( x. y.ϕ) ( y. x. ϕ) Q7. ( x. ϕ ψ) (( x. ϕ) ( x. ψ)) Q8. ( x. ϕ ψ) (( x. ϕ) ( x. ψ)) A. Knapp, G. Schellhorn: Formale Methoden 90

91 Tautologien für Quantoren (2) Q9. ( x. ϕ ψ) (( x. ϕ) ( x. ψ)) Q10. (( x. ϕ) ( x. ψ)) ( x. ϕ ψ) Q11. ( x. ϕ ψ) (( x. ϕ) ( x. ψ)) Q12. ( x. ϕ ψ) (( x. ϕ) ( x. ψ)) Q13. ( x. ϕ) ϕ{x t} Q14. ϕ{x t} x. ϕ Q15. ( x. y. ϕ) y. x. ϕ A. Knapp, G. Schellhorn: Formale Methoden 91

92 Tautologien für Quantoren (3) Sei x / fvar(ψ). Q16. ( x. ψ) ψ Q17. ( x. ψ) ψ Q18. ( x. ϕ ψ) (( x. ϕ) ψ) Q19. ( x. ϕ ψ) (( x. ϕ) ψ) Q20. ( x. ϕ ψ) (( x. ϕ) ψ) Q21. ( x. ϕ ψ) (( x. ϕ) ψ) Q22. ( x. ψ ϕ) (ψ x. ϕ) Q23. ( x. ψ ϕ) (ψ x. ϕ) Q24. ( x. ϕ ψ) (( x. ϕ) ψ) Q25. ( x. ϕ ψ) (( x. ϕ) ψ) A. Knapp, G. Schellhorn: Formale Methoden 92

93 Substitution von Formeln durch Formeln Umformungen mittels Tautologien, lokale Simplifikation Definition Für Formeln ϕ, ψ, π ist die Substitution von ψ durch π in ϕ, geschrieben als ϕ{ψ π}, definiert wie in der Aussagenlogik; zusätzlich für Q {, }: (Qx. ϕ){ψ π} = π, falls ψ = Qx. ϕ; (Qx. ϕ){ψ π} = Qx. (ϕ{ψ π}), falls x / fvar(ψ) fvar(π); (Qx. ϕ){ψ π} = Qy. ((ϕ{x y}){ψ π}) mit y / fvar(ϕ) fvar(ψ) fvar(π), falls x fvar(ψ) fvar(π). Lemma Wenn A, v = ψ π, dann A, v = ϕ{ψ π} ϕ. A. Knapp, G. Schellhorn: Formale Methoden 93

94 Pränex-Normalform Satz Zu jeder Formel ϕ gibt es eine quantorenfreie Formel ψ, Quantoren Q 1,..., Q n {, } und Variablen x 1,... x n, sodaß gilt. = ϕ Q 1 x Q n x n. ψ Beweisskizze Ersetze Äquivalenzen durch Konjunktion von zwei Implikationen. Schiebe Quantoren nach außen (zuerst den äußersten); mit Q3, Q4, Q18 Q25 (rechte durch linke Seite ersetzen). Wenn das nicht geht, weil eine gebundene Variable auch frei in π ist, benenne die gebundene Variable vorher um mit Q1, Q2. A. Knapp, G. Schellhorn: Formale Methoden 94

95 Tautologien für Gleichheit Sei x / var(t ). E1. t = t Reflexivität E2. t 1 = t 2 t 2 = t 1 Symmetrie E3. t 1 = t 2 t 2 = t 3 t 1 = t 3 Transitivität E4. t 1 = u 1... t n = u n f (t 1,..., t n ) = f (u 1,..., u n ) Kongruenz für f E5. t 1 = u 1... t n = u n (p(t 1,..., t n ) p(u 1,..., u n )) Kongruenz für p E6. t = u s{x t} = s{x u} Einsetzung in Term s E7. t = u ϕ{x t} ϕ{x u} Einsetzung in Formel ϕ E8. x. x = t nichtleere Trägermengen E9. ( x. x = t ϕ) ϕ{x t } Beseitigung Existenzquantor E10. ( x. x = t ϕ) ϕ{x t } Beseitigung Allquantor E11. ( x. x t ϕ) ϕ{x t } Beseitigung Allquantor A. Knapp, G. Schellhorn: Formale Methoden 95

96 Sequenzen Wie in der Aussagenlogik ist eine Sequenz eine Kurzschreibweise für eine Formel: A, v = Γ A, v = Γ Definition Eine Algebra A ist ein Modell einer Sequenz Γ, geschrieben als A = Γ, falls A = cl ( Γ ). A. Knapp, G. Schellhorn: Formale Methoden 96

97 Regeln des Sequenzenkalküls PL Regeln des aussagenlogischen Sequenzenkalküls werden übernommen. Zusätzlich je eine Regel für Quantor und Gleichheit links und rechts. ϕ{x t}, x. ϕ, Γ (L ) x. ϕ, Γ Γ ϕ{x t}, x. ϕ, (R ) Γ x. ϕ, ϕ{x y}, Γ (L ) x. ϕ, Γ (1) (R ) Γ ϕ{x y}, Γ x. ϕ, (1) x = t, Γ{x t} {x t} (Refl) (Eq) (2) Γ t = t, x = t, Γ (1) y / (fvar(ϕ) \ {x}) fvar(γ) fvar( ) (2) auch mit t = x statt x = t A. Knapp, G. Schellhorn: Formale Methoden 97

98 Ableitbarkeit, Korrektheit, Invertierbarkeit Definition Eine Sequenz Γ ist aus einer Menge von Formlen Φ ableitbar, geschrieben als Φ PL Γ, falls es einen mit den Regeln von PL gebildeten Beweisbaum mit Konklusion Γ und Prämissen der Form ϕ mit ϕ Φ gibt. Satz Für einen Baum mit Konklusion Γ und Prämissen Γ 1 1,... Γ n n gilt: Γ 1 1,... Γ n n = Γ (Korrektheit) Wenn Φ PL Γ, dann Φ = Γ (Korrektheit von PL). Falls keine Abschwächung vorkommt, gilt für jedes 1 i n, daß Γ = Γ i i (Invertierbarkeit). Beweisskizze Wie für AL: Behauptung gilt für jede Regel, Induktion über die Anzahl der angewandten Regeln A. Knapp, G. Schellhorn: Formale Methoden 98

99 Ableitbarkeit in PL: Beispiel (1) Ableitung für die Sequenz ( x. y. ϕ) y. x. ϕ (Q15) (A) (ϕ{x z}){y w}, y. ϕ 1 (ϕ{y w}){x z}, x. ϕ 2 (R ) (ϕ{x z}){y w}, y. ϕ{x z} x. ϕ{y w} (L ) y. ϕ{x z} x. ϕ{y w} ( y. ϕ){x z} ( x. ϕ){y w} = (R ) ( y. ϕ){x z} y. x. ϕ (L ) x. y. ϕ y. x. ϕ ( x. y. ϕ) y. x. ϕ (R ) wobei w, z / fvar(ϕ), ϕ 1 = ϕ{x z}, ϕ 2 = ϕ{y w} A. Knapp, G. Schellhorn: Formale Methoden 99

100 Ableitbarkeit in PL: Beispiel (2) Ableitung für die Sequenz x, y, z. x = y x = z y = z x = y, y = z y = z (A) x = y, x = z y = z (Eq) x = y x = z y = z (L ) x = y x = z y = z (R ) z. x = y x = z y = z (R ) y, z. x = y x = z y = z (R ) x, y, z. x = y x = z y = z (R ) A. Knapp, G. Schellhorn: Formale Methoden 100

101 Ableitbarkeit in PL: Beispiel (3) Ableitung für die Sequenz e. ( x. x e = x) e = 1 aus Φ Grp [...] e = 1, 1 e = e, 1 e = 1 e = 1 (A) 1 e = e 1 e = 1 e = 1, 1 e = e, 1 e = 1 e = 1 (L ) x, y, z. x = y x = z y = z, 1 e = e, 1 e = 1 e = 1 3 (L ) (Lem2) 1 e = e, 1 e = 1 e = 1 x. 1 x = x, 1 e = 1 e = 1 (L ) (Lem1) 1 e = 1 e = 1 x. x e = x e = 1 (L ) ( x. x e = x) e = 1 (R ) e. ( x. x e = x) e = 1 (R ) (Lem1): (Cut) für x. 1 x = x aus Φ Grp (Lem2): (Cut) für x, y, z. x = y x = z y = z A. Knapp, G. Schellhorn: Formale Methoden 101

102 Beweisen mit Prädikatenlogik in KIV Bisher: Basis-PL-Kalkül (mit use basic rules ); in Zukunft KIV-Kalkül: alles was im Basiskalkül umständlich mit mehreren Schritten gemacht werden muss, wird in natürliche Schritte zusammengefasst: Regeln zur Verwendung von Lemmata, d. h. anderer (schon bewiesener) Theoreme oder Axiome (statt nur cut-regel) Gleichungseinsetzen für beliebige Gleichungen t = u Gleichungseinsetzen an speziellen Positionen (statt überall) Gleichungseinsetzen und (L ), (R ) mit discard Fallunterscheidungsregel ( case distinction ) faßt alle aussagenlogischen Regeln mit zwei Prämissen zusammen ((L ), (L ),(L ), (R ),(R )) Regel prop simplification, um AL-Regeln mit einer Prämisse anzuwenden, wird aber normalerweise nicht verwendet stattdessen: Simplifier-Regel A. Knapp, G. Schellhorn: Formale Methoden 102

103 Der Simplifier in KIV KIV-Simplifier macht viele Vereinfachungen automatisch wendet aussagenlogische Regeln mit weniger als zwei Prämissen an, ausserdem (Refl) wendet (R ), (L ) an wendet kontextabhängige Substitutionen (wie etwa A, Γ{A true} {A true}/a, Γ ) an setzt x = t mit x / var(t) ein und entfernt x = t setzt Gleichungen u = t ein, falls t einfacher als u Weglassen überflüssiger Quantoren mit (Q16 Q23), (E9 E11) Rewriting: Umschreiben von Gleichungen mit gegebenen Theoremen durch automatischem insert rewrite lemma mit Theoremen (später) KIV macht nach jeder Regelanwendung einen Test, ob der KIV-Simplifier Prämissen schliessen kann. Wenn ja, bekommt man diese Prämissen nicht zu sehen (abstellbar mit der Option no automatic predtest ). A. Knapp, G. Schellhorn: Formale Methoden 103

104 KIV-Kalkül: Allgemeines Einsetzen von Gleichungen Allgemeine Substitution aus t = u, Γ{x u} {x u} PL t = u, Γ{x t} {x t} x markiert die Ersetzungsstellen Im KIV-Kalkül deshalb als (Eq) die Regel t = u, Γ{x u} {x u} (insert equation) t = u, Γ{x t} {x t} Beispiel: e = 1 e, 1 = 1 e 1 = 1 e e = 1 e, 1 = 1 e 1 = e (insert equation) wegen (1 = e) (1 = x){x e} und (1 = 1 e) (1 = x){x 1 e} A. Knapp, G. Schellhorn: Formale Methoden 104

105 KIV-Kalkül: Lemmaanwendung Anwendung von Axiomen mit (Cut), (L ) und evtl. (insert equation) oft umständlich Im KIV-Kalkül spezielle Regel (insert lemma) Γ Γ ( Γ )θ, ( )θ, Γ Γ Γ ist das Lemma (Axiom oder anderes Theorem) θ ist eine Substitution für die freien Variablen des Lemmas Beispiel: Lemma x = y, x = z y = z x = y, x = z y = z 1 e = e, 1 e = 1 1 e = e 1 e = 1, e = 1 e = 1, 1 e = e, 1 e = 1 e = 1 1 e = e, 1 e = 1 e = 1 mit θ = {x 1 e, y e, z 1} (insert lemma) A. Knapp, G. Schellhorn: Formale Methoden 105

106 KIV-Kalkül: Ersetzungslemmata (insert rewrite lemma) Γ ϕ t = u Γ ( Γ ϕ)θ, Γ Γ Γ ϕ t = u ist das Lemma (Γ und Vorbedingung ϕ dürfen fehlen) θ ist eine Substitution für die freien Variables des Lemmas Γ entsteht aus Γ durch Ersetzen von tθ durch uθ Lemmata der Form Γ ϕ (ψ π) mit ψ Literal erlaubt: Dann wird ψθ durch πθ ersetzt A. Knapp, G. Schellhorn: Formale Methoden 106

107 Deduktionstheorem Satz Beweisskizze Φ {ϕ} PL ψ gdw. Φ PL cl (ϕ) ψ gdw. Φ PL cl (ϕ) ψ Obere Äquivalenz wie für Aussagenlogik mit zwei Zusätzen: Für muß cl (ϕ) (nicht nur ϕ) in jedem Antezedent addiert werden. Damit bleiben bei (R ) und (L ) die Variablenbedingungen gültig. Prämissen cl (ϕ) ϕ können mit (L ) geschlossen werden. Bei braucht man (Cut) mit cl (ϕ) (für das Axiom ϕ). Die Prämisse cl (ϕ), ψ kann mit (Weak), dann (R ) zum Axiom ϕ reduziert werden. A. Knapp, G. Schellhorn: Formale Methoden 107

108 Konsistenzlemma Definition Eine Menge Φ von Formeln heißt konsistent, falls Φ PL. Lemma Jede konsistente Menge prädikatenlogischer Formeln hat ein Modell. Ohne Beweis (Kurt Gödel 1929) A. Knapp, G. Schellhorn: Formale Methoden 108

109 Vollständigkeitssatz Satz Für eine Formel ϕ und eine Formelmenge Φ gilt Φ = ϕ Φ PL ϕ Beweisskizze Φ = ϕ Φ { cl (ϕ)} hat kein Modell (Def. Φ = ϕ) Φ { cl (ϕ)} PL (Konsistenzlemma) Φ PL cl (ϕ) (Deduktionstheorem) Φ PL ϕ (mit Regel (R )) Intuition: Korrektheit und Vollständigkeit von PL garantieren, daß Berechnungen im Kalkül genau die Theoreme ergeben, die in allen Datenstrukturen der Axiome gelten. A. Knapp, G. Schellhorn: Formale Methoden 109

110 Endlichkeitssatz Satz Eine Menge von Formeln Φ hat genau dann ein Modell, wenn jede endliche Teilmenge von Φ ein Modell hat. Beweisskizze ist. Für : Nach Konsistenzlemma reicht es zu zeigen, daß Φ konsistent Angenommen, Φ wäre inkonsistent. Dann gibt es einen Beweis für die leere Sequenz (false). Der Beweis verwendet nur endliche viele Axiome. Somit ist schon diese endliche Menge inkonsistent und hat kein Modell, im Widerspruch zur Annahme. A. Knapp, G. Schellhorn: Formale Methoden 110

111 Unentscheidbarkeit der Prädikatenlogik Satz Es gibt kein Entscheidungsverfahren für die Allgemeingültigkeit von prädikatenlogischen Formeln. Ohne Beweis (Alonzo Church 1936) Zählt man alle Beweise des Sequenzenkalküls auf, so wird darin jede allgemeingültige Formel irgendwann vorkommen, aber das Verfahren kann nicht so verschärft werden, daß es auch für alle nicht allgemeingültigen Formeln immer abbricht. Somit ist Prädikatenlogik schwierig im Gegensatz zur Aussagenlogik, für die der Sequenzenkalkül ein Entscheidungsverfahren ist. Das Problem bei PL liegt bei der Frage, welche Terme t man bei den Regeln (L ) und (R ) wählen soll. A. Knapp, G. Schellhorn: Formale Methoden 111

112 Zusammenfassung Prädikatenlogik Syntax: Signaturen, Terme, Formeln Semantik: Algebren Modelle, Folgerbarkeit, Erfüllbarkeit Sequenzenkalkül PL Korrektheit und Vollständigkeit Beweisen in KIV Unentscheidbarkeit der Prädikatenlogik A. Knapp, G. Schellhorn: Formale Methoden 112

113 Semantische Beschreibung von Softwaresystemen Operationale Sicht Semantischer Bereich: Zustandsübergangssysteme (Automaten) Zustände, Zustandsübergänge, Abläufe Algebraische Sicht Semantischer Bereich: Algebren Datentypen mit Sorten und Operationen A. Knapp, G. Schellhorn: Formale Methoden 113

Semantik von Formeln und Sequenzen

Semantik von Formeln und Sequenzen Semantik von Formeln und Sequenzen 33 Grundidee der Verwendung von Logik im Software Entwurf Syntax: Menge von Formeln = Axiome Ax K ist beweisbar Formel ϕ beschreiben Korrektkeit Vollständigkeit beschreibt

Mehr

Logik für Informatiker

Logik für Informatiker Logik für Informatiker 2. Aussagenlogik Teil 3 30.04.2012 Viorica Sofronie-Stokkermans Universität Koblenz-Landau e-mail: sofronie@uni-koblenz.de 1 Letztes Mal Aussagenlogik Syntax: welche Formeln? Semantik:

Mehr

Formale Methoden II. Gerhard Jäger. SS 2008 Universität Bielefeld. Teil 8, 11. Juni 2008. Formale Methoden II p.1/30

Formale Methoden II. Gerhard Jäger. SS 2008 Universität Bielefeld. Teil 8, 11. Juni 2008. Formale Methoden II p.1/30 Formale Methoden II SS 2008 Universität Bielefeld Teil 8, 11. Juni 2008 Gerhard Jäger Formale Methoden II p.1/30 Beispiele Anmerkung: wenn der Wahrheitswert einer Formel in einem Modell nicht von der Belegungsfunktion

Mehr

Grundlagen der Künstlichen Intelligenz

Grundlagen der Künstlichen Intelligenz Grundlagen der Künstlichen Intelligenz 27. Aussagenlogik: Logisches Schliessen und Resolution Malte Helmert Universität Basel 28. April 2014 Aussagenlogik: Überblick Kapitelüberblick Aussagenlogik: 26.

Mehr

I. Aussagenlogik. Aussagenlogik untersucht Verknüpfungen wie "und", "oder", "nicht", "wenn... dann" zwischen atomaren und komplexen Sätzen.

I. Aussagenlogik. Aussagenlogik untersucht Verknüpfungen wie und, oder, nicht, wenn... dann zwischen atomaren und komplexen Sätzen. I. Aussagenlogik 2.1 Syntax Aussagenlogik untersucht Verknüpfungen wie "und", "oder", "nicht", "wenn... dann" zwischen atomaren und komplexen Sätzen. Sätze selbst sind entweder wahr oder falsch. Ansonsten

Mehr

Formeln. Signatur. aussagenlogische Formeln: Aussagenlogische Signatur

Formeln. Signatur. aussagenlogische Formeln: Aussagenlogische Signatur Signatur Formeln Am Beispiel der Aussagenlogik erklären wir schrittweise wichtige Elemente eines logischen Systems. Zunächst benötigt ein logisches System ein Vokabular, d.h. eine Menge von Namen, die

Mehr

Theoretische Grundlagen des Software Engineering

Theoretische Grundlagen des Software Engineering Theoretische Grundlagen des Software Engineering 7: Einführung Aussagenlogik schulz@eprover.org Logisches Schließen 2 gold +1000, 1 per step, Beispiel: Jage den Wumpus Performance measure death 1000 10

Mehr

Erfüllbarkeit und Allgemeingültigkeit

Erfüllbarkeit und Allgemeingültigkeit Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik Erfüllbarkeit 44 Erfüllbarkeit und Allgemeingültigkeit Def.: eine Formel ϕ heißt erfüllbar, wennesein I gibt, so dass I = ϕ

Mehr

Logische Folgerung. Definition 2.11

Logische Folgerung. Definition 2.11 Logische Folgerung Definition 2.11 Sei 2A eine aussagenlogische Formel und F eine endliche Menge aussagenlogischer Formeln aus A. heißt logische Folgerung von F genau dann, wenn I ( ) =1für jedes Modell

Mehr

Terme stehen für Namen von Objekten des Diskursbereichs (Subjekte, Objekte des natürlichsprachlichen Satzes)

Terme stehen für Namen von Objekten des Diskursbereichs (Subjekte, Objekte des natürlichsprachlichen Satzes) Prädikatenlogik Man kann den natürlichsprachlichen Satz Die Sonne scheint. in der Prädikatenlogik beispielsweise als logisches Atom scheint(sonne) darstellen. In der Sprache der Prädikatenlogik werden

Mehr

Prolog basiert auf Prädikatenlogik

Prolog basiert auf Prädikatenlogik Software-Technologie Software-Systeme sind sehr komplex. Im Idealfall erfolgt die Programmierung problemorientiert, während die notwendige Übertragung in ausführbare Programme automatisch erfolgt. Prolog-Philosophie:

Mehr

Theorie der Informatik

Theorie der Informatik Theorie der Informatik 6. Formale Sprachen und Grammatiken Malte Helmert Gabriele Röger Universität Basel 17. März 2014 Einführung Beispiel: Aussagenlogische Formeln Aus dem Logikteil: Definition (Syntax

Mehr

Theoretische Grundlagen des Software Engineering

Theoretische Grundlagen des Software Engineering Theoretische Grundlagen des Software Engineering 11: Abstrakte Reduktionssysteme schulz@eprover.org Reduktionssysteme Definition: Reduktionssystem Ein Reduktionssystem ist ein Tupel (A, ) Dabei gilt: A

Mehr

Formale Systeme, WS 2012/2013 Lösungen zu Übungsblatt 4

Formale Systeme, WS 2012/2013 Lösungen zu Übungsblatt 4 Karlsruher Institut für Technologie Institut für Theoretische Informatik Prof. Dr. Peter H. Schmitt David Farago, Christoph Scheben, Mattias Ulbrich Formale Systeme, WS 2012/2013 Lösungen zu Übungsblatt

Mehr

2. Vorlesung. Slide 40

2. Vorlesung. Slide 40 2. Vorlesung Slide 40 Knobelaufgabe Was tut dieses Programm? Informell Formal Wie stellt man dies sicher? knobel(a,b) { Wenn a = 0 dann return b sonst { solange b 0 wenn a > b dann { a := a - b sonst b

Mehr

Mai 2006. Hauptseminar: Nichtrelationale Datenbanken Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln

Mai 2006. Hauptseminar: Nichtrelationale Datenbanken Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln Hauptseminar: Nichtrelationale Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln Mai 2006 Was ist eine Datenbank? Erweiterung relationaler um eine Deduktionskomponente Diese

Mehr

Programmiersprachen und Übersetzer

Programmiersprachen und Übersetzer Programmiersprachen und Übersetzer Sommersemester 2010 19. April 2010 Theoretische Grundlagen Problem Wie kann man eine unendliche Menge von (syntaktisch) korrekten Programmen definieren? Lösung Wie auch

Mehr

Satz. Für jede Herbrand-Struktur A für F und alle t D(F ) gilt offensichtlich

Satz. Für jede Herbrand-Struktur A für F und alle t D(F ) gilt offensichtlich Herbrand-Strukturen und Herbrand-Modelle Sei F eine Aussage in Skolemform. Dann heißt jede zu F passende Struktur A =(U A, I A )eineherbrand-struktur für F, falls folgendes gilt: 1 U A = D(F ), 2 für jedes

Mehr

Binäre Suchbäume (binary search trees, kurz: bst)

Binäre Suchbäume (binary search trees, kurz: bst) Binäre Suchbäume (binary search trees, kurz: bst) Datenstruktur zum Speichern einer endlichen Menge M von Zahlen. Genauer: Binärbaum T mit n := M Knoten Jeder Knoten v von T ist mit einer Zahl m v M markiert.

Mehr

4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren:

4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren: 4. AUSSAGENLOGIK: SYNTAX 4.1 Objektsprache und Metasprache 4.2 Gebrauch und Erwähnung 4.3 Metavariablen: Verallgemeinerndes Sprechen über Ausdrücke von AL 4.4 Die Sprache der Aussagenlogik 4.5 Terminologie

Mehr

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Zählen und Zahlbereiche Übungsblatt 1 1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Für alle m, n N gilt m + n = n + m. in den Satz umschreiben:

Mehr

Was bisher geschah. Aufgaben: Diagnose, Entscheidungsunterstützung Aufbau Komponenten und Funktion

Was bisher geschah. Aufgaben: Diagnose, Entscheidungsunterstützung Aufbau Komponenten und Funktion Was bisher geschah Daten, Information, Wissen explizites und implizites Wissen Wissensrepräsentation und -verarbeitung: Wissensbasis Kontextwissen Problemdarstellung fallspezifisches Wissen repräsentiert

Mehr

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes. Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel

Mehr

9.2. DER SATZ ÜBER IMPLIZITE FUNKTIONEN 83

9.2. DER SATZ ÜBER IMPLIZITE FUNKTIONEN 83 9.. DER SATZ ÜBER IMPLIZITE FUNKTIONEN 83 Die Grundfrage bei der Anwendung des Satzes über implizite Funktionen betrifft immer die folgende Situation: Wir haben eine Funktion f : V W und eine Stelle x

Mehr

Klausur für Studiengänge INF und IST

Klausur für Studiengänge INF und IST Familienname: Matrikelnummer: Studiengang: (bitte ankreuzen) INF IST MED Vorname: Email-Adresse: Immatrikulationsjahr: Klausur für Studiengänge INF und IST sowie Leistungsschein für Studiengang Medieninformatik

Mehr

1 Mathematische Grundlagen

1 Mathematische Grundlagen Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.

Mehr

Zusammenfassung. Satz. 1 Seien F, G Boolesche Ausdrücke (in den Variablen x 1,..., x n ) 2 Seien f : B n B, g : B n B ihre Booleschen Funktionen

Zusammenfassung. Satz. 1 Seien F, G Boolesche Ausdrücke (in den Variablen x 1,..., x n ) 2 Seien f : B n B, g : B n B ihre Booleschen Funktionen Zusammenfassung Zusammenfassung der letzten LV Einführung in die Theoretische Informatik Woche 6 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Satz 1 Seien F, G Boolesche Ausdrücke

Mehr

Informationsblatt Induktionsbeweis

Informationsblatt Induktionsbeweis Sommer 015 Informationsblatt Induktionsbeweis 31. März 015 Motivation Die vollständige Induktion ist ein wichtiges Beweisverfahren in der Informatik. Sie wird häufig dazu gebraucht, um mathematische Formeln

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Zeichen bei Zahlen entschlüsseln

Zeichen bei Zahlen entschlüsseln Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren

Mehr

Also kann nur A ist roter Südler und B ist grüner Nordler gelten.

Also kann nur A ist roter Südler und B ist grüner Nordler gelten. Aufgabe 1.1: (4 Punkte) Der Planet Og wird von zwei verschiedenen Rassen bewohnt - dem grünen und dem roten Volk. Desweiteren sind die Leute, die auf der nördlichen Halbkugel geboren wurden von denen auf

Mehr

Grammatiken. Einführung

Grammatiken. Einführung Einführung Beispiel: Die arithmetischen Ausdrücke über der Variablen a und den Operationen + und können wie folgt definiert werden: a, a + a und a a sind arithmetische Ausdrücke Wenn A und B arithmetische

Mehr

Aussagenlogik: Syntax von Aussagen

Aussagenlogik: Syntax von Aussagen Aussagenlogik: Syntax von Aussagen A ::= X (A A) (A A) ( A) (A A) (A A) 0 1 Prioritätsreihenfolge :,,,,. A B: Konjunktion (Verundung). A B: Disjunktion (Veroderung). A B: Implikation. A B: Äquivalenz.

Mehr

Beispiel. Bsp.: Betrachte Schlussweise in: (3) folgt aus (1) und (2), siehe z.b. Resolutionsregel. was ist mit folgender Schlußweise:

Beispiel. Bsp.: Betrachte Schlussweise in: (3) folgt aus (1) und (2), siehe z.b. Resolutionsregel. was ist mit folgender Schlußweise: Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.4 Prädikatenlogik mit Gleichheit Resolution 192 Beispiel Bsp.: Betrachte Schlussweise in: 1 Wenn es regnet, dann wird die Straße nass. R N

Mehr

Übungen für Woche 10

Übungen für Woche 10 Übungen für Woche 10 Martin Rubey 12. Januar 2011 Die folgenden Übungen sollen den Umgang mit Backtracking und kombinatorischen Spezies näherbringen. Genaue Hinweise gibt es erst auf Seite 5. Zur Erinnerung:

Mehr

Einfache Ausdrücke Datentypen Rekursive funktionale Sprache Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at

Einfache Ausdrücke Datentypen Rekursive funktionale Sprache Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at Inhalt SWP Funktionale Programme (2. Teil) Einfache Ausdrücke Datentypen Rekursive funktionale Sprache Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at Interpreter für funktionale Sprache

Mehr

1 Aussagenlogik. 1.1 Aussagen. 15 ist eine Primzahl. 3 < 8 x < 15 (hängt von x ab, keine Aussage) Aussage = Behauptung Beispiele: Es regnet.

1 Aussagenlogik. 1.1 Aussagen. 15 ist eine Primzahl. 3 < 8 x < 15 (hängt von x ab, keine Aussage) Aussage = Behauptung Beispiele: Es regnet. Grundlagen der Mathematik für Informatiker 1 1 Aussagenlogik 1.1 Aussagen Aussage = Behauptung Beispiele: Es regnet. Die Straße ist naß. 15 ist eine Primzahl. 3 < 8 x < 15 (hängt von x ab, keine Aussage)

Mehr

Informatik I WS 07/08 Tutorium 24

Informatik I WS 07/08 Tutorium 24 Info I Tutorium 24 Informatik I WS 07/08 Tutorium 24 3.2.07 astian Molkenthin E-Mail: infotut@sunshine2k.de Web: http://infotut.sunshine2k.de Organisatorisches / Review is zum 2.2 müssen alle Praxisaufgaben

Mehr

1 Aussagenlogische Formeln

1 Aussagenlogische Formeln 1 Aussagenlogische Formeln Aufgabe 1.1 Transformieren Sie die Formel in disjunktive Normalform (DNF). ((:A! :B) ^ D)! ((A _ C) $ (:B ^ D)) Lösung 1.1 Schrittweise Transformation: Schritt 1: ((:A! :B) ^

Mehr

1 Aussagenlogik und Mengenlehre

1 Aussagenlogik und Mengenlehre 1 Aussagenlogik und engenlehre 1.1 engenlehre Definition (Georg Cantor): nter einer enge verstehen wir jede Zusammenfassung von bestimmten wohl unterschiedenen Objekten (m) unserer Anschauung oder unseres

Mehr

Data Mining: Einige Grundlagen aus der Stochastik

Data Mining: Einige Grundlagen aus der Stochastik Data Mining: Einige Grundlagen aus der Stochastik Hagen Knaf Studiengang Angewandte Mathematik Hochschule RheinMain 21. Oktober 2015 Vorwort Das vorliegende Skript enthält eine Zusammenfassung verschiedener

Mehr

Jeder Aussage p kann ein Wahrheitswert W(p) {0, 1} zugeordnet werden. Beispiele: W(Es regnet.) =? (je nach Lage der Dinge) W(Die Straße ist naß.) =?

Jeder Aussage p kann ein Wahrheitswert W(p) {0, 1} zugeordnet werden. Beispiele: W(Es regnet.) =? (je nach Lage der Dinge) W(Die Straße ist naß.) =? Grundlagen der Mathematik für Informatiker 1 Grundlagen der Mathematik für Informatiker 2 1 Aussagenlogik 1.1 Aussagen Aussage = Behauptung Beispiele: Es regnet. Die Straße ist naß. 15 ist eine Primzahl.

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 3: Alphabete (und Relationen, Funktionen, Aussagenlogik) Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Oktober 2008 1/18 Überblick Alphabete ASCII Unicode

Mehr

Semantik von Formeln und Sequenzen

Semantik von Formeln und Sequenzen Semantik von Formeln und Sequenzen 33 Grundidee der Verwendung von Logik im Software Entwurf Syntax: Menge von Formeln = Axiome Ax K ist beweisbar Formel ϕ beschreiben Korrektkeit Vollständigkeit beschreibt

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 15: Reguläre Ausdrücke und rechtslineare Grammatiken Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/25 Was kann man mit endlichen

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

1 Aussagenlogik. 1.1 Aussagen. 15 ist eine Primzahl. 3 < 8 x < 15 (hängt von x ab, keine Aussage) Aussage = Behauptung Beispiele: Es regnet.

1 Aussagenlogik. 1.1 Aussagen. 15 ist eine Primzahl. 3 < 8 x < 15 (hängt von x ab, keine Aussage) Aussage = Behauptung Beispiele: Es regnet. Grundlagen der Mathematik für Informatiker 1 1 Aussagenlogik 1.1 Aussagen Aussage = Behauptung Beispiele: Es regnet. Die Straße ist naß. 15 ist eine Primzahl. 3 < 8 x < 15 (hängt von x ab, keine Aussage)

Mehr

5.1 Drei wichtige Beweistechniken... 55 5.2 Erklärungen zu den Beweistechniken... 56

5.1 Drei wichtige Beweistechniken... 55 5.2 Erklärungen zu den Beweistechniken... 56 5 Beweistechniken Übersicht 5.1 Drei wichtige Beweistechniken................................. 55 5. Erklärungen zu den Beweistechniken............................ 56 Dieses Kapitel ist den drei wichtigsten

Mehr

Program = Logic + Control

Program = Logic + Control Program = Logic + Control Prozedurale/imperative Sprachen: Abläufe formulieren Computer führt aus von-neumann-maschine Idee von deklarativen/logischen/funktionalen Programmiersprachen: Zusammenhänge formulieren

Mehr

Grundlagen der Theoretischen Informatik - Sommersemester 2012. Übungsblatt 1: Lösungsvorschläge

Grundlagen der Theoretischen Informatik - Sommersemester 2012. Übungsblatt 1: Lösungsvorschläge Lehrstuhl für Softwaretechnik und Programmiersprachen Professor Dr. Michael Leuschel Grundlagen der Theoretischen Informatik - Sommersemester 2012 Übungsblatt 1: Lösungsvorschläge Disclaimer: Bei Folgendem

Mehr

9. Übung Formale Grundlagen der Informatik

9. Übung Formale Grundlagen der Informatik Institut für Informatik Sommersemester 2001 Universität Zürich 9. Übung Formale Grundlagen der Informatik Norbert E. Fuchs (fuchs@ifi.unizh.ch) Reinhard Riedl (riedl@ifi.unizh.ch) Nadine Korolnik (korolnik@ifi.unizh.ch)

Mehr

3. Grundlegende Begriffe von Logiken - Aussagenlogik

3. Grundlegende Begriffe von Logiken - Aussagenlogik 3. Grundlegende Begriffe von Logiken - Aussagenlogik Wichtige Konzepte und Begriffe in Logiken: Syntax (Signatur, Term, Formel,... ): Festlegung, welche syntaktischen Gebilde als Formeln (Aussagen, Sätze,

Mehr

Informatik A. Prof. Dr. Norbert Fuhr auf Basis des Skripts von Prof. Dr. Wolfram Luther und der Folien von Peter Fankhauser

Informatik A. Prof. Dr. Norbert Fuhr auf Basis des Skripts von Prof. Dr. Wolfram Luther und der Folien von Peter Fankhauser Informatik A Prof. Dr. Norbert Fuhr fuhr@uni-duisburg.de auf Basis des Skripts von Prof. Dr. Wolfram Luther und der Folien von Peter Fankhauser 1 Teil I Logik 2 Geschichte R. Descartes (17. Jhdt): klassische

Mehr

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5)

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5) Einführung 3 Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Univ.-Prof. Dr. Christoph Meinel Hasso-Plattner-Institut Universität Potsdam, Deutschland Hatten den Reduktionsbegriff

Mehr

Lineare Gleichungssysteme

Lineare Gleichungssysteme Lineare Gleichungssysteme 1 Zwei Gleichungen mit zwei Unbekannten Es kommt häufig vor, dass man nicht mit einer Variablen alleine auskommt, um ein Problem zu lösen. Das folgende Beispiel soll dies verdeutlichen

Mehr

Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen

Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen 1. Quadratische Gleichungen Quadratische Gleichungen lassen sich immer auf die sog. normierte Form x 2 + px + = 0 bringen, in

Mehr

Universität Koblenz-Landau, Abteilung Koblenz FB 4 Informatik. Seminar Entscheidungsverfahren für logische Theorien. Endliche Modelle.

Universität Koblenz-Landau, Abteilung Koblenz FB 4 Informatik. Seminar Entscheidungsverfahren für logische Theorien. Endliche Modelle. Universität Koblenz-Landau, Abteilung Koblenz FB 4 Informatik Seminar Entscheidungsverfahren für logische Theorien Tobias Hebel Koblenz, am 18.02.2005 Inhaltsverzeichnis 1 Einleitung... 3 2 Grundlagen...

Mehr

Grundlagen der Informationverarbeitung

Grundlagen der Informationverarbeitung Grundlagen der Informationverarbeitung Information wird im Computer binär repräsentiert. Die binär dargestellten Daten sollen im Computer verarbeitet werden, d.h. es müssen Rechnerschaltungen existieren,

Mehr

Formale Sprachen und Grammatiken

Formale Sprachen und Grammatiken Formale Sprachen und Grammatiken Jede Sprache besitzt die Aspekte Semantik (Bedeutung) und Syntax (formaler Aufbau). Die zulässige und korrekte Form der Wörter und Sätze einer Sprache wird durch die Syntax

Mehr

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung.

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung. Lineare Gleichungen mit einer Unbekannten Die Grundform der linearen Gleichung mit einer Unbekannten x lautet A x = a Dabei sind A, a reelle Zahlen. Die Gleichung lösen heißt, alle reellen Zahlen anzugeben,

Mehr

Einführung in. Logische Schaltungen

Einführung in. Logische Schaltungen Einführung in Logische Schaltungen 1/7 Inhaltsverzeichnis 1. Einführung 1. Was sind logische Schaltungen 2. Grundlegende Elemente 3. Weitere Elemente 4. Beispiel einer logischen Schaltung 2. Notation von

Mehr

Einführung in die Fuzzy Logic

Einführung in die Fuzzy Logic Einführung in die Fuzzy Logic Entwickelt von L. Zadeh in den 60er Jahren Benutzt unscharfe (fuzzy) Begriffe und linguistische Variablen Im Gegensatz zur Booleschen Logik {0,} wird das ganze Intervall [0,]

Mehr

6.2 Scan-Konvertierung (Scan Conversion)

6.2 Scan-Konvertierung (Scan Conversion) 6.2 Scan-Konvertierung (Scan Conversion) Scan-Konvertierung ist die Rasterung von einfachen Objekten (Geraden, Kreisen, Kurven). Als Ausgabemedium dient meist der Bildschirm, der aus einem Pixelraster

Mehr

7 Rechnen mit Polynomen

7 Rechnen mit Polynomen 7 Rechnen mit Polynomen Zu Polynomfunktionen Satz. Zwei Polynomfunktionen und f : R R, x a n x n + a n 1 x n 1 + a 1 x + a 0 g : R R, x b n x n + b n 1 x n 1 + b 1 x + b 0 sind genau dann gleich, wenn

Mehr

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte 50. Mathematik-Olympiade. Stufe (Regionalrunde) Klasse 3 Lösungen c 00 Aufgabenausschuss des Mathematik-Olympiaden e.v. www.mathematik-olympiaden.de. Alle Rechte vorbehalten. 503 Lösung 0 Punkte Es seien

Mehr

Ein kausaler Zusammenhang entspricht einer speziellen wahren Implikation. Beispiel: Wenn es regnet, dann wird die Erde nass.

Ein kausaler Zusammenhang entspricht einer speziellen wahren Implikation. Beispiel: Wenn es regnet, dann wird die Erde nass. Implikation Implikation Warum ist die Tabelle schwer zu schlucken? In der Umgangssprache benutzt man daraus folgt, also, impliziert, wenn dann, nur für kausale Zusammenhänge Eine Implikation der Form:

Mehr

Basis und Dimension. Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren.

Basis und Dimension. Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren. Basis und Dimension Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren. Definition. Sei V ein K-Vektorraum und (v i ) i I eine Familie von Vektoren

Mehr

Analysis I für Studierende der Ingenieurwissenschaften

Analysis I für Studierende der Ingenieurwissenschaften Fachbereich Mathematik der Universität Hamburg WiSe 2015/16 Prof. Dr. M. Hinze Dr. P. Kiani Analysis I für Studierende der Ingenieurwissenschaften Lösungshinweise zu Blatt 2 Aufgabe 1: (12 Punkte) a) Beweisen

Mehr

Repetitionsaufgaben Wurzelgleichungen

Repetitionsaufgaben Wurzelgleichungen Repetitionsaufgaben Wurzelgleichungen Inhaltsverzeichnis A) Vorbemerkungen B) Lernziele C) Theorie mit Aufgaben D) Aufgaben mit Musterlösungen 4 A) Vorbemerkungen Bitte beachten Sie: Bei Wurzelgleichungen

Mehr

Division Für diesen Abschnitt setzen wir voraus, dass der Koeffizientenring ein Körper ist. Betrachte das Schema

Division Für diesen Abschnitt setzen wir voraus, dass der Koeffizientenring ein Körper ist. Betrachte das Schema Division Für diesen Abschnitt setzen wir voraus, dass der Koeffizientenring ein Körper ist. Betrachte das Schema 2x 4 + x 3 + x + 3 div x 2 + x 1 = 2x 2 x + 3 (2x 4 + 2x 3 2x 2 ) x 3 + 2x 2 + x + 3 ( x

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Kapitel 6: Induktives Vorgehen Thomas Worsch KIT, Institut für Theoretische Informatik Wintersemester 2015/2016 GBI Grundbegriffe der Informatik KIT, Institut für Theoretische

Mehr

Bevor lineare Gleichungen gelöst werden, ein paar wichtige Begriffe, die im Zusammenhang von linearen Gleichungen oft auftauchen.

Bevor lineare Gleichungen gelöst werden, ein paar wichtige Begriffe, die im Zusammenhang von linearen Gleichungen oft auftauchen. R. Brinkmann http://brinkmann-du.de Seite 1 13.0.010 Lineare Gleichungen Werden zwei Terme durch ein Gleichheitszeichen miteinander verbunden, so entsteht eine Gleichung. Enthält die Gleichung die Variable

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion

Mehr

der einzelnen Aussagen den Wahrheitswert der zusammengesetzten Aussage falsch falsch falsch falsch wahr falsch wahr falsch falsch wahr wahr wahr

der einzelnen Aussagen den Wahrheitswert der zusammengesetzten Aussage falsch falsch falsch falsch wahr falsch wahr falsch falsch wahr wahr wahr Kapitel 2 Grundbegriffe der Logik 2.1 Aussagen und deren Verknüpfungen Eine Aussage wie 4711 ist durch 3 teilbar oder 2 ist eine Primzahl, die nur wahr oder falsch sein kann, heißt logische Aussage. Ein

Mehr

1 topologisches Sortieren

1 topologisches Sortieren Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung

Mehr

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume? Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume? Bernhard Ganter Institut für Algebra TU Dresden D-01062 Dresden bernhard.ganter@tu-dresden.de WS 2013/14 Isomorphie Zwei Graphen (V 1, E 1 ) und (V

Mehr

Grundlagen der Logik

Grundlagen der Logik Grundlagen der Logik Denken Menschen logisch? Selektionsaufgabe nach Watson (1966): Gegeben sind vier Karten von denen jede auf der einen Seite mit einem Buchstaben, auf der anderen Seite mit einer Zahl

Mehr

Einführung in die Algebra

Einführung in die Algebra Prof. Dr. H. Brenner Osnabrück SS 2009 Einführung in die Algebra Vorlesung 13 Einheiten Definition 13.1. Ein Element u in einem Ring R heißt Einheit, wenn es ein Element v R gibt mit uv = vu = 1. DasElementv

Mehr

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.

Mehr

Fachschaft Mathematik und Informatik (FIM) LA I VORKURS. Herbstsemester 2015. gehalten von Harald Baum

Fachschaft Mathematik und Informatik (FIM) LA I VORKURS. Herbstsemester 2015. gehalten von Harald Baum Fachschaft Mathematik und Informatik (FIM) LA I VORKURS Herbstsemester 2015 gehalten von Harald Baum 2. September 2015 Inhaltsverzeichnis 1. Stichpunkte zur Linearen Algebra I 2. Körper 3. Vektorräume

Mehr

Rekursionen. Georg Anegg 25. November 2009. Methoden und Techniken an Beispielen erklärt

Rekursionen. Georg Anegg 25. November 2009. Methoden und Techniken an Beispielen erklärt Methoden und Techniken an Beispielen erklärt Georg Anegg 5. November 009 Beispiel. Die Folge {a n } sei wie folgt definiert (a, d, q R, q ): a 0 a, a n+ a n q + d (n 0) Man bestimme eine explizite Darstellung

Mehr

Fragen für die Klausuren

Fragen für die Klausuren Fragen für die Klausuren Vom Quellcode zum ausführbaren Programm Was ist ein Quellcode? Ist der Quellcode von einem Programm auf unterschiedlichen Rechner gleich? Nennen Sie drei Programmiersprachen. Was

Mehr

7. Formale Sprachen und Grammatiken

7. Formale Sprachen und Grammatiken 7. Formale Sprachen und Grammatiken Computer verwenden zur Verarbeitung von Daten und Informationen künstliche, formale Sprachen (Maschinenspr., Assemblerspachen, Programmierspr., Datenbankspr., Wissensrepräsentationsspr.,...)

Mehr

Syntax. 1 Jedes A AS AL ist eine (atomare) Formel. 2 Ist F eine Formel, so ist auch F eine Formel. 3 Sind F und G Formeln, so sind auch

Syntax. 1 Jedes A AS AL ist eine (atomare) Formel. 2 Ist F eine Formel, so ist auch F eine Formel. 3 Sind F und G Formeln, so sind auch Formale der Informatik 1 Kapitel 15 Folgerbarkeit, Äquivalenzen und Normalformen Frank Heitmann heitmann@informatik.uni-hamburg.de 8. Juni 2015 Syntax Definition (Syntax der Aussagenlogik) Mit AS AL sei

Mehr

Codierungstheorie Rudolf Scharlau, SoSe 2006 9

Codierungstheorie Rudolf Scharlau, SoSe 2006 9 Codierungstheorie Rudolf Scharlau, SoSe 2006 9 2 Optimale Codes Optimalität bezieht sich auf eine gegebene Quelle, d.h. eine Wahrscheinlichkeitsverteilung auf den Symbolen s 1,..., s q des Quellalphabets

Mehr

teischl.com Software Design & Services e.u. office@teischl.com www.teischl.com/booknkeep www.facebook.com/booknkeep

teischl.com Software Design & Services e.u. office@teischl.com www.teischl.com/booknkeep www.facebook.com/booknkeep teischl.com Software Design & Services e.u. office@teischl.com www.teischl.com/booknkeep www.facebook.com/booknkeep 1. Erstellen Sie ein neues Rechnungsformular Mit book n keep können Sie nun Ihre eigenen

Mehr

Beweisbar sichere Verschlüsselung

Beweisbar sichere Verschlüsselung Beweisbar sichere Verschlüsselung ITS-Wahlpflichtvorlesung Dr. Bodo Möller Ruhr-Universität Bochum Horst-Görtz-Institut für IT-Sicherheit Lehrstuhl für Kommunikationssicherheit bmoeller@crypto.rub.de 6

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 12.01.2012 INSTITUT FÜR THEORETISCHE 0 KIT 12.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik

Mehr

Prädikatenlogik - Micromodels of Software

Prädikatenlogik - Micromodels of Software Prädikatenlogik - Micromodels of Software Philipp Koch Seminar Logik für Informatiker Universität Paderborn Revision: 30. Mai 2005 1 Inhaltsverzeichnis 1 Motivation 3 2 Modelle 3 2.1 Definition eines Modells.......................

Mehr

Kapiteltests zum Leitprogramm Binäre Suchbäume

Kapiteltests zum Leitprogramm Binäre Suchbäume Kapiteltests zum Leitprogramm Binäre Suchbäume Björn Steffen Timur Erdag überarbeitet von Christina Class Binäre Suchbäume Kapiteltests für das ETH-Leitprogramm Adressaten und Institutionen Das Leitprogramm

Mehr

x 2 2x + = 3 + Es gibt genau ein x R mit ax + b = 0, denn es gilt

x 2 2x + = 3 + Es gibt genau ein x R mit ax + b = 0, denn es gilt - 17 - Die Frage ist hier also: Für welche x R gilt x = x + 1? Das ist eine quadratische Gleichung für x. Es gilt x = x + 1 x x 3 = 0, und man kann quadratische Ergänzung machen:... ( ) ( ) x x + = 3 +

Mehr

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt

Mehr

Absolute Stetigkeit von Maßen

Absolute Stetigkeit von Maßen Absolute Stetigkeit von Maßen Definition. Seien µ und ν Maße auf (X, Ω). Dann heißt ν absolut stetig bezüglich µ (kurz ν µ ), wenn für alle A Ω mit µ(a) = 0 auch gilt dass ν(a) = 0. Lemma. Sei ν ein endliches

Mehr

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können.

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können. Excel-Schnittstelle Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können. Voraussetzung: Microsoft Office Excel ab Version 2000 Zum verwendeten Beispiel:

Mehr

t r Lineare Codierung von Binärbbäumen (Wörter über dem Alphabet {, }) Beispiel code( ) = code(, t l, t r ) = code(t l ) code(t r )

t r Lineare Codierung von Binärbbäumen (Wörter über dem Alphabet {, }) Beispiel code( ) = code(, t l, t r ) = code(t l ) code(t r ) Definition B : Menge der binären Bäume, rekursiv definiert durch die Regeln: ist ein binärer Baum sind t l, t r binäre Bäume, so ist auch t =, t l, t r ein binärer Baum nur das, was durch die beiden vorigen

Mehr

Fixpunktsemantik logischer Programme Pascal Hitzler Juli 1997 Kurzuberblick im Rahmen der Vorlesung Einfuhrung in Prolog von T. Cornell im Sommersemester 1997 an der Universitat Tubingen. Beweise sind

Mehr

2.3 Deduktiver Aufbau der Aussagenlogik

2.3 Deduktiver Aufbau der Aussagenlogik 2.3 Deduktiver Aufbau der Aussagenlogik Dieser Abschnitt beschäftigt sich mit einem axiomatischen Aufbau der Aussagenlogik mittels eines Deduktiven Systems oder eines Kalküls. Eine syntaktisch korrekte

Mehr

Was bisher geschah Wissensrepräsentation und -verarbeitung in Zustandsübergangssystemen Constraint-Systemen Logiken Repräsentation von Mengen

Was bisher geschah Wissensrepräsentation und -verarbeitung in Zustandsübergangssystemen Constraint-Systemen Logiken Repräsentation von Mengen Was bisher geschah Wissensrepräsentation und -verarbeitung in Zustandsübergangssystemen Constraint-Systemen Logiken Repräsentation von Mengen aussagenlogischer Regeln: Wissensbasis (Kontextwissen): Formelmenge,

Mehr

Motivation. Formale Grundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen. Informales Beispiel. Informales Beispiel.

Motivation. Formale Grundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen. Informales Beispiel. Informales Beispiel. Kontextfreie Kontextfreie Motivation Formale rundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen Bisher hatten wir Automaten, die Wörter akzeptieren Frank Heitmann heitmann@informatik.uni-hamburg.de

Mehr

Zusammenfassung. 1 Wir betrachten die folgende Signatur F = {+,,, 0, 1} sodass. 3 Wir betrachten die Gleichungen E. 4 Dann gilt E 1 + x 1

Zusammenfassung. 1 Wir betrachten die folgende Signatur F = {+,,, 0, 1} sodass. 3 Wir betrachten die Gleichungen E. 4 Dann gilt E 1 + x 1 Zusammenfassung Zusammenfassung der letzten LV Einführung in die Theoretische Informatik Woche 7 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 1 Wir betrachten die folgende Signatur

Mehr