Use LEFT and RIGHT arrow keys to navigate between flashcards;
Use UP and DOWN arrow keys to flip the card;
H to show hint;
A reads text to speech;
32 Cards in this Set
- Front
- Back
Definition Sprachen
|
Syntax = Symbole und deren Verknüpfung
Benennung (mathematischer) Objekte der realen Welt Semantik = Funktion mit Syntax als Eingabe und math. Objekt als Ausgabe |
|
Definition eines Programmes: Vorgehen
|
Mathematische Objekte der realen Welt definieren
- Wertebereich, operationen Verwaltung des Programmzustands schaffen - Lookup Assign Semantik funktion aufstellen (Verknüpfung Syntax und reale Welt) - Ausdrücke Expressions / Statements |
|
First Order Logic
|
Signatur G
V: Variablen F: Funktionssymbole (Konstanten = Funktionen mit Stelligkeit 0) R: Releationssymbole Terme: Variablen, Konstanten,Funktionen Formeln: Releationen, Tautologien,UND/ODER rtc Verküpfungen von Formeln |
|
First Order Logic: Struktur S
|
G: Signatur
Definitionsbereich Menge von Funktionen inkl. Konstanten über Menge von Relationen über f: F Eine Funktion die jedem Symbol der Signatur eine entspechende Funktion oder Relation gleicher Stelligkeit über zuweist Belegung a: V Semantik eine Terms ist Wert aus dem Definitionsbereich Semantik einer Formel ist TRUE oder FALSE |
|
Definition First Order Logic
|
FOL definiert durch
Zeichen (Signatur der Logik) Syntaktische Regeln (BNF für Terme und Formeln) Verknüpfung der mathematischen Objekte (Struktur der Logik) Auswertungsumgebung (Belegungsfunktion a) Semantik (Interpretation Ta und Ma) |
|
Ausdrucksstärke einer Logik
|
Logik kann bestimmte Eigentschaften ausdrücken, wenn
Die Logik erlaubt Formel aufzuschreiben , die die Eigenschaft beschreibt und Diese Formel einer Klasse von Strukturen genau dann wahr ist, wenn die Eigenschaft auf den Elementen der Domäne erfüllt |
|
Propositionale Logik
|
Teilmenge der FOL
- Keine Quantifizierung - Keine Funktionssysmbole oder Relationssymbole Nur propositionale Variablen AP, die die Werte True oder False annehmen können Keine Terme |
|
Beweissysteme - Axiome
|
Besteht aus Schema in dem Schemavariablen auftreten können
|
|
Beweissysteme - Beweisregeln
|
Besteht aus einer Reihe von Schemata (Prämissen) un der Konsequenz (horizontaler Strich)
|
|
Beweissysteme - Vorgehen
|
Ersetzen der Schemavariablen durch Teil-Formeln in einem Schema -> Instanz des Schema
Man erhält Menge von FOL Formeln (Prämissen) und eine Formel (Konsequenz) |
|
Beweissysteme - Vorwärtsschließen
|
Endliche Folge von nummerierten Formeln
Jede Zeile hat folgende Eingenschaften: Zeile ist Hypothese aus .... ist Instanz eines Axioms folgt aus vorangehenden Beweiszeilen und Anwendung einer Beweisregel |
|
Beweissysteme - Rückwärtsschließen
|
Beweisregeln werden Rückwärtsbetrachtet
Konsequenz wird in Teile zerlegt, die Einzeln bewiesen werden |
|
Beweissysteme - Korrektheit und Vollständigkeit
|
Korrekt: nur wahre Eigenschaften können abgeleitet werden.
Vollständig: alle wahren Eigenschaften können abgeleitet werden. |
|
Transitionssysteme
|
Transitionen (erzeugen Zustände)
formal Tupel S,T,Theta S ist Struktur mit Signatur G (G enthält Variablen des Programms und Hilfsvariablen) T: endliche Menge von Transitionen p: Schaltbedingung (unquantifizierte FOL-Formel) vi in V: Menge ovn zu verändernden Variablen ei: Menge von neuen Werten als FOL Formel über G (werden den Variablen bei Übergang zugewiesen) "p wird unter Struktur S in Zustand s wahr" Theta: Startzustand |
|
Zustandsraum
|
S: Menge von Zuständen
t: Menge von Transitionen I teilmenge S: Initiale Zustände Lauf: Folge von Zusatänden s0 in I, (si,si+1) für gelabelte Zustandsräume Li: Ti-> = Labelingfunktion |
|
Parallele Komposition
|
Beispiel vfür Kombination von Zustandsräumen
Gi <S¡,∑i,"",Ii> mit 11,2 Zustandsräiumen mit Benannten Transitionen Dann: T1||T2 = komibinierter Zustandsraum (Karthesisches Produkt) |
|
Fairness
|
Schwache Prozess Fairness
Starke Prozess Fairness Schwache Transitions Fairness Starke Transitions Fairness |
|
Fairness - Schwache Prozess Fairness
|
verbietet Schedules mit: es sind ab einem Zustand s immer Transitionen eines Prozesses Pi schaltfähig, es wird aber keine Transition von Pi nach s ausgeführt
|
|
Fairness - Starke Prozess Fairness
|
verbietet Schedules mit: es sind unendlich oft Transitionen eines Prozesses Pi schaltfähig, aber es werden nur endlich oft Transitionen von Pi ausgeführt
|
|
Fairness - Schwache Transitions Fairness
|
verbietet Schedules mit: Es ist ab einem Zustand s eine Bestimmte Transition immer schaltfähig, aber sie wird nie nach S ausgeführt
|
|
Fairness Starke Transitions Fairness
|
verbietet Schedules mit: Es ist nur eine Transition unendlich oft schaltfähig, aber sie wird nur endlich oft ausgeführt.
|
|
LTL - Definition
|
Struktur S einer statischen Logik
Unendliche Folge von Zuständen Jeder Zustand hat eine Belegung Jeder Zeitpunkt hat genau einen Nachfolger und bis X0 alle genau einen Vorgänger |
|
LTL Operatoren
|
Nexttime ° Bedingung wird nächstes Mal erfüllt
eventually (Karo) wird irgendwann erfüllt always (quadrat) wird immer erfüllt release (V): x gilt solange bis y den Not-Aus drückt -> Keine Eventually garantie Until (U): x gilt bis y aber nie gleichzeitig |
|
Büchiautomat
|
A = ∑ S, Delta, I,L,F
∑ endliches Alphabet S: endliche Menge von Zuständen Delta: Transitions-Relation I teilmenge S Initale Zustände L:S-> Label der Zustände F teilmenge S Menge der Akzeptioerenden Zustände |
|
Buchiautomat - Lauf
|
Ein Lauf ovn A über ein unendliches Wort u ist unendlich langer Pfad im Graphen von A in dem die Knoten vo A entsprechen der Buchstaben in u markiert sind
|
|
Modelchecking - Grundidee
|
Software soll auf funktionale Korrektheitgeprüft werden.
Spezifikation A (Logik) und Realisierung B vorhanden Ein Algorithmus soll entscheiden, ob die Realisierung die Spezifikation erfüllt. A erfüllt B falls L(A) Teilmenge von L(B) Jedes Wort, das von der Realisierung akzeptiert wird wird auch von der Spezifikation realisiert. |
|
Modelchecking - Transformation LTL Büchi
|
Verienfachung der Formel
Zelegung der Formel in Teilformeln Erzeugung zu jeder Teilformel |
|
Modelchecking - Transformation LTL Büchi - Vereinfachung
|
Ersetzung eventually durch true until phi
Ersetung always durch false release phi Implikationen auflösen Negationen direkt vor die Variablen ziehen |
|
Modelchecking - Transformation LTL Büchi - Zelegung in Teilformeln
|
LTL-Formeln zerlegen, nur noch propositionale Variablen (negtion normal form)
Jede Teilformel in NNF steht für Zustand, in dem diese Formel gilt. Abgeleitete Teilformeln intereinander Verbinden, um zustandsfolgen zu erzeugen |
|
Modelchecking - Transformation LTL Büchi - Erzeugung von Zuständen zu jeder Teilformel
|
Beschriftung ergibt sich aus negierten und nicht negierten propositionalen Variablen
Leere Menge ergibt true Akzeptierende Zustände: verallgemeinerter Büchi-Automat Betrachtung alle Teilformeln phi untel psi Für jeder solcher Formeln Erstellung akzeptierender Knotenmege mit: Knoten, deren Bschriftung Psi erfüllt Knoten, die nichts mit dieser Teilformel zu tun haben. Umformung verallgemeinerter Büchi-Automaten zu einfachen Büchi Automaten. |
|
Modelchecking - Algorithmus
|
Konstruiere Automat A (System)
Kosntruiere Automat B Strich, Komplement der Spezifikation Konstruiere den Schnittautomaten C Suche in C starke Zusammenhangskomponente, welche von Initialzustand erreicht werden kann. Enthält Komponente akzeptierenden Zustand? Falls nein System A erfüllt Spezifikation B Falls ja, System A erfüllt B nicht. |
|
Modelchecking - Algorithmus 2
|
Konstruieren eines Gegenbeispiels
Wähle akzeptierenden Zustand aus einer Zusammenhangskomponente Erstelle Pfad p von einen initialen Zustand q Erstelle einen Zyklus z von q zurück zu sich selbst Vereinige p mit z. jedes Wort, welches über die Vereinigung anwendbar ist. |