Einführung in die Theoretische Informatik

Größe: px
Ab Seite anzeigen:

Download "Einführung in die Theoretische Informatik"

Transkript

1 Einführung in die Theoretische Informatik Maximilian Haslbeck Fabian Mitterwallner Georg Moser David Obwaller cbr.uibk.ac.at

2 Zusammenfassung der letzten LVA Definition Eine Registermaschine (RM) R ist ein Paar R = ((x i ) 1 i n, P) sodass 1 (x i ) 1 i n Sequenz von Registern x i, die natürliche Zahlen beinhalten 2 P ein Programm Befehle: 1 x i := x i x i := x i 1 3 while x i 0 do P 1 end Satz Jede partielle Funktion f : N k N, die berechenbar auf einer RM ist, ist auf einer TM berechenbar und umgekehrt 1

3 Inhalte der Lehrveranstaltung Einführung in die Logik Syntax & 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, Kontextfreie 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 2

4 Inhalte der Lehrveranstaltung Einführung in die Logik Syntax & 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, Kontextfreie 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 2

5 Satz Sei Σ ein Alphabet und L Σ rekursiv; dann ist L rekursiv 3

6 Satz Sei Σ ein Alphabet und L Σ rekursiv; dann ist L rekursiv Beweis. Da L rekursiv ist, gibt es eine totale TM M mit L = L(M). Wir definieren eine TM M, wobei der akzeptierende und der verwerfende Zustand von M vertauscht werden. Weil M total ist, ist auch M total. Somit akzeptiert M ein Wort genau dann, wenn M es verwirft und es folgt L = L(M ), d.h. L ist rekursiv. 3

7 Satz Sei Σ ein Alphabet und L Σ rekursiv; dann ist L rekursiv Beweis. Da L rekursiv ist, gibt es eine totale TM M mit L = L(M). Wir definieren eine TM M, wobei der akzeptierende und der verwerfende Zustand von M vertauscht werden. Weil M total ist, ist auch M total. Somit akzeptiert M ein Wort genau dann, wenn M es verwirft und es folgt L = L(M ), d.h. L ist rekursiv. Satz Jede rekursive Menge ist rekursiv aufzählbar. Andererseits ist nicht jede rekursiv aufzählbare Menge rekursiv. 3

8 Satz Sei Σ ein Alphabet und L Σ rekursiv; dann ist L rekursiv Beweis. Da L rekursiv ist, gibt es eine totale TM M mit L = L(M). Wir definieren eine TM M, wobei der akzeptierende und der verwerfende Zustand von M vertauscht werden. Weil M total ist, ist auch M total. Somit akzeptiert M ein Wort genau dann, wenn M es verwirft und es folgt L = L(M ), d.h. L ist rekursiv. Satz Jede rekursive Menge ist rekursiv aufzählbar. Andererseits ist nicht jede rekursiv aufzählbare Menge rekursiv. Beweis. Der erste Teil des Satzes ist eine Konsequenz der Definitionen; den zweiten Teil holen wir nach 3

9 Satz Wenn L und L rekursiv aufzählbar sind, dann ist L rekursiv. 4

10 Satz Wenn L und L rekursiv aufzählbar sind, dann ist L rekursiv. Beweis. TM M 1, M 2 mit L = L(M 1 ) und (L) = L(M 2 ) 4

11 Satz Wenn L und L rekursiv aufzählbar sind, dann ist L rekursiv. Beweis. TM M 1, M 2 mit L = L(M 1 ) und (L) = L(M 2 ) definiere TM M, sodass das Band zwei Hälften hat b ˆb a b a a a a b a a a c c c d d d c ĉ d c d c 4

12 Satz Wenn L und L rekursiv aufzählbar sind, dann ist L rekursiv. Beweis. TM M 1, M 2 mit L = L(M 1 ) und (L) = L(M 2 ) definiere TM M, sodass das Band zwei Hälften hat b ˆb a b a a a a b a a a c c c d d d c ĉ d c d c M 1 wird auf der oberen und M 2 auf der unteren Hälfte simuliert 4

13 Satz Wenn L und L rekursiv aufzählbar sind, dann ist L rekursiv. Beweis. TM M 1, M 2 mit L = L(M 1 ) und (L) = L(M 2 ) definiere TM M, sodass das Band zwei Hälften hat b ˆb a b a a a a b a a a c c c d d d c ĉ d c d c M 1 wird auf der oberen und M 2 auf der unteren Hälfte simuliert wenn M 1 x akzeptiert, M akzeptiert x wenn M 2 x akzeptiert, M verwirft x 4

14 Satz Wenn L und L rekursiv aufzählbar sind, dann ist L rekursiv. Beweis. TM M 1, M 2 mit L = L(M 1 ) und (L) = L(M 2 ) definiere TM M, sodass das Band zwei Hälften hat b ˆb a b a a a a b a a a c c c d d d c ĉ d c d c M 1 wird auf der oberen und M 2 auf der unteren Hälfte simuliert wenn M 1 x akzeptiert, M akzeptiert x wenn M 2 x akzeptiert, M verwirft x 4

15 Definition (informell) Erweiterung um mehrere Bänder und Lese/Schreibköpfe: b a a a b b b b a a a b a b b a b a Q mehrfacher Lese/Schreibkopf 5

16 Definition (informell) Erweiterung um mehrere Bänder und Lese/Schreibköpfe: b a a a b b b b a a a b a b b a b a Q mehrfacher Lese/Schreibkopf 5

17 Definition (informell) Erweiterung um mehrere Bänder und Lese/Schreibköpfe: b a a a b b b b a a a b a b b a b a Q mehrfacher Lese/Schreibkopf Definition δ : Q Γ 3 Q Γ 3 {L, R} 3 5

18 Satz Sei M eine k-bändige TM. Dann existiert eine (einbändige) TM M, sodass L(M) = L(M ) 6

19 Satz Sei M eine k-bändige TM. Dann existiert eine (einbändige) TM M, sodass L(M) = L(M ) Beweisskizze. 6

20 Satz Sei M eine k-bändige TM. Dann existiert eine (einbändige) TM M, sodass L(M) = L(M ) Beweisskizze. wir simulieren die Bänder übereinander, obda sei k = 2 6

21 Satz Sei M eine k-bändige TM. Dann existiert eine (einbändige) TM M, sodass L(M) = L(M ) Beweisskizze. wir simulieren die Bänder übereinander, obda sei k = 2 wir erweitern das Alphabet von M a c â c a ĉ â ĉ 6

22 Satz Sei M eine k-bändige TM. Dann existiert eine (einbändige) TM M, sodass L(M) = L(M ) Beweisskizze. wir simulieren die Bänder übereinander, obda sei k = 2 wir erweitern das Alphabet von M a c â c a ĉ â ĉ Band von M kann folgende Gestalt haben: b ˆb a b a a a a b a a a c c c d d d c ĉ d c d c 6

23 Satz Sei M eine k-bändige TM. Dann existiert eine (einbändige) TM M, sodass L(M) = L(M ) Beweisskizze. wir simulieren die Bänder übereinander, obda sei k = 2 wir erweitern das Alphabet von M a c â c a ĉ â ĉ Band von M kann folgende Gestalt haben: b ˆb a b a a a a b a a a c c c d d d c ĉ d c d c alle Bänder von M sind nun repräsentiert und die Leseköpfe werden durch die Zusatzmarkierung ˆ ausgedrückt 6

24 Satz Sei M eine k-bändige TM. Dann existiert eine (einbändige) TM M, sodass L(M) = L(M ) Beweisskizze. wir simulieren die Bänder übereinander, obda sei k = 2 wir erweitern das Alphabet von M a c â c a ĉ â ĉ Band von M kann folgende Gestalt haben: b ˆb a b a a a a b a a a c c c d d d c ĉ d c d c alle Bänder von M sind nun repräsentiert und die Leseköpfe werden durch die Zusatzmarkierung ˆ ausgedrückt 6

25 Wozu Programmverifikation 7

26 Wozu Programmverifikation Ariane-5 Fehler in der Datenkonvertierung USD 370 Millionen 7

27 Wozu Programmverifikation Ariane-5 Fehler in der Datenkonvertierung USD 370 Millionen Intel Pentium FDIV-Bug Falsche Berechnungen USD 475 Millionen 7

28 Wozu Programmverifikation Ariane-5 Fehler in der Datenkonvertierung USD 370 Millionen Intel Pentium FDIV-Bug Falsche Berechnungen USD 475 Millionen Gepäckverteilung (Denver) Desaster USD 560 Millionen 7

29 Wozu Programmverifikation Ariane-5 Fehler in der Datenkonvertierung USD 370 Millionen Intel Pentium FDIV-Bug Falsche Berechnungen USD 475 Millionen Gepäckverteilung (Denver) Desaster USD 560 Millionen Blue Screen of Death ziemlich lästig 7

30 Begutachtung Der Code wird von ähnlich qualifizierten Programmierern kontrolliert subtile Fehler werden leicht übersehen 8

31 Begutachtung Der Code wird von ähnlich qualifizierten Programmierern kontrolliert subtile Fehler werden leicht übersehen Testen dynamische Technik, bei der das Programm ausgeführt wird Wie wird die richtige Testumgebung geschaffen? 8

32 Begutachtung Der Code wird von ähnlich qualifizierten Programmierern kontrolliert subtile Fehler werden leicht übersehen Testen dynamische Technik, bei der das Programm ausgeführt wird Wie wird die richtige Testumgebung geschaffen? Formal Methoden erlauben die frühe Integration der Verifikation in die Softwareentwicklung sind effizienter als andere Methoden (höhere Erkennensrate von Fehlern) sind (im Besonderen wenn automatisierbar) schneller anwendbar 8

33 Verifikation nach Hoare Prädikatenlogik (informell) Die Prädikatenlogik ist eine Logik, deren Ausdruckskraft über die der Aussagenlogik weit hinausgeht Die wichtigste Erweiterung sind Prädikatensymbole Prädikatensymbole erlauben es uns, über Elemente einer Menge Aussagen zu treffen 9

34 Verifikation nach Hoare Prädikatenlogik (informell) Die Prädikatenlogik ist eine Logik, deren Ausdruckskraft über die der Aussagenlogik weit hinausgeht Die wichtigste Erweiterung sind Prädikatensymbole Prädikatensymbole erlauben es uns, über Elemente einer Menge Aussagen zu treffen Sprache einer Prädikatenlogik Eine Prädikatenlogik durch eine Sprache beschrieben, diese Sprache enthält: 1 Funktionssymbole und Prädikatensymbole; Variablen 2 = }{{} Gleichheit,,,,,, }{{} Junktoren }{{} Quantoren 9

35 Beispiel Sei 7 eine Konstante und ist_prim ein Prädikatensymbol Wir schreiben ist_prim(7), um auszudrücken, dass 7 eine Primzahl 10

36 Beispiel Sei 7 eine Konstante und ist_prim ein Prädikatensymbol Wir schreiben ist_prim(7), um auszudrücken, dass 7 eine Primzahl Definition Ein Ausdruck der mit Hilfe von Variablen und Funktionssymbolen gebildet wird, heißt Term 10

37 Beispiel Sei 7 eine Konstante und ist_prim ein Prädikatensymbol Wir schreiben ist_prim(7), um auszudrücken, dass 7 eine Primzahl Definition Ein Ausdruck der mit Hilfe von Variablen und Funktionssymbolen gebildet wird, heißt Term Definition 1 Sei P ein Prädikatensymbol 2 Seien t 1,..., t n Terme 10

38 Beispiel Sei 7 eine Konstante und ist_prim ein Prädikatensymbol Wir schreiben ist_prim(7), um auszudrücken, dass 7 eine Primzahl Definition Ein Ausdruck der mit Hilfe von Variablen und Funktionssymbolen gebildet wird, heißt Term Definition 1 Sei P ein Prädikatensymbol 2 Seien t 1,..., t n Terme Dann nennen wir die Ausdrücke P(t 1,..., t n ) und t 1 = t 2 Atome oder atomare Formel 10

39 Definition (Zusicherungen) Wir definieren Zusicherungen induktiv: 1 Atome sind Zusicherungen 2 Wenn A und B Zusicherungen sind, dann sind auch die folgenden Ausdrücke, Zusicherungen: A (A B) (A B) (A B) 11

40 Definition (Zusicherungen) Wir definieren Zusicherungen induktiv: 1 Atome sind Zusicherungen 2 Wenn A und B Zusicherungen sind, dann sind auch die folgenden Ausdrücke, Zusicherungen: A (A B) (A B) (A B) Konvention Zusicherungen werden Formeln genannt 11

41 Definition (Zusicherungen) Wir definieren Zusicherungen induktiv: 1 Atome sind Zusicherungen 2 Wenn A und B Zusicherungen sind, dann sind auch die folgenden Ausdrücke, Zusicherungen: A (A B) (A B) (A B) Konvention Zusicherungen werden Formeln genannt Definition Interpretationen I werden verwendet, um den Ausdrücken der Prädikatenlogik eine Bedeutung zu geben 11

42 Beispiel Wir betrachten die Konstante 7 und das Prädikat ist_prim Interpretation I legt fest, dass 7 als die Zahl sieben zu verstehen ist I legt fest, dass das Atom ist_prim(n) genau dann wahr ist, wenn n eine Primzahl 12

43 Beispiel Wir betrachten die Konstante 7 und das Prädikat ist_prim Interpretation I legt fest, dass 7 als die Zahl sieben zu verstehen ist I legt fest, dass das Atom ist_prim(n) genau dann wahr ist, wenn n eine Primzahl Beobachtung 1 Mit Hilfe von Interpretationen wird der Wahrheitsgehalt von Atomen bestimmt 2 Ist die Wahrheit von Atomen in I definiert, wird die Wahrheit einer beliebigen Formel durch die Bedeutung der Junktoren bestimmt 12

44 Beispiel Wir betrachten die Konstante 7 und das Prädikat ist_prim Interpretation I legt fest, dass 7 als die Zahl sieben zu verstehen ist I legt fest, dass das Atom ist_prim(n) genau dann wahr ist, wenn n eine Primzahl Beobachtung 1 Mit Hilfe von Interpretationen wird der Wahrheitsgehalt von Atomen bestimmt 2 Ist die Wahrheit von Atomen in I definiert, wird die Wahrheit einer beliebigen Formel durch die Bedeutung der Junktoren bestimmt Beispiel Die Formel ist_prim(x) x = 7 bedeutet, dass x die Primzahl 7 ist 12

45 Definition Sei I eine Interpretation und F eine Formel, wir schreiben I = F, wenn die Formel F in der Interpretation I wahr ist 13

46 Definition Sei I eine Interpretation und F eine Formel, wir schreiben I = F, wenn die Formel F in der Interpretation I wahr ist Beispiel Wenn x die Primzahl 7 ist, dann gilt I = ist_prim(x) x = 7 13

47 Definition Sei I eine Interpretation und F eine Formel, wir schreiben I = F, wenn die Formel F in der Interpretation I wahr ist Beispiel Wenn x die Primzahl 7 ist, dann gilt I = ist_prim(x) x = 7 Definition Die Konsequenzrelation A = B gilt, gdw. für alle Interpretationen I: I = A impliziert I = B 13

48 Definition Sei I eine Interpretation und F eine Formel, wir schreiben I = F, wenn die Formel F in der Interpretation I wahr ist Beispiel Wenn x die Primzahl 7 ist, dann gilt I = ist_prim(x) x = 7 Definition Die Konsequenzrelation A = B gilt, gdw. für alle Interpretationen I: I = A impliziert I = B Beispiel Seien x 1 > 4 und x > 5 Atome, es gilt: x 1 > 4 = x > 5 13

49 Hoare-Tripel Definition Sei P ein while-programm (ein Programm einer Registermaschine) Seien Q und R Zusicherungen Ein Hoare-Tripel ist wie folgt definiert: {Q} P {R} Q wird Vorbedingung R wird Nachbedingung genannt 14

50 Hoare-Tripel Definition Sei P ein while-programm (ein Programm einer Registermaschine) Seien Q und R Zusicherungen Ein Hoare-Tripel ist wie folgt definiert: {Q} P {R} Q wird Vorbedingung R wird Nachbedingung genannt Beispiel Seien x 1 > 4, x 1 > 5 Zusicherungen und x 1 := x ein Programm, dann ist {x 1 > 4} x 1 := x {x 1 > 5} ein Hoare-Tripel 14

51 Definition Ein Hoare-Tripel {Q} P {R} ist wahr, wenn 1 Q vor der Ausführung von P gilt 2 R nach der Ausführung von P gilt 3 unter der Voraussetzung, dass P terminiert 15

52 Definition Ein Hoare-Tripel {Q} P {R} ist wahr, wenn 1 Q vor der Ausführung von P gilt 2 R nach der Ausführung von P gilt 3 unter der Voraussetzung, dass P terminiert Wenn {Q} P {R} wahr, dann ist P korrekt in Bezug auf Q und R Dann sagen wir auch P ist partiell korrekt 15

53 Definition Ein Hoare-Tripel {Q} P {R} ist wahr, wenn 1 Q vor der Ausführung von P gilt 2 R nach der Ausführung von P gilt 3 unter der Voraussetzung, dass P terminiert Wenn {Q} P {R} wahr, dann ist P korrekt in Bezug auf Q und R Dann sagen wir auch P ist partiell korrekt Das Programm P ist total korrekt, wenn es partiell korrekt ist und terminiert 15

54 Definition Ein Hoare-Tripel {Q} P {R} ist wahr, wenn 1 Q vor der Ausführung von P gilt 2 R nach der Ausführung von P gilt 3 unter der Voraussetzung, dass P terminiert Wenn {Q} P {R} wahr, dann ist P korrekt in Bezug auf Q und R Dann sagen wir auch P ist partiell korrekt Das Programm P ist total korrekt, wenn es partiell korrekt ist und terminiert Beispiel Die folgenden Hoare-Tripel {x 1 > 4} x 1 := x {x 1 > 5} {x 2 = 0} x 2 := x 2 1 {x 2 = 0} sind wahr und die jeweiligen Programme total korrekt 15

55 Hoare-Kalkül Definition Die Regeln des Hoare-Kalkül sind wie folgt definiert: 16

56 Hoare-Kalkül Definition Die Regeln des Hoare-Kalkül sind wie folgt definiert: [z] {Q{x t}} x := t {Q} 16

57 Hoare-Kalkül Definition Die Regeln des Hoare-Kalkül sind wie folgt definiert: {Q } P {R } [z] {Q{x t}} x := t {Q} [a] {Q} P {R} Q = Q, R = R 16

58 Hoare-Kalkül Definition Die Regeln des Hoare-Kalkül sind wie folgt definiert: {Q } P {R } [z] {Q{x t}} x := t {Q} [a] {Q} P {R} Q = Q, R = R [s] {Q} P 1 {R} {R} P 2 {S} {Q} P 1 ; P 2 {S} 16

59 Hoare-Kalkül Definition Die Regeln des Hoare-Kalkül sind wie folgt definiert: {Q } P {R } [z] {Q{x t}} x := t {Q} [a] {Q} P {R} Q = Q, R = R [s] {Q} P 1 {R} {R} P 2 {S} {Q} P 1 ; P 2 {S} [w] {I B} P {I} {I} while B do P end {I B} 16

60 Hoare-Kalkül Definition Die Regeln des Hoare-Kalkül sind wie folgt definiert: {Q } P {R } [z] {Q{x t}} x := t {Q} [a] {Q} P {R} Q = Q, R = R [s] {Q} P 1 {R} {R} P 2 {S} {Q} P 1 ; P 2 {S} [w] {I B} P {I} {I} while B do P end {I B} Ist ein Hoare-Tripel in diesem Kalkül ableitbar, dann ist es wahr 16

61 Hoare-Kalkül Definition Die Regeln des Hoare-Kalkül sind wie folgt definiert: {Q } P {R } [z] {Q{x t}} x := t {Q} [a] {Q} P {R} Q = Q, R = R [s] {Q} P 1 {R} {R} P 2 {S} {Q} P 1 ; P 2 {S} [w] {I B} P {I} {I} while B do P end {I B} Ist ein Hoare-Tripel in diesem Kalkül ableitbar, dann ist es wahr Beispiel {x > 5} x 1 := x {x 1 > 5} [z] [a], x 1 > 4 = x > 5 {x 1 > 4} x 1 := x {x 1 > 5} 16

62 Beispiel Wir betrachten das folgende einfache while-programm P: while x i 0 do x i := x i 1 end 17

63 Beispiel Wir betrachten das folgende einfache while-programm P: und zeigen {x i 0} P {x i = 0} while x i 0 do end x i := x i 1 17

64 Beispiel Wir betrachten das folgende einfache while-programm P: while x i 0 do x i := x i 1 end und zeigen {x i 0} P {x i = 0} {x i 1 0} x i := x i 1 {x i 0} [z] {x i 0 x i 0} x i := x i 1 {x i 0} [a] {x i 0} P {x i 0 x i = 0} [a] {x i 0} P {x i = 0} [w] 17

65 Beispiel Wir betrachten das folgende einfache while-programm P: while x i 0 do x i := x i 1 end und zeigen {x i 0} P {x i = 0} {x i 1 0} x i := x i 1 {x i 0} [z] {x i 0 x i 0} x i := x i 1 {x i 0} [a] {x i 0} P {x i 0 x i = 0} [a] {x i 0} P {x i = 0} wir verwenden: 1 x i 0 x i = 0 = x i = 0 2 die Schleifeninvariante x i 0 3 x i 0 x i 0 = x i 1 0 [w] 17

66 Beispiel Wir betrachten das folgende einfache while-programm P: while x i 0 do x i := x i 1 end und zeigen {x i 0} P {x i = 0} {x i 1 0} x i := x i 1 {x i 0} [z] {x i 0 x i 0} x i := x i 1 {x i 0} [a] {x i 0} P {x i 0 x i = 0} [a] {x i 0} P {x i = 0} wir verwenden: 1 x i 0 x i = 0 = x i = 0 2 die Schleifeninvariante x i 0 3 x i 0 x i 0 = x i 1 0 [w] 17

67 Beispiel Wir betrachten das folgende einfache while-programm P: while x i 0 do x i := x i 1 end und zeigen {x i 0} P {x i = 0} {x i 1 0} x i := x i 1 {x i 0} [z] {x i 0 x i 0} x i := x i 1 {x i 0} [a] {x i 0} P {x i 0 x i = 0} [a] {x i 0} P {x i = 0} wir verwenden: 1 x i 0 x i = 0 = x i = 0 2 die Schleifeninvariante x i 0 3 x i 0 x i 0 = x i 1 0 [w] 17

68 Beispiel Wir betrachten das folgende einfache while-programm P: while x i 0 do x i := x i 1 end und zeigen {x i 0} P {x i = 0} {x i 1 0} x i := x i 1 {x i 0} [z] {x i 0 x i 0} x i := x i 1 {x i 0} [a] {x i 0} P {x i 0 x i = 0} [a] {x i 0} P {x i = 0} wir verwenden: 1 x i 0 x i = 0 = x i = 0 2 die Schleifeninvariante x i 0 3 x i 0 x i 0 = x i 1 0 [w] 17

Zusammenfassung. Definition. 1 (x i ) 1 i n Sequenz von Registern x i, die natürliche Zahlen beinhalten. 2 P ein Programm. Befehle: 1 x i := x i + 1

Zusammenfassung. Definition. 1 (x i ) 1 i n Sequenz von Registern x i, die natürliche Zahlen beinhalten. 2 P ein Programm. Befehle: 1 x i := x i + 1 Zusammenfassung Zusammenfassung der letzten LVA Einführung in die Theoretische Informatik Christina Kohl Alexander Maringele Georg Moser Michael Schaper Manuel Schneckenreither Eine Registermaschine (RM)

Mehr

Definition (Modus Ponens) Wenn A, dann B. A gilt Also, gilt B

Definition (Modus Ponens) Wenn A, dann B. A gilt Also, gilt B Zusammenfassung der letzten LVA Wenn das Kind schreit, hat es Hunger Das Kind schreit Also, hat das Kind Hunger Fakt Korrektheit dieser Schlussfigur ist unabhängig von den konkreten Aussagen Einführung

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Einführung in die Theoretische Informatik Maximilian Haslbeck Fabian Mitterwallner Georg Moser David Obwaller cbr.uibk.ac.at Zusammenfassung der letzten LVA Definition Eine Grammatik G ist ein Quadrupel

Mehr

Zusammenfassung der letzten LVA. Einführung in die Theoretische Informatik. Syntax der Aussagenlogik. Inhalte der Lehrveranstaltung

Zusammenfassung der letzten LVA. Einführung in die Theoretische Informatik. Syntax der Aussagenlogik. Inhalte der Lehrveranstaltung Zusammenfassung Zusammenfassung der letzten LVA Einführung in die Theoretische Informatik Wenn das Kind schreit, hat es Hunger Das Kind schreit Also, hat das Kind Hunger Christina Kohl Alexander Maringele

Mehr

Zusammenfassung der letzten LVA. Einführung in die Theoretische Informatik. Syntax der Aussagenlogik. Inhalte der Lehrveranstaltung

Zusammenfassung der letzten LVA. Einführung in die Theoretische Informatik. Syntax der Aussagenlogik. Inhalte der Lehrveranstaltung Zusammenfassung Zusammenfassung der letzten LVA Einführung in die Theoretische Informatik Christina Kohl Alexander Maringele Georg Moser Michael Schaper Manuel Schneckenreither Institut für Informatik

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Einführung in die Theoretische Informatik Woche 5 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Zusammenfassung Zusammenfassung der letzten LV Jede binäre Operation hat maximal ein

Mehr

Einführung in die Theoretische Informatik. Inhalte der Lehrveranstaltung. Definition (Boolesche Algebra) Einführung in die Logik

Einführung in die Theoretische Informatik. Inhalte der Lehrveranstaltung. Definition (Boolesche Algebra) Einführung in die Logik Zusammenfassung Einführung in die Theoretische Informatik Woche 5 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Zusammenfassung der letzten LV Jede binäre Operation hat maximal ein

Mehr

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

Zusammenfassung. Beispiel. 1 Wir betrachten die folgende Signatur F = {,, +, 0, 1} sodass. 3 Wir betrachten die Identitäten E. 4 Dann gilt E 1 + x = 1 Zusammenfassung Zusammenfassung der letzten LVA Einführung in die Theoretische Informatik Christina Kohl Alexander Maringele eorg Moser Michael Schaper Institut für Informatik @ UIBK Wintersemester 2016

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Einführung in die Theoretische Informatik Woche 7 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Zusammenfassung Zusammenfassung der letzten LV 1 Wir betrachten die folgende Signatur

Mehr

3. Klausur Einführung in die Theoretische Informatik Seite 1 von Welches der folgenden klassischen Probleme der Informatik ist entscheidbar?

3. Klausur Einführung in die Theoretische Informatik Seite 1 von Welches der folgenden klassischen Probleme der Informatik ist entscheidbar? 3. Klausur Einführung in die Theoretische Informatik Seite 1 von 14 1. Welches der folgenden klassischen Probleme der Informatik ist entscheidbar? A. Gegeben eine kontextfreie Grammatik G. Gibt es ein

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Einführung in die Theoretische Informatik Woche 4 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Zusammenfassung Zusammenfassung der letzten LV Modus Ponens A B B A MP Axiome für

Mehr

2. Klausur Einführung in die Theoretische Informatik Seite 1 von Welche der folgenden Aussagen zur Aussagenlogik ist falsch?

2. Klausur Einführung in die Theoretische Informatik Seite 1 von Welche der folgenden Aussagen zur Aussagenlogik ist falsch? 2. Klausur Einführung in die Theoretische Informatik Seite 1 von 14 1. Welche der folgenden Aussagen zur Aussagenlogik ist falsch? A. Für jede Formel A existiert eine DNF D und eine KNF K, sodass A D K

Mehr

3. Klausur Einführung in die Theoretische Informatik Seite 1 von 14

3. Klausur Einführung in die Theoretische Informatik Seite 1 von 14 3. Klausur Einführung in die Theoretische Informatik Seite 1 von 14 1. Welche der folgenden Aussagen zur Verifikation nach Hoare ist richtig? A. Eine Formel, die sowohl vor der Ausführung des Programmes,

Mehr

1. Welche der folgenden Aussagen zur Verifikation nach Hoare ist richtig?

1. Welche der folgenden Aussagen zur Verifikation nach Hoare ist richtig? 1. Welche der folgenden Aussagen zur Verifikation nach Hoare ist richtig? A. Eine Formel, die sowohl vor der Ausführung des Programmes, wie auch nachher falsch ist, nennt man Invariante. B. Mit Hilfe der

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

Unentscheidbarkeitssätze der Logik

Unentscheidbarkeitssätze der Logik Unentscheidbarkeitssätze der Logik Elmar Eder () Unentscheidbarkeitssätze der Logik 1 / 30 Die Zahlentheorie ist nicht formalisierbar Satz (Kurt Gödel) Zu jedem korrekten formalen System der Zahlentheorie

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Einführung in die Theoretische Informatik Maximilian Haslbeck Fabian Mitterwallner Georg Moser David Obwaller cbr.uibk.ac.at Zusammenfassung der letzten LVA Definition Die Regeln des Hoare-Kalkül sind

Mehr

Logik für Informatiker

Logik für Informatiker Vorlesung Logik für Informatiker 9. Prädikatenlogik Syntax und Semantik der Prädikatenlogik Bernhard Beckert Universität Koblenz-Landau Sommersemester 2006 Logik für Informatiker, SS 06 p.1 Syntax der

Mehr

Theoretische Informatik für Wirtschaftsinformatik und Lehramt

Theoretische Informatik für Wirtschaftsinformatik und Lehramt Theoretische Informatik für Wirtschaftsinformatik und Lehramt Entscheidungsprobleme Priv.-Doz. Dr. Stefan Milius stefan.milius@fau.de Theoretische Informatik Friedrich-Alexander Universität Erlangen-Nürnberg

Mehr

1. Klausur Einführung in die Theoretische Informatik Seite 1 von 14

1. Klausur Einführung in die Theoretische Informatik Seite 1 von 14 1. Klausur Einführung in die Theoretische Informatik Seite 1 von 14 1. Welche der folgenden Aussagen zu Normalformen einer aussagenlogischen Formel A ist falsch? A. Für Formel A existiert eine KNF K, sodass

Mehr

{P} S {Q} {P} S {Q} {P} S {Q} Inhalt. Hoare-Kalkül. Hoare-Kalkül. Hoare-Tripel. Hoare-Tripel. Hoare-Tripel

{P} S {Q} {P} S {Q} {P} S {Q} Inhalt. Hoare-Kalkül. Hoare-Kalkül. Hoare-Tripel. Hoare-Tripel. Hoare-Tripel Inhalt Hoare-Kalkül Formale Verifizierung Hoare-Kalkül while-sprache Terminierung Partielle / totale Korrektheit 4.0 Hoare-Kalkül entwickelt von C.A.R. (Tony) Hoare (britischer Informatiker), 1969 formales

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

4.1 Motivation. Theorie der Informatik. Theorie der Informatik. 4.1 Motivation. 4.2 Syntax der Prädikatenlogik. 4.3 Semantik der Prädikatenlogik

4.1 Motivation. Theorie der Informatik. Theorie der Informatik. 4.1 Motivation. 4.2 Syntax der Prädikatenlogik. 4.3 Semantik der Prädikatenlogik Theorie der Informatik 3. März 2014 4. Prädikatenlogik I Theorie der Informatik 4. Prädikatenlogik I 4.1 Motivation Malte Helmert Gabriele Röger 4.2 Syntax der Prädikatenlogik Universität Basel 3. März

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

Nichtklassische Logiken

Nichtklassische Logiken Nichtklassische Logiken Peter H. Schmitt pschmitt@ira.uka.de UNIVERSITÄT KARLSRUHE Sommersemester 2004 P. H. Schmitt: Nichtklassische Logiken p.1 Inhalt Wiederholung P. H. Schmitt: Nichtklassische Logiken

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Einführung in die Theoretische Informatik Woche 10 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Zusammenfassung Zusammenfassung der letzten LV Satz Sei G = (V, Σ, R, S) eine kontextfreie

Mehr

Formale Grundlagen der Informatik 1 Kapitel 19. Syntax & Semantik

Formale Grundlagen der Informatik 1 Kapitel 19. Syntax & Semantik Formale Grundlagen der Informatik 1 Kapitel 19 & Frank Heitmann heitmann@informatik.uni-hamburg.de 23. Juni 2015 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/25 Motivation Die ist eine Erweiterung

Mehr

C. A. R. Hoare. An Axiomatic Basis for Computer Programming. Nicolas Schelp. Proseminar Assertions SS 2007

C. A. R. Hoare. An Axiomatic Basis for Computer Programming. Nicolas Schelp. Proseminar Assertions SS 2007 C. A. R. Hoare An Axiomatic Basis for Computer Programming Nicolas Schelp Proseminar Assertions SS 2007 Inhalt Motivation Kurze Biographie Der Hoare-Kalkül Axiome und Inferenzregeln des Hoare-Kalküls Die

Mehr

Logik für Informatiker

Logik für Informatiker Vorlesung Logik für Informatiker 9. Prädikatenlogik Syntax und Semantik der Prädikatenlogik Bernhard Beckert Universität Koblenz-Landau Sommersemester 2006 Logik für Informatiker, SS 06 p.1 Syntax der

Mehr

Übungsblatt 1. Lorenz Leutgeb. 30. März 2015

Übungsblatt 1. Lorenz Leutgeb. 30. März 2015 Übungsblatt Lorenz Leutgeb 30. März 205 Aufgabe. Annahmen ohne Einschränkungen: P Σ und P Γ. Per Definitionem der Reduktion: P P 2 f : Σ Γ wobei f total und berechenbar, genau so, dass: w Σ : w P f(w)

Mehr

Falls H die Eingabe verwirft, so wissen wir, dass M bei Eingabe w nicht hält. M hält im verwerfenden Haltezustand. Beweis:

Falls H die Eingabe verwirft, so wissen wir, dass M bei Eingabe w nicht hält. M hält im verwerfenden Haltezustand. Beweis: 1 Unentscheidbarkeit 2 Grundlagen der Theoretischen Informatik Till Mossakowski Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Wintersemester 2014/15 #include char *s="include

Mehr

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie 1 Einführung 2 Typ-0- und Typ-1-Sprachen 3 Berechnungsmodelle 4 Unentscheidbarkeit 5 Unentscheidbare Probleme 6 Komplexitätstheorie WS 11/12 155 Überblick Zunächst einmal definieren wir formal den Begriff

Mehr

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie 1 Einführung 2 Typ-0- und Typ-1-Sprachen 3 Berechnungsmodelle 4 Unentscheidbarkeit 5 Unentscheidbare Probleme 6 Komplexitätstheorie 139 Unentscheidbarkeit Überblick Zunächst einmal definieren wir formal

Mehr

Logik Vorlesung 7: Grundlagen Prädikatenlogik

Logik Vorlesung 7: Grundlagen Prädikatenlogik Logik Vorlesung 7: Grundlagen Prädikatenlogik Andreas Maletti 5. Dezember 2014 Überblick Inhalt 1 Motivation und mathematische Grundlagen 2 Aussagenlogik Syntax und Semantik Äquivalenz und Normalformen

Mehr

Algorithmen und Programmieren II Programmverifikation {V} P {N}

Algorithmen und Programmieren II Programmverifikation {V} P {N} Algorithmen und Programmieren II Programmverifikation {V} P {N} SS 2012 Prof. Dr. Margarita Esponda ALP II: Margarita Esponda, 11. Vorlesung, 22.5.2012 1 Assertions oder Zusicherungen Das Konzept der Zusicherungen

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Technische Universität München Fakultät für Informatik Prof. Tobias Nipkow, Ph.D. Dr. Werner Meixner, Dr. Alexander Krauss Sommersemester 2010 Lösungsblatt 11 15. Juli 2010 Einführung in die Theoretische

Mehr

Korrektheit und Hoare-Kalkül für Imperative Programme

Korrektheit und Hoare-Kalkül für Imperative Programme Korrektheit und Hoare-Kalkül für Imperative Programme Martin Wirsing in Zusammenarbeit mit Moritz Hammer und Axel Rauschmayer SS 06 Ziele Partielle und totale Korrektheit kennen lernen Die Regeln des Hoare-Kalkül

Mehr

Was bisher geschah Modellierung in Logiken: klassische Prädikatenlogik FOL(Σ, X) Spezialfall klassische Aussagenlogik AL(P)

Was bisher geschah Modellierung in Logiken: klassische Prädikatenlogik FOL(Σ, X) Spezialfall klassische Aussagenlogik AL(P) Was bisher geschah Modellierung in Logiken: klassische Prädikatenlogik FOL(Σ, X) Spezialfall klassische Aussagenlogik AL(P) Syntax Semantik Signatur, Variablen Terme (induktive Definition, Baumform) Atome

Mehr

Aussagenlogik. Übersicht: 1 Teil 1: Syntax und Semantik. 2 Teil 2: Modellierung und Beweise. Aussagenlogik H. Kleine Büning 1/25

Aussagenlogik. Übersicht: 1 Teil 1: Syntax und Semantik. 2 Teil 2: Modellierung und Beweise. Aussagenlogik H. Kleine Büning 1/25 Aussagenlogik Übersicht: 1 Teil 1: Syntax und Semantik 2 Teil 2: Modellierung und Beweise Aussagenlogik H. Kleine Büning 1/25 Einführendes Beispiel Falls Lisa Peter trifft, dann trifft Lisa auch Gregor.

Mehr

Alphabet der Prädikatenlogik

Alphabet der Prädikatenlogik Relationen und Alphabet der Das Alphabet der besteht aus Individuenvariablen Dafür verwenden wir kleine Buchstaben vom Ende des deutschen Alphabets, auch indiziert, z. B. x, y, z, x 1, y 2,.... Individuenkonstanten

Mehr

Kurseinheit 1 Einführung und mathematische Grundlagen Aussagenlogik

Kurseinheit 1 Einführung und mathematische Grundlagen Aussagenlogik Kurseinheit 1 Einführung und mathematische Grundlagen Aussagenlogik Fragen Seite Punkte 1. Was ist die Mathematische Logik? 3 2 2. Was sind die Aussagenlogik und die Prädikatenlogik? 5 4 3. Was sind Formeln,

Mehr

Logik Vorlesung 4: Horn-Logik und Kompaktheit

Logik Vorlesung 4: Horn-Logik und Kompaktheit Logik Vorlesung 4: Horn-Logik und Kompaktheit Andreas Maletti 14. November 2014 Überblick Inhalt 1 Motivation und mathematische Grundlagen 2 Aussagenlogik Syntax und Semantik Äquivalenz und Normalformen

Mehr

Einführung in die Logik (Vorkurs)

Einführung in die Logik (Vorkurs) Einführung in die Logik (Vorkurs) Jürgen Koslowski 2014-04-07 Ein Beispiel Familie A will im kommenden Jahr eine Waschmaschine, ein Auto und ein Moped anschaffen. Aber falls Herr A seinen üblichen Bonus

Mehr

Einführung in die Theoretische Informatik. Woche 1. Harald Zankl. Institut für UIBK Wintersemester 2014/2015.

Einführung in die Theoretische Informatik. Woche 1. Harald Zankl. Institut für UIBK Wintersemester 2014/2015. Einführung in die Woche 1 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Einleitung Einleitung HZ (IFI) ETI - Woche 1 8/210 Die beschäftigt sich mit der Abstraktion, Modellbildung

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Einführung in die Theoretische Informatik Woche 1 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Einleitung Einleitung HZ (IFI) ETI - Woche 1 8/210 Theoretische Informatik Theoretische

Mehr

LOOP-Programme: Syntaktische Komponenten

LOOP-Programme: Syntaktische Komponenten LOOP-Programme: Syntaktische Komponenten LOOP-Programme bestehen aus folgenden Zeichen (syntaktischen Komponenten): Variablen: x 0 x 1 x 2... Konstanten: 0 1 2... Operationssymbole: + Trennsymbole: ; :=

Mehr

Logik für Informatiker

Logik für Informatiker Logik für Informatiker 3. Prädikatenlogik Teil 1 9.06.2015 Viorica Sofronie-Stokkermans Universität Koblenz-Landau e-mail: sofronie@uni-koblenz.de 1 Rückblick: Vor- und Nachteile von Aussagenlogik + Aussagenlogik

Mehr

Kapitel 1. Aussagenlogik

Kapitel 1. Aussagenlogik Kapitel 1 Aussagenlogik Einführung Mathematische Logik (WS 2012/13) Kapitel 1: Aussagenlogik 1/17 Übersicht Teil I: Syntax und Semantik der Aussagenlogik (1.0) Junktoren und Wahrheitsfunktionen (1.1) Syntax

Mehr

Dank. Theoretische Informatik II. Teil II. Registermaschinen. Vorlesung

Dank. Theoretische Informatik II. Teil II. Registermaschinen. Vorlesung Dank Vorlesung Theoretische Informatik II Bernhard Beckert Institut für Informatik Diese Vorlesungsmaterialien basieren zum Teil auf den Folien zu den Vorlesungen von Katrin Erk (gehalten an der Universität

Mehr

Logik. Logik. Vorkurs Informatik Theoretischer Teil WS 2013/ September Vorkurs Informatik - Theorie - WS2013/14

Logik. Logik. Vorkurs Informatik Theoretischer Teil WS 2013/ September Vorkurs Informatik - Theorie - WS2013/14 Logik Logik Vorkurs Informatik Theoretischer Teil WS 2013/14 30. September 2013 Logik > Logik > logische Aussagen Logik Logik > Logik > logische Aussagen Motivation Logik spielt in der Informatik eine

Mehr

Logik Vorlesung 3: Äquivalenz und Normalformen

Logik Vorlesung 3: Äquivalenz und Normalformen Logik Vorlesung 3: Äquivalenz und Normalformen Andreas Maletti 7. November 2014 Überblick Inhalt 1 Motivation und mathematische Grundlagen 2 Aussagenlogik Syntax und Semantik Äquivalenz und Normalformen

Mehr

Lösung zur Klausur. Grundlagen der Theoretischen Informatik im WiSe 2003/2004

Lösung zur Klausur. Grundlagen der Theoretischen Informatik im WiSe 2003/2004 Lösung zur Klausur Grundlagen der Theoretischen Informatik im WiSe 2003/2004 1. Geben Sie einen deterministischen endlichen Automaten an, der die Sprache aller Wörter über dem Alphabet {0, 1} akzeptiert,

Mehr

Motivation und Geschichte. Geschichte der Logik Logik und Informatik

Motivation und Geschichte. Geschichte der Logik Logik und Informatik Motivation und Geschichte Geschichte der Logik Logik und Informatik Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 2.1 Motivation und Geschichte Geschichte der Logik 13 Aufgaben der Logik

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik 0 KIT 17.05.2010 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik nationales Forschungszentrum Vorlesung in am

Mehr

Allgemeingültige Aussagen

Allgemeingültige Aussagen Allgemeingültige Aussagen Definition 19 Eine (aussagenlogische) Formel p heißt allgemeingültig (oder auch eine Tautologie), falls p unter jeder Belegung wahr ist. Eine (aussagenlogische) Formel p heißt

Mehr

WS06/07 Referentin: Katharina Blinova. Formale Sprachen. Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven

WS06/07 Referentin: Katharina Blinova. Formale Sprachen. Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven WS06/07 Referentin: Katharina Blinova Formale Sprachen Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven 1. Allgemeines 2. Formale Sprachen 3. Formale Grammatiken 4. Chomsky-Hierarchie 5.

Mehr

Berechenbarkeit und Komplexität Vorlesung 11

Berechenbarkeit und Komplexität Vorlesung 11 Berechenbarkeit und Komplexität Vorlesung 11 Prof. Dr. Wolfgang Thomas Lehrstuhl Informatik 7 RWTH Aachen 7. Dezember 2014 Wolfgang Thomas, Informatik 7 () Vorlesung Berechenbarkeit und Komplexität 7.

Mehr

Formale Grundlagen der Informatik 1 Kapitel 17. Syntax & Semantik

Formale Grundlagen der Informatik 1 Kapitel 17. Syntax & Semantik Formale Grundlagen der Informatik 1 Kapitel 17 & Frank Heitmann heitmann@informatik.uni-hamburg.de 6. & 7. Juni 2016 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/43 Motivation Die ist eine Erweiterung

Mehr

Diskrete Strukturen. Sebastian Thomas RWTH Aachen https://www2.math.rwth-aachen.de/ds17/ Mathematische Logik

Diskrete Strukturen. Sebastian Thomas RWTH Aachen https://www2.math.rwth-aachen.de/ds17/ Mathematische Logik Diskrete Strukturen Sebastian Thomas RWTH Aachen https://www2.math.rwth-aachen.de/ds17/ Mathematische Logik Aussagen Begriff Aussage: Ausdruck, welcher entweder wahr oder falsch ist e Die RWTH Aachen hat

Mehr

Abschnitt 11: Korrektheit von imperativen Programmen

Abschnitt 11: Korrektheit von imperativen Programmen Abschnitt 11: Korrektheit von imperativen Programmen 11. Korrektheit von imperativen Programmen 11.1 11.2Testen der Korrektheit in Java Peer Kröger (LMU München) in die Programmierung WS 16/17 931 / 961

Mehr

Turing-Maschinen: Ein abstrakes Maschinenmodell

Turing-Maschinen: Ein abstrakes Maschinenmodell Wann ist eine Funktion (über den natürlichen Zahlen) berechenbar? Intuitiv: Wenn es einen Algorithmus gibt, der sie berechnet! Was heißt, eine Elementaroperation ist maschinell ausführbar? Was verstehen

Mehr

Was ist Logik? Was ist Logik? Aussagenlogik. Wahrheitstabellen. Geschichte der Logik eng verknüpft mit Philosophie

Was ist Logik? Was ist Logik? Aussagenlogik. Wahrheitstabellen. Geschichte der Logik eng verknüpft mit Philosophie Was ist Logik? Geschichte der Logik eng verknüpft mit Philosophie Begriff Logik wird im Alltag vielseitig verwendet Logik untersucht, wie man aus Aussagen andere Aussagen ableiten kann Beschränkung auf

Mehr

n 1. Erste Schritte n 2. Einfache Datentypen n 3. Anweisungen und Kontrollstrukturen n 4. Verifikation n 5. Reihungen (Arrays)

n 1. Erste Schritte n 2. Einfache Datentypen n 3. Anweisungen und Kontrollstrukturen n 4. Verifikation n 5. Reihungen (Arrays) n 1. Erste Schritte n 2. Einfache Datentypen n 3. Anweisungen und Kontrollstrukturen n 4. Verifikation n 5. Reihungen (Arrays) II.1.4. Verifikation - 1 - 4. Verifikation n Spezifikation: Angabe, was ein

Mehr

Die Prädikatenlogik erster Stufe: Syntax und Semantik

Die Prädikatenlogik erster Stufe: Syntax und Semantik Die Prädikatenlogik erster Stufe: Syntax und Semantik 1 Mathematische Strukturen und deren Typen Definition 1.1 Eine Struktur A ist ein 4-Tupel A = (A; (R A i i I); (f A j j J); (c A k k K)) wobei I, J,

Mehr

Einführung in die Logik

Einführung in die Logik Einführung in die Logik Klaus Madlener und Roland Meyer 24. April 2013 Inhaltsverzeichnis 1 Aussagenlogik 1 1.1 Syntax................................. 1 1.2 Semantik............................... 3 1.3

Mehr

Motivation. Formale Grundlagen der Informatik 1 Kapitel 17. Syntax & Semantik. Motivation - Beispiel. Motivation - Beispiel

Motivation. Formale Grundlagen der Informatik 1 Kapitel 17. Syntax & Semantik. Motivation - Beispiel. Motivation - Beispiel Motivation Formale Grundlagen der Informatik 1 Kapitel 17 & Frank Heitmann heitmann@informatik.uni-hamburg.de 6. & 7. Juni 2016 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/43 Die ist eine Erweiterung

Mehr

Syntax der Prädikatenlogik: Komplexe Formeln

Syntax der Prädikatenlogik: Komplexe Formeln Syntax der Prädikatenlogik: Komplexe Formeln Σ = P, F eine prädikatenlogische Signatur Var eine Menge von Variablen Definition: Menge For Σ der Formeln über Σ Logik für Informatiker, SS 06 p.10 Syntax

Mehr

THEORETISCHE INFORMATIK UND LOGIK

THEORETISCHE INFORMATIK UND LOGIK Prädikatenlogik als Universalsprache Die Entwicklung der Logik hat ein zentrales Motiv: Logik als eine universelle, präzise Sprache THEORETISCHE INFORMATIK UND LOGIK 15. Vorlesung: Logisches Schließen

Mehr

THEORETISCHE INFORMATIK UND LOGIK

THEORETISCHE INFORMATIK UND LOGIK THEORETISCHE INFORMATIK UND LOGIK 13. Vorlesung: Prädikatenlogik: Syntax und Semantik Markus Krötzsch Lehrstuhl Wissensbasierte Systeme TU Dresden, 1. Juni 2018 Halbzeit: Zusammenfassung und Ausblick Markus

Mehr

Theorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie

Theorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie Theorie der Informatik 17. März 2014 6. Formale Sprachen und Grammatiken Theorie der Informatik 6. Formale Sprachen und Grammatiken Malte Helmert Gabriele Röger Universität Basel 17. März 2014 6.1 Einführung

Mehr

WS 05/06 mod Verifikation

WS 05/06 mod Verifikation 3.3 Verifikation WS 05/06 mod 351 Verifikation ist der Beweis der Korrektheit eines Algorithmus relativ zu seiner Spezifikation. Die Aussagen gelten für alle Ausführungen des Algorithmus. Sie werden statisch

Mehr

Theoretische Informatik für Wirtschaftsinformatik und Lehramt

Theoretische Informatik für Wirtschaftsinformatik und Lehramt Theoretische Informatik für Wirtschaftsinformatik und Lehramt Universelle Turingmaschinen und Church sche These Priv.-Doz. Dr. Stefan Milius stefan.milius@fau.de Theoretische Informatik Friedrich-Alexander

Mehr

Berechenbarkeitstheorie 14. Vorlesung

Berechenbarkeitstheorie 14. Vorlesung 1 Berechenbarkeitstheorie Dr. Institut für Mathematische Logik und Grundlagenforschung WWU Münster WS 15/16 Alle Folien unter Creative Commons Attribution-NonCommercial 3.0 Unported Lizenz. Erinnerung

Mehr

Logik für Informatiker

Logik für Informatiker Vorlesung Logik für Informatiker 4. Aussagenlogik Syntax und Semantik der Aussagenlogik Bernhard Beckert Universität Koblenz-Landau Sommersemester 2006 Logik für Informatiker, SS 06 p.1 Syntax der Aussagenlogik:

Mehr

Akzeptierende Turing-Maschine

Akzeptierende Turing-Maschine Akzeptierende Turing-Maschine Definition: Eine akzeptierende Turing-Maschine M ist ein Sechstupel M = (X, Z, z 0, Q, δ, F ), wobei (X, Z, z 0, Q, δ) eine Turing-Maschine ist und F Q gilt. Die von M akzeptierte

Mehr

Sequentielle Programme, Hoare-Logik und Dynamische Logik

Sequentielle Programme, Hoare-Logik und Dynamische Logik Sequentielle Programme, Hoare-Logik und Dynamische Logik 170 Was ist ein SW-System mathematisch? 1. Sicht: operational Ein SW-System ist ein Automat mit Zustand, Zustandsübergängen und mit Abläufen. 2.

Mehr

Informatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung

Informatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung Informatik III Christian Schindelhauer Wintersemester 2006/07 27. Vorlesung 08.02.2007 1 Komplexitätstheorie - Platzklassen Platzkomplexität Definition Simulation mehrerer Bänder Savitchs Theorem PSPACE

Mehr

Mächtigkeit von WHILE-Programmen

Mächtigkeit von WHILE-Programmen Mächtigkeit von WHILE-Programmen Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 1 / 23 Turingmaschine (TM) M = (Q, Σ, Γ, B, q 0, q, δ) Unendliches Band... 0 c

Mehr

Turing Maschine. Thorsten Timmer. SS 2005 Proseminar Beschreibungskomplexität bei Prof. D. Wotschke. Turing Maschine SS 2005 p.

Turing Maschine. Thorsten Timmer. SS 2005 Proseminar Beschreibungskomplexität bei Prof. D. Wotschke. Turing Maschine SS 2005 p. Thorsten Timmer SS 2005 Proseminar Beschreibungskomplexität bei Prof. D. Wotschke Turing Maschine SS 2005 p. 1/35 Inhalt Einführung Formale Definition Berechenbare Sprachen und Funktionen Berechnung ganzzahliger

Mehr

! 1. Erste Schritte! 2. Einfache Datentypen! 3. Anweisungen und Kontrollstrukturen! 4. Verifikation! 5. Reihungen (Arrays) II.1.4. Verifikation - 1 -

! 1. Erste Schritte! 2. Einfache Datentypen! 3. Anweisungen und Kontrollstrukturen! 4. Verifikation! 5. Reihungen (Arrays) II.1.4. Verifikation - 1 - ! 1. Erste Schritte! 2. Einfache Datentypen! 3. Anweisungen und Kontrollstrukturen! 4. Verifikation! 5. Reihungen (Arrays) II.1.4. Verifikation - 1 - 4. Verifikation! Spezifikation: Angabe, was ein Programm

Mehr

Logik für Informatiker

Logik für Informatiker Vorlesung Logik für Informatiker 3. Aussagenlogik Syntax und Semantik der Aussagenlogik Bernhard Beckert Universität Koblenz-Landau Sommersemester 2006 Logik für Informatiker, SS 06 p.16 Syntax der Aussagenlogik:

Mehr

Informatik 3 Theoretische Informatik WS 2015/16

Informatik 3 Theoretische Informatik WS 2015/16 Probeklausur 20. November 2015 Informatik 3 Theoretische Informatik WS 2015/16 Prof. Dr. Peter Thiemann Albert-Ludwigs-Universität Freiburg Institut für Informatik Name: Matrikel-Nr.: Schreiben Sie Ihren

Mehr

Logic in a Nutshell. Christian Liguda

Logic in a Nutshell. Christian Liguda Logic in a Nutshell Christian Liguda Quelle: Kastens, Uwe und Büning, Hans K., Modellierung: Grundlagen und formale Methoden, 2009, Carl Hanser Verlag Übersicht Logik - Allgemein Aussagenlogik Modellierung

Mehr

Einige Grundlagen der Komplexitätstheorie

Einige Grundlagen der Komplexitätstheorie Deterministische Polynomialzeit Einige Grundlagen der Komplexitätstheorie Ziel: NP-Vollständigkeit als ressourcenbeschränktes Analagon zur RE-Vollständigkeit. Komplexitätstheorie untersucht den Ressourcenbedarf

Mehr

Einführung in die Theoretische Informatik Tutorium IX

Einführung in die Theoretische Informatik Tutorium IX Einführung in die Theoretische Informatik Tutorium IX Michael R. Jung 16. & 17. 12. 2014 EThI - Tutorium IX 1 1 Entscheidbarkeit, Semi-Entscheidbarkeit und Unentscheidbarkeit 2 EThI - Tutorium IX 2 Definitionen

Mehr

TU7 Aussagenlogik II und Prädikatenlogik

TU7 Aussagenlogik II und Prädikatenlogik TU7 Aussagenlogik II und Prädikatenlogik Daniela Andrade daniela.andrade@tum.de 5.12.2016 1 / 32 Kleine Anmerkung Meine Folien basieren auf den DS Trainer von Carlos Camino, den ihr auf www.carlos-camino.de/ds

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 18: Logik Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/35 Überblick Formeln in Prädikatenlogik erster Stufe Theorien und

Mehr

Grundlagen der Programmierung (Vorlesung 24)

Grundlagen der Programmierung (Vorlesung 24) Grundlagen der Programmierung (Vorlesung 24) Ralf Möller, FH-Wedel Vorige Vorlesung Anwendung im Bereich Compilerbau Inhalt dieser Vorlesung Turing-Maschinen Berechenbarkeitstheorie, Halteproblem Lernziele

Mehr

De Morgan sche Regeln

De Morgan sche Regeln De Morgan sche Regeln Durch Auswerten der Wahrheitswertetabelle stellen wir fest, dass allgemeingültig ist; ebenso (p q) p q (p q) p q. Diese beiden Tautologien werden als die De Morgan schen Regeln bezeichnet,

Mehr

Logische und funktionale Programmierung

Logische und funktionale Programmierung Logische und funktionale Programmierung Vorlesung 2: Prädikatenkalkül erster Stufe Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca csacarea@cs.ubbcluj.ro 14. Oktober 2016 1/38 DIE INTERPRETATION

Mehr

Klausur Formale Systeme Fakultät für Informatik WS 2015/2016

Klausur Formale Systeme Fakultät für Informatik WS 2015/2016 Klausur Formale Systeme Fakultät für Informatik WS 2015/2016 Prof. Dr. Bernhard Beckert 4. März 2016 Vorname: Name: Matrikel-Nr.: Platz-Nr.: Code: **Vorname** **Familienname** **Matr.-Nr.** **Hörsaal**

Mehr

Logik. Studiengang. Informatik und. Technoinformatik SS 02. Prof. Dr. Madlener Universität Kaiserslautern. Vorlesung: Mi

Logik. Studiengang. Informatik und. Technoinformatik SS 02. Prof. Dr. Madlener Universität Kaiserslautern. Vorlesung: Mi Logik Studiengang Informatik und Technoinformatik SS 02 Vorlesung: Mi 11.45-13.15 52/207 Prof. Dr. Madlener Universität Kaiserslautern Informationen www-madlener.informatik.uni-kl.de/ag-madlener/teaching/ss2002/

Mehr

Aussagenlogik. (MAF2) MAF(I, t) = t und MAF(I, f ) = f. Die Semantik aussagenlogischer Formeln ist durch die Funktion

Aussagenlogik. (MAF2) MAF(I, t) = t und MAF(I, f ) = f. Die Semantik aussagenlogischer Formeln ist durch die Funktion 43 Vergleiche mit MBA! (MAF4) MAF(I, (F G)) = MAF(I, F) MAF(I, G), wobei die zum Symbol gehörende Funktion ist. (MAF3) MAF(I, F) = MAF(I, F) (MAF2) MAF(I, t) = t und MAF(I, f ) = f (MAF1) MAF(I, A) = I(A),

Mehr

Logik (Prof. Dr. Wagner FB AI)

Logik (Prof. Dr. Wagner FB AI) Logik (Prof. Dr. Wagner FB AI) LERNZIELE: Über die Kenntnis und das Verständnis der gegebenen Definitionen hinaus verfolgt dieser Teil der Lehrveranstaltung die folgenden Lernziele: Bei gegebenen sprachlichen

Mehr

Motivation. Formale Grundlagen der Informatik 1 Kapitel 19. Syntax & Semantik. Motivation - Beispiel. Motivation - Beispiel

Motivation. Formale Grundlagen der Informatik 1 Kapitel 19. Syntax & Semantik. Motivation - Beispiel. Motivation - Beispiel Motivation Formale Grundlagen der Informatik 1 Kapitel 19 & Die ist eine Erweiterung der Aussagenlogik. Sie hat eine größere Ausdrucksstärke und erlaub eine feinere Differenzierung. Ferner sind Beziehungen/Relationen

Mehr

Logik für Informatiker

Logik für Informatiker Logik für Informatiker 3. Prädikatenlogik Teil 3 12.06.2012 Viorica Sofronie-Stokkermans Universität Koblenz-Landau e-mail: sofronie@uni-koblenz.de 1 Semantik Semantik geben bedeutet für logische Systeme,

Mehr

Theoretische Informatik und Logik Übungsblatt 4 (SS 2017) Lösungen

Theoretische Informatik und Logik Übungsblatt 4 (SS 2017) Lösungen Theoretische Informatik und Logik Übungsblatt 4 (SS 2017) en Aufgabe 4.1 Für jede der folge Formeln ist folges zu tun: Wenn die Formel gültig oder unerfüllbar ist, so beweisen Sie dies mit dem Tableau-Kalkül.

Mehr

Logik Vorlesung 2: Semantik der Aussagenlogik

Logik Vorlesung 2: Semantik der Aussagenlogik Logik Vorlesung 2: Semantik der Aussagenlogik Andreas Maletti 24. Oktober 2014 Überblick Inhalt 1 Motivation und mathematische Grundlagen 2 Aussagenlogik Syntax und Semantik Äquivalenz und Normalformen

Mehr

THEORETISCHE INFORMATIK UND LOGIK

THEORETISCHE INFORMATIK UND LOGIK THEORETISCHE INFORMATIK UND LOGIK 13. Vorlesung: Prädikatenlogik: Syntax und Semantik Markus Krötzsch Lehrstuhl Wissensbasierte Systeme TU Dresden, 26. Mai 2017 Komplexität und Spiele NP ist eine typische

Mehr