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 (in den Variablen 1,..., n ) 2 Seien f : B n B, g : B n B ihre Booleschen Funktionen Dann gilt F G in allen Booleschen Algebren gdw. f = g in der Algebra der n-stelligen Booleschen Funktionen Folgerung Äquivalenzen von Booleschen Ausdrücken gelten (per ) für alle Booleschen Algebren Um diese Äquivalenzen zu überprüfen genügt (nach obigem Satz) der Test in der Algebra der n-stelligen Booleschen Funktionen HZ (IFI) ETI - Woche 6 86/214 Zusammenfassung (Gleichung) Eine Gleichung über der Signatur F ist ein Paar s t von Termen Sei E eine Menge von Gleichungen (Gleichungslogik) [r] E t t [t] [s] [a] E s t E t s s t E E s t Frage Wie zeigt man E s t? [i] [k] E s t E t u E s u E s t E σ(s) σ(t) σ eine Substitution E s 1 t 1... E s n t n E f (s 1,..., s n ) f (t 1,..., t n ) HZ (IFI) ETI - Woche 6 87/214 Überblick Inhalte der Lehrveranstaltung Einführung in die Logik Synta & Semantik der Aussagenlogik, Formales Beweisen, Konjunktive und Disjunktive Normalformen Einführung in die Algebra Boolesche Algebra, Universelle Algebra, Logische Schaltkreise Einführung in die Theorie der Formalen Sprachen Grammatiken und Formale Sprachen, Reguläre Sprachen, Kontetfreie Sprachen Einführung in die Berechenbarkeitstheorie Algorithmisch unlösbare Probleme, Turing Maschinen, Registermaschinen Einführung in die Programmverifikation Prinzipien der Analyse von Programmen, Verifikation nach Hoare, Verschlüsselung und Sicherheit HZ (IFI) ETI - Woche 6 88/214
Überblick Gleichungen für Boolesche Ausdrücke 1 Wir betrachten die folgende Signatur sodass Stelligkeit von 0, 1 ist 0 Stelligkeit von ist 1 Stelligkeit von +, ist 2 2 V = {, y,... } 3 Wir betrachten die Gleichungen E F = {+,,, 0, 1} ( + y) + z + (y + z) + 1 + 4 Dann gilt E 1 + 1 (nächste Folie) 5 Dann gilt E + 1 1 (diese Vorlesung) HZ (IFI) ETI - Woche 6 89/214 Überblick (Fortsetzung) Zunächst betrachten wir die folgende Herleitung der Gleichung: 1+ (+)+ + ( + ) + 1 Formal in der Gleichungslogik: ➀ ➁ E 1 + (+)+ E (+)+ 1 [t] E 1 + 1 Wir betrachten ➀: + 1 E E + 1 [a] E 1 + [s] E [r] [k] E 1 + (+)+ Wir skizzieren ➁:.. E (+)+ +(+) E +(+) 1 E (+)+ 1 HZ (IFI) ETI - Woche 6 90/214 [t] Vollständigkeit und Korrektheit der Gleichungslogik Frage 1 Ist die Gleichungslogik korrekt? Sind (zum ) alle Schlussfolgerungen aus den Gesetzen der Booleschen Algebra wirklich Äquivalenzen von Booleschen Ausdrücken? 2 Ist die Gleichungslogik vollständig? Kann (zum ) jede Äquivalenz von Booleschen Ausdrücken mit dem Kalkül der Gleichungslogik hergeleitet werden? Satz (Satz von Birkhoff) Für beliebige Terme s, t gilt E = s t gdw. E s t. Folgerung Die Gleichungslogik ist vollständig und korrekt. Eine Algebra A über der Signatur F setzt sich zusammen aus: 1 Einer Trägermenge A und 2 einer Abbildung, die jedem Funktionssymbol f F mit Stelligkeit n eine Funktion f A : A n A zuordnet. Signatur F = {+,, 1}. Algebra A = {0, 1}, + A, A, 1 A über F mit Bemerkung + A 0 A 1 1 eine Algebra A über einer Signatur ist eine Algebra 1 A 1 HZ (IFI) ETI - Woche 6 91/214 HZ (IFI) ETI - Woche 6 92/214
(cont d) Sei A eine Algebra (über der Signatur F) Sei s t eine Gleichung (über der Signatur F). Sind s und t äquivalent in der Algebra A (siehe Woche 4), schreiben wir A = s t. (cont d) Sei A eine Algebra (über der Signatur F) Sei s t eine Gleichung (über der Signatur F). Sind s und t äquivalent in der Algebra A (siehe Woche 4), schreiben wir A = s t. Sei A = {0, 1}, + A, A, 1 A eine Algebra mit Sei B = {0, 1}, + B, B, 1 B eine Algebra mit + A 0 A 1 1 1 A 1 + B 0 0 0 B 1 1 1 B 1 Dann gilt A = ( + y) + z + (y + z), A = + 1, A = +. Dann gilt B = ( + y) + z + (y + z), B = + 1, B = +. HZ (IFI) ETI - Woche 6 93/214 HZ (IFI) ETI - Woche 6 93/214 (cont d) Sei A eine Algebra (über der Signatur F) Sei s t eine Gleichung (über der Signatur F). Sind s und t äquivalent in der Algebra A (siehe Woche 4), schreiben wir A = s t. Sei C = {0, 1}, + C, C, 1 C eine Algebra mit + C 0 0 0 C 1 0 1 C 1 Dann gilt C = ( + y) + z + (y + z), C = + 1, C = +. (cont d) Sei E eine Menge von Gleichungen (über der Signatur F) Eine Algebra A heißt Modell von E, wenn A = s t für jede Gleichung s t E Gleichung s t ist semantische Konsequenz von E wenn folgende Implikation gilt: Wenn A Modell von E, dann A = s t. Die Frage ob E = s t heißt auch das Wortproblem (Fortsetzung) Sei E die Menge an Gleichungen: E = s t ( + y) + z + (y + z) + 1 + A ist Modell von E B ist Modell von E C ist nicht Modell von E E = + 1 1 (da B Modell von E, aber B = + 1 1) HZ (IFI) ETI - Woche 6 93/214 HZ (IFI) ETI - Woche 6 94/214
Sei B = {0, 1}. Wir betrachten die Algebra wobei die Operationen +,, y + y B; +,,, 0, 1 wie folgt definiert sind: y y Diese Algebra ist eine Boolesche Algebra und heißt Schaltalgebra. Ein logischer Schaltkreis (Schaltnetz) ist ein algebraischer Ausdruck der Schaltalgebra Die Operationen +,, werden mit logischen Gattern ausgedrückt Schaltfunktionen Sei Abb die Menge der Abbildungen von B n nach B m wir betrachten Abb; +,,, (0,..., 0), (1,..., 1) 1 (0,..., 0) und (1,..., 1) sind konstante Funktionen 2 +,, sind punktweise definiert Diese Algebra nennt man Algebra der n-stelligen Schaltfunktionen Satz 1 Seien A, B logische Schaltkreise (in den Variablen 1,..., n ) 2 Seien f : B n B, g : B n B ihre Schaltfunktionen Dann gilt A B in der Schaltalgebra gdw. f = g in der Algebra der n-stelligen Schaltfunktionen. HZ (IFI) ETI - Woche 6 95/214 HZ (IFI) ETI - Woche 6 96/214 Vereinfachen von Schaltnetzen (Halbaddierer) Der Übertrag carry(a, b) = 1 gdw. a = 1 und b = 1; also carry(a, b) = ab Der Summand summand(a, b) = 1 gdw. a = 0 und b = 1 gilt oder a = 1 und b = 0; also summand(a, b) = ab + ab y (cont d) ab + ab = (ab + a)(ab + b) Distributivgesetz = (a + ab)(b + ba) +, kommutativ = (a + ab)(b + ba) Involutionsgesetz = (a + b)(b + a) Absorptionsgesetz (2) = (a + b)(a + b) + kommutativ = (a + b)ab Gesetz von de Morgan y y + y ( + y)(y) y y HZ (IFI) ETI - Woche 6 97/214 HZ (IFI) ETI - Woche 6 98/214
(Minimale DNF) Eine minimale DNF D eines Booleschen Ausdruckes A ist eine DNF von A mit minimaler Anzahl von Konjunktionen Wenn zwei DNFs von A die gleiche Anzahl von Konjunktionen haben, ist die DNF mit minimaler Anzahl von Literalen minimal (Minimale KNF) Eine minimale KNF K eines Booleschen Ausdruckes A ist eine KNF von A mit minimaler Anzahl von Disjunktionen Wenn zwei KNFs von A die gleiche Anzahl von Disjunktionen haben, ist die KNF mit minimaler Anzahl von Literalen minimal Folgerung Jeder Boolesche Ausdruck hat eine äquivalente minimale DNF bzw. äquivalente minimale KNF HZ (IFI) ETI - Woche 6 99/214 (Alphabet) Ein Alphabet Σ ist eine endliche, nicht leere Menge von Symbolen (Buchstaben) Σ = {0, 1} ist das binäre Alphabet Σ = {a, b,..., z}, die Menge lateinischer Kleinbuchstaben die Menge der (druckbaren) ASCII-Zeichen (Wort) Ein Wort (eine Zeichenreihe, ein String) ist eine endliche Folge von Symbolen über einem Alphabet Σ Das Leerwort wird mit ɛ bezeichnet HZ (IFI) ETI - Woche 6 100/214 Wörter und Wortlänge Die Symbolkette 01101 ist ein Wort über dem Alphabet {0, 1} Konvention Buchstaben werden mit a, b, c,... bezeichnet Wörter werden mit..., w,, y, z bezeichnet ɛ Σ (Wortlänge) Die Länge eines Wortes w ist die Anzahl der Buchstaben in w Die Länge von w wird mit w notiert Das Leerwort ɛ hat die Länge 0 Σ k, Σ +, Σ Definiere Σ k als die Menge der Wörter der Länge k, deren Symbole aus Σ stammen Σ + = Σ 1 Σ 2 Σ + Σ = Σ + {ɛ} Sei Σ = {0, 1}. Dann ist Σ 0 = {ɛ} Σ 1 = {0, 1} Σ 2 = {00, 01, 10, 11} Σ 3 = {000, 001, 010, 011, 100, 101, 110, 111} Σ k Σ HZ (IFI) ETI - Woche 6 101/214 HZ (IFI) ETI - Woche 6 102/214
Konkatenation Seien, y Wörter. Wir schreiben y (oft auch y) für die Konkatenation von und y. Sei = a 1 a 2 a m, y = b 1 b 2 b n, dann ist Seien = 01101 und y = 110 y = a 1 a 2 a m b 1 b 2 b n Dann ist y = 01101110 und y = 11001101 Lemma Die Konkatenation ist assoziativ Das Leerwort ɛ ist ein neutrales Element für die Konkatenation Die Algebra Σ ;, ɛ ist ein Monoid (genannt: Wortmonoid) HZ (IFI) ETI - Woche 6 103/214