Formale Systeme Prof. P.H. Schmitt Fakultät für Informatik Universität Karlsruhe (TH) Winter 2007/2008 Prof. P.H. Schmitt Formale Systeme Winter 2007/2008 1 / 20 Vorlesungstermine Do.24.01. letztes Übungsblatt Praxisaufgabe zu SPIN Fr.25.01. keine Vorlesung Do.31.01. Fr.01.02. Do.07.02. keine Vorlesung Fr.08.02 keine Vorlesung Do.14.02 (Wiederholung) Fr.15.02. keine Vorlesung 1.Klausur 18.02. 14:00 Prof. P.H. Schmitt Formale Systeme Winter 2007/2008 2 / 20 Änderung des Verfahrens zu Anmeldung für die Klausur Anmeldung nur noch elektronisch! bis Mi.13.Februar Prof. P.H. Schmitt Formale Systeme Winter 2007/2008 3 / 20 Lineare Temporale Logik Prof. P.H. Schmitt Formale Systeme Winter 2007/2008 4 / 20 Einführendes Beispiel Einfaches Modell eines Telefonteilnehmers Idle Busy digits offhook onhook Prof. P.H. Schmitt Formale Systeme Winter 2007/2008 5 / 20 Einführendes Beispiel Einfacher Automat einer Telephonvermittlung Dial k tpc?rel ho o Idle Z2 tp tp k tpc?rel Connect c? rlc tpc?onhook Z1 tp c? re l o ho on c? tpc?onhook k tp c ?on hoo k tp c? an m Wait Busy c? off c? on ho o tpc?offhook tp tpc?rel tpc?acm tpc?digits tp Prof. P.H. Schmitt Formale Systeme Winter 2007/2008 6 / 20 Einführendes Beispiel Nachrichtenvokabular tpc?xxx tpc!xxx bedeutet Nachricht xxx wird von Kanal tpc empfangen bedeutet Nachricht xxx wird über Kanal tpc geschickt Nachricht offhook onhook digits iam acm rel anm rlc Prof. P.H. Schmitt Bedeutung Hörer wurde abgehoben Hörer wurde aufgelegt Nummer wurde gewählt initial address message address complete message Einleitung des Verbindungsabbaus (release) End-zu-Endverbindung hergestellt Quittierung des Verbindungsabbaus Formale Systeme Winter 2007/2008 7 / 20 Einführendes Beispiel Beispielabläufe 1) Idle Dial Wait Connect Busy Idle Idle Dial Wait Connect Z1 Idle 2) Prof. P.H. Schmitt Formale Systeme Winter 2007/2008 8 / 20 LTL Lineare Temporale Logik Prof. P.H. Schmitt Formale Systeme Winter 2007/2008 9 / 20 Omega-Strukturen Definition Eine omega-Struktur R = (N, <, ξ) für eine aussagenlogische Signatur P besteht aus der geordneten Menge der natürlichen Zahlen (N, <) interpretiert als Menge abstrakter Zeitpunkte und einer Funktion ξ : N → 2P mit der Intention p ∈ ξ(n) ⇔ in R ist p zum Zeitpunkt n wahr ξn steht für das bei n beginnende Endstück von ξ: ξn (m) = ξ(n + m) Inbesondere gilt ξ0 = ξ. Prof. P.H. Schmitt Formale Systeme Winter 2007/2008 10 / 20 LTL Formeln: LTLFor Definition Σ eine Menge aller AL-Atome. LTLFor wird definiert durch 1 Σ ⊆ LTLFor 2 1, 0 ∈ LTLFor 3 4 Liegen A, B in LTLFor , dann auch alle aussagenlogischen Kombinationen von A und B. für A, B ∈ LTLFor gilt auch 1 2 3 4 A ∈ LTLFor und ♦B ∈ LTLFor und A U B ∈ LTLFor X A Die Symbole , ♦, X und U heißen temporale Modaloperatoren. Prof. P.H. Schmitt Formale Systeme Winter 2007/2008 11 / 20 LTL Semantik Definition Sei R = (N, <, ξ) eine omega-Struktur und A eine TLT Formel. ξ |= p ξ |= op(A, B) gdw ξ |= A ξ |= ♦A ξ |= A U B gdw gdw gdw ξ |= X A gdw Prof. P.H. Schmitt p ∈ ξ(0) (p ein AL Atom) für AL-Kombinationen op(A, B) von A und B wie üblich für alle n ∈ N gilt ξn |= A es gibt ein n ∈ N mit ξn |= A es gibt n ∈ N mit ξn |= B und für alle m mit 0 ≤ m < n gilt ξm |= A ξ1 |= A Formale Systeme Winter 2007/2008 12 / 20 Visualisierung der LTL-Semantik Szenarium für A A Szenarium für ♦A b A Szenarium für A U B b B A Prof. P.H. Schmitt Formale Systeme Winter 2007/2008 13 / 20 Reduktion auf U und 1 ♦A ↔ 1UA A ↔ ¬(1 U ¬A) Prof. P.H. Schmitt Formale Systeme Winter 2007/2008 14 / 20 Zusätzliche Operatoren ξ |= A Uw B gdw für alle n ∈ N gilt ξn |= (A ∧ ¬B) oder es gibt n ∈ N mit ξn |= B und für alle m mit 0 ≤ m < n gilt ξm |= A ξ |= A V B gdw ξ |= B und für alle n ∈ N gilt falls ξn |= ¬B dann gibt es ein m mit 0 ≤ m < n und ξm |= A Prof. P.H. Schmitt Formale Systeme Winter 2007/2008 15 / 20 Visualisierung von V Szenarien für A V B B b B ¬B A Prof. P.H. Schmitt b b Formale Systeme Winter 2007/2008 16 / 20 Lemma 1 A U B ↔ (A Uw B) ∧ ♦B 2 A Uw B ↔ A U B ∨ (A ∧ ¬B) 3 A V B ↔ ¬(¬A U ¬B) 4 A U B ↔ (B ∨ (A ∧ X (A U B))) 5 A V B ↔ (B ∧ A) ∨ (B ∧ X (A V B)) Prof. P.H. Schmitt Formale Systeme Winter 2007/2008 17 / 20 Beispiel Sei p ein aussagenlogisches Atom. Gesucht ist eine LTL-Formel A2p , so daß für jedes ξ gilt ξ |= A2p gdw (n ist gerade ⇔ p ∈ ξ(n)) A2p = p ∧ X ¬p ∧ (p ↔ X X p) Erstaunlicherweise gibt es keine TLT-Formel A mit ξ |= A2p Prof. P.H. Schmitt gdw (n ist gerade ⇒ p ∈ ξ(n)) Formale Systeme Winter 2007/2008 18 / 20 Beispiele aus Mustersammlungen REQUIREMENT: When a connection is not made to the server, report an error and reset network component to initial state. REFINEMENT: After OpeningNetworkConnection, an ErrorMessage will pop up in response to a NetworkError PATTERN: Response SCOPE: After PARAMETERS: Propositional LTL: [](OpenNetworkConnection -> [](NetworkError -> <>ErrorMessage)) SOURCE: Jeff Isom \cite{isom:98} DOMAIN: GUI Prof. P.H. Schmitt Formale Systeme Winter 2007/2008 19 / 20 Beispiele aus Mustersammlungen REQUIREMENT: When a connection is made to the SMTP server, all queued messages in the OutBox mail will be transferred to the server. REFINEMENT: Before QueuedMailSent, SMTPServerConnected PATTERN: Existence SCOPE: Before AlTERNATE: Global Precedence PARAMETERS: Propositional LTL: <>QueuedMailSent -> (!QueuedMailSent U SMTPServerConnected) SOURCE: Jeff Isom \cite{isom:98} DOMAIN: GUI Prof. P.H. Schmitt Formale Systeme Winter 2007/2008 20 / 20