Was ist Model Checking?

Größe: px
Ab Seite anzeigen:

Download "Was ist Model Checking?"

Transkript

1 Was ist Model Checking? 1 Model checking is an automatic technique for verifying correctness properties of safety-critical reactive systems [Clarke, Schlingloff: Model Checking, in Handbook of Automated Reasoning, Band II, S , 2001] Erläuterung: Reaktives System Korrektheitseigenschaften Verifikation Automatische Technik Sicherheitskritisch 1

2 Was ist Model Checking? 1 Model checking is an automatic technique for verifying correctness properties of safety-critical reactive systems Reaktives System: besteht aus Komponenten, die miteinander und der Systemumgebung interagieren z.b. Schaltungen, Betriebssysteme, World-Wide Web, Protokolle System muss nicht terminieren im Gegensatz zu funktional (oder transformationell) beschreibbaren Systemen mit klarem Ein/Ausgabe-Verhalten 2

3 Was ist Model Checking? 1 Model checking is an automatic technique for verifying correctness properties of safety-critical reactive systems Korrektheitseigenschaften: i.d. Regel temporale Eigenschaften des gewünschten Verhaltens ein System erfüllt diese Eigenschaften, wenn jeder Ablauf des Systems sie erfüllt diese Eigenschaften werden in einer temporalen Logik beschrieben als sog. Kripke-Modell Systemkorrektheit = Wahrheit von logischen Formeln in Modellen (daher der Name Model Checking ) 3

4 Was ist Model Checking? 1 Verifikation: Model checking is an automatic technique for verifying correctness properties of safety-critical reactive systems formales Verfahren, benötigt: Modellierungssprache zur Systembeschreibung: System wird als (endlicher) Zustandsübergangsgraph modelliert Spezifikationssprache zur Formulierung der Eigenschaften: Eigenschaften werden in einer temporalen Aussagenlogik spezifiziert Verfahren (Kalkül) für den Verifikationsprozess: Suchverfahren, das den Zustandsübergangsgraph exploriert und die Eigenschaften in jedem Zustand überprüft 4

5 Was ist Model Checking? 1 Model checking is an automatic technique for verifying correctness properties of safety-critical reactive systems Automatische Technik: im Gegensatz zu Verfahren wie z.b. Interaktives Theorembeweisen: allgemeinerer, ausdrucksstärkerer Ansatz, benötigt aber Interaktionen hochqualifizierter menschlicher Experten Eigentlicher Verifikationsprozess ist voll automatisiert und prüft i.a. alle möglichen Systemzustände (setzt Endlichkeit des Zustandsraumes voraus) Verifikationsverfahren terminiert (theoretisch) immer und zeigt, ob das Systemmodell die Eigenschaft erfüllt; falls nicht, liefert das Verfahren ein Gegenbeispiel 5

6 Was ist Model Checking? 1 Model checking is an automatic technique for verifying correctness properties of safety-critical reactive systems Sicherheitskritisch: Sicherheit im Sinne von safety (nicht security ) Die Anzahl und die Komplexität sicherheitskritischer Anwendungen nimmt ständig zu Fehler in solchen Anwendungen sind teuer (z.b. ARIANE-5, Pentium) 6

7 Was ist Model Checking? 1 Model checking is an automatic technique for verifying correctness properties of safety-critical reactive systems [Clarke, Schlingloff: Model Checking, in Handbook of Automated Reasoning, Band II, S , 2001] Erläuterung: Reaktives System Korrektheitseigenschaften Verifikation Automatische Technik Sicherheitskritisch 7

8 Rechnergestützte ( computer-aided ) Verifikation 2 Allgemeiner formaler Ansatz zur Verifikation: Bildung eines mathematischen Modells des Systems Korrektheitsaussage ist eine mathematisch beweisbare oder widerlegbare Behauptung Alternative Ansätze zur formalen Verifikation: Testen Simulation bieten keine Korrektheitsgarantie und sind u.u. nur eingeschränkt anwendbar 8

9 Bedeutung der formalen Verifikation 3 Zunehmende Verbreitung sicherheitskritischer HW und SW-Systeme: Beispiele: Elektronischer Handel, Telefonnetze, Luftverkehrskontrolle, Medizinische Instrumente, Agentensysteme, Autonome Systeme,... Erhöhte Sicherheitsstandards (z.t. vom Gesetzgeber) Haftungsproblematik Zunehmende Komplexität der Systeme: Vergrösserung der Wahrscheinlichkeit subtiler Fehler Testen und Simulation reichen nicht mehr aus und sind zu zeitaufwendig Grosse Menge an Verifikationsaufgaben erfordert automatische Unterstützung 9

10 Methoden der formalen Verifikation 4 Model Checking-Paradigma vs. Interaktives Theorembeweisen: Verifikations-Aufgaben werden in einer möglichst ausdrucksstarken Sprache formuliert (z.b. Logik höherer Ordnung) Experte führt einen mathematischen Beweis der Korrektheit unter Zuhilfenahme eines interaktiven Beweisers, der die vorgegebenen Schritte des Experten auf Korrektheit überprüft, leichte Teilaufgaben mit Hilfe vorgegebener Heuristiken (Taktiken) zu lösen versucht, aber i.a. unvollständig ist 10

11 Methodologie der Verifikation beim Model Checking 5 Abstraktes Modell Spezifikation Modifiziere Verifikationstool Teste nächste Gegenbeispiel Korrektheit 11

12 Ein Beispiel aus der Anwendung 6 Futurebus+ Protokoll zur Cache-Kohärenz (IEEE 1994) Sichert Konsistenz der Daten in hierarchischen Systemen aus vielen Prozessoren und Caches, die durch Busse verbunden sind Grundidee der Kohärenzsicherung: Alle Caches beobachten alle Bus-Transaktionen Zur Performanzsteigerung ist Splitten von Transaktionen erlaubt, d.h.: Beenden einer Transaktion kann verzögert und Bus freigegeben werden Zwischenzeitlich Ausführung lokaler Aktionen Zur Beendigung der Transaktion explizite Meldung an Bus 12

13 Verifikation des Futurebus+ Protokolls 7 Automatische Verifikation mit Model Checker SMV Standard spezifiziert mögliche Zustände der Cache-Daten in jedem Prozessor und den Zustandswechsel in jeder Transaktion Besteht aus ca. 300 sog. Attributen, d.h. im Wesentlichen: Boolesche Variablen und Regeln zu ihrer Modifikation Modellierung des Problems in SMV: zur Formulierung der Attribute ca Codezeilen in SMV-Sprache Formulierung benützt Abstraktionen SMV erstellt automatisch interne Repräsentation des Modells (BDDs) Korrektheitseigenschaften formuliert in temporaler Logik (CTL) SMV findet automatisch Fehler im Standard 13

14 Fehlerszenario im Futurebus+ Protokoll 8 P 1 Bus P 2 invalid read-shared invalid data1 shared-unmod data1 exclusive data2 exclusive invalid invalidate data1 data1 data1 data2 read-mod data1 invalid invalid data1 shared-unmod Behebung des Fehlers: P 1 muss in Zustand shared-unmod gehen, wenn er die read-mod- Transaktion splitted 14

15 Anwendungen des Model Checking 9 Hardware-Verifikation Schaltungen, Pipelines, und Protokolle Verwendung als Debugging-Werkzeug Interne Verifikations-Gruppen in Firmen wie ATT, Fujitsu, Lucent, IBM, Intel, Motorola, Siemens Passt zum Design-Ablauf: Simulation, Synthese, Verifikation Software-Verifikation Modellierung auf höherer Abstraktionsebene eher unüblich Anwendungen: Protokolle, Telekommunikation Kontrollsysteme Beginnende Anwendungen: Luftfahrtkontrolle, Robotik 15

16 Beschränkungen des Model Checking 10 Geeignet für Kontroll-intensive Anwendungen mit interessanten Interaktionen zwischen Komponenten Komplexitätsproblematik für grössere Anwendungen: Problemklassen u.u. NP-hart, PSPACE-hart, EXPTIME-hart Falsifikation anstatt Verifikation: liefert Fehlerdiagnose aber keinen nachprüfbaren Beweis der Korrektheit (Problem der Korrektheit des Model Checkers) Allgemeine Modellierungsproblematik: Nicht das System, sondern sein Modell wird verifiziert Modellierungsproblematik für nicht als endliche Zustandssysteme beschreibbare Anwendungen: Abstraktion nicht automatisch 16

17 Modellierung reaktiver Syteme 11 Hauptziele der Modellierung: Kontrolle und Interaktion keine komplexen Datenstrukturen, keine aufwendige Datenmanipulation explizite Konstrukte für Nichtdeterminismus Modellierung von System und Umgebung Modellierung auf verschiedenen Abstraktionsebenen Einfache Operatoren und präzise mathematische Semantik Mathematische Modellierungswerkzeuge ω-automaten Temporale Logik 17

18 Korrektheitsanforderungen an reaktive Syteme 12 Zwei Haupttypen von Korrektheitsanforderungen Universeller Typus: Ein bestimmter Zustand tritt nie auf Beispiel: Niemals gleichzeitig grün für zwei Ampeln auf kreuzenden Strassen Existenzieller Typus: Ein bestimmter Zustand wird schliesslich immer erreicht Beispiel: Jede intakte Ampel schaltet nach endlicher Zeit auf grün. 18

19 Aussagenlogik 13 Syntax der Aussagenlogik Gegeben eine Menge P von Aussagenvariablen. Die (Formeln der) Aussagenlogik für P sei(en) definiert durch: P L(P) := P (P L P L) Andere Konnektive ausser und seien wie üblich als Abkürzungen definiert: A := (A ), :=, A B := ( A B), A B := ( A B), A B := ((A B) (B A)). Die Präzedenz der Operatoren sei wie folgt festgelegt:,,,,. Evtl. werden Klammern eingespart und der Parameter P. Beispiel: stack1 is empty stack1 is empty stack2 is empty 19

20 Semantik der Aussagenlogik 14 Interpretation Gegeben eine Aussagenlogik P L(P). Eine Interpretation für P L(P) ist ein Paar U, ι wobei das Universum U = {true, false} und die Belegung ι eine Abbildung ι : P U ist. Fortsetzung einer Interpretation auf Formeln Induktiv definiert wie folgt: I erfüllt p P, geschrieben I = p, gdw ι(p) = true, I =, I = (A B) gdw I = A oder I = B. 20

21 Bedeutung der Aussagenlogik 15 Zentrale Rolle in der Komplexitätstheorie Erfüllbarkeitsproblem ist NP-vollständig. Dennoch gibt es heute leistungsfähige Entscheidungsverfahren Wichtig als Problem-Spezifikationssprache Für Hardware-Verifikation, Planungsprobleme Zunehmend für weitere Bereiche via effizienter Übersetzungsverfahren Für das Model Checking Erfüllung einer Formel durch eine Interpretation ist effizient entscheidbar Reine Aussagenlogik reicht i.a. nicht zur Modellierung reaktiver Systeme 21

22 Prädikatenlogik für Transitionssysteme 16 Explizite Modellierung von Transitionssystemen Syntax der Prädikatenlogik für Transitionssysteme Erweiterung der aussagenlogischen Variablen um eine Argumentstelle für Zeitpunkte, explizite Beschreibung von Zustandsübergängen Gegeben eine Menge P von 1-stelligen Prädikaten, eine Menge T von Zustandsvariablen, eine Menge R von 2-stelligen Transitionsprädikaten, und sei R + = R {, <, =}. Die (Formeln der) Prädikatenlogik für Transitionssysteme für P, T und R sei(en) definiert durch: F OL(P, T, R) := P(T ) (F OL F OL) R + (T, T ) T F OL Analoge Abkürzungen wie in der Aussagenlogik, evtl. Infixnotation, sowie ta := t A, t t := t < t t = t, etc. 22

23 Prädikatenlogik für Transitionssysteme 17 Semantik der Prädikatenlogik für Transitionssysteme Gegeben eine Prädikatenlogik für Transitionssysteme F OL(P, T, R). Interpretation ist ein Paar U, ι mit Universum U: nichtleere Menge von Zeitpunkten Belegung ι ist eine Funktion mit folgenden Eigenschaften: für alle p P : ι(p) U, für alle R R : ι(r) U U, ι(=) := { s, s s U}, die Gleichheit, ι( ) := {ι(r) R R}, die Transitionsrelation, ι(<) ist die transitive Hülle von ι( ), die Erreichbarkeitsrelation. Weiterhin sei V : T U, eine Variablenzuweisung. Im Model Checking: I, V, hier auch geschrieben: I V, heisst Modell 23

24 Prädikatenlogik für Transitionssysteme 18 Fortsetzung einer Interpretation und Variablenzuweisung auf Formeln Induktiv definiert wie folgt: I V erfüllt p(t) P, geschrieben I V = p(t), gdw V(t) ι(p), I V =, I V = (A B) gdw I V = A oder I V = B, I V = R(t 0, t 1 ) gdw V(t 0 ), V(t 1 ) ι(r), I V = ta gdw es ein V gibt, das sich von V höchstens in t unterscheidet und I V = A gilt; I erfüllt A, geschrieben I = A, gdw für alle V gilt: I V = A. Wenn I V = A und A eine geschlossene Formel ist, dann gilt: I = A. Wenn I = A und t 1,..., t n die freien Variablen in A sind, dann gilt: I = t 1 t n A. 24

25 Prädikatenlogik für Transitionssysteme 19 Beispiele für Formeln der Prädikatenlogik für Transitionssysteme 1. stack is empty(t 0 ) t 1 (put(t 0, t 1 ) stack is empty(t 1 )) Auf den leeren Stack kann etwas gelegt werden. 2. t 1 ((t 0 t 1 request(t 1 )) t 2 (t 1 < t 2 acknowledge(t 2 ))) Jede Anfrage wird irgendwann beantwortet. 3. t 1 ((t 0 t 1 request(t 1 )) t 2 (t 1 < t 2 acknowledge(t 2 )) t 3 ((t 1 < t 3 t 3 < t 2 ) request(t 3 )))) Keine Anfrage wird gelöscht, bevor sie beantwortet ist. 25

26 Prinzip des Model Checking 20 Formale Repräsentation des Verhaltens eines Transitionssystems als Modell (I V ) einer logischen Sprache L (z.b. der Prädikatenlogik für Transitionssysteme) Formale Repräsentation der Eigenschaften eines Transitionssystems als Formel A der Sprache L (z.b. der Prädikatenlogik für Transitionssysteme) Formales Überprüfen einer Eigenschaft des Transitionssystems Formales prüfen, ob das Modell die Formel A erfüllt: I V = A? Falls das Universum U des Modells endlich ist, lässt sich aus der Definition der Semantik direkt ein Entscheidungsverfahren gewinnen. 26

27 Modellierung eines Ampel-Verkehrs-Systems 21 1-stellige Zustandsprädikate: P = {ampel rot, ampel gruen, verkehr f liesst, verkehr steht} 2-stellige Transitionsprädikate: R = {ampel schaltet, verkehrsf luss wechselt} System-Modell als Transitionsgraph ampel rot verkehr fliesst s 1 s 2 verkehrsfluss wechselt ampel rot verkehr steht ampel schaltet ampel schaltet ampel gruen verkehr fliesst s ampel gruen 4 verkehrsfluss wechselt s 3 verkehr steht 27

28 Interpretation I = U, ι des Ampel-Verkehrs-Systems 22 ampel rot verkehr fliesst s 1 s 2 verkehrsfluss wechselt ampel rot verkehr steht ampel schaltet ampel schaltet ampel gruen verkehr fliesst s ampel gruen 4 verkehrsfluss wechselt s 3 verkehr steht Universum U = {s 1, s 2, s 3, s 4 } Belegung ι:ι(ampel rot) = {s 1, s 2 }, ι(ampel gruen) = {s 3, s 4 }, ι(verkehr steht) = {s 2, s 3 }, ι(verkehr fliesst) = {s 1, s 4 }, ι(ampel schaltet) = { s 2, s 3, s 4, s 1 }, ι(verkehrsfluss wechselt) = { s 1, s 2, s 3, s 4 } 28

29 Eigenschaften des Ampel-Verkehrs-Systems 23 Beispiele für Systemspezifikationen und ihre Verifikation 1. Die Ampel steht (immer) entweder auf rot oder auf grün. A = t(ampel rot(t) ampel gruen(t)) Erfüllt das System die Eigenschaft, d.h. gilt I = A? Beweis: I = A gdw für alle Variablenzuweisungen V für U gilt: I V = (ampel rot(t) ampel gruen(t)) gdw für alle V gilt: entweder V(t) ι(ampel rot) oder V(t) ι(ampel gruen), d.h. gdw ι(ampel rot) ι(ampel gruen) = U und ι(ampel rot) ι(ampel gruen) = 29

30 Eigenschaften des Ampel-Verkehrs-Systems Die Ampel steht (von jedem Zustand aus) irgendwann auf grün. A = t t (t t ampel gruen(t )) Beweis: I = A gdw für alle Variablenzuweisungen V für U gilt: I V = A = t (t t ampel gruen(t )); Fall 1 (von 4): V(t) = s 1 : I V = A gdw es gibt ein V mit V (v) = V(v) für alle v t und I V = (t t ampel gruen(t )); wähle ein solches V mit z.b. V (t ) = s 3 ; dann gilt: (i) V (t), V (t ) ι( ) und damit I V = (t t ) und (ii) I V = ampel gruen(t ); Damit gilt die Behauptung für V(t) = s 1. Die anderen Fälle gehen analog. 30

31 Beziehungen zwischen Spezifikationsformeln 25 Beziehungen zwischen F OL-Formeln Gegeben zwei Formeln A und B einer Prädikatenlogik für Transitionssysteme (F OL(P, T, R)): A impliziert B, geschrieben A = B, gdw jedes Modell, das A erfüllt, auch B erfüllt, A impliziert B schwach gdw jede Interpretation, die A erfüllt, auch B erfüllt, A und B heissen äquivalent gdw sie sich gegenseitig implizieren, A und B heissen schwach äquivalent gdw sie sich gegenseitig schwach implizieren. 31

32 Beziehungen zwischen Spezifikationsformeln A = t t (t t ampel gruen(t )) B = t (t t ampel gruen(t )) A impliziert B, aber B impliziert A lediglich schwach. A und B sind nicht äquivalent, aber schwach äquivalent. Interpretation des Ampel-Verkehrs-Systems, die A und B erfüllt: ampel rot verkehr fliesst s 1 s 2 verkehrsfluss wechselt ampel rot verkehr steht ampel schaltet ampel schaltet ampel gruen verkehr fliesst s ampel gruen 4 verkehrsfluss wechselt s 3 verkehr steht 32

33 Beziehungen zwischen Spezifikationsformeln A = t t (t t ampel gruen(t )) B = t (t t ampel gruen(t )) A impliziert B, aber B impliziert A lediglich schwach. A und B sind nicht äquivalent, aber schwach äquivalent. Interpretation des Ampel-Verkehrs-Systems, die weder A noch B erfüllt: ampel rot verkehr fliesst s 1 s 2 verkehrsfluss wechselt ampel rot verkehr steht ampel schaltet ampel gruen verkehr fliesst s ampel gruen 4 verkehrsfluss wechselt s 3 verkehr steht 33

34 Beziehungen zwischen Spezifikationsformeln A = t t (t t ampel gruen(t )) B = t (t t ampel gruen(t )) A impliziert B, aber B impliziert A lediglich schwach. A und B sind nicht äquivalent, aber schwach äquivalent. Modell des Ampel-Verkehrs-Systems, das B, aber nicht A erfüllt: ampel rot verkehr fliesst s 1 s 2 verkehrsfluss wechselt ampel rot verkehr steht ampel schaltet ampel gruen verkehr fliesst s ampel gruen 4 verkehrsfluss wechselt s 3 verkehr steht V(t) = s 3 34

35 Beziehungen zwischen Spezifikationsformeln t t 1 t 2 (t t 1 ampel rot(t 1 ) t 1 t 2 ampel schaltet(t 1, t 2 ) ampel gruen(t 2 )) t t 1 t 2 (t t 1 ampel rot(t 1 ) ampel schaltet(t 1, t 2 ) ampel gruen(t 2 )) In der Prädikatenlogik für Transitionssysteme sind beide Formeln äquivalent. Beweis: t 1 t 2 ampel schaltet(t 1, t 2 ) und ampel schaltet(t 1, t 2 ) sind äquivalent, und in der Prädikatenlogik erhält die Ersetzung von äquivalenten Teilformeln die Äquivalenz. 35

36 Die Bedeutung der Sprache F OL 28 Eigenschaften und Rolle der Sprache F OL relativ ausdrucksstarke Modellierungs- und Spezifikationssprache dafür hohe Komplexität der Verifikation geeignet als Vergleichsbasis für die i.a. ausdrucksschwächeren temporalen Logiken hier auch benutzt zur Veranschaulichung von Modellierungs- und Spezifikationsproblemen 36

37 Ein nichtdeterministisches Ampel-Verkehrs-Systems 29 ampel rot verkehr fliesst s 1 s 2 verkehrsfluss wechselt ampel rot verkehr steht ampel schaltet ampel schaltet ampel gruen verkehr fliesst s ampel gruen 4 verkehrsfluss wechselt s 3 verkehr steht Universum U = {s 1, s 2, s 3, s 4 } Belegung ι:ι(ampel rot) = {s 1, s 2 }, ι(ampel gruen) = {s 3, s 4 }, ι(verkehr steht) = {s 2, s 3 }, ι(verkehr fliesst) = {s 1, s 4 }, ι(ampel schaltet) = { s 2, s 3, s 4, s 1 }, ι(verkehrsfluss wechselt) = { s 1, s 2, s 3, s 4 } 37

38 Ein nichtdeterministisches Ampel-Verkehrs-Systems 29 ampel rot verkehr fliesst s 1 s 2 verkehrsfluss wechselt ampel rot verkehr steht ampel schaltet ampel schaltet ampel gruen verkehr fliesst s ampel gruen 4 verkehrsfluss wechselt s 3 verkehr steht Universum U = {s 1, s 2, s 3, s 4 } Belegung ι:ι(ampel rot) = {s 1, s 2 }, ι(ampel gruen) = {s 3, s 4 }, ι(verkehr steht) = {s 2, s 3 }, ι(verkehr fliesst) = {s 1, s 4 }, ι(ampel schaltet) = { s 2, s 3, s 4, s 1, s 3, s 2, s 1, s 4 }, ι(verkehrsfluss wechselt) = { s 1, s 2, s 3, s 4 } 38

39 Dynamik von Transitionssystemen 30 Darstellung deterministischen Verhaltens Das zeitliche Verhalten eines deterministischen Transitionssystems mit einem Anfangszustand lässt sich als Funktion w : N U darstellen, wobei N = N oder ein endliches Anfangsstück von N. Dynamik deterministischer Ampel-Verkehrs-Systeme: Ursprüngliches System mit Anfangszustand s 1 : s 1 s s 2 3 s 4 s 1 s s 2 3 s 4 System von S. 27 (unten) mit Anfangszustand s 3 : s 3 s s 4 1 s 2 39

40 Dynamik nichtdeterministischer Transitionssysteme 31 Darstellung nichtdeterministischen Verhaltens Das zeitliche Verhalten eines beliebigen (nichtdeterministischen) Transitionssystems mit einem Anfangszustand lässt sich als mit Zuständen markierter (u.u. unendlicher) Baum darstellen. Der Berechnungsbaum entsteht durch Auffalten des Transitionsgraphen. Intendierte Systemeigenschaften können Zustände oder ganze Pfade eines Berechnungsbaumes betreffen, z.b.: 1. Es ist (vom Anfangszustand aus) ein Zustand erreichbar, in dem die Ampel grün ist und der Verkehr fliesst. 2. Von jedem erreichbaren Zustand, in dem die Ampel rot ist, ist ein Zustand erreichbar, in dem die Ampel grün ist. 3. Es gibt einen Pfad, auf dem die Ampel immer grün ist bis sie rot ist. 4. Auf jedem Pfad kommt unendlich oft ein Zustand vor, in dem die Ampel grün ist (der Verkehr fliesst). 40

41 Dynamik nichtdeterministischer Transitionssysteme 32 Dynamik des nichtdeterministischen Ampel-Verkehrs-Systems von S. 38 (unten) mit Anfangszustand s 1 : s 1 s 4 s 2 s 3 s 1 s 2 s 4 Transitionsgraph Berechnungsbaum Welche der Eigenschaften erfüllt das System? s 3 s 1 s 2 s 2 s 4 s 4 41

42 Dynamik nichtdeterministischer Transitionssysteme 32 Dynamik des nichtdeterministischen Ampel-Verkehrs-Systems von S. 38 (unten) mit Anfangszustand s 1 : s 1 s 4 s 2 s 3 Transitionsgraph s 1 s 2 s 4 s 3 s 1 Berechnungsbaum s 2 1. Es ist (vom Anfangszustand aus) ein Zustand erreichbar, in dem die Ampel grün ist und der Verkehr fliesst. s 2 s 4 s 4 42

43 Dynamik nichtdeterministischer Transitionssysteme 32 Dynamik des nichtdeterministischen Ampel-Verkehrs-Systems von S. 38 (unten) mit Anfangszustand s 1 : s 1 s 4 s 2 s 3 Transitionsgraph s 1 s 2 s 4 s 3 s 1 Berechnungsbaum s 2 2. Von jedem erreichbaren Zustand, in dem die Ampel rot ist, ist ein Zustand erreichbar, in dem die Ampel grün ist. s 2 s 4 s 4 43

44 Dynamik nichtdeterministischer Transitionssysteme 32 Dynamik des nichtdeterministischen Ampel-Verkehrs-Systems von S. 38 (unten) mit Anfangszustand s 1 : s 1 s 4 s 2 s 3 Transitionsgraph s 1 s 2 s 4 s 3 s 1 Berechnungsbaum s 2 3. Es gibt einen Pfad, auf dem die Ampel immer grün ist bis sie rot ist. gibt einen Pfad, auf dem die Ampel immer grün ist bis si s 2 s 4 s 4 44

45 Dynamik nichtdeterministischer Transitionssysteme 32 Dynamik des nichtdeterministischen Ampel-Verkehrs-Systems von S. 38 (unten) mit Anfangszustand s 1 : s 1 s 4 s 2 s 3 Transitionsgraph s 1 s 2 s 4 s 3 s 1 Berechnungsbaum s 2 4a. Auf jedem Pfad kommt unendlich oft ein Zustand vor, in dem die Ampel grün ist. s 2 s 4 s 4 45

46 Dynamik nichtdeterministischer Transitionssysteme 32 Dynamik des nichtdeterministischen Ampel-Verkehrs-Systems von S. 38 (unten) mit Anfangszustand s 1 : s 1 s 4 s 2 s 3 Transitionsgraph s 1 s 2 s 4 s 3 s 1 Berechnungsbaum s 2 4b. Auf jedem Pfad kommt unendlich oft ein Zustand vor, in dem der Verkehr fliesst. s 2 s 4 s 4 46

47 Modellierung asynchroner Systeme 33 Asynchrone Systeme: Systeme aus Komponenten, die unabhängig voneinander Zustandsänderungen bewirken können Modellierungsparadigma Interleaving-Semantik: Zu jeder Zeit ändert sich genau eine Komponente Beispiel: Jede Komponente ist im 0 oder 1-Zustand. Jede Komponente kann den Zustand der anderen um den eigenen Wert erhöhen (+) oder vermindern ( ) modulo 2. k k 3 k 2 47

48 Kombinatorisches Grundproblem des Model Checking 34 Explosion des Zustandsraumes Transitionsgraph bzw. Modell simuliert nicht direkt die Komponenten und Interaktionen des modellierten Systems, sondern die gesamten Systemzustände und deren Änderung Hinzufügung von Komponenten lässt Zustandsraum explodieren k k 3 k 2 k k 2 k 4 + k 3 48

49 Tableaus für die Logik F OL 35 Sei I, V ein Modell mit Universum U = {t 1,..., t n } und F eine Formel der Prädikatenlogik für Transitionssysteme Bearbeite einen mit Erfülltheitsproblemen markierten Baum Markiere Wurzel des Baumes mit dem Problem I, V = A Je nach dominierendem logischem Symbol, dem Typ der Formel ( oder ), und der Beziehung ( = oder =) expandiere den Baum rekursiv nach den folgenden Auswertungs- bzw. Dekompositionsregeln Propagiere die Werte zur Wurzel zurück Arbeite den Baum im Tiefenverfahren durch (Backtracking) 49

50 Tableau-Regeln für die Logik F OL 36 Regel für quantorenfreie Formeln Falls die Formel keine Quantoren enthält, prüfe aussagenlogisch, ob das momentane Modell die Formel erfüllt oder nicht Regeln für das Konnektiv Positive -Regel: Negative -Regel: I, V = (A B) I, V = A oder I, V = B gdw I, V = (A B) I, V = A und I, V = B gdw 50

51 Tableau-Regeln für die Logik F OL 37 Regeln für den Quantor Positive -Regel: I, V[t/s 1 ] = ta I, V[t/s 1 ] = A oder oder I, V[t/s n ] = A gdw Negative -Regel: I, V[t/s 1 ] = ta I, V[t/s 1 ] = A und und I, V[t/s n ] = A gdw dabei bezeichne V[t/s] := (V \ { t, V(t) }) { t, s }), d.h. die Modifikation der Variablenzuweisung V, die t auf den Zustand s abbildet 51

52 Komplexität des Model Checking für F OL 38 Worst-Case Abschätzung für das Tableauverfahren Maximale Tiefe des Tableaus = quantorielle Tiefe q der Formel F, d.h. maximale logische Schachtelungstiefe eines Quantors in F : q < F Maximale Anzahl der Blätter des Tableaus: O(max( U, 2) q Zeitbedarf für Auswertung der Blattprobleme: jeweils linear in I V + F Zeitbedarf für Dekomposition und Rückgabe: jeweils linear in max( U, 2) Platzbedarf: I V + F Komplexität des Modell-Erfüllungsproblems für F OL: Allgemeines Problem ist PSPACE-vollständig, für Formeln mit begrenzter quantorieller Tiefe in P (polynomiell) 52

53 Optimierungen von Tableauverfahren 39 Partielle Evaluierung Heuristische Selektion der Unterprobleme Lemmas und Schnitte Intelligentes Backtracking 53

54 Modale und temporale Aussagenlogik 40 Keine explizite Verwendung von Zustandsvariablen t Elementaraussagen nullstellig wie in der Aussagenlogik: stack is empty bedeutet: der Keller ist jetzt leer. Feste Einbettung der Transitionsrelation(en) in die Logik durch neue logische Konnektive, z.b. (notwendig), (möglich) oder die temporalen X (next), F (Future), G (Globally, always), U (Until) (Temporale) Lesart modaler bzw. temporaler Formeln: stack is empty oder X stack is empty bedeutet: es gibt einen unmittelbaren Folgezustand, in dem der Keller leer ist. stack is empty: Keller ist in jedem unmittelbaren Folgezustand leer. F stack is empty: es gibt erreichbaren Zustand, in dem Keller leer ist. G stack is empty: Keller ist in jedem erreichbaren Zustand leer. stack1 is empty U stack2 is empty: es gibt erreichbaren Zustand, in dem Keller 2 leer ist und Keller 1 ist in allen Zwischenzuständen leer. 54

55 Modale Aussagenlogik 41 Syntax der modalen Aussagenlogik Gegeben eine Menge P von Aussagenvariablen. Die (Formeln der) modalen Aussagenlogik für P sei(en) definiert durch: ML(P) := P (ML ML) ML Andere aussagenlogische Konnektive wie üblich als Abkürzungen definiert sowie A := A Präzedenz der Operatoren: {,, },,,,. 55

56 Modale Aussagenlogik 42 Semantik der modalen Aussagenlogik Pioniere: Kripke, Kanger, Hintikka (Kripke-)Rahmen: Paar U, wobei U nichtleere Menge (möglicher Welten) und U U, die Übergangsrelation (Kripke-)Struktur I für eine modale Aussagenlogik M L(P): Tripel U,, ι wobei U, ein Rahmen und ι eine Funktion P 2 U, d.h. eine Belegung wie in der Prädikatenlogik für Transitionssysteme (Kripke-)Modell I s für ML(P): Quadrupel U,, ι, s wobei U,, ι, s eine Struktur für P und s U, der Referenzpunkt 56

57 Modale Aussagenlogik 43 Erfülltheit von Formeln der modalen Aussagenlogik Kripke-Modell I s = U,, ι, s erfüllt p P, geschrieben I s = p, gdw s ι(p), I s =, I s = (A B) gdw I s = A oder I s = B, I s = A gdw es ein s U gibt mit s s (d.h. s, s ) und I s = A, I = A, gdw für alle s gilt: I s = A. 57

58 Systemmodellierung mittels Modallogik 44 Ein Kripke-Rahmen U, : U = {s 1, s 2, s 3, s 4 }, = { s 1, s 2, s 1, s 3, s 1, s 4, s 2, s 3, s 2, s 4, s 3, s 4 } s 2 s 1 s 4 s 3 Eine Kripke-Struktur I für P = {stack1 }{{ is empty }, stack2 }{{ is empty }, stack3 }{{ is empty } }: e 1 e 2 e 3 Rahmen wie oben sowie ι(e 1 ) = {s 2, s 3, s 4 }, ι(e 2 ) = {s 3, s 4 }, ι(e 3 ) = {s 4 } Dann gelten z.b.: I s 1 = e 2, aber I s 2 = e 2 ; I s 1 = e 2 e 3, aber I s 1 = ( e 3 e 3 ) I s 1 = (e 1 e 2 e 3 ); I s 4 = 58

59 Modallogik vs. Prädikatenlogik 45 Ausdrucksstärke der (aussagenlogischen) Modallogik Formel der Prädikatenlogik für Transitionssysteme F OL: stack is empty(t 0 ) t 1 (put(t 0, t 1 ) stack is empty(t 1 )) entspricht in Modallogik M L (unter Unterschlagung des Transitionstyps): stack is empty stack is empty Zur Modellierung von Transitionstypen Erweiterung der Modallogik zur Multimodallogik F OL-Formel: t 1 ((t 0 t 1 request(t 1 )) t 2 (t 1 < t 2 acknowledge(t 2 ))) hat keine natürliche Entsprechung in Modallogik M L Erweiterung der Modallogik um ausdrucksstärkere Operatoren 59

60 Multimodale Aussagenlogik 46 Syntax der multimodalen Aussagenlogik Gegeben eine Menge P von Aussagenvariablen und eine Menge R von Übergangsvariablen Die (Formeln der) multimodalen Aussagenlogik für P und R sei(en) definiert durch: ML(P, R) := P (ML ML) R ML Andere aussagenlogische Konnektive wie üblich als Abkürzungen definiert sowie [R]A := R A Präzedenz der Operatoren: {, R, [R]},,,, 60

61 Multimodale Aussagenlogik 47 Semantik der multimodalen Aussagenlogik (Kripke-)Rahmen für eine multimodale Aussagenlogik M M L(P, R): Paar U, ρ wobei U nichtleere Menge (möglicher Welten) und ρ : R 2 U U, die Übergangsbelegung (Kripke-)Struktur I für MML(P, R): Tripel U, ρ, ι wobei U, ρ ein Rahmen und ι eine Funktion P 2 U, d.h. eine Belegung wie in der modalen Aussagenlogik (Kripke-)Modell I s für MLL(P, R): Quadrupel U, ρ, ι, s wobei U, ρ, ι, s eine Struktur für MLL(P, R) und s U, der Referenzpunkt 61

62 Multimodale Aussagenlogik 48 Erfülltheit von Formeln der multimodalen Aussagenlogik Kripke-Modell I s = U, ρ, ι, s erfüllt p P, geschrieben I s = p, gdw s ι(p), I s =, I s = (A B) gdw I s = A oder I s = B, I s = R A gdw es ein s U gibt mit s, s ρ(r) und I s = A, I = A, gdw für alle s gilt: I s = A. 62

63 Systemmodellierung mittels Modallogik 49 Ein Kripke-Rahmen U, : U = {s 1, s 2, s 3, s 4 }, = { s 1, s 2, s 1, s 3, s 1, s 4, s 2, s 3, s 2, s 4, s 3, s 4 } s 2 s 1 s 4 s 3 Eine Kripke-Struktur I für P = {stack1 }{{ is empty }, stack2 }{{ is empty }, stack3 }{{ is empty } }: e 1 e 2 e 3 Rahmen wie oben sowie ι(e 1 ) = {s 2, s 3, s 4 }, ι(e 2 ) = {s 3, s 4 }, ι(e 3 ) = {s 4 } Dann gelten z.b.: I s 1 = e 2, aber I s 2 = e 2 ; I s 1 = e 2 e 3, aber I s 1 = ( e 3 e 3 ) I s 1 = (e 1 e 2 e 3 ); I s 4 = 63

64 Multimodallogik vs. Prädikatenlogik 50 Ausdrucksstärke der (aussagenlogischen) Multimodallogik Formel der Prädikatenlogik für Transitionssysteme F OL: stack is empty(t 0 ) t 1 (put(t 0, t 1 ) stack is empty(t 1 )) entspricht in Multimodallogik M M L: stack is empty put stack is empty F OL-Formel: t 1 ((t 0 t 1 request(t 1 )) t 2 (t 1 < t 2 acknowledge(t 2 ))) hat keine natürliche Entsprechung in Multimodallogik M M L Erweiterung der Multimodallogik um ausdrucksstärkere Operatoren 64

65 Verallgemeinerung der Modallogik 51 Semantik der verallgemeinerten Modallogik Semantik wie in der Modallogik mit folgenden Modifikationen bei der Erfülltheit von Formeln: I s = X A gdw es ein s U gibt mit s s und I s = A, I s = F + A gdw es ein s U gibt mit s < s und I s = A, I s = F A gdw es ein s U gibt mit s s und I s = A Dabei sei < die transitive Hülle von, die Erreichbarkeitsrelation Weitere Operatoren als Abkürzungen definiert X A := X A entspricht A G + A := F + A G A := F A 65

66 Ausdrucksstärke generalisierter Modallogiken 52 Generalisierte Modallogik vs. Prädikatenlogik Formel der Prädikatenlogik für Transitionssysteme F OL: t 1 ((t 0 t 1 request(t 1 )) t 2 (t 1 < t 2 acknowledge(t 2 ))) entspricht in der verallgemeinerten Modallogik EML mit Operatormenge O = {X, F +, F }: G (request F + acknowledge) (man beachte, dass (G := F ) Relative Ausdrucksstärke zwischen generalisierten Modallogiken Der Operator F ist redundant in der generalisierten Modallogik EML mit O = {X, F +, F }, denn F A ist äquivalent zu A F + A Der Operator F + ist ebenfalls redundant in dieser Logik, denn F + A ist äquivalent zu X F A F kann in jeder generalisierten Modallogik durch F + definiert werden, aber nicht umgekehrt. 66

67 Ausdrucksstärke generalisierter Modallogiken 53 Definition relativer Ausdrucksstärke: Gegeben zwei generalisierte Modallogiken EML 1 und EML 2 (mit gemeinsamem P): EML 2 ist so ausdrucksstark wie EML 1, wenn es zu jeder Formel A 1 in EML 1 eine äquivalente Formel A 2 in EML 2 gibt. Satz: Die Logik L 1 := EML mit O = {F } ist nicht so ausdrucksstark wie L 2 := EML mit O = {F + }. Beweis: Wir zeigen, dass es zur Formel F + ( := p p) keine äquivalente Formel in L 1 gibt. Betrachte dazu zwei Kripke-Modelle M 1 = {s}, 1, ι, s und M 2 = {s}, 2, ι, s mit 1 =, 2 = { s, s }. Es gilt: M 1 = F + und M 2 = F +. Man zeigt nun (durch Induktion über den Formelaufbau) für alle L 1 -Formeln A, dass M 1 = A gdw M 2 = A. 67

68 Ausdrucksstärke generalisierter Modallogiken 54 Ausdrucksstärke generalisierter Modallogiken vs. Prädikatenlogik Formel der Prädikatenlogik für Transitionssysteme F OL: t 1 ((t 0 t 1 request(t 1 )) t 2 (t 1 < t 2 acknowledge(t 2 )) t 3 ((t 1 < t 3 t 3 < t 2 ) request(t 3 )))) (keine Anfrage wird gelöscht, bevor sie beantwortet ist) kann in keiner generalisierten Modallogik ausgedrückt werden, da in letzterer keine Aussagen über Intervalle möglich sind. Temporallogik im engeren Sinne Einführung nichtmodaler 2-stelliger (Intervall-)Operatoren wie U (Until) stack1 is empty U stack2 is empty bedeutet: Es gibt einen erreichbaren Zustand, in dem Keller 2 leer ist und Keller 1 ist in allen Zwischenzuständen leer. 68

69 Lineare Temporale Logik 55 Syntax der linearen temporalen Logik Gegeben eine Menge P von Aussagenvariablen. Die (Formeln der) linearen temporalen Logik für P sei(en) definiert durch: LT L(P) := P (LT L LT L) (LT L U + LT L) (LT L U LT L) Andere aussagenlogische Konnektive wie üblich sowie Unless A W + B := ( B U + (A B)) Präzedenz der Operatoren:,,,,, U LT L ermöglicht die Formulierung von Intervallaussagen 69

70 Lineare Temporale Logik 56 Semantik der linearen temporalen Logik Semantik wie in der Modallogik mit folgenden Modifikationen bei der Erfülltheit von Formeln: I s = A U + B gdw es ein s U gibt mit s < s und I s = B und für alle s U mit s < s < s gilt: I s = A I s = A U B gdw es ein s U gibt mit s < s und I s = B und für alle s U mit s < s < s gilt: I s = A Natürliche Modelle Ein Modell U,, ι, s heisst natürlich wenn < eine lineare Ordnung mit kleinstem Element s ist. 70

71 Lineare Temporale Logik 57 Ausdrucksstärke von LT L Operatoren der generalisierten Modallogik können durch U + ausgedrückt werden: X A (äquivalent) ( U + A) F + A ( U + A) U ermöglicht Vergangenheitsbezüge auszudrücken Formel der Prädikatenlogik für Transitionssysteme F OL: t 1 ((t 0 t 1 request(t 1 )) t 2 (t 1 < t 2 acknowledge(t 2 )) t 3 ((t 1 < t 3 t 3 < t 2 ) request(t 3 )))) (keine Anfrage wird gelöscht, bevor sie beantwortet ist) entspricht in LTL: G (request (request U + acknowledge)) 71

72 Relative Ausdrucksstärke von F OL 58 Multimodallogiken, generalisierte aussagenlogische Modallogiken sowie die temporale Logik LT L können als Fragmente der Prädikatenlogik für Transitionssysteme angesehen werden Es genügen F OL-Formeln mit höchstens einer freien Variable Bei nichtparametrisierten Operatoren reicht weiterhin die Beschränkung auf F OL-Formeln mit einem Transitionsprädikat Äquivalenzsatz: Für jede Formel A aus LT L oder einer generalisierten Modallogik gibt es eine F OL-Formel A mit höchstens einer freien Variablen t und einem Transitionsprädikat derart, dass für jedes Kripke-Modell U,., ι, s und jede Variablenbelegung V mit V(t) = s gilt: wobei ι( ) =.. U,., ι, s = A gdw U, ι, V = A 72

73 Relative Ausdrucksstärke von F OL 59 Sog. Standardübersetzung F von Formeln der generalisierten Modallogik und der linearen temporalen Logik LT L in F OL F(p) := p(t) für alle atomaren Formeln F( ) := F((A B)) := (F(A) F(B)) F(XA) := t (t t F(A)[t/t ]) F(F + A) := t (t < t F(A)[t/t ]) F(F A) := t (t t F(A)[t/t ]) F(AU + B) := t (t < t F(B)[t/t ] t (t < t < t F(A)[t/t ])) F(AU B) := t (t < t F(B)[t/t ] t (t < t < t F(A)[t/t ])) t, t seien Variablen, die nicht in der jeweiligen Formel vorkommen 73

74 Standardübersetzung in F OL 60 Beispiele für die Standardübersetzung F((( ack U req) U + ack)) = t 1 (t < t 1 ack(t 1 ) t 2 (t < t 2 < t 1 F(( ack U req))[t/t 2 ])) = t 1 (t < t 1 ack(t 1 ) t 2 (t < t 2 < t 1 t 3 (t 3 < t 2 req(t 3 ) t 4 (t 3 < t 4 < t 2 ack(t 4 ))))) F(G (req F ack)) = F( F (req F ack)) t 1 (t t 1 req(t 1 ) F(F ack)[t/t 1 ]) = t 1 (t t 1 req(t 1 ) t 2 (t 1 t 2 ack(t 2 ))) 74

75 Übersetzung von Multimodallogiken in F OL 61 Übersetzung von Multimodallogiken in F OL ist möglich Erweiterung der Standardübersetzung F um die Regel F( R A) := t (R(t, t ) F(A)[t/t ]) Äquivalenzsatz für Multimodallogiken: Für jede Formel A aus einer Multimodallogik gibt es eine F OL-Formel A mit höchstens einer freien Variablen t derart, dass für jedes Kripke-Modell U, ρ, ι, s und jede Variablenbelegung V mit V(t) = s gilt: U, ρ, ι, s = A gdw U, ρ ι, V = A. 75

76 Standardübersetzung in F OL 62 Weitere Einschränkungen von F OL sind möglich Verschärfung der Äquivalenzsätze Für LT L- Formeln: es gibt äquivalente F OL-Formeln mit höchstens drei verschiedenen Variablen Für Formeln der Modallogik: es gibt äquivalente F OL-Formeln mit höchstens zwei verschiedenen Variablen (guarded fragment der Prädikatenlogik) Konsequenzen Bestimmte 2-stellige Operatoren wie U können nicht in der Modallogik ausgedrückt werden F OL-Eigenschaften, die mehr als 3 Variablen wesentlich benötigen, können nicht in LT L (temporaler Logik) ausgedrückt werden 76

77 Standardübersetzung in F OL 63 Einsparung durch Wiederverwendung von Variablen Beispiele F((( ack U req) U + ack)) = t 1 (t < t 1 ack(t 1 ) t 2 (t < t 2 < t 1 t 3 (t 3 < t 2 req(t 3 ) t 4 (t 3 < t 4 < t 2 ack(t 4 ))))) t 1 (t < t 1 ack(t 1 ) t 2 (t < t 2 < t 1 t(t < t 2 req(t) t 1 (t < t 1 < t 2 ack(t 1 ))))) F(G (req F ack)) t 1 (t t 1 req(t 1 ) t 2 (t 1 t 2 ack(t 2 ))) t 1 (t t 1 req(t 1 ) t(t 1 t ack(t))) 77

78 Ausdrucksgrenzen der temporalen Aussagenlogik 64 Eine Eigenschaft mit inhärent vier verschiedenen Variablen: Vom Startzustand aus sind drei verschiedene Zustände erreichbar, die untereinander verbunden sind : t 1 t 2 t 3 (t < t 1 t < t 2 t < t 3 t 1 < t 2 t 1 < t 3 t 2 < t 3 ) Ein Kripke-Rahmen U,, der die Formel erfüllt (d.h. dessen sämtliche Modelle die Formel erfüllen): U = {s 1, s 2, s 3, s 4 } = { s 1, s 2, s 1, s 3, s 1, s 4, s 2, s 3, s 2, s 4, s 3, s 4 } s 2 s 1 s 4 s 3 Es gibt keine äquivalente F OL-Formel mit weniger als vier verschiedenen Variablen. 78

79 Einschränkungen an Rahmen und Modelle 65 Natürliche Modelle: Ein Kripke-Modell U,, ι, s gdw < eine lineare Ordnung mit kleinstem Element s ist, d.h. dessen Rahmen U, isomorph ist zu den natürlichen Zahlen bzw. einem Anfangsstück der natürlichen Zahlen 0, 1, 2, 3,... und der Nachfolgerfunktion wobei s der 0 entspricht. Falls man sich auf natürliche Modelle beschränkt, lässt sich die F OL-Formel ausdrücken durch: t 1 (t < t 1 t 2 (t 1 < t 2 t 3 (t 2 < t 3 ))) t 1 (t < t 1 t(t 1 < t t 1 (t < t 1 ))) das äquivalent ist zu einer generalisierten Modallogik-Formel: F + F + F + 79

80 Relative Ausdrucksstärke von LT L 66 Satz: LT L ist für natürliche Modelle so ausdrucksstark wie F OL mit einer freien Variablen und einem Transitionsprädikat. Original-Beweis von Kamp [1968] sehr kompliziert, vereinfachter Beweis von Gabbay [1989] benutzt Separierungseigenschaft Eine temporallogische bzw. LT L-Formel heisst: zukunftsbezogen gdw wenn sie den Operator U nicht enthält, vergangenheitsbezogen gdw wenn sie den Operator U + nicht enthält, separiert gdw wenn sie eine junktorenlogische Kombination zukunftsoder vergangenheitsbezogener Formeln ist. Eine Logik hat die Separierungseigenschaft (für eine Klasse K von Modellen) gdw für jede Formel der Logik eine (bzgl. aller Modelle in K) äquivalente separierte Formel der Logik existiert. 80

81 Relative Ausdrucksstärke von LT L 67 Hilfssatz: LT L hat die Separierungseigenschaft für natürliche Modelle. Zentrale Idee des Beweises: Für alle natürlichen Modelle M gilt z.b.: M = F + (A G B) G B B (B U + A) Beobachtung: Die Separierungs-Transformation kann zu einer nichtelementaren Verlängerung der Formel führen. Hilfssatz: Falls eine temporale Logik die Separierungseigenschaft für eine Klasse von Modellen K hat, dann ist sie so ausdrucksstark wie F OL mit einer freien Variablen und einem Transitionsprädikat. Satz: Es gibt eine Folge von F OL-Formeln derart, dass die Länge der entsprechenden kürzesten äquivalenten LT L-Formeln nicht durch eine elementare Funktion der Länge der F OL-Formeln beschränkt werden kann. D.h. obwohl LT L auf natürlichen Modellen dieselbe Ausdruckskraft wie F OL hat, hat es nicht dieselbe Ausdruckskürze oder -bündigkeit. 81

82 Berechnungsbäume und Pfade 68 Formulierung von Systemeigenschaften höherer Ordnung Eigenschaften von Abläufen (d.h. Ausführungsfolgen) eines (nichtdeterministischen) Computerprogramms oder Systems Modellierung aller Abläufe als Berechnungsbaum s 1 p s 2 s 3 82

83 Berechnungsbäume und Pfade 69 Insbesondere interessant: Aussagen über bestimmte Pfade im Berechnungsbaum eines Systems Gegeben (die Übergangsrelation) ein(es) Transitionssystem(s), d.h. ein Kripke-Rahmen U, Pfad π in einem Kripke-Rahmen U, oder einer Kripke-Struktur U,, ι : endliche oder unendliche Folge von Zuständen s 0, s 1, s 2,... wobei jeweils s i s i+1 (Folge: Funktion N S mit N N und 0 < i N i 1 N) s-pfad: Pfad π mit π(0) = s Maximaler Pfad π : N U: für alle i N gilt: wenn es ein s U gibt mit π(i) s, dann ist i + 1 N (d.h. ein maximaler Pfad ist entweder unendlich oder sein letzter Zustand ist ein Endpunkt in ) Pfad in einem Kripke-Modell U,, ι, s : s-pfad in U,. 83

84 Berechnungsbaum-Logik (Computation Tree Logic) 70 Syntax der Berechnungsbaum-Logik Gegeben eine Menge P von Aussagenvariablen. Die (Formeln der) Berechnungsbaum-Logik (Computation Tree Logic) für P sei(en) definiert durch: CT L(P) := P (CT L CT L) E(CT L U + CT L) A(CT L U + CT L) CT L ermöglicht die Formulierung von Aussagen über alle maximalen Berechnungspfade CT L wird normalerweise auf Baummodellen interpretiert, d.h. Modellen, bei denen die transitive Hülle < der Transitionsrelation eine partielle Ordnung mit einem kleinsten Element ist 84

85 Berechnungsbaum-Logik (Computation Tree Logic) 71 Semantik der Berechnungsbaum-Logik Semantik wie in der Modallogik, d.h. eine Struktur ist ein Triple I = U, ι und ein Modell ist ein Paar I, s mit s U Definition der Erfülltheit von neuen CT L-Formeln: I s = E(A U + B) gdw es ein s U gibt mit s < s und I s = B und für alle s U mit s < s < s gilt: I s = A entspricht genau der Semantik von (A U + B) I s = A(A U + B) gdw wenn alle maximalen Pfade π, die in s beginnen, ein s enthalten mit s < s und I s = B und für alle s mit s < s < s gilt: I s = A 85

86 Berechnungsbaum-Logik (Computation Tree Logic) 72 Weitere als Abkürzungen definierte Operatoren EXB := E( U + B) AXB := A( U + B) EXB := AX B AXB := EX B EF + B := E( U + B) AF + B := A( U + B) s > s : I s = t B max. Pfade π : s > s auf π : I s = t B EG + B := AF + B AG + B := EF + B max. Pfad π : s > s auf π : I s = t B s > s : I s = t B E(AU B) := (B A E(AU + B)) A(AU B) := (B A A(AU + B)) EF B := (B EF + B) AF B := (B AF + B) EG B := (B EG + B) AG B := (B AG + B) E(AW + B) := A( BU + (A B)) A(AW + B) := E( BU + (A B)) 86

87 Berechnungsbaum-Logik (Computation Tree Logic) 73 Wichtige Zusammenhänge zwischen den Operatoren A(AU + B) A(AW + B) AF + B = E( BU + (A B)) AF + B A(AU + B) E( BU + (A B)) EG + B EU + und AF + reichen als Basis-Operatoren aus und EU + und AG + reichen als Basis-Operatoren aus (günstig für formale Beweise und Algorithmen) E(AW + B) E(AU + B) EG + B Aber keine negationsfreie duale Charakterisierung von AW + und EU + 87

88 Beispiele von CT L-Spezifikationsformeln 74 Typische Korrektheitseigenschaften eines reaktiven Systems Es ist ein Zustand erreichbar, in dem started gilt, aber ready nicht: EF + (started ready) Jede Anfrage wird irgendwann beantwortet: AG (request AF + acknowledge) Auf jedem Ast des Berechnungsbaums ist der Stack unendlich oft leer: AG AF + stack is empty Von jedem Zustand s aus ist ein restart-zustand erreichbar oder s ist selbst ein restart-zustand: AG EF restart 88

89 Vergleich der Ausdrucksstärke von CT L und LT L 75 Beschränkung auf zukunftsbezogenes Fragment der LT L Direkter Vergleich schwierig, da intendierte Modelle unterschiedlich Auf natürlichen Modellen (Bäumen mit Verzweigungsgrad 1) sind EU + und AU + gleichbedeutend Auf echten Baummodellen ist AU + nicht in LT L ausdrückbar Deshalb: Vergleich auf von allgemeinen Kripke-Modellen generierten natürlichen bzw. Baummodellen 89

90 Generierte spezielle Modelle 76 Generierte natürliche Modelle Gegeben ein beliebiges Kripke-Modell M = U,, ι, s. Ein Modell M = U,, ι, s heisst ein direkt von M generiertes natürliches Modell gdw U ein maximaler Pfad π : N U in M ist mit π(0) = s, := { i, π(i), i + 1, π(i + 1) : 0 < i + 1 N}, ι (p) = { i, s U : s ι(p)}, s = 0, s. Folgen-Gültigkeit bzw. -Erfülltheit Eine LT L-Formel A heisst Folgen-gültig in (oder Folgen-erfüllt von) einem Kripke-Modell M, geschrieben M = s A, gdw A von allen direkt von M generierten natürlichen Modellen erfüllt wird. 90

91 Generierte spezielle Modelle 77 Generierte Baum-Modelle Gegeben ein beliebiges Kripke-Modell M = U,, ι, s. Sei K, der von M erzeugte Berechnungsbaum (K Knotenmenge, K K Kantenmenge), l die Knotenmarkierungsfunktion K U, d.h. k k gdw l(k) l(k ); weiterhin sei ι (p) = {k K : l(k) ι(p)}, und k die Wurzel von K. Dann ist das Modell M = K,, ι, k das direkt von M generierte Baummodell. Baum-Gültigkeit bzw. -Erfülltheit Eine CT L-Formel A heisst Baum-gültig in (oder Baum-erfüllt von) einem Kripke-Modell M, geschrieben M = t A, gdw A vom von M generierten Baummodell erfüllt wird. 91

92 Vergleich der Ausdrucksstärke von CT L und LT L 78 Vergleich der relativen Ausdrucksstärke von LT L bzw. CT L über die generierten natürlichen bzw. Baummodelle beliebiger Kripke-Modelle Satz: Es gibt eine LT L-Formel A, für die es keine CT L-Formel A gibt derart, dass für jedes Kripke-Modell M gilt: M = s A gdw M = t A. Beispiel: A = F + G + p (ist z.b. s t Q 1 F + Q 2 G + p mit Q i {A, E}; unterscheidende Modelle: {s, s }, { s, s, s, s }, { p, {s} }, s} bzw. {s, s }, { s, s, s, s }, { p, {s } }, s}) Satz: Es gibt eine CT L-Formel A, für die es keine LT L-Formel A gibt derart, dass für jedes Kripke-Modell M gilt: M = t A gdw M = s A. Beispiel: A = AG + EF + p (ist z.b. t s G + F + p; unterscheidendes Modell: {s, s }, { s, s, s, s, s, s }, { p, {s } }, s}) LT L und CT L haben unterschiedliche Ausdrucksstärke und keine der beiden Logiken subsumiert die andere 92

93 Die volle Berechnungsbaum-Logik CT L 79 Syntax der vollen Berechnungsbaum-Logik CT L Gegeben eine Menge von aussagenlogischen Variablen P. Zwei Typen von Formeln: Zustandsformeln und Pfadformeln definiert durch simultane Induktion: 1. jede aussagenlogische Variable P und sind Zustandsformeln, 2. Wenn B eine Pfadformel ist, dann ist EB eine Zustandsformel, 3. jede Zustandsformel ist eine Pfadformel, 4. Wenn A und B Pfadformeln sind, dann sind auch (A B) und (AU + B) Pfadformeln. Die Menge der Formeln der vollen Berechnungsbaum-Logik CT L (P) für P besteht aus allen Zustandsformeln. Definierter Operator: AB := E B CT L subsumiert sowohl die CT L als auch das zukunftsbezogene Fragment der LT L. 93

94 Die volle Berechnungsbaum-Logik CT L 80 Semantik der vollen Berechnungsbaum-Logik CT L Semantik basiert auf der Semantik der Modallogik, d.h. eine Struktur ist ein Triple I = U, ι und ein Modell ist ein Paar I, s mit s U Ein Pfadmodell ist ein Paar I, π, geschrieben I π, wobei π ein maximaler Pfad in I ist Gegeben ein Pfad π mit einer Länge i, der Suffixpfad π i von π und i sei wie folgt definiert: π i (j) = π(i + j), d.h. π i = { j, s : i + j, s π}. 1. I s = EB gdw es einen maximalen s-pfad π in I gibt und I π = B 2. I π = p P gdw I π(0) = p 3. I π = 4. I π = (A B) gdw I π = A oder I π = B 5. I π = (AU + B) gdw es ein i > 0 gibt und I πi = B und für alle 0 < j < i gilt: I πj = A 94

95 Die volle Berechnungsbaum-Logik CT L 81 Beispiele für CT L -Formeln Auf jedem maximalen Pfad gibt es einen Zustand, ab dem p immer gilt: AF G p Disjunktion der kritischen Formeln für LT L und CT L: F + G + p AG + EF + p Ausdrucksstärke der vollen Berechnungsbaum-Logik CT L CT L subsumiert CT L und zukunftsbezogenes Fragment der LT L. Ausdrucksstärke der CT L entspricht Erweiterung der Logik F OL um Quantifikation über Pfade, der Monadischen Logik zweiter Stufe. Komplexität von CT L Model Checking ist PSPACE-vollständig. Erfüllbarkeit ist vollständig für doppelt exponentielle Zeit. 95

96 Model Checking Probleme 82 Zwei Typen von Model Checking Problemen Standard oder Initiales Model Checking Universelles Model Checking Allgemein gegeben sind (für Logiken mit einer Transitionsrelation) eine beliebige Kripke-Struktur I = U,, ι, eine Formel A in einer Temporallogik L, ein Erfülltheitsbegriff = für L Initiales Model Checking: Weiterhin gegeben ein Referenzpunkt s U, gilt: I s = A? Universelles Model Checking: Gilt I s = A für alle s U? 96

97 Model Checking Verfahren 83 Zwei reine Typen von Model Checking Verfahren Top-down oder lokales vs. bottom-up oder globales Model Checking Top-down oder lokale Model Checking Verfahren Rekursives Lösen von Erfülltheitsproblemen der Form I s = F durch lokale Dekomposition unter Ausnutzung der Struktur I, d.h. Exploration eines Tableaus mit Wurzelmarkierung I s = A (A initiale Formel) I.A. zusätzliche Benutzung dynamischer Programmierungstechniken zur Vermeidung der wiederholten Lösung gleicher Probleme Bottom-up oder globale Model Checking Verfahren F I bezeichne die Menge aller Zustände s U mit I s = F. Berechnen und speichern aller Mengen F I, wobei F Teilformel von A Kompositionelles Vorgehen beginnend bei atomaren Teilformeln Abschliessendes Prüfen, ob Referenzpunkt s A I bzw. A I = U 97

98 Bottom-up Model Checking für die Modallogik 84 Gegeben: Kripke-Struktur I = U,, ι und Formel A der Modallogik ML Universelles bottom-up Model Checking für die Modallogik Für alle Teilformeln F von A beginnend mit den atomaren Formeln: Setze I := Falls F atomare Formel p, setze F I := ι(p) Falls F = (B C), setze F I := (U \ B I ) C I Falls F = B, setze F I := {s U : es gibt ein s B I und s s } Effizienz- und Komplexitätsbetrachtungen Berechne ( B) I durch Zurückverfolgen der Kanten aus B I Speichere alle Zwischenwerte F I Verfahren quadratisch in ( I + A ) Effiziente Repräsentation und Operationen auf Mengen erforderlich 98

99 Bottom-up Model Checking für CT L 85 CT L mit Basis-Operatoren EU + und EG + Wir betrachten eine Variante der CT L mit den beiden temporalen Basis- Operatoren EU + und EG +, die ausreichen um jede CT L-Formel äquivalent auszudrücken, da aus A(AU + B) E( BU + (A B)) AF + B und AF + B EG + B folgt, dass A(AU + B) E( BU + (A B)) EG + B. Semantik von EG + I s = EG + B gdw es einen maximalen s-pfad gibt, auf dem für alle s > s gilt, dass I s = B 99

100 CT L-Model Checking 86 Intendierte Semantik des CT L-Model Checking Eigenschaften beliebiger Transitionssysteme sollen modelliert werden Welche Semantik, Standard-Semantik ( =) oder Baum-Semantik ( = t )? = = t, betrachte dazu E(p U + q) in folgender Kripke-Struktur: s 1 p s 2 s 4 q s 3 I s 1 = t E(p U + q), aber I s 1 = E(p U + q), da s 1 < s 4 < s 3 und I s 4 = p Intendierte Semantik ist die Baumsemantik = t 100

1. Einführung in Temporallogik CTL

1. Einführung in Temporallogik CTL 1. Einführung in Temporallogik CTL Temporallogik dient dazu, Aussagen über Abläufe über die Zeit auszudrücken und zu beweisen. Zeit wird in den hier zunächst behandelten Logiken als diskret angenommen

Mehr

Zeitlogik. Hardware Verifikation. Zeitlogik und Verifikation. Helmut Veith,

Zeitlogik. Hardware Verifikation. Zeitlogik und Verifikation. Helmut Veith, Zeitlogik und Verifikation Helmut Veith, veith@dbai.tuwien.ac.at 58801-18431 Abteilung f. Datenbanken und AI Zeitlogik Klassische Logik ist ungeeignet, die Dynamik veränderlicher Systeme zu beschreiben.

Mehr

Tableaukalkül für Aussagenlogik

Tableaukalkül für Aussagenlogik Tableaukalkül für Aussagenlogik Tableau: Test einer Formel auf Widersprüchlichkeit Fallunterscheidung baumförmig organisiert Keine Normalisierung, d.h. alle Formeln sind erlaubt Struktur der Formel wird

Mehr

4. Alternative Temporallogiken

4. Alternative Temporallogiken 4. Alternative Temporallogiken Benutzung unterschiedlicher Temporallogiken entsprechend den verschiedenen Zeitbegriffen LTL: Linear Time Logic Ähnlich der CTL, aber jetzt einem linearen Zeitbegriff entspechend

Mehr

Model Checking I. Lehrstuhl für Software Engineering Friedrich-Alexander-Universität Erlangen-Nürnberg

Model Checking I. Lehrstuhl für Software Engineering Friedrich-Alexander-Universität Erlangen-Nürnberg Model Checking I Yi Zhao Marc Spisländer Lehrstuhl für Software Engineering Friedrich-Alexander-Universität Erlangen-Nürnberg Zhao, Spisländer FAU Erlangen-Nürnberg Model Checking I 1 / 22 1 Inhalt 2 Model

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

Algorithmen für OBDD s. 1. Reduziere 2. Boole sche Operationen

Algorithmen für OBDD s. 1. Reduziere 2. Boole sche Operationen Algorithmen für OBDD s 1. Reduziere 2. Boole sche Operationen 1 1. Reduziere siehe auch M.Huth und M.Ryan: Logic in Computer Science - Modelling and Reasoning about Systems, Cambridge Univ.Press, 2000

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Software Engineering in der Praxis Praktische Übungen Marc Spisländer Josef Adersberger Lehrstuhl für Software Engineering Friedrich-Alexander-Universität Erlangen-Nürnberg 10. November 2008 Inhalt Nachlese

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

2.1 Lineare Temporallogiken: LTL

2.1 Lineare Temporallogiken: LTL 2.1 Lineare Temporallogiken: LTL N bezeichne die Menge der nicht-negativen ganzen Zahlen (inklusive der Null). Sei Σ ein Alphabet. Ein endliches Wort ü b e r Σ ist eine endliche Folge a 1 a 2...a n,sodassa

Mehr

Research Collection. Bounded Model Checking was kommt danach? Other Conference Item. ETH Library. Author(s): Biere, Armin. Publication Date: 2000

Research Collection. Bounded Model Checking was kommt danach? Other Conference Item. ETH Library. Author(s): Biere, Armin. Publication Date: 2000 Research Collection Other Conference Item Bounded Model Checking was kommt danach? Author(s): Biere, Armin Publication Date: 2000 Permanent Link: https://doi.org/10.3929/ethz-a-004242422 Rights / License:

Mehr

Aussagenlogik. Spezifikation und Verifikation Kapitel 1. LTL und CTL Syntax & Semantik. Aussagenlogik: Syntax. Aussagenlogik: Syntax (Alternative)

Aussagenlogik. Spezifikation und Verifikation Kapitel 1. LTL und CTL Syntax & Semantik. Aussagenlogik: Syntax. Aussagenlogik: Syntax (Alternative) Spezifikation und Verifikation Kapitel 1 Aussagenlogik LTL und CTL & Frank Heitmann heitmann@informatik.uni-hamburg.de Wir haben Eine abzählbare Menge V = {x 1, x 2,...} von aussagenlogischen Variablen

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

Formale Verifikation von Software. 10. Juli 2013

Formale Verifikation von Software. 10. Juli 2013 Formale Verifikation von Software 10. Juli 2013 Überblick Wann ist formale Softwareverifikation sinnvoll? Welche Techniken gibt es? Was ist Model Checking und wie kann man es zur Verifikation einsetzen?

Mehr

Zusammenfassung des Stoffes zur Vorlesung Formale Systeme

Zusammenfassung des Stoffes zur Vorlesung Formale Systeme Zusammenfassung des Stoffes zur Vorlesung Formale Systeme Max Kramer 13. Februar 2009 Diese Zusammenfassung entstand als persönliche Vorbereitung auf die Klausur zur Vorlesung Formale Systeme von Prof.

Mehr

Formale Verifikation von Software. 8. Juli 2015

Formale Verifikation von Software. 8. Juli 2015 Formale Verifikation von Software 8. Juli 2015 Überblick Wann ist formale Softwareverifikation sinnvoll? Welche Techniken gibt es? Was ist Model Checking und wie kann man es zur Verifikation einsetzen?

Mehr

Logik für Informatiker

Logik für Informatiker Logik für Informatiker 2. Aussagenlogik Teil 2 28.04.2015 Viorica Sofronie-Stokkermans Universität Koblenz-Landau e-mail: sofronie@uni-koblenz.de 1 Organisatorisches Termine Donnerstags: 30.04.2015 nicht

Mehr

Computergestützte Modellierung und Verifikation

Computergestützte Modellierung und Verifikation Computergestützte Modellierung und Verifikation Vorlesung mit Übungen SS 2007 Prof. F. von Henke mit Dr. H. Pfeifer Inst. für Künstliche Intelligenz Organisatorisches Vorlesung: Mi 14 16 Raum 3211 Do 14

Mehr

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

Kapitel 1.1. Aussagenlogik: Syntax. Mathematische Logik (WS 2011/12) Kapitel 1.1: Aussagenlogik: Syntax 1/ 1

Kapitel 1.1. Aussagenlogik: Syntax. Mathematische Logik (WS 2011/12) Kapitel 1.1: Aussagenlogik: Syntax 1/ 1 Kapitel 1.1 Aussagenlogik: Syntax Mathematische Logik (WS 2011/12) Kapitel 1.1: Aussagenlogik: Syntax 1/ 1 Übersicht 1.1.1 Die Sprache der Aussagenlogik 1.1.2 Explizite vs. implizite Definitionen 1.1.3

Mehr

Formale Grundlagen der Informatik 1 Kapitel 16 Normalformen und Hornformeln

Formale Grundlagen der Informatik 1 Kapitel 16 Normalformen und Hornformeln Formale Grundlagen der Informatik 1 Kapitel 16 Normalformen und Frank Heitmann heitmann@informatik.uni-hamburg.de 9. Juni 2015 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/36 Ersetzbarkeitstheorem

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

THEORETISCHE INFORMATIK UND LOGIK

THEORETISCHE INFORMATIK UND LOGIK Rückblick: Logelei Wir kehren zurück auf das Inselreich mit Menschen von Typ W (Wahrheitssager) und Typ L (Lügner). THEORETISCHE INFORMATIK UND LOGIK 14. Vorlesung: Modelltheorie und logisches Schließen

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

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

Was bisher geschah. wahr 0 t 1 falsch 0 f 0 Konjunktion 2 min Disjunktion 2 max Negation 1 x 1 x Implikation 2 Äquivalenz 2 =

Was bisher geschah. wahr 0 t 1 falsch 0 f 0 Konjunktion 2 min Disjunktion 2 max Negation 1 x 1 x Implikation 2 Äquivalenz 2 = Was bisher geschah (Klassische) Aussagenlogik: Aussage Wahrheitswerte 0 (falsch) und 1 (wahr) Junktoren Syntax Semantik Stelligkeit Symbol Wahrheitswertfunktion wahr 0 t 1 falsch 0 f 0 Konjunktion 2 min

Mehr

THEORETISCHE INFORMATIK UND LOGIK

THEORETISCHE INFORMATIK UND LOGIK THEORETISCHE INFORMATIK UND LOGIK 14. Vorlesung: Modelltheorie und logisches Schließen Markus Krötzsch Lehrstuhl Wissensbasierte Systeme TU Dresden, 31. Mai 2017 Rückblick: Logelei Wir kehren zurück auf

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

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

Aussagenlogik. Übersicht: 1 Teil 1: Syntax und Semantik. 2 Teil 2: Modellierung und Beweise. Aussagenlogik H. Kleine Büning 1/37 Aussagenlogik Übersicht: 1 Teil 1: Syntax und Semantik 2 Teil 2: Modellierung und Beweise Aussagenlogik H. Kleine Büning 1/37 Modellierungsaufgabe Es gibt drei Tauben und zwei Löcher. Jede Taube soll in

Mehr

Entscheidungsverfahren für Bernays/Schönfinkelbzw. Datenlogik-Formeln

Entscheidungsverfahren für Bernays/Schönfinkelbzw. Datenlogik-Formeln Vorlesung Letz WS 2002/2003 TU München: Logikbasierte Entscheidungsverfahren Entscheidungsverfahren für Bernays/Schönfinkelbzw. Datenlogik-Formeln INHALTE Die Bernays-Schönfinkel-Klasse bzw. Datenlogik-Formeln

Mehr

abgeschlossen unter,,,, R,

abgeschlossen unter,,,, R, Was bisher geschah Turing-Maschinen können Sprachen L X akzeptieren entscheiden Funktionen berechnen f : X X (partiell) Menge aller Turing-akzeptierbaren Sprachen genau die Menge aller Chomsky-Typ-0-Sprachen

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

Formale Logik. PD Dr. Markus Junker Abteilung für Mathematische Logik Universität Freiburg. Wintersemester 16/17 Sitzung vom 14.

Formale Logik. PD Dr. Markus Junker Abteilung für Mathematische Logik Universität Freiburg. Wintersemester 16/17 Sitzung vom 14. Formale Logik PD Dr. Markus Junker Abteilung für Mathematische Logik Universität Freiburg Wintersemester 16/17 Sitzung vom 14. Dezember 2016 Die formale Sprache der Prädikatenlogik: Zeichen Benutzt werden

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

Logik erster Stufe FO

Logik erster Stufe FO Logik erster Stufe FO Sonderstellung als die Logik für die Grundlegung der Mathematik natürliche Semantik (Tarski) und große Ausdrucksstärke vollständige Beweiskalküle (Gödelscher Vollständigkeitssatz)

Mehr

- SMT und DPLL(T ) Entscheidungsverfahren mit Anwendungen in der Softwareverifikation.

- SMT und DPLL(T ) Entscheidungsverfahren mit Anwendungen in der Softwareverifikation. SMT und DPLL(T ) Entscheidungsverfahren mit Anwendungen in der Softwareverifikation STEPHAN FALKE INSTITUT FÜR THEORETISCHE INFORMATIK (ITI) 0 KIT 6. Universität Mai 2013 des S. Landes Falke Baden-Württemberg

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

Grundbegriffe aus Logik und Mengenlehre. Prädikatenlogik

Grundbegriffe aus Logik und Mengenlehre. Prädikatenlogik Grundbegriffe aus Logik und Mengenlehre Prädikatenlogik wohlverstandene Grundlagen, eine formale Sprache zur Beschreibung statischer und dynamischer Gesichtspunkte eines Unternehmens syntaktisch und semantisch

Mehr

tl Revision: 1.37 Lese [a] f als für alle a-nachfolger des momentanen Zustandes gilt f

tl Revision: 1.37 Lese [a] f als für alle a-nachfolger des momentanen Zustandes gilt f Temorale Logik Gebrauch in der Informatik geht auf A. Pnueli zurück 1 Vereinfachte Hennessy-Milner Logik (HML) zunächst betrachten wir HML als Bs. für Temorale Logik für LTS 2 Häufig zur Sezifikation von

Mehr

Kapitel 1.0. Aussagenlogik: Einführung. Mathematische Logik (WS 2011/12) Kapitel 1.0: Aussagenlogik: Einführung 1/ 1

Kapitel 1.0. Aussagenlogik: Einführung. Mathematische Logik (WS 2011/12) Kapitel 1.0: Aussagenlogik: Einführung 1/ 1 Kapitel 1.0 Aussagenlogik: Einführung Mathematische Logik (WS 2011/12) Kapitel 1.0: Aussagenlogik: Einführung 1/ 1 Ziele der Aussagenlogik In der Aussagenlogik analysiert man die Wahrheitswerte zusammengesetzter

Mehr

Einführung in LTL unter MAUDE. Maschine!es Beweisen Einführung in LTL Seit# 1

Einführung in LTL unter MAUDE. Maschine!es Beweisen Einführung in LTL Seit# 1 Einführung in LTL unter MAUDE Mashine!es Beweisen Einführung in LTL Seit# 1 Verifikation eines Systems System- Verhalte% System- Spezifikatio% Mashine!es Beweisen Einführung in LTL Seit# 2 Verifikation

Mehr

Vorsemesterkurs Informatik

Vorsemesterkurs Informatik Vorsemesterkurs Informatik Vorsemesterkurs Informatik Mario Holldack WS2015/16 30. September 2015 Vorsemesterkurs Informatik 1 Einleitung 2 Aussagenlogik 3 Mengen Vorsemesterkurs Informatik > Einleitung

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

3.1.1 Die Variante T1 und ein Entscheidungsverfahren für die Aussagenlogik

3.1.1 Die Variante T1 und ein Entscheidungsverfahren für die Aussagenlogik Deduktionssysteme der Aussagenlogik, Kap. 3: Tableaukalküle 38 3 Tableaukalküle 3.1 Klassische Aussagenlogik 3.1.1 Die Variante T1 und ein Entscheidungsverfahren für die Aussagenlogik Ein zweites Entscheidungsverfahren

Mehr

Was bisher geschah: klassische Aussagenlogik

Was bisher geschah: klassische Aussagenlogik Was bisher geschah: klassische Aussagenlogik Syntax Symbole und Struktur Junktoren: t, f (nullstellig), (einstellig),,,, (zweistellig) aussagenlogische Formeln AL(P) induktive Definition: IA atomare Formeln

Mehr

Entscheidungsverfahren für die Software-Verifikation. 4 - BDDs

Entscheidungsverfahren für die Software-Verifikation. 4 - BDDs Entscheidungsverfahren für die Software-Verifikation 4 - BDDs Datenstruktur BDD 1986 von R. Bryant vorgeschlagen zur Darstellung von aussagenlogischen Formeln (genauer: Booleschen Funktionen) Boolesche

Mehr

Automaten, Spiele und Logik

Automaten, Spiele und Logik Automaten, Spiele und Logik Woche 13 11. Juli 2014 Inhalt der heutigen Vorlesung Linearzeit Temporale Logik (LTL) Alternierende Büchi Automaten Nicht-Determinisierung (Miyano-Ayashi) Beschriftete Transitionssysteme

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

Aussagenlogik. Motivation Syntax Semantik Erfüllbarkeit SAT-Solver Kompaktheit Beweiskalküle

Aussagenlogik. Motivation Syntax Semantik Erfüllbarkeit SAT-Solver Kompaktheit Beweiskalküle Aussagenlogik Motivation Syntax Semantik Erfüllbarkeit SAT-Solver Kompaktheit Beweiskalküle Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik Syntax 22 Einführendes Beispiel

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

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

Beweisen mit Semantischen Tableaux

Beweisen mit Semantischen Tableaux Beweisen mit Semantischen Tableaux Semantische Tableaux geben ein Beweisverfahren, mit dem ähnlich wie mit Resolution eine Formel dadurch bewiesen wird, dass ihre Negation als widersprüchlich abgeleitet

Mehr

Beachte: Mit n = 0 sind auch Konstanten Terme.

Beachte: Mit n = 0 sind auch Konstanten Terme. Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Prädikatenlogik ohne Gleichheit Syntax und Semantik 107 Terme Ab sofort wird Signatur τ als festgelegt angenommen. Sei V = {x, y,...} Vorrat

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

1. Motivation. Modelchecking. NuSMV. NuSMV und SMV. 2. Modellierung. Erinnerung (Kapitel II)

1. Motivation. Modelchecking. NuSMV. NuSMV und SMV. 2. Modellierung. Erinnerung (Kapitel II) 1. Motivation Modelchecking V. Ein Modelchecker: NuSMV Motivation und Hintergrund Modellierung Eigenschaften Anwendung Wir kennen jetzt die Grundlagen des Modelcheckings, auch wenn uns noch ganz wesentliche

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

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik FH Wedel Prof. Dr. Sebastian Iwanowski GTI22 Folie 1 Grundlagen der Theoretischen Informatik Sebastian Iwanowski FH Wedel Kap. 2: Logik, Teil 2.2: Prädikatenlogik FH Wedel Prof. Dr. Sebastian Iwanowski

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

Kapitel 1.5 und 1.6. Ein adäquater Kalkül der Aussagenlogik

Kapitel 1.5 und 1.6. Ein adäquater Kalkül der Aussagenlogik Kapitel 1.5 und 1.6 Ein adäquater Kalkül der Aussagenlogik Teil 1: Kalküle und Beweisbarkeit und die Korrektheit des Shoenfield-Kalküls Mathematische Logik (WS 2010/11) Kapitel 1.5 und 1.6: Kalküle 1 /

Mehr

Prädikatenlogik: modelltheoretische Semantik

Prädikatenlogik: modelltheoretische Semantik Einführung in die Logik - 6 Prädikatenlogik: modelltheoretische Semantik Modelltheoretische / Denotationelle Semantik der Prädikatenlogik Ein Modell ist... ein künstlich geschaffenes Objekt, das die Struktur

Mehr

Vorsemesterkurs Informatik

Vorsemesterkurs Informatik Vorsemesterkurs Informatik Sommersemester 2018 Ronja Düffel 14. März 2018 Theoretische Informatik Wieso, weshalb, warum??!? 1 Modellieren und Formalisieren von Problemen und Lösungen 2 Verifikation (Beweis

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 I. Symbole, Terme, Formeln

Logik I. Symbole, Terme, Formeln Logik I Symbole, Terme, Formeln Wie jede geschriebene Sprache basiert die Prädikatenlogik erster Stufe auf einem Alphabet, welches aus den folgenden Symbolen besteht: (a) Variabeln wie zum Beispiel v 0,v

Mehr

Aussagenlogische Testspezifikation

Aussagenlogische Testspezifikation Seminar Spezifikationsbasierter Softwaretest Aussagenlogische Testspezifikation Peer Hausding (10.06.2006) 1 Gliederung Einführung Begriffe Test Modellspezifikation AutoFocus Transformation Spezifikation

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

Ersetzbarkeitstheorem

Ersetzbarkeitstheorem Ersetzbarkeitstheorem Die Abgeschlossenheit läßt sich auch folgendermaßen formulieren: Ersetzbarkeitstheorem Seien F und G Formeln mit F G. SeienH und H Formeln, so daß H aus H hervorgeht, indem ein Vorkommen

Mehr

Syntax der Aussagenlogik. Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen. Formel als Syntaxbaum. Teilformel A 3 A 1 A 4

Syntax der Aussagenlogik. Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen. Formel als Syntaxbaum. Teilformel A 3 A 1 A 4 Syntax der Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen Barbara König Übungsleitung: Christoph Blume Eine atomare Formel hat die Form A i (wobei i = 1, 2, 3,...). Definition (Formel)

Mehr

Resolutionsalgorithmus

Resolutionsalgorithmus 112 Resolutionskalkül Mit dem Begriff Kalkül bezeichnet man eine Menge von syntaktischen Umformungsregeln, mit denen man semantische Eigenschaften der Eingabeformel herleiten kann. Für den Resolutionskalkül:

Mehr

Bisher. Wiederholung NFA Modellierung durch NFA Kripke-Struktur

Bisher. Wiederholung NFA Modellierung durch NFA Kripke-Struktur Bisher Wiederholung NFA Modellierung durch NFA Kripke-Struktur Model-Checking Modell beschrieben durch Kripke-Struktur A Spezifikation ϕ in einer Temporallogik Verifikation: Nachweis, dass die Struktur

Mehr

Motivation. Formale Grundlagen der Informatik 1 Kapitel 14 Aussagenlogik Syntax & Semantik. Motivation. Motivation

Motivation. Formale Grundlagen der Informatik 1 Kapitel 14 Aussagenlogik Syntax & Semantik. Motivation. Motivation Formale Grundlagen der Informatik 1 Kapitel 14 Aussagenlogik & Frank Heitmann heitmann@informatik.uni-hamburg.de Mit der Aussagenlogik lassen sich einfache Verknüpfungen zwischen (atomaren) Gebilden ausdrücken

Mehr

Binary Decision Diagrams (Einführung)

Binary Decision Diagrams (Einführung) Binary Decision Diagrams (Einführung) Binary Decision Diagrams (BDDs) sind bestimmte Graphen, die als Datenstruktur für die kompakte Darstellung von booleschen Funktionen benutzt werden. BDDs wurden von

Mehr

5 BINÄRE ENTSCHEIDUNGS- DIAGRAMME (BDDS)

5 BINÄRE ENTSCHEIDUNGS- DIAGRAMME (BDDS) 5 BINÄRE ENTSCHEIDUNGS- DIAGRAMME (BDDS) Sommersemester 2009 Dr. Carsten Sinz, Universität Karlsruhe Datenstruktur BDD 2 1986 von R. Bryant vorgeschlagen zur Darstellung von aussagenlogischen Formeln (genauer:

Mehr

Kapitel 1.5. Ein adäquater Kalkül der Aussagenlogik. Teil 1: Kalküle und Beweisbarkeit und die Korrektheit des Shoenfield-Kalküls

Kapitel 1.5. Ein adäquater Kalkül der Aussagenlogik. Teil 1: Kalküle und Beweisbarkeit und die Korrektheit des Shoenfield-Kalküls Kapitel 1.5 Ein adäquater Kalkül der Aussagenlogik Teil 1: Kalküle und Beweisbarkeit und die Korrektheit des Shoenfield-Kalküls Mathematische Logik (WS 2012/13) Kapitel 1.5: Kalküle 1/30 Syntaktischer

Mehr

Resolutionskalkül. wird t als eine Menge K t von Klauseln geschrieben, welche die einzelnen Maxterme repräsentieren:

Resolutionskalkül. wird t als eine Menge K t von Klauseln geschrieben, welche die einzelnen Maxterme repräsentieren: Resolutionskalkül Ein Kalkül ist eine Kollektion von syntaktischen Umformungsregeln, die unter gegebenen Voraussetzungen aus bereits vorhandenen Formeln neue Formeln erzeugen. Der Resolutionskalkül besteht

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

Logik für Informatiker

Logik für Informatiker Vorlesung Logik für Informatiker 1. Einführung Bernhard Beckert Universität Koblenz-Landau Sommersemester 2006 Logik für Informatiker, SS 06 p.1 Formale Logik Ziel Formalisierung und Automatisierung rationalen

Mehr

Schlussregeln aus anderen Kalkülen

Schlussregeln aus anderen Kalkülen Was bisher geschah Klassische Aussagenlogik: Syntax Semantik semantische Äquivalenz und Folgern syntaktisches Ableiten (Resolution) Modellierung in Aussagenlogik: Wissensrepräsentation, Schaltungslogik,

Mehr

Theoretische Grundlagen des Software Engineering

Theoretische Grundlagen des Software Engineering Theoretische Grundlagen des Software Engineering 6: Formale Logik Einführung schulz@eprover.org Formale Logik Ziel Formalisierung und Automatisierung rationalen Denkens Rational richtige Ableitung von

Mehr

MODEL CHECKING 2 - AUTOMATEN

MODEL CHECKING 2 - AUTOMATEN MODEL CHECKING 2 - AUTOMATEN Sommersemester 2009 Dr. Carsten Sinz, Universität Karlsruhe Model Checking 2 System (Hardware/ Software) Model Checking, Formalisierung, Beweis Übersetzung in Logik Gewünschte

Mehr

Beschreibungslogik Kapitel 7: ABoxen und Anfragebeantwortung

Beschreibungslogik Kapitel 7: ABoxen und Anfragebeantwortung Beschreibungslogik Kapitel 7: ABoxen und Anfragebeantwortung Sommersemester 2017 Thomas Schneider AG Theorie der künstlichen Intelligenz (TdKI) http://tinyurl.com/ss17-bl Beschreibungslogik SoSe 2017 7

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

Berechenbarkeitstheorie 19. Vorlesung

Berechenbarkeitstheorie 19. 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

Mathematische und logische Grundlagen der Linguistik. Kapitel 3: Grundbegriffe der Aussagenlogik

Mathematische und logische Grundlagen der Linguistik. Kapitel 3: Grundbegriffe der Aussagenlogik Mathematische und logische Grundlagen der Linguistik Kapitel 3: Grundbegriffe der Aussagenlogik Grundbegriffe der Aussagenlogik 1 Die Aussagenlogik ist ein Zweig der formalen Logik, der die Beziehungen

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

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

Mathematische und logische Grundlagen der Linguistik. Mathematische und logische Grundlagen der Linguistik. Karl Heinz Wagner. Hier Titel eingeben 1

Mathematische und logische Grundlagen der Linguistik. Mathematische und logische Grundlagen der Linguistik. Karl Heinz Wagner. Hier Titel eingeben 1 Grundbegriffe der Aussagenlogik 1 Mathematische und logische Grundlagen der Linguistik Kapitel 3: Grundbegriffe der Aussagenlogik Die Aussagenlogik ist ein Zweig der formalen Logik, der die Beziehungen

Mehr

Beispiel Aussagenlogik nach Schöning: Logik...

Beispiel Aussagenlogik nach Schöning: Logik... Beispiel Aussagenlogik nach Schöning: Logik... Worin besteht das Geheimnis Ihres langen Lebens? wurde ein 100-jähriger gefragt. Ich halte mich streng an die Diätregeln: Wenn ich kein Bier zu einer Mahlzeit

Mehr

Formale Systeme. Prof. Dr. Bernhard Beckert, WS 2016/ KIT Die Forschungsuniversita t in der Helmholtz-Gemeinschaft

Formale Systeme. Prof. Dr. Bernhard Beckert, WS 2016/ KIT Die Forschungsuniversita t in der Helmholtz-Gemeinschaft Formale Systeme Prof. Dr. Bernhard Beckert, WS 2016/2017 Aussagenlogik: Tableaukalku l KIT I NSTITUT F U R T HEORETISCHE I NFORMATIK www.kit.edu KIT Die Forschungsuniversita t in der Helmholtz-Gemeinschaft

Mehr

Formale Grundlagen der Informatik 1 Kapitel 13 Aussagenlogik Syntax & Semantik

Formale Grundlagen der Informatik 1 Kapitel 13 Aussagenlogik Syntax & Semantik Formale Grundlagen der Informatik 1 Kapitel 13 Aussagenlogik & Frank Heitmann heitmann@informatik.uni-hamburg.de 23. Mai 2016 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/42 Literaturhinweis Literaturhinweis

Mehr

1.1 Motivation. Theorie der Informatik. Theorie der Informatik. 1.1 Motivation. 1.2 Syntax. 1.3 Semantik. 1.4 Formeleigenschaften. 1.

1.1 Motivation. Theorie der Informatik. Theorie der Informatik. 1.1 Motivation. 1.2 Syntax. 1.3 Semantik. 1.4 Formeleigenschaften. 1. Theorie der Informatik 19. Februar 2014 1. Aussagenlogik I Theorie der Informatik 1. Aussagenlogik I Malte Helmert Gabriele Röger Universität Basel 19. Februar 2014 1.1 Motivation 1.2 Syntax 1.3 Semantik

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

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

Kapitel 1.2. Aussagenlogik: Semantik. Mathematische Logik (WS 2011/12) Kapitel 1.2: Aussagenlogik: Semantik 1 / 57

Kapitel 1.2. Aussagenlogik: Semantik. Mathematische Logik (WS 2011/12) Kapitel 1.2: Aussagenlogik: Semantik 1 / 57 Kapitel 1.2 Aussagenlogik: Semantik Mathematische Logik (WS 2011/12) Kapitel 1.2: Aussagenlogik: Semantik 1 / 57 Übersicht 1.2.1 Interpretationen der al. Formeln 1.2.2 Zentrale semantische Begriffe 1.2.3

Mehr

Logik für Informatiker

Logik für Informatiker Logik für Informatiker 2. Aussagenlogik Teil 5 8.05.2012 Viorica Sofronie-Stokkermans Universität Koblenz-Landau e-mail: sofronie@uni-koblenz.de 1 Bis jetzt Syntax der Aussagenlogik: Definition der Menge

Mehr

Erfüllbarkeit von Formelmengen

Erfüllbarkeit von Formelmengen Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.6 Aussagenlogik Kompaktheit 75 Erfüllbarkeit von Formelmengen bisher nur Erfüllbarkeit einzelner Formeln betrachtet erweitere Begriff auf Mengen

Mehr

Wie komme ich von hier zum Hauptbahnhof?

Wie komme ich von hier zum Hauptbahnhof? NP-Vollständigkeit Wie komme ich von hier zum Hauptbahnhof? P Wie komme ich von hier zum Hauptbahnhof? kann ich verwende für reduzieren auf Finde jemand, der den Weg kennt! Alternativ: Finde eine Stadtkarte!

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

Logik für Informatiker

Logik für Informatiker Logik für Informatiker 2. Aussagenlogik Teil 3 06.05.2012 Viorica Sofronie-Stokkermans Universität Koblenz-Landau e-mail: sofronie@uni-koblenz.de 1 Bis jetzt Syntax (Formeln) Semantik Wertebelegungen/Valuationen/Modelle

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

Induktive Definitionen

Induktive Definitionen Induktive Definitionen Induktive Definition: Konstruktive Methode zur Definition einer Menge M von Objekten aus Basisobjekten mittels (Erzeugungs-) Regeln Slide 1 Rekursion über den Aufbau: Konstruktive

Mehr