Formale Systeme. Die Sprache PROMELA. Prof. Dr. Bernhard Beckert WS 2009/2010 KIT INSTITUT FÜR THEORETISCHE INFORMATIK
|
|
- Jasper Boer
- vor 6 Jahren
- Abrufe
Transkript
1 Formale Systeme Prof. Dr. Bernhard Beckert WS 29/2 KIT INSTITUT FÜR THEORETISCHE INFORMATIK KIT University of the State of Baden-Württemberg and National Large-scale Research Center of the Helmholtz Association
2 Beschreibung endlicher Automaten Die Darstellung konkreter endlicher Automaten in graphischer Form ist nur für kleine Automaten möglich, für größere, wie sie in realistischen Anwendungen auftreten, ist das nicht praktikabel. Wir betrachten als eine Alternative die Modellierungssprache Promela. Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 2/9
3 Beschreibung endlicher Automaten Die Darstellung konkreter endlicher Automaten in graphischer Form ist nur für kleine Automaten möglich, für größere, wie sie in realistischen Anwendungen auftreten, ist das nicht praktikabel. Wir betrachten als eine Alternative die Modellierungssprache Promela. Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 2/9
4 Promela Process meta language Modellierungssprache für indeterministische gekoppelte erweiterte endliche Automaten. Entwickelt von Gerard Holzmann seit 98. Weit verbreitetes Verifikationswerkzeug SPIN (Simple Promela INterpreter) Angabe der zu verifizierenden Eigenschaft als LTL Formel oder Büchi-Automat. Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 3/9
5 Promela Process meta language Modellierungssprache für indeterministische gekoppelte erweiterte endliche Automaten. Entwickelt von Gerard Holzmann seit 98. Weit verbreitetes Verifikationswerkzeug SPIN (Simple Promela INterpreter) Angabe der zu verifizierenden Eigenschaft als LTL Formel oder Büchi-Automat. Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 3/9
6 Promela Process meta language Modellierungssprache für indeterministische gekoppelte erweiterte endliche Automaten. Entwickelt von Gerard Holzmann seit 98. Weit verbreitetes Verifikationswerkzeug SPIN (Simple Promela INterpreter) Angabe der zu verifizierenden Eigenschaft als LTL Formel oder Büchi-Automat. Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 3/9
7 Promela Process meta language Modellierungssprache für indeterministische gekoppelte erweiterte endliche Automaten. Entwickelt von Gerard Holzmann seit 98. Weit verbreitetes Verifikationswerkzeug SPIN (Simple Promela INterpreter) Angabe der zu verifizierenden Eigenschaft als LTL Formel oder Büchi-Automat. Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 3/9
8 Promela Process meta language Modellierungssprache für indeterministische gekoppelte erweiterte endliche Automaten. Entwickelt von Gerard Holzmann seit 98. Weit verbreitetes Verifikationswerkzeug SPIN (Simple Promela INterpreter) Angabe der zu verifizierenden Eigenschaft als LTL Formel oder Büchi-Automat. Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 3/9
9 /* Peterson: mutual exclusion [98] */ bool turn, flag[2]; byte ncrit; { assert(_pid == _pid == ); again: flag[_pid] = ; turn = _pid; (flag[ - _pid] == turn == - _pid); assert(ncrit == ); /* critical section */ flag[_pid] = ; goto again} Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 5/9
10 { assert( pid == pid == ); again: flag[ pid] = ; turn = pid; (flag[ - pid] == turn == - pid); assert(ncrit == ); /* critical section */ flag[ pid] = ; goto again } Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 6/9
11 { assert( pid == pid == ); again: flag[ pid] = ; turn = pid; (flag[ - pid] == turn == - pid); assert(ncrit == ); /* critical section */ flag[ pid] = ; goto again } Promela beschreibt Zustandsübergangssysteme durch die Definition von Prozesstypen (process types). Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 6/9
12 { assert( pid == pid == ); again: flag[ pid] = ; turn = pid; (flag[ - pid] == turn == - pid); assert(ncrit == ); /* critical section */ flag[ pid] = ; goto again } In diesem Beispiel wird der Prozesstyp user() deklariert. Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 6/9
13 { assert( pid == pid == ); again: flag[ pid] = ; turn = pid; (flag[ - pid] == turn == - pid); assert(ncrit == ); /* critical section */ flag[ pid] = ; goto again } Die Deklaration eines Prozesstyps bewirkt noch nichts. Erst mit der Erzeugung einer Instanz eines Prozesstypes sind Aktionen verbunden. Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 6/9
14 { assert( pid == pid == ); again: flag[ pid] = ; turn = pid; (flag[ - pid] == turn == - pid); assert(ncrit == ); /* critical section */ flag[ pid] = ; goto again } Instanzen eines Prozesstyps werden normalerweise in einem Initialisierungprozess erzeugt, z.b. init { run users(); }. Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 6/9
15 { assert( pid == pid == ); again: flag[ pid] = ; turn = pid; (flag[ - pid] == turn == - pid); assert(ncrit == ); /* critical section */ flag[ pid] = ; goto again } active [2] ist eine Abkürzung für init { run users(); run users(); }. Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 6/9
16 { assert( pid == pid == ); again: flag[ pid] = ; turn = pid; (flag[ - pid] == turn == - pid); assert(ncrit == ); /* critical section */ flag[ pid] = ; goto again } Prozesse werden in der Reihenfolge ihrer Aktivierung durchnumeriert. Auf diese Nummer kann mit der lokalen Variablen pid zugegriffen werden. Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 6/9
17 bool turn, flag[2]; byte ncrit; { assert( pid == pid == ); again: flag[ pid] = ; turn = pid; (flag[ - pid] == turn == - pid); assert(ncrit == ); /* critical section */ flag[ pid] = ; goto again } Globale Variablen, im Beispiel turn, flag[2], ncrit, können von jedem Prozess gelesen und beschrieben werden. Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 6/9
18 { assert( pid == pid == ); again: flag[ pid] = ; turn = pid; (flag[ - pid] == turn == - pid); assert(ncrit == ); /* critical section */ flag[ pid] = ; goto again } In Promela ist jeder Ausdruck auch ein Befehl. Ergibt die Auswertung den Wahrheitswert wahr oder einen Wert >, dann geht die Ausführung mit der nächsten Anweisung weiter. Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 6/9
19 { assert( pid == pid == ); again: flag[ pid] = ; turn = pid; (flag[ - pid] == turn == - pid); assert(ncrit == ); /* critical section */ flag[ pid] = ; goto again } Andernfalls bleibt der Prozess blockiert bis der Ausdruck durch Aktionen anderer Prozesse wahr wird. Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 6/9
20 { assert( pid == pid == ); again: flag[ pid] = ; turn = pid; (flag[ - pid] == turn == - pid); assert(ncrit == ); /* critical section */ flag[ pid] = ; goto again } Falls das Argument des assert Befehls wahr ist geht die Ausführung mit der nächsten Zeile weiter, anderenfalls wird ein Fehler berichtet und die Simulation oder Verifikation abgebrochen. Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 6/9
21 Generischer Automat zum user Prozess line 8 assert((( pid == ) ( pid == ))) line flag[ pid]= line 8 flag[ pid] = line ncrit = (ncrit - ) turn = pid line 2 line 6 ((flag[- pid]==) (turn == (- pid))) assert(ncrit == ) line 4 ncrit = (ncrit+) line 5 Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 7/9
22 Instanzen des generischen Automaten line 8 line 8 assert((( pid == ) ( pid == ))) assert((( pid == ) ( pid == ))) line flag[]= line 8 line flag[]= line 8 flag[] = flag[] = line ncrit = (ncrit - ) line ncrit = (ncrit - ) turn = turn = line 2 line 6 line 2 line 6 ((flag[]==) (turn == ())) assert(ncrit == ) ((flag[]==) (turn == ))) assert(ncrit == ) line 4 ncrit = (ncrit+) line 5 line 4 ncrit = (ncrit+) line 5 Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 8/9
23 Approximation Produktautomat Prof. Dr. Bernhard Beckert Formale Systeme WS 29/2 9/9
Formale Systeme. Prof. Dr. Bernhard Beckert. Winter 2008/2009. Fakultät für Informatik Universität Karlsruhe (TH)
Formale Systeme Prof. Dr. Bernhard Beckert Fakultät für Informatik Universität Karlsruhe (TH) Winter 28/29 Prof. Dr. Bernhard Beckert Formale Systeme Winter 28/29 / Beschreibung endlicher Automaten Die
MehrFormale Systeme. LTL und 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
MehrFormale 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
MehrModel 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
MehrFormale Systeme. Lineare Temporale Logik. 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
MehrFormale Systeme. Aussagenlogik: Syntax und Semantik. Prof. Dr. Bernhard Beckert WS 2010/2011 KIT INSTITUT FÜR THEORETISCHE INFORMATIK
Formale Systeme Prof. Dr. Bernhard Beckert WS 2010/2011 KIT INSTITUT FÜR THEORETISCHE INFORMATIK KIT University of the State of Baden-Württemberg and National Large-scale Research Center of the Helmholtz
MehrFormale Systeme. Aussagenlogik: Sequenzenkalkül. Prof. Dr. Bernhard Beckert WS 2010/2011 KIT INSTITUT FÜR THEORETISCHE INFORMATIK
Formale Systeme Prof. Dr. Bernhard Beckert WS 2010/2011 KIT INSTITUT FÜR THEORETISCHE INFORMATIK KIT University of the State of Baden-Württemberg and National Large-scale Research Center of the Helmholtz
MehrFormale Systeme. Prädikatenlogik 2. Stufe. 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
MehrFormale Systeme. Prädikatenlogik: Tableaukalkül (ohne Gleichheit) 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
MehrFormale 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
MehrAlgorithmen II Vorlesung am
Algorithmen II Vorlesung am 17.01.013 Parametrisierte Algorithmen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales
MehrLTL 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
MehrFormale Systeme. Modallogik. 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ürttemerg and National Large-scale Research Center of the Helmholtz
MehrEinstieg in die Informatik mit Java
1 / 24 Einstieg in die Informatik mit Java Variablenarten Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 24 1 Lokale Variablen 2 Lokale Variablen in Blocks 3 Lokale Variablen
MehrFormale Systeme. Binary Decision Diagrams. Prof. Dr. Bernhard Beckert WS 2010/2011 KIT INSTITUT FÜR THEORETISCHE INFORMATIK
Formale Systeme Prof. Dr. Bernhard Beckert WS / KIT INSTITUT FÜR THEORETISCHE INFORMATIK KIT University of the State of Baden-Württemberg and National Large-scale Research Center of the Helmholtz Association
MehrVariablenarten. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java
Variablenarten Gerd Bohlender Institut für Angewandte und Numerische Mathematik Vorlesung: Einstieg in die Informatik mit Java 10.12.07 G. Bohlender (IANM UNI Karlsruhe) OOP und Klassen 10.12.07 1 / 15
MehrVorsemesterkurs Informatik
Vorsemesterkurs Informatik Vorsemesterkurs Informatik Mario Holldack WS2015/16 30. September 2015 Vorsemesterkurs Informatik 1 Einleitung 2 Aussagenlogik 3 Mengen Vorsemesterkurs Informatik > Einleitung
MehrFormale 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
MehrModel 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
MehrArray-Zuweisungen. Array-Zuweisungen können über die Position, den Namen oder gemischt erfolgen.
Array-Zuweisungen Array-Zuweisungen können über die Position, den Namen oder gemischt erfolgen. Ausschnitte (slices) werden über die Indizes gebildet. Mehrdimensionale Arrays Mehrdimensionale Arrays werden
MehrVorsemesterkurs Informatik
Vorsemesterkurs Informatik Ronja Düffel WS2018/19 01. Oktober 2018 Theoretische Informatik Wieso, weshalb, warum??!? 1 Modellieren und Formalisieren von Problemen und Lösungen 2 Verifikation (Beweis der
MehrKlausur Formale Systeme Fakultät für Informatik WS 2015/2016
Klausur Formale Systeme Fakultät für Informatik WS 2015/2016 Prof. Dr. Bernhard Beckert 4. März 2016 Vorname: Name: Matrikel-Nr.: Platz-Nr.: Code: **Vorname** **Familienname** **Matr.-Nr.** **Hörsaal**
MehrFormale 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
MehrEinstieg in die Informatik mit Java
1 / 28 Einstieg in die Informatik mit Java Variablenarten Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 28 1 Überblick: Variablenarten 2 Lokale Variablen 3 Lokale Variablen
MehrGrundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I
Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert Institut für Informatik Sommersemester 2007 B. Beckert Grundlagen d. Theoretischen Informatik:
MehrImplementieren von Klassen
Implementieren von Klassen Felder, Methoden, Konstanten Dr. Beatrice Amrhein Überblick Felder/Mitglieder (Field, Member, Member-Variable) o Modifizierer Konstanten Methoden o Modifizierer 2 Felder und
MehrHow 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)
Mehr1. 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
Mehr2 Programmieren in Java I noch ohne Nachbearbeitung
1 2 Programmieren in Java I noch ohne Nachbearbeitung 2.1 Was sind Programme? Eingabe = Verarbeitung = Ausgabe Die Eingabe kann sein Konstanten im Quelltext; Kommandozeilenparameter oder interaktive Eingabe
MehrFormale Systeme. Das Erfu llbarkeitsproblem. Prof. Dr. Bernhard Beckert, WS 2017/2018
Formale Systeme Prof. Dr. Bernhard Beckert, WS 2017/2018 Das Erfu llbarkeitsproblem KIT I NSTITUT F U R T HEORETISCHE I NFORMATIK www.kit.edu KIT Die Forschungsuniversita t in der Helmholtz-Gemeinschaft
MehrGrundlagen der Programmierung in C Funktionen
Der erste Mechanismus für Code-Reuse! Grundlagen der Programmierung in C Funktionen Wintersemester 2005/2006 G. Zachmann Clausthal University, Germany zach@in.tu-clausthal.de Ältester Mechanismus für Code-Reuse:
MehrVorsemesterkurs 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
MehrFormale Systeme. Aussagenlogik: Resolutionskalku l. Prof. Dr. Bernhard Beckert, WS 2018/2019
Formale Systeme Prof. Dr. Bernhard Beckert, WS 2018/2019 Aussagenlogik: Resolutionskalku l KIT I NSTITUT F U R T HEORETISCHE I NFORMATIK www.kit.edu KIT Die Forschungsuniversita t in der Helmholtz-Gemeinschaft
MehrFormale Systeme. Aussagenlogik: Syntax und Semantik. Prof. Dr. Bernhard Beckert, WS 2017/2018
Formale Systeme Prof. Dr. Bernhard Beckert, WS 2017/2018 Aussagenlogik: Syntax und Semantik KIT I NSTITUT F U R T HEORETISCHE I NFORMATIK www.kit.edu KIT Die Forschungsuniversita t in der Helmholtz-Gemeinschaft
MehrInstitut für Programmierung und Reaktive Systeme 2. Februar Programmieren I. Übungsklausur
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 2. Februar 2017 Hinweise: Klausurtermine: Programmieren I Übungsklausur Programmieren I: 13. März
MehrDank. Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Reguläre Ausdrücke als Suchmuster für grep
Dank Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert Diese Vorlesungsmaterialien basieren ganz wesentlich auf den Folien zu den Vorlesungen
MehrGrundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I
Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert Institut für Informatik Sommersemester 2007 B. Beckert Grundlagen d. Theoretischen Informatik:
Mehr1. 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
MehrTheoretische Informatik II
Vorlesung Theoretische Informatik II Bernhard Beckert Institut für Informatik Wintersemester 2007/2008 B. Beckert Theoretischen Informatik II: WS 2007/08 1 / 179 Dank Diese Vorlesungsmaterialien basieren
MehrWahlalgorithmen auf beliebigen Netzstrukturen. Verteilte Algorithmen (VA), WS 2003/04 43
Wahlalgorithmen Überblick/Problemstellung Wahlalgorithmen auf Ringstrukturen Beispiel TokenRing Wahlalgorithmen auf Baumstrukturen Wahlalgorithmen auf beliebigen Netzstrukturen Verteilte Algorithmen (VA),
MehrLogik für Informatiker
Vorlesung Logik für Informatiker 5. Aussagenlogik Normalformen Bernhard Beckert Universität Koblenz-Landau Sommersemester 2006 Logik für Informatiker, SS 06 p.1 Normalformen Definition: Literal Atom (aussagenlogische
MehrModel 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
MehrEndlicher Automat (EA)
Endlicher Automat (EA) siehe auch Formale Grundlagen 3 1 Motivation: Automaten für die Modellierung, Spezifikation und Verifikation verwenden! Definition Ein Endlicher Automat A = (S,I,Σ,T,F) besteht aus
MehrTechnische Universität Braunschweig Institut für Programmierung und Reaktive Systeme
Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme Programmieren I Dr. Werner Struckmann 17. Februar 2018 Name: Vorname: Matrikelnummer: Kennnummer: Anrede: Frau Herr
MehrFormale Systeme. Aussagenlogik: Syntax und Semantik. Prof. Dr. Bernhard Beckert, WS 2015/2016.
Formale Systeme Prof. Dr. Bernhard Beckert, WS 2015/2016 Aussagenlogik: Syntax und Semantik KIT I NSTITUT F U R T HEORETISCHE I NFORMATIK KIT Universita t des Landes Baden-Wu rttemberg und nationales Forschungszentrum
MehrFormale Systeme. Wiederholung. Prof. Dr. Bernhard Beckert, WS 2017/ KIT Die Forschungsuniversita t in der Helmholtz-Gemeinschaft
Formale Systeme Prof. Dr. Bernhard Beckert, WS 2017/2018 Wiederholung KIT I NSTITUT F U R T HEORETISCHE I NFORMATIK www.kit.edu KIT Die Forschungsuniversita t in der Helmholtz-Gemeinschaft Themen Aussagenlogik
MehrXML Schema 2012/2013 S Seite 1 h_da W
XML Schema Seite 1 XML/Schema: Strukturen Wiederholung Element / Attribut Deklaration XML Document Type Declaration Seite 2 XML Schema Schemata sind XML-Dokumente
Mehr1 Programmiersprachen 1.1 1
1 Programmiersprachen 1.1 1 Meilensteine imperativer Programmiersprachen (teilweise objektorientiert) Fortran 1960 Cobol Algol 60 PL/I Algol W Simula 67 Algol 68 1970 Pascal C Smalltalk Modula 1980 Ada
Mehr5. Algorithmen. K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16
5. Algorithmen K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16 Version: 21. Okt. 2015 1. Berechne 2 n. Zu lösende Probleme 2. Berechne die Fakultät einer nat. Zahl: n! = 1 * 2 *... n 3. Entscheide,
MehrDeductive Software Verification The KeY Book Haupt- und Proseminar in SoSe 2017
Deductive Software Verification The KeY Book Haupt- und Proseminar in SoSe 2017 Bernhard Beckert 02.05.17 INSTITUT FÜR THEORETISCHE INFORMATIK, KIT KIT âăş Die ForschungsuniversitÃd t in der Helmholtz-Gemeinschaft
MehrAutomaten 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)
MehrVHDL Grundelemente. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg
VHDL Grundelemente Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2009/2010 VHDL Grundelemente 1/15 2009-07-31 Inhalt Folgende
MehrBetriebssysteme. G: Parallele Prozesse. (Teil B: Klassische Problemstellungen, Mutual Exclusion, kritische Regionen)
Betriebssysteme G: Parallele Prozesse (Teil B: Klassische Problemstellungen, Mutual Exclusion, kritische Regionen) 1 Allgemeine Synchronisationsprobleme Wir verstehen ein BS als eine Menge von parallel
MehrKorrektheit und Hoare-Kalkül für Imperative Programme
Korrektheit und Hoare-Kalkül für Imperative Programme Martin Wirsing in Zusammenarbeit mit Moritz Hammer und Axel Rauschmayer SS 06 Ziele Partielle und totale Korrektheit kennen lernen Die Regeln des Hoare-Kalkül
MehrTheoretische Informatik II. WS 2007/2008 Jun.-Prof. Dr. Bernhard Beckert Ulrich Koch. 1. Teilklausur Vorname:... Nachname:...
Theoretische Informatik II WS 2007/2008 Jun.-Prof. Dr. Bernhard Beckert Ulrich Koch 1. Teilklausur 11. 12. 2007 Persönliche Daten bitte gut leserlich ausfüllen! Vorname:... Nachname:... Matrikelnummer:...
MehrRechnungen, wo kein sinnvoller Wert rauskommt Bsp.: 1/0, *0, sqrt(-1.0) Beispiel: Quadratische Gleichungen
Float-Arithmetik Implementiert IEEE 754-1985 Standard Überlauf ("overflow"): Zahl wird zu groß / zu klein Beispiel: max.float * 2 Resultat = + bzw. - Underflow: Zahlen liegen zu dicht an der 0 Resultat
MehrFormale Systeme. Modallogik. Prof. Dr. Bernhard Beckert, WS 2016/ KIT Die Forschungsuniversita t in der Helmholtz-Gemeinschaft
Formale Systeme Prof. Dr. Bernhard Beckert, WS 2016/2017 Modallogik KIT I NSTITUT F U R T HEORETISCHE I NFORMATIK.kit.edu KIT Die Forschungsuniversita t in der Helmholtz-Gemeinschaft Modale Logik Im Unterschied
MehrInstitut für Programmierung und Reaktive Systeme 25. Januar Programmieren I. Übungsklausur
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 25. Januar 2018 Hinweise: Klausurtermine: Programmieren I Übungsklausur Programmieren I: 17. Februar
MehrExponentialfunktionen. Eigenschaften, graphische Darstellungen 1-E1 Vorkurs, Mathematik
e Exponentialfunktionen Eigenschaften, graphische Darstellungen 1-E1 Vorkurs, Mathematik Exponentialfunktionen Potenzfunktion: y = x 9 Exponentialfunktion: y = 9 x Die Potenz- und die Exponentialfunktionen
MehrModel.Checking Theorie Praxis
Model.Checking Theorie Praxis Model.Checking Motivation Theoretische Grundlagen Anwendungsbeispiel Systematische Spezifikationserzeugung Evaluation.in.industriellem Kontext Theorie Motivation Das.Spezifikationsproblem
Mehr- Theorie der uninterpretierten
Theorie der uninterpretierten Funktionen Entscheidungsverfahren mit Anwendungen in der Softwareverifikation STEPHAN FALKE INSTITUT FÜR THEORETISCHE INFORMATIK (ITI) 0 KIT 13. Universität Mai 2013 des S.
MehrRO-Tutorien 3 / 6 / 12
RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 2 AM 06./07.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
MehrLösungsvorschläge und Erläuterungen Klausur zur Vorlesung Grundbegriffe der Informatik 15. September 2016
Lösungsvorschläge und Erläuterungen Klausur zur Vorlesung Grundbegriffe der Informatik 15. September 2016 Klausurnummer Nachname: Vorname: Matr.-Nr.: Diese Klausur ist mein 1. Versuch 2. Versuch in GBI
MehrHerzlich willkommen!
Programmiertechnik 1 Herzlich willkommen! Dozent: Dipl.-Ing. Jürgen Wemheuer Teil 6: Zusammenfassung und Beispiele Mail: wemheuer@ewla.de Online: http://cpp.ewla.de/ Zusammenfassung (1) 2 1. Programm in
MehrLearning Object-Oriented Programming. Algorithmen. Algorithmusbegriff. Klärung der Herkunft des Begriffs Formale Definition von Algorithmus
Algorithmen Algorithmusbegriff Klärung der Herkunft des Begriffs Formale Definition von Algorithmus Algorithmusbegriff Algorithmen sind eine der ältesten (abstrakten) Beschreibungstechniken für Abläufe.
MehrDas SAT Problem oder Erfüllbarkeitsproblem. Formale Systeme. Teilklassen. Satz von Cook. SAT Instanz: Eine aussagenlogische Formel F For 0
Das SAT Problem oder Erfüllbarkeitsproblem Formale Systeme Prof. Dr. Bernhard Beckert Fakultät für Informatik Universität Karlsruhe TH SAT Instanz: Eine aussagenlogische Formel F For 0 Frage: Ist F erfüllbar?
MehrAnwendungsorientierte Formale Verifikation
Anwendungsorientierte Formale Verifikation Bernhard Beckert 1 KIT 21.10.15 Universität des B. Landes Beckert Baden-Württemberg - Anwendungsorientierte und Formale Verifikation nationales Forschungszentrum
Mehr3. Klausur Einführung in die Theoretische Informatik Seite 1 von 14
3. Klausur Einführung in die Theoretische Informatik Seite 1 von 14 1. Welche der folgenden Aussagen zur Verifikation nach Hoare ist richtig? A. Eine Formel, die sowohl vor der Ausführung des Programmes,
MehrGrundbegriffe der Informatik Tutorium 11
Grundbegriffe der Informatik Tutorium 11 Tutorium Nr. 16 Philipp Oppermann 21. Januar 2015 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum
MehrTheoretische 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
MehrAlgorithmik und Programmieren
Institut für Informatik Forschungsgruppe Datenbanken und Informationssysteme (DBIS) Universität Innsbruck Algorithmik und Programmieren Martin Pichl Datenbanken und Informationssysteme (DBIS) dbis.uibk.ac.at
MehrJava Ablaufsteuerung (Beispiele)
Informatik 1 für Nebenfachstudierende Grundmodul Java Ablaufsteuerung (Beispiele) Kai-Steffen Hielscher Folienversion: 16. Januar 2018 Informatik 7 Rechnernetze und Kommunikationssysteme Blöcke Anweisungen
MehrEinstieg in die Informatik mit Java
1 / 24 Einstieg in die Informatik mit Java Klassen als Datenstrukturen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 24 1 Klassen als Datenstruktur 2 Vereinbarung von
MehrGrundbegriffe der Informatik Tutorium 11
Grundbegriffe der Informatik Tutorium 11 Tutorium Nr. 32 Philipp Oppermann 29. Januar 2014 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum
MehrCS1005 Objektorientierte Programmierung Bachelor of Science (Informatik)
CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) Einfache Programme: Programm-Argument, Bedingte Anweisungen, Switch, Enum Boolesche Werte und Ausdrücke Seite 1 Beispiel: Umrechnen
MehrFormale Systeme, WS 2014/2015 Übungsblatt 5
Karlsruher Institut für Technologie Institut für Theoretische Informatik Prof. Dr. Bernhard Beckert Thorsten Bormer, Dr. Vladimir Klebanov, Dr. Mattias Ulbrich Formale Systeme, WS 2014/2015 Übungsblatt
MehrGrundbegriffe der Informatik Tutorium 3
Grundbegriffe der Informatik Tutorium 3 Tutorium Nr. 32 Philipp Oppermann 9. November 2014 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum
MehrGrammatiken und ANTLR
Grammatiken und ANTLR Zusatzfolien zu Algo Blatt 6 Author: Henry Schaefer http://www.majeeks.de/folien_blatt6.pdf Grammatik Definition: syntaktische Beschreibung einer Sprache (H.S.) Definiton Grammatik
MehrKapitel Was ist ein Header? Was ist ein Body? Header: public Account(String newowner, int newpin)
Kapitel 2.6 1. Was ist ein Header? Was ist ein Body? Header: public Account(String newowner, int newpin) Body: Alles im Block darunter: [...] 2. Geben Sie die Methodensignaturen der TicketMachine (Code
Mehrjavascript Coding-Guidelines 2. Ausgabe Februar 2015 Der Guideline beschreibt den verwendeten Coding-Stil von javascript als eigene Richtline.
javascript Coding-Guidelines 2. Ausgabe Februar 2015 Der Guideline beschreibt den verwendeten Coding-Stil von javascript als eigene Richtline. Inhalts-Verzeichnis 1. Allgemeine Richtlinien...1 1.1 Anzahl
MehrKlassen als Datenstrukturen
Einstieg in die Informatik mit Java, Vorlesung vom 27.11.07 Übersicht 1 Klassen als Datenstruktur 2 Vereinbarung von Klassen 3 Erzeugen von Objekten - Instanzen einer Klasse 4 Zugriff auf Attribute 5 Initialisierung
MehrInformatik I Übung, Woche 40
Giuseppe Accaputo 1. Oktober, 2015 Plan für heute 1. Nachbesprechung Übung 2 2. Vorbesprechung Übung 3 3. Zusammenfassung der für Übung 3 wichtigen Vorlesungsslides Informatik 1 (D-BAUG) Giuseppe Accaputo
MehrEinfü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
MehrBeispiele: Funktionsabstraktion (3) Funktionsdeklaration. Funktionsdeklaration (2) Funktionsdeklaration (3) 3. Abstraktion über Funktionsbezeichner:
Beispiele: Funktionsabstraktion (3) Funktionsdeklaration 3. Abstraktion über Funktionsbezeichner: Ausdruck: f (f x) Abstraktion: \ f x -> f (f x) Mit Bezeichnervereinbarung: twice = \ f x -> f (f x) erg
MehrTheoretische Informatik SS 03 Übung 5
Theoretische Informatik SS 03 Übung 5 Aufgabe 1 Im Buch von Schöning ist auf S. 106-108 beschrieben, wie eine Turing-Maschine durch ein GOTO-Programm simuliert werden kann. Zeigen Sie, wie dabei die Anweisungen
MehrAnalyse von Echtzeit-Systemen mit Uppaal. Dr. Carsten Weise Ericsson Deutschland GmbH
Analyse von Echtzeit-Systemen mit Uppaal Dr. Carsten Weise Ericsson Deutschland GmbH Zur Person Ericsson Dänemark Übersicht Was ist Uppaal? Eine Einführung Grundlagen: Timed Automata Uppaal s Query-Language
MehrRoboterprogrammierung
ReferenceGuide Einführungs Autor: Fachhochschule Südwestfalen Fachbereich Elektrische Energietechnik Campus Soest Hinweise zur Benutzung Dieses Dokument soll die Arbeit während des Praktikums erleichtern,
MehrGrundbegriffe der Informatik Tutorium 10
Grundbegriffe der Informatik Tutorium 10 Tutorium Nr. 32 Philipp Oppermann 17. Januar 2014 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum
MehrKapitel 4: Anweisungen und Kontrollstrukturen
inführung in die Informatik: Programmierung und Softwareentwicklung Wintersemester 2018/19 Kapitel 4: Anweisungen und Kontrollstrukturen Prof. Dr. David Sabel Lehr- und Forschungseinheit für Theoretische
MehrInduktion und Rekursion
Induktion und Rekursion Induktion und Rekursion Vorkurs Informatik Theoretischer Teil WS 013/14. Oktober 013 Vorkurs Informatik WS 013/14 1/1 Vollständige Induktion Vorkurs Informatik WS 013/14 /1 Ziel
MehrProgrammiersprachen Einführung in C
Programmiersprachen Einführung in C Teil 2: Prof. Dr. Unser erstes C-Programm int main (int argc, char *argv[]) int i; int sum = 0; for (i = 0; i
MehrPrüfung Informatik D-MATH/D-PHYS :00 11:00
Prüfung Informatik D-MATH/D-PHYS 4. 8. 2009 09:00 11:00 Dr. Bernd Gartner, Prof. Juraj Hromkovic Kandidat/in: Name:... Vorname:... Stud.-Nr.:... Ich bezeuge mit meiner Unterschrift, dass ich die Prufung
MehrEinstieg in die Informatik mit Java
1 / 16 Einstieg in die Informatik mit Java Innere Klassen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 16 1 Einführung 2 Element-Klassen 3 Lokale Klassen 4 Anonyme Klassen
MehrFormale Systeme. Modallogik. Prof. Dr. Bernhard Beckert, WS 2017/ in der Helmholtz-Gemeinschaft KIT I NSTITUT F UR
Formale Systeme Prof. Dr. Bernhard Beckert, WS 2017/2018 Modallogik T HEORETISCHE I NFORMATIK KIT I NSTITUT F UR.kit.edu in der Helmholtz-Gemeinschaft KIT Die Forschungsuniversitat Modale Logik Im Unterschied
MehrProf. Dr. Wolfgang Schramm. Vorlesung. Techniken der Programmentwicklung. Exkurs: Anonyme Klassen
Prof. Dr. Wolfgang Schramm Vorlesung Exkurs: Anonyme Klassen Techniken der Programmentwicklung Prof. Dr. Wolfgang Schramm Vorlesung Exkurs: Anonyme Klassen Techniken der Programmentwicklung Anonyme Klassen
Mehr