Model Checking some basic aspects regarding LTL. DECS Workshop 31 st of January 2006

Größe: px
Ab Seite anzeigen:

Download "Model Checking some basic aspects regarding LTL. DECS Workshop 31 st of January 2006"

Transkript

1 Model Checking some basic aspects regarding LTL DECS Workshop 31 st of January 2006

2 0 - Näherung Eine Kuh ist in nullter Näherung eine Kugel mit ca 2m Durchmesser Department of Embedded Systems 2

3 0 Näherung: Überblick LTL sys spec (spec) (sys) x (spec) ( clue ) Sys: Einen Springbrunnen im Garten bauen Benötigte Werkzeuge u Material: Kelle, Schaufel, Bohrer u Mörtel, Sand, Kupferrohre usw. Spec: Wo will ich daß es rausplätschert (=Fontänenbedingung) zb aus d Statue, d Wand, über der Säule. Invertierung der Spec (=Nichtfontänenbed.; in SPIN Never Claim), dh: Kein Wasserstrahl aus Statue, Wand, Säule usw. > Realisierung mit Korkstoppeln Sys & Spec verknüpfen ( Produkt v Sys & inverser Spec): mit Korkstoppel Löcher verschließen Produktautomat testen = Wasser aufdrehen Alles trocken: Spec erfüllt! Spec nicht erfüllt: Fehler (=Wasserverlust woanders ) sofort ersichtlich Pfad zum Fehler auch sofort ersichtlich (Fontäne oder anderer Hinweis ) Department of Embedded Systems 3

4 1 - Näherung Eine Kuh ist in erster Näherung ein Organismus bestehend aus den Teilen: Kopf (mit Hörnern), Hals, Körper, Beinen, Euter und Schwanz. Diese Teile fügen sich zu Kuh zusammen wie auf dem Bild oben. Department of Embedded Systems 4

5 1 Näherung: Die benötigten Elemente Sys: Auf bestimmte Vorgänge beschränke Programmarten (Automata) bei denen Kontrollfluß im Vordergrund steht die nichtdeterministisch modelliert werden die in der Regel nicht terminieren Beispiele: Kommunikationsprotokolle, Kontroll- und Steuerungssysteme (Embedded Systems..) Spec: Spezifikation Anforderungen an unendliche Programmabläufe formuliert in temporaler Logik mit CTL = Computation Tree Logic (Clarke, Emerson 1982) LTL = Linear Temporal Logic (Pnuelli 1977) tataa! Department of Embedded Systems 5

6 1 Näherung: Endliche Transitionsgraphen Wenn Kontrollfluss im Vordergrund, dann häufig nur endlich viele Boolesche Variablen im Spiel Zustandsraum ist dann endlich und daher mit endlichem Transitionsgraphen darstellbar Transitionsgraphen sind Automata mit ganz bestimmten Eigenschaften bzw. Einschränkungen Nur diese speziellen Automata lassen sich für das symbolische Model Checking verwenden Department of Embedded Systems 6

7 1 Näherung: Die benötigten Elemente Wiederholung: Deterministischer endlicher Automat Zustandsgraph Automat A = (Q,Σ,q0,Δ,F) ( das ist ein 5-Tupel!) Q: (nichtleere) Menge der Zustände; Q = {q0, q1, q2, q3} Σ: Eingabeparameter; Σ = {a,b,c} ( wie ein kleines Alphabet - hint!) q0: Anfangszustand Δ: Menge der Übergänge δ: δ {Q x Q} (= merke: klein Delta geht von Kuh nach Kuh ) F: Endzustand (kann auch eine Menge von Endzuständen sein) hat einen Start und ein Ende Kann eine Eingabesequenz verarbeiten ; zb Folge < a, b, a, b, c > ( Hinweis: Diese Sequenz heißt später Wort α über dem Alphabet Σ ) Nimmt dabei die Zustände < q0, q1, q2, q1, q2, q3 > an Department of Embedded Systems 7

8 1 Näherung: Die benötigten Elemente Nichtdeterministischer endlicher Automat Zustandsgraph Automat A = (Q,Σ,q0,Δ,F) ( das ist ein 5-Tupel!) Kennen wir schon alles! Q: (nichtleere) Menge der Zustände; Q = {q0, q1, q2, q3} Σ: Eingabeparameter; Σ = {a,b,c} ( wie ein kleines Alphabet - hint!) q0: Anfangszustand Δ: Menge der Übergänge Q x Q F: Endzustand (kann auch eine Menge von Endzuständen sein) hat einen Start und ein Ende Kann eine Eingabesequenz verarbeiten ; zb Folge < a, b, a, b, c > ( Hinweis: Diese Sequenz heißt später Wort α über dem Alphabet Σ ) Nimmt dabei die Zustände < q0, q1, q2, q1, q2, q3 > an Department of Embedded Systems 8

9 1 Näherung: Die benötigten Elemente nichtdeterministischer Automat: Warum? Ein Beispiel: Alle Zeichenfolgen die einen Einser an der dritten Position haben (von rechts gesehen) Deterministischer Automat (konkrete Konstruktion): Hint: Alle Endzustände sind 2x eingekreist Nichtdeterministischer Automat (formal): Department of Embedded Systems 9

10 1 Näherung: Die benötigten Elemente Büchi Automat ω -run ω - Acceptance Department of Embedded Systems 10

11 1 Näherung: Die benötigten Elemente Büchi Automat - einfach Michls Klartext: Füttere den Büchi Automaten mit einem (unendlich langen) Wort bestehend aus Buchstaben Der Büchi Automat akzeptiert das Wort, wenn einer seiner Endzustände immer wieder erreicht wird und das unendlich oft. Nochmal: Füttere die Büchi Kuh mit (unendlich viel) Heu bestehend aus Gräsern Die Büchi Kuh akzeptiert das Heu, wenn sie immer wieder zb ein süßes Kleeblatt (=Buchstabe) auf der Zunge spürt (..dann erreicht das Heu in der Büchi Kuh einen Endzustand ) Frage: Wo hinkt dieser Vergleich? Department of Embedded Systems 11

12 1 Näherung: Die benötigten Elemente Büchi Automat - Beispiel q 0 q 1 q 2 α = q 0 q 1 q 2 q 2 q 2 q 2 q 2.Wort wird vom Büchi Automaten akzeptiert α = q 0 q 1 q 2 q 1 q 2 q 1 q 2.Wort wird vom Büchi Automaten akzeptiert α = q 0 q 1 q 2 q 1 q 1 q 1 q 1.Wort wird NICHT vom Büchi Automaten akzeptiert Department of Embedded Systems 12

13 1 Näherung: Die benötigten Elemente Kripke Struktur = Büchi Automat mit Beschriftung (=Beschriftungsfolge) Vektor P = p 1 p 2... p n-1 p n Department of Embedded Systems 13

14 1 Näherung: Die benötigten Elemente Kripke Struktur = Büchi Automat mit Beschriftung (=Beschriftungsfolge) Beschriftungsfolge: Department of Embedded Systems 14

15 1 Näherung: Die benötigten Elemente Kripke Struktur - Abwicklungsbaum Merke: Nur Kripkestukturen, die unendlich lange Abwicklungsbäume erzeugen, sind brave Kripkestrukturen! Department of Embedded Systems 15

16 1 Näherung: Die benötigten Elemente Bemerkung: Model Checking Symbolic Model Checking Explizite Darstellung des Tansitionsgraphen: zb 20 Prozesse mit jeweils 10 Zuständen ergibt ca Zustände Kompaktere Darstellung benötigt! Binäre Kodierung & Darstellung durch OBDDs OBDD: Ordered Binary Decision Diagram (Bryant 86) Boolesche Funktionen dargestellt durch azyklische Graphen. Jede Belegung der Variablen entspricht einem Pfad von der Wurzel zu einer mit 0 oder 1 beschrifteten Senke. Department of Embedded Systems 16

17 1 Näherung: Die benötigten Elemente Zusammenfassung: Die Büchi Kuh frißt nur spezielles Heu - und kaut es unendlich oft wieder Programm mit unendlich langer Laufdauer & endlich vielen Zuständen als endlicher Büchi Automat darstellbar Büchi Automat bekommt Label (= bei diesem Zustand gültiger Eingabebzw. Inputvektor) verpasst und heißt nun Kripke Struktur Kripke Strukturen dürfen nur unendlich lange Abwicklungsbäume haben Die Label sind die Buchstaben des Alphabets aus der Kripke Struktur Büchi Automat akzeptiert nur bestimmte, aber unendlich lange Worte = Abfolge von Buchstaben Büchi Automaten als Boolesche Ausdrücke darstellbar OBDDs helfen das Problem auf eine berechenbare Größe zu schrumpfen Department of Embedded Systems 17

18 1 Näherung: Die benötigten Elemente KP KKP KPP Department of Embedded Systems 18

19 Wiederholung - Was ist bis jetzt geschehen? Sys: Einen Springbrunnen im Garten bauen Benötigte Werkzeuge u Material: Kelle, Schaufel, Bohrer u Mörtel, Sand, Kupferrohre usw. Spec: Wo will ich daß es rausplätschert (=Fontänenbedingung) zb aus d Statue, d Wand, über der Säule. Invertierung der Spec (=Nichtfontänenbed.; in SPIN Never Claim), dh: Kein Wasserstrahl aus Statue, Wand, Säule usw. > Realisierung mit Korkstoppeln Sys & Spec verknüpfen ( Produkt v Sys & inverser Spec): mit Korkstoppel Löcher verschließen Produktautomat testen = Wasser aufdrehen Alles trocken: Spec erfüllt! Spec nicht erfüllt: Fehler (=Wasserverlust woanders ) sofort ersichtlich Pfad zum Fehler auch sofort ersichtlich (Fontäne oder anderer Hinweis ) Keine PANIK! - Der Rest geht viel, viel schneller...versprochen!! Department of Embedded Systems 19

20 1 Näherung: Die benötigten Elemente SPEC von 1 - Näherung Department of Embedded Systems 20

21 1 Näherung: Die benötigten Elemente LTL Einführung - Idee LTL: Linear time temporal logic - vorgeschlagen als Spezifikationssprache durch A. Pnueli Idee: Eine LTL-Formel beschreibt eine Eigenschaft unendlicher Pfade. Interpretation ist dann auch in Kripke-Struktur möglich: Die K.Struktur erfülle die LTL-Formel ϕ genau dann wenn alle (unendlichen) Pfade des Abwicklungsbaums erfüllen ϕ. Wir beziehen uns jetzt auf unendliche Pfade als Modelle von LTL- Formeln. Department of Embedded Systems 21

22 1 Näherung: Die benötigten Elemente Temporalquantoren - Der Wortschatz von LTL X f ( next time; SPIN: ): Im nächsten Zustand gilt Eigenschaft f F f ( in the Future, Finally; SPIN: <> ): In mindestens einem Zustand auf dem Pfad gilt Eigenschaft f ( dafür braucht man eben einen nichtdeterministischen Automaten..) G f ( Globally ; SPIN: [] ): In allen Zuständen auf dem Pfad gilt Eigenschaft f f U g ( Until ; SPIN: U (weak) oder U (strong)): Mindestens ein Zustand auf dem Pfad erfüllt g und alle vorherigen Zustände erfüllen f f R g ( Release): Umkehroperator von Until, dh Gültigkeiten von f und g sind vertauscht Department of Embedded Systems 22

23 1 Näherung: Die benötigten Elemente Was gibt es noch? (Der Wortschatz von LTL) Implikation (SPIN: -> ), und, oder (SPIN:, ) nicht (SPIN:! ) Department of Embedded Systems 23

24 1 Näherung: Die benötigten Elemente Beispielformeln Department of Embedded Systems 24

25 1 Näherung: Die benötigten Elemente Beispielautomaten für LTL - Formeln über p 1, p 2 GFp 1 ( immer wieder 1 ) Beispielwort: q0 1 q1 1 0 FGp1 ( schließlich nur noch 1 ) 0,1 Beispielwort: p1up2 Beispielwort: 1 Department of Embedded Systems 25

26 2 - Näherung Eine Kuh ist ein weibliches Säugetier (weibliches Hausrind), das Gras und Heu frißt (mit dem Maul, vorne am Kopf), das Futter verdaut, und, wenn es ein Muttertier ist, zum Teil in Milch umwandelt ( und diese über den Euter, unten, kurz vor den hinteren Beinen, zugängig macht zum Abrufen). Department of Embedded Systems 26

27 2 Näherung: Die Interaktionen 2 - Näherung: Spiel mit allen Karten Programm schreiben als Kripke Struktur (M,s) ( = Ich baue mir einen Springbrunnen ) LTL Formel formulieren ( = Wo soll es rausplätschern - Fontänenbedingung) LTL Formel invertieren ( Never Claim ) und in einen Büchi Automaten umwandeln (ist automatisierbar) ( = Korkstoppel zuschneiden ) Produktautomat von Kripke Struktur und Büchi Automat bilden ( = Korkstoppel in die Löcher ) Produktautomat testen auf Leerheit ( = Wasser aufdrehen ) Jubeln oder: Versuch das Gegenbeispiel anhand des Pfades zu verstehen ( = Dicht oder nicht dicht, das ist hier die Frage ) Department of Embedded Systems 27

28 2 Näherung: Die Interaktionen LTL Formel invertieren (= in Negationsnormalform bringen) ( = Korkstoppel zuschneiden Teil 1) Inversionsregeln Wichtige Äquivalenzumformungen Department of Embedded Systems 28

29 2 Näherung: Die Interaktionen Beispiel: Umwandlung von LTL Formel zu Büchi Automat ( = Korkstoppel zuschneiden Teil 2 - per Hand ) 1 0 true false & false true false true false true true false Department of Embedded Systems 29

30 2 Näherung: Die Interaktionen LTL Formel in einen Büchi Automaten umwandeln (ist automatisierbar) ( = Korkstoppel zuschneiden Teil 3) LTL in nichtdeterministischen Büchi Automaten umwandeln NBA in alternierenden Büchi Automaten (ABA) umwandeln ABA in Generalisierten Büchi Automaten (GBA) umwandeln GBA in Büchi Automaten umwandeln Department of Embedded Systems 30

31 2 Näherung: Die Interaktionen Wozu die große Umwandlungsorgie? Department of Embedded Systems 31

32 2 Näherung: Die Interaktionen In der Theorie - Falle Department of Embedded Systems 32

33 2 Näherung: Die Interaktionen Anmerkung Modul für SPIN mit alt. Büchi A. Department of Embedded Systems 33

34 Des Dramas letzter Teil Department of Embedded Systems 34

35 2 Näherung: Die Interaktionen MAN NEHME : Kochrezept zur Konstruktion eines schmackhaften Produktautomaten (in 4-5 Minuten) Voraussetzung: Kripke Struktur (M,s) und (aus LTL gewonnener) Büchi Automat A verwenden das gleiche Alphabet Produktautomat M x A ist ein Büchi Automat: Nun checke die BESCHRIFTUNG DES PFADES - diese wird als Buchstaben eines Wortes akzeptiert, und NICHT Ereignisse von außen! Beginne im Anfangszustand der Kripke Struktur und des Büchi Automaten. Der Büchi A. muß die Beschriftung der Kripke S. in diesem Zustand lesen Diese Beschriftung legt fest, welche Transitionen der BA machen darf. Dann gehe den in der KS erlaubten Pfad weiter Ab hier Wiederholung: Schau nach, welche Beschriftung der BA nun lesen darf und welche (neuen) Transitionen er machen darf usw. bis Du durch bist. Wichtiger Tip: Endzustände sind die (und nur die), wo der Büchi Automat (!) in einem Endzustand ist Department of Embedded Systems 35

36 Produktautomat - Beispiel Kripkestruktur Produktautomat (s 0, q 0 ) (s 2, q 0 ) (s 1, q 0 ) (s 1,q 1 ) (s 2,q 1 ) Büchiautomat (s 3, q 1 ) (s 3, q 2 ) Endzustände des BA Fall 1: s 0, s 2, s 1, s 2, s 1, q 0, q 0, q 0, q 1, q 1, Fall 2: s 3, s 3, s 3, s 3, q 2, q 2, q 2, q 2 akzeptierend nicht akzeptierend Department of Embedded Systems 36

37 2 Näherung: Die Interaktionen Woran man erkennt, daß der selbstgebastelte Produktautomat wasserdicht ist (in Technobrabbel: nur das Leere Wort akzeptiert ) Kochrezept 2: Schau nach, ob es vom Anfang (s 0,q 0 ) einen Pfad zu einem Endzustand q gibt. Also, ob man überhaupt hinkommen kann vom Anfang zum Zustand q Nein? - Gratuliere, dein Springbrunnen ist wasserdicht Ja? - Nicht verzweifeln, noch ist Hoffnung: Fall A: Der Endzustand ist trivial, d.h. der Beschriftungspfad enthält nur den Endzustand, unendlich oft.. Uff! Glück gehabt! Das Ding ist doch dicht geworden! Fall B: Der Endzustand wird immer wieder duchlaufen, der Beschriftungspfad durchläuft aber mehr als ein Element immer wieder - inklusive des Endzustandes Hier ist also Dein Springbrunnen wirklich undicht! Department of Embedded Systems 37

38 THE END (für heute ) Department of Embedded Systems 38

LTL und Spin. Stefan Radomski

LTL und Spin. Stefan Radomski LTL und Spin Stefan Radomski sr@oop.info Gliederung Wiederholung Grundlagen Vorstellung LTL Syntax Semantik Beispiele Model Checking mit Spin Fallbeispiele Einführung in Promela Vorführung Zusammenfassung

Mehr

Werkzeuggestützte Softwareprüfungen: Model Checking I - CTL. Vortrag von Florian Heyer

Werkzeuggestützte Softwareprüfungen: Model Checking I - CTL. Vortrag von Florian Heyer Werkzeuggestützte Softwareprüfungen: Vortrag von Florian Heyer Gliederung Wiederholung Einführung CTL im Detail Anwendungsbeispiele Abschluss 2 Model Checking (Wiederholung) Überprüfung einer Systembeschreibung

Mehr

Modul 7: Automatische Validierung von Sicherheitsprotokollen - Einführung Model-Checking. Prof. Dr. Martin Leischner Netzwerksysteme und TK

Modul 7: Automatische Validierung von Sicherheitsprotokollen - Einführung Model-Checking. Prof. Dr. Martin Leischner Netzwerksysteme und TK Modul 7: Automatische Validierung von Sicherheitsprotokollen - Einführung Model-Checking 11.12.2018 12:11:59 M. Leischner Sicherheit in Netzen Folie 1 Automatische Validierung von Protokollen - Lehrkonzept

Mehr

Model Checking mit Büchi Automaten

Model Checking mit Büchi Automaten Ingo Weigelt Softwaretechnik 3 16.05.2007 Übersicht 1 Automaten über unendlichen Wörtern ω-automaten Büchi-Automaten 2 Model Checking mit Büchi Automaten Konstruktion von A Konstruktion von A S Leerheitstest

Mehr

Model Checking mit SPIN

Model Checking mit SPIN Model Checking mit SPIN Sabine Bauer 15.08.2005 2 Gliederung 1. Teil: Grundlagen des Model Checking - Abgrenzung zur deduktiven Verifikation - Das Model Checking-Problem - Kripke-Struktur - LTL - Arbeitsweise

Mehr

Model Checking. Grundlagen und Motivation. Alex Salnikow

Model Checking. Grundlagen und Motivation. Alex Salnikow Model Checking Grundlagen und Motivation Alex Salnikow Gliederung Einführung und Motivation Anwendungsgebiet Model Checking Definition von Model Checking Systemmodellierung / Formalisierung des Systems

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

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

MODEL CHECKING 3 TEMPORALE LOGIKEN

MODEL CHECKING 3 TEMPORALE LOGIKEN MODEL CHECKING 3 TEMPORALE LOGIKEN Sommersemester 2009 Dr. Carsten Sinz, Universität Karlsruhe Kripke-Struktur 2 Definition: Sei A eine Menge von Aussagevariablen. Eine Kripke-Struktur M über A ist ein

Mehr

4) Automaten auf unendlichen Wörtern

4) Automaten auf unendlichen Wörtern 4) Automaten auf unendlichen Wörtern GPS: Automaten auf unendlichen Wörtern Büchi-Automaten 169 Unendliche Wörter zur Erinnerung: Linearzeit-Eigenschaft = Menge unendlicher Traces bisher kein Spezifikationsformalismus

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

Software Engineering Ergänzung zur Vorlesung

Software Engineering Ergänzung zur Vorlesung Ergänzung zur Vorlesung Prof. Dr. Markus Müller-Olm WS 2008 2009 2.6.1 Endliche und reguläre Sprachen Endliche und reguläre Sprache: fundamental in vielen Bereichen der Informatik: theorie Formale Sprachen

Mehr

Können Computer programmieren? Bernd Finkbeiner, Universität des Saarlandes

Können Computer programmieren? Bernd Finkbeiner, Universität des Saarlandes Können Computer programmieren? Bernd Finkbeiner, Universität des Saarlandes Alonzo Church (1903-1995) Given a requirement which a circuit is to satisfy, we may suppose the requirement expressed in some

Mehr

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2012

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2012 Automaten und Formale Sprachen alias Theoretische Informatik Sommersemester 2012 Dr. Sander Bruggink Übungsleitung: Jan Stückrath Sander Bruggink Automaten und Formale Sprachen 1 Abgeschlossenheit (Definition)

Mehr

Deterministische endliche Automaten - Wiederholung

Deterministische endliche Automaten - Wiederholung Deterministische endliche Automaten - Wiederholung Die folgende Klasse Zahl stellt einen endlichen Automaten dar. Ermittle die Größen des Automaten und zeichne den Zustandsgraphen. Gib Zeichenfolgen an,

Mehr

Formale Grundlagen der Informatik 3 Kapitel 6 Automatenbasiertes LTL Model Checking

Formale Grundlagen der Informatik 3 Kapitel 6 Automatenbasiertes LTL Model Checking Formale Grundlagen der Informatik 3 Kapitel 6 Automatenbasiertes LTL Model Checking Frank Heitmann heitmann@informatik.uni-hamburg.de 11. Januar 2016 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/62

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

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

Formale Grundlagen der Wirtschaftsinformatik

Formale Grundlagen der Wirtschaftsinformatik Formale Grundlagen der Wirtschaftsinformatik Nikolaj Popov Research Institute for Symbolic Computation popov@risc.uni-linz.ac.at Sprachen und Grammatiken Teil II Sprache Definition: Ein Alphabet Σ ist

Mehr

Reguläre Sprachen. R. Stiebe: Theoretische Informatik für ING-IF und Lehrer,

Reguläre Sprachen. R. Stiebe: Theoretische Informatik für ING-IF und Lehrer, Reguläre Sprachen Reguläre Sprachen (Typ-3-Sprachen) haben große Bedeutung in Textverarbeitung und Programmierung (z.b. lexikalische Analyse) besitzen für viele Entscheidungsprobleme effiziente Algorithmen

Mehr

THIA - Übungsblatt 2.

THIA - Übungsblatt 2. THIA - Übungsblatt 2. Aufgabe 12 (Eine einfache Sprache). Endliche Ziffernfolgen, die mit einer 0 beginnen, auf die mindestens eine weitere Ziffer folgt, wobei nur die Ziffern 0,..., 7 vorkommen, sollen

Mehr

Logik für Informatiker

Logik für Informatiker Logik für Informatiker Wintersemester 2007/08 Thomas Schwentick Teil C: Nichtklassische Logiken 9. Temporallogiken Version von: 4. Februar 2008(11:55) Inhalt 9.1 Vorüberlegungen 9.2 Lineare Zeit: LTL 9.3

Mehr

Lineare Temporale Logik

Lineare Temporale Logik nach Principles of Model Checking von Christel Baier und Joost-Pieter Katoen 19.Dezember 2013 Wiederholung (1) Ein Transitionssystem TS ist ein Tupel (S,Act,,I,AP,L) mit: S - Menge von Zuständen Act -

Mehr

Transformation von regulärer Linearzeit- Temporallogik zu Paritätsautomaten

Transformation von regulärer Linearzeit- Temporallogik zu Paritätsautomaten Transformation von regulärer Linearzeit- Temporallogik zu Paritätsautomaten Malte Schmitz, Lübeck im Januar 2012 korrigierte Fassung, Lübeck im März 2014 Diese Bachelorarbeit wurde ausgegeben und betreut

Mehr

Abschlusseigenschaften. Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester Abschlusseigenschaften

Abschlusseigenschaften. Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester Abschlusseigenschaften Automaten und Formale Sprachen alias Theoretische Informatik Sommersemester 2012 Dr. Sander Bruggink Übungsleitung: Jan Stückrath Abgeschlossenheit (Definition) Gegeben sei eine Menge M und ein n-ärer

Mehr

Modellierung verteilter Systeme

Modellierung verteilter Systeme Modellierung verteilter Systeme (Grundlagen der Programm- und Systementwicklung II) 09 Eigenschaften Dr. Sebastian Voss fortiss GmbH Kompetenzfeldleiter Model-based Systeme Engineering Themenübersicht

Mehr

Formale Systeme. Büchi-Automaten. Prof. Dr. Bernhard Beckert WS 2009/2010 KIT INSTITUT FÜR THEORETISCHE INFORMATIK

Formale Systeme. Büchi-Automaten. Prof. Dr. Bernhard Beckert WS 2009/2010 KIT INSTITUT FÜR THEORETISCHE INFORMATIK Formale Systeme Prof. Dr. Bernhard Beckert WS 2009/2010 KIT INSTITUT FÜR THEORETISCHE INFORMATIK KIT University of the State of Baden-Württemberg and National Large-scale Research Center of the Helmholtz

Mehr

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

Algorithmen mit konstantem Platzbedarf: Die Klasse REG Algorithmen mit konstantem Platzbedarf: Die Klasse REG Sommerakademie Rot an der Rot AG 1 Wieviel Platz brauchen Algorithmen wirklich? Daniel Alm Institut für Numerische Simulation Universität Bonn August

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

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 2 Lösungsblatt 2. Mai 2 Einführung in die Theoretische Informatik

Mehr

Informatik III. Christian Schindelhauer Wintersemester 2006/07 3. Vorlesung

Informatik III. Christian Schindelhauer Wintersemester 2006/07 3. Vorlesung Informatik III Christian Schindelhauer Wintersemester 2006/07 3. Vorlesung 02.11.2006 schindel@informatik.uni-freiburg.de 1 Kapitel III Reguläre Sprachen Reguläre Sprachen und Ausdrücke Informatik III

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

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln, Theorie der Informatik 9. März 24 7. Reguläre Sprachen I Theorie der Informatik 7. Reguläre Sprachen I Malte Helmert Gabriele Röger Universität Basel 9. März 24 7. Reguläre Grammatiken 7.2 DFAs 7.3 NFAs

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

2 2 Reguläre Sprachen. 2.2 Endliche Automaten. Übersicht

2 2 Reguläre Sprachen. 2.2 Endliche Automaten. Übersicht Formale Systeme, Automaten, Prozesse Übersicht 2 2. Reguläre Ausdrücke 2.3 Nichtdeterministische endliche Automaten 2.4 Die Potenzmengenkonstruktion 2.5 NFAs mit ɛ-übergängen 2.6 Minimale DFAs und der

Mehr

Informatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung

Informatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung Informatik III Christian Schindelhauer Wintersemester 2006/07 13. Vorlesung 07.12.2006 1 Überblick: Die Church- Turing-These Turing-Maschinen 1-Band Turing-Maschine Mehrband-Turing-Maschinen Nichtdeterministische

Mehr

Formale Grundlagen der Informatik 1 Kapitel 5 Abschlusseigenschaften

Formale Grundlagen der Informatik 1 Kapitel 5 Abschlusseigenschaften Formale Grundlagen der Informatik 1 Kapitel 5 Frank Heitmann heitmann@informatik.uni-hamburg.de 18. April 2016 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/64 NFAs - Grundlagen DFAs vs. NFAs Der

Mehr

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln, Theorie der Informatik 8. März 25 8. Reguläre Sprachen I Theorie der Informatik 8. Reguläre Sprachen I 8. Reguläre Grammatiken Malte Helmert Gabriele Röger 8.2 DFAs Universität Basel 8. März 25 8.3 NFAs

Mehr

1 Lokale Sprachen. 2 Verallgemeinerung

1 Lokale Sprachen. 2 Verallgemeinerung 1 Lokale Sprachen Es soll um Sprachen gehen die nur aufgrund ihrer Teilworte einer festen Länge entschieden werden können. Anschaulich heisst dies man kann ein Fenster der Länge k über das Eingabewort

Mehr

Transformation von Paritätsautomaten in Büchi-Automaten

Transformation von Paritätsautomaten in Büchi-Automaten Bachelorarbeit Ausgegeben und betreut von Prof. Dr. Martin Leucker Institut für Softwaretechnik und Programmiersprachen Universität zu Lübeck Transformation von Paritätsautomaten in Büchi-Automaten Torben

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 18. Januar 2018 INSTITUT FÜR THEORETISCHE 0 18.01.2018 Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE KIT Die Forschungsuniversität

Mehr

Operationen auf endlichen Automaten und Transduktoren

Operationen auf endlichen Automaten und Transduktoren Operationen auf endlichen Automaten und Transduktoren Kursfolien Karin Haenelt 1 Notationskonventionen L reguläre Sprache A endlicher Automat DEA deterministischer endlicher Automat NEA nichtdeterministischer

Mehr

Generating Deterministic ω-automata for most LTL formulas by the Breakpoint Construction

Generating Deterministic ω-automata for most LTL formulas by the Breakpoint Construction Generating Deterministic ω-automata for most LTL formulas by the Breakpoint Construction Andreas Morgenstern, Klaus Schneider and Sven Lamberti März 2008 Übersicht Motivation Explizite Determinisierung

Mehr

Polynomielle Verifizierer und NP

Polynomielle Verifizierer und NP Polynomielle Verifizierer und NP Definition Polynomieller Verifizierer Sei L Σ eine Sprache. Eine DTM V heißt Verifizierer für L, falls V für alle Eingaben w Σ hält und folgendes gilt: w L c Σ : V akzeptiert

Mehr

2.2 Nichtdeterministische endliche Automaten

2.2 Nichtdeterministische endliche Automaten 2 Endliche Automaten arbeiten und hier kann dann ggf. auch wieder auf die Konstruktion verwiesen werden. Fragen 1. Wie viele Informationen kann man in einem DFA speichern? a) beliebig viele b) endlich

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 3 14. Mai 2010 Einführung in die Theoretische

Mehr

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

Frank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat

Frank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat Formale Grundlagen der Informatik 1 Kapitel 5 Über reguläre Sprachen hinaus und (Teil 2) Frank Heitmann heitmann@informatik.uni-hamburg.de 21. April 2015 Der Kellerautomat - Formal Definition (Kellerautomat

Mehr

Theoretische Informatik und Logik Übungsblatt 1 (2016S) Lösung

Theoretische Informatik und Logik Übungsblatt 1 (2016S) Lösung Theoretische Informatik und Logik Übungsblatt (26S) en Aufgabe. Sei L = {w#w r w {, } }. Geben Sie eine deterministische Turingmaschine M an, welche die Sprache L akzeptiert. Wählen Sie mindestens einen

Mehr

Operationen auf endlichen Akzeptoren und Transduktoren

Operationen auf endlichen Akzeptoren und Transduktoren Operationen auf endlichen Akzeptoren und Transduktoren Kursfolien Karin Haenelt Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 ( 1 05.04.2004) 1 Notationskonventionen L reguläre

Mehr

Model Checking. Timed Computation Tree Logic TCTL. Michael Hess

Model Checking. Timed Computation Tree Logic TCTL. Michael Hess Model Checking Timed Computation Tree Logic TCTL Michael Hess Gliederung Einführung Motivation Kripkestrukturen mit Zeitbedingungen TCTL Model Checking Regionenautomaten Komplexität Demonstration 2 Einführung

Mehr

LTL und CTL*-Model Checking

LTL und CTL*-Model Checking LTL und CTL*-Model Checking H. Peter Gumm Philipps-Universität Marburg Sommersemester 2007 Lineare Temporale Logik LTL ist einfacher zu verstehen als CTL Kann Fairness-Eigenschaften ausdrücken LTL- ist

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

Model Checking. H. Peter Gumm. Philipps-Universität Marburg Sommersemester 2007

Model Checking. H. Peter Gumm. Philipps-Universität Marburg Sommersemester 2007 H. Peter Gumm Philipps-Universität Marburg Sommersemester 2007 Inhaltsverzeichnis 1. Einführung Motivation Ampel-Beispiel Modellierung in SMV Temporale Eigenschaften 2. Das SMV System SMV Module und Prozesse

Mehr

Formale Systeme. Endliche Automaten. Prof. Dr. Bernhard Beckert WS 2009/2010 KIT INSTITUT FÜR THEORETISCHE INFORMATIK

Formale Systeme. Endliche Automaten. Prof. Dr. Bernhard Beckert WS 2009/2010 KIT INSTITUT FÜR THEORETISCHE INFORMATIK Formale Systeme Prof. Dr. Bernhard Beckert WS 2009/2010 KIT INSTITUT FÜR THEORETISCHE INFORMATIK KIT University of the State of Baden-Württemberg and National Large-scale Research Center of the Helmholtz

Mehr

Formale Systeme Prof. Dr. Bernhard Beckert, WS 2016/2017

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

Mehr

Formale Systeme. Endliche Automaten. Prof. Dr. Bernhard Beckert, WS 2015/ KIT I NSTITUT F U R T HEORETISCHE I NFORMATIK

Formale Systeme. Endliche Automaten. Prof. Dr. Bernhard Beckert, WS 2015/ KIT I NSTITUT F U R T HEORETISCHE I NFORMATIK Formale Systeme Prof. Dr. Bernhard Beckert, WS 2015/2016 Endliche Automaten KIT I NSTITUT F U R T HEORETISCHE I NFORMATIK KIT Universita t des Landes Baden-Wu rttemberg und nationales Forschungszentrum

Mehr

Proseminar Komplexitätstheorie P versus NP Wintersemester 2006/07. Nichtdeterministische Turingmaschinen und NP

Proseminar Komplexitätstheorie P versus NP Wintersemester 2006/07. Nichtdeterministische Turingmaschinen und NP Proseminar Komplexitätstheorie P versus NP Wintersemester 2006/07 Vortrag am 17.11.2006 Nichtdeterministische Turingmaschinen und NP Yves Radunz Inhaltsverzeichnis 1 Wiederholung 3 1.1 Allgemeines........................................

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

Model Checking. H. Peter Gumm. Philipps-Universität Marburg Sommersemester 2008

Model Checking. H. Peter Gumm. Philipps-Universität Marburg Sommersemester 2008 H. Peter Gumm Philipps-Universität Marburg Sommersemester 2008 Inhaltsverzeichnis 1. Einführung Motivation Ampel-Beispiel Modellierung in SMV Temporale Eigenschaften 2. Das SMV System SMV Module und Prozesse

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. Sascha Böhme, Lars Noschinski Sommersemester 2 Lösungsblatt 2 3. Mai 2 Einführung in die Theoretische Informatik Hinweis:

Mehr

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2012

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2012 utomaten und Formale Sprachen alias Theoretische Informatik Sommersemester 2012 Dr. Sander Bruggink Übungsleitung: Jan Stückrath Sander Bruggink utomaten und Formale Sprachen 1 Der CYK-lgorithmus Beispiel

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

a b b a Alphabet und Wörter - Zusammengefasst Formale Grundlagen der Informatik 1 Kapitel 2 Endliche Automaten und reguläre Sprachen

a b b a Alphabet und Wörter - Zusammengefasst Formale Grundlagen der Informatik 1 Kapitel 2 Endliche Automaten und reguläre Sprachen Formale Grundlagen der Informatik Kapitel 2 und reguläre Sprachen Frank Heitmann heitmann@informatik.uni-hamburg.de 5. April 26 Frank Heitmann heitmann@informatik.uni-hamburg.de /52 Alphabet und Wörter

Mehr

Verifikation in der Realität. In der Industrie wird der Begriff Verifikation häufig im Zusammenhang mit nicht formalen Methoden verwendet:

Verifikation in der Realität. In der Industrie wird der Begriff Verifikation häufig im Zusammenhang mit nicht formalen Methoden verwendet: Verifikation in der Realität In der Industrie wird der Begriff Verifikation häufig im Zusammenhang mit nicht formalen Methoden verwendet: Testen, Strategien: 100% Befehlsabdeckung (Statement Coverage)

Mehr

Die mathematische Seite

Die mathematische Seite Kellerautomaten In der ersten Vorlesung haben wir den endlichen Automaten kennengelernt. Mit diesem werden wir uns in der zweiten Vorlesung noch etwas eingängiger beschäftigen und bspw. Ansätze zur Konstruktion

Mehr

1 Eliminieren von ɛ-übergängen

1 Eliminieren von ɛ-übergängen 1 Eliminieren von ɛ-übergängen 1.1 Beispiel 1 (a) Ausgangspunkt: Zwei ɛ-übergänge (b) Entfernung eines ɛ-übergangs, Reduktion (c) Entfernen eines ɛ-übergangs, Reduktion Abbildung 1: Elimination von ɛ-übergängen,

Mehr

Reguläre Sprachen und endliche Automaten

Reguläre Sprachen und endliche Automaten Reguläre Sprachen und endliche Automaten 1 Motivation: Syntaxüberprüfung Definition: Fließkommazahlen in Java A floating-point literal has the following parts: a whole-number part, a decimal point (represented

Mehr

Theorie der Informatik

Theorie der Informatik Theorie der Informatik 11. Kontextsensitive und Typ-0-Sprachen Malte Helmert Gabriele Röger Universität Basel 7. April 2014 Kontextsensitive und allgemeine Grammatiken Wiederholung: (kontextsensitive)

Mehr

Worterkennung in Texten speziell im Compilerbau 20. April Frank Heitmann 2/64

Worterkennung in Texten speziell im Compilerbau 20. April Frank Heitmann 2/64 Grenzen regulärer Sprachen? Formale Grundlagen der Informatik 1 Kapitel 4 Über reguläre Sprachen hinaus und Pumping Lemma Frank Heitmann heitmann@informatik.uni-hamburg.de Wir haben mittlerweile einiges

Mehr

Model Checking mit SPIN

Model Checking mit SPIN Model Checking mit SPIN Sabine Daniela Bauer Seminar Formal Methods for Fun and Profit Institut für Informatik SS 05 1 Einleitung Programme sollen aus vielerlei Gründen fehlerfrei arbeiten. Entweder weil

Mehr

Endliche Automaten. Endliche Automaten J. Blömer 1/24

Endliche Automaten. Endliche Automaten J. Blömer 1/24 Endliche Automaten Endliche Automaten J. Blömer /24 Endliche Automaten Endliche Automaten sind ein Kalkül zur Spezifikation von realen oder abstrakten Maschinen regieren auf äußere Ereignisse (=Eingaben)

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

Theoretische Grundlagen des Software Engineering

Theoretische Grundlagen des Software Engineering Theoretische Grundlagen des Software Engineering 1: Grundlagen, Sprachen, Automaten schulz@eprover.org Software Systems Engineering Definition Eine Definition ist eine genaue Beschreibung eines Objektes

Mehr

CTL Model Checking SE Systementwurf CTL Model Checking Alexander Grafe 1

CTL Model Checking SE Systementwurf CTL Model Checking Alexander Grafe 1 CTL Model Checking SE Systementwurf CTL Model Checking Alexander Grafe 1 Einführung/Historie Model Checking ist... nur reaktive Systeme werden betrachtet vor CTL Model Checking gab es... Queille, Sifakis,

Mehr

Formale Grundlagen der Wirtschaftsinformatik

Formale Grundlagen der Wirtschaftsinformatik Formale Grundlagen der Wirtschaftsinformatik Nikolaj Popov Research Institute for Symbolic Computation popov@risc.uni-linz.ac.at Turingmaschinen und Kontextsensitive Sprachen Eine Turingmaschine besteht

Mehr

FORMALE SYSTEME. Wiederholung. Beispiel: NFA. Wiederholung: NFA. 4. Vorlesung: Nichtdeterministische Endliche Automaten. TU Dresden, 19.

FORMALE SYSTEME. Wiederholung. Beispiel: NFA. Wiederholung: NFA. 4. Vorlesung: Nichtdeterministische Endliche Automaten. TU Dresden, 19. Wiederholung FORMALE SYSTEME 4. Vorlesung: Nichtdeterministische Endliche Automaten Markus Krötzsch Professur für Wissensbasierte Systeme Grammatiken können Sprachen beschreiben und sie grob in Typen unterteilen

Mehr

5.2 Endliche Automaten

5.2 Endliche Automaten 114 5.2 Endliche Automaten Endliche Automaten sind Turingmaschinen, die nur endlichen Speicher besitzen. Wie wir bereits im Zusammenhang mit Turingmaschinen gesehen haben, kann endlicher Speicher durch

Mehr

Kapitel 2: Formale Sprachen Gliederung

Kapitel 2: Formale Sprachen Gliederung Gliederung. Einleitung und Grundbegriffe. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie 2.. Chomsky-Grammatiken 2.2. Reguläre Sprachen Reguläre Grammatiken, ND-Automaten

Mehr

Formale Methoden 1. Gerhard Jäger 9. Januar Uni Bielefeld, WS 2007/2008 1/23

Formale Methoden 1. Gerhard Jäger 9. Januar Uni Bielefeld, WS 2007/2008 1/23 1/23 Formale Methoden 1 Gerhard Jäger Gerhard.Jaeger@uni-bielefeld.de Uni Bielefeld, WS 2007/2008 9. Januar 2008 2/23 Automaten (informell) gedachte Maschine/abstraktes Modell einer Maschine verhält sich

Mehr

Logik. Gabriele Kern-Isberner LS 1 Information Engineering. TU Dortmund Wintersemester 2014/15 WS 2014/15

Logik. Gabriele Kern-Isberner LS 1 Information Engineering. TU Dortmund Wintersemester 2014/15 WS 2014/15 Logik Gabriele Kern-Isberner LS 1 Information Engineering TU Dortmund Wintersemester 2014/15 WS 2014/15 G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 1 / 125 Übersicht Modallogik 5. Grundlagen 6. Erfüllbarkeit

Mehr

Endliche Automaten. Endliche Automaten J. Blömer 1/23

Endliche Automaten. Endliche Automaten J. Blömer 1/23 Endliche Automaten Endliche Automaten sind ein Kalkül zur Spezifikation von realen oder abstrakten Maschinen regieren auf äußere Ereignisse (=Eingaben) ändern ihren inneren Zustand produzieren gegebenenfalls

Mehr

Grundlagen des expliziten Model Checkings

Grundlagen des expliziten Model Checkings Grundlagen des expliziten Model Checkings Seminar: Vortrag Dawid Kopetzki Gutachter: Prof. Dr. Jan Jürjens Dipl.-Inf. Daniel Warzecha 2. Juli 2012 Motivation Outline 1 Einleitung Motivation Hintergrund

Mehr

Hilfestellungen zu Relationen, Automatenübergänge und Hüllen

Hilfestellungen zu Relationen, Automatenübergänge und Hüllen Hilfestellungen zu Relationen, Automatenübergänge und Hüllen Erik Fäßler December 18, 2009 1 Relationen Die gültigen Übergänge eines endlichen Automaten - oder Finite State Automaton, FSA - werden formal

Mehr

Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (ii) ε ist ein regulärer Ausdruck über Σ.

Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (ii) ε ist ein regulärer Ausdruck über Σ. Reguläre Ausdrücke Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (i) ist ein regulärer Ausdruck über Σ. (ii) ε ist ein regulärer Ausdruck über Σ. (iii) Für jedes a Σ ist a ein regulärer

Mehr

How To Prove A Propositional Logic

How To Prove A Propositional Logic Klausur Formale Systeme Fakultät für Informatik SS 2015 Prof. Dr. Bernhard Beckert 31. Juli 2015 Vorname: Matrikel-Nr.: Die Bearbeitungszeit beträgt 60 Minuten. A1 (10) A2 (8) A3 (6) A4 (7) A5 (9) A6 (11)

Mehr

12. Woche: Verifizierer, nicht-deterministische Turingmaschine, Klasse NP

12. Woche: Verifizierer, nicht-deterministische Turingmaschine, Klasse NP 12 Woche: Verifizierer, nicht-deterministische Turingmaschine, Klasse NP 12 Woche: Verifizierer, nicht-deterministische Turingmaschine, NP 254/ 333 Polynomielle Verifizierer und NP Ḋefinition Polynomieller

Mehr

Tutorium Prolog für Linguisten 8

Tutorium Prolog für Linguisten 8 Endliche Automaten Tutorium Prolog für Linguisten 8 Sebastian Golly 18. Dezember 2012 Sebastian Golly Tutorium Prolog für Linguisten 8 1 / 13 Endliche Automaten Plan für heute? Sebastian Golly Tutorium

Mehr

FORMALE SYSTEME. Wiederholung. Beispiel: NFA. Wiederholung: NFA. 4. Vorlesung: Nichtdeterministische Endliche Automaten. TU Dresden, 20.

FORMALE SYSTEME. Wiederholung. Beispiel: NFA. Wiederholung: NFA. 4. Vorlesung: Nichtdeterministische Endliche Automaten. TU Dresden, 20. Wiederholung FORMALE SYSTEME 4. Vorlesung: Nichtdeterministische Endliche Automaten Markus Krötzsch Lehrstuhl Wissensbasierte Systeme Grammatiken können Sprachen beschreiben und sie grob in Typen unterteilen

Mehr

Rucksackproblem und Verifizierbarkeit

Rucksackproblem und Verifizierbarkeit Rucksackproblem und Verifizierbarkeit Gegeben: n Gegenstände mit Gewichten G={g 1,g 2,,g n } und Werten W={w 1,w 2,,w n } sowie zulässiges Gesamtgewicht g. Gesucht: Teilmenge S {1,,n} mit i i S unter der

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

7 Endliche Automaten. 7.1 Deterministische endliche Automaten

7 Endliche Automaten. 7.1 Deterministische endliche Automaten 7 Endliche Automaten 7.1 Deterministische endliche Automaten 7.2 Nichtdeterministische endliche Automaten 7.3 Endliche Automaten mit g-übergängen Endliche Automaten 1 7.1 Deterministische endliche Automaten

Mehr

Automatentheorie und formale Sprachen

Automatentheorie und formale Sprachen Automatentheorie und formale Sprachen VL 8 Chomsky-Grammatiken Kathrin Hoffmann 23. Mai 2012 Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 23.5. 2012 250 Wortproblem Wortproblem ist das

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

1. Teilklausur zur Vorlesung Grundlagen der Theoretischen Informatik

1. Teilklausur zur Vorlesung Grundlagen der Theoretischen Informatik 1. Teilklausur zur Vorlesung Grundlagen der Theoretischen Informatik Ulrich Furbach Christian Schwarz Markus Kaiser Arbeitsgruppe Künstliche Intelligenz Fachbereich Informatik, Universität Koblenz-Landau

Mehr

4.2.4 Reguläre Grammatiken

4.2.4 Reguläre Grammatiken 4.2.4 Reguläre Grammatiken Eine reguläre Grammatik ist eine kontextfreie Grammatik, deren Produktionsregeln weiter eingeschränkt sind Linksreguläre Grammatik: A w P gilt: w = ε oder w = Ba mit a T und

Mehr

Beweisidee: 1 Verwende den Keller zur Simulation der Grammatik. Leite ein Wort. 2 Problem: der Keller darf nicht beliebig verwendet werden, man kann

Beweisidee: 1 Verwende den Keller zur Simulation der Grammatik. Leite ein Wort. 2 Problem: der Keller darf nicht beliebig verwendet werden, man kann Automaten und Formale prachen alias Theoretische Informatik ommersemester 2011 Dr. ander Bruggink Übungsleitung: Jan tückrath Wir beschäftigen uns ab jetzt einige Wochen mit kontextfreien prachen: Kontextfreie

Mehr

11.1 Kontextsensitive und allgemeine Grammatiken

11.1 Kontextsensitive und allgemeine Grammatiken Theorie der Informatik 7. April 2014 11. Kontextsensitive und Typ-0-Sprachen Theorie der Informatik 11. Kontextsensitive und Typ-0-Sprachen 11.1 Kontextsensitive und allgemeine Grammatiken Malte Helmert

Mehr