Im Folgenden wird die Notation N p verwen-det, um anzuzeigen, dass die Formel p als Verpflichtung f¨ur den n¨achsten Zustand gilt.. 194 5 Eigenschaftspr¨ufungKonstruktion des nichtdeter
Trang 1192 5 Eigenschaftspr¨ufung
Monitor-Konstruktion f ¨ur PSL-Zusicherungen
Im Folgenden wird die Konstruktion von Monitoren f¨ur PSL-Zusicherungen f¨ur eine Teilmenge der Foundation Language von PSL beschrieben (siehe Abschnitt 2.4.3) Die PSL-FL wird hierbei derart eingeschr¨ankt, dass die Negation von sequentiell
erweiterten regul¨aren Ausdr¨ucken (engl sequential extended regular expressions, SEREs) nicht zul¨assig ist Die resultierende Sprache wird mit PSL-FL −bezeichnet
Definition 5.2.3 (PSL-FL− ) Alle aussagenlogischen Formeln sind PSL-FL − -For-meln Sei r eine SERE und p1und p2zwei PSL-FL − -Formeln, dann sind auch die folgenden Ausdr¨ucke PSL-FL − -Formeln:
• {r}
• p1 ∨ p2
• p1 ∧ p2
• X p1
• p1 U p2
• p1 R p2
Man muss beachten, dass der Ausschluss der Negation keinen Einfluss auf die Expressivit¨at von LTL-Formeln hat, die keine SEREs verwenden Die abk¨urzenden
Schreibweisen F p1und G p1 lassen sich aus obiger Definition ableiten und sind ebenfalls PSL-FL−-Formeln
Die ¨Ubersetzung einer PSL-FL−-Formel in einen Monitor erfolgt, indem
mit-tels der sog Tableau-Technik zun¨achst ein nichtdeterministischer endlicher Automat
konstruiert und dieser anschließend in einen deterministischen endlichen Automaten
¨ubersetzt wird Mittels der Tableau-Technik wird die Erf¨ullbarkeit einer LTL-Formel
in einen aussagenlogischen Teil und eine Verpflichtung (engl obligation) f¨ur den
n¨achsten Zustand des Modells zerlegt Beide Teile werden anschließend disjunktiv verkn¨upft
Beispiel 5.2.7 Gegeben ist die LTL-Formel p1U p2 Um diese zu erf¨ullen, muss
entweder p2im aktuellen Zustand gelten oder es gilt p1und im n¨achsten Zustand gilt
verpflichtend p1U p2 Ersteres hebt die Verpflichtung auf, da hierdurch bereits die LTL-Formel im momentanen Zustand erf¨ullt ist Letzteres verlangt, dass nachdem
p1im momentanen Zustand gilt, die urspr¨ungliche LTL-Formel im n¨achsten Zustand erf¨ullt ist
¨
Uberdeckung von PSL-FL − -Formeln
Die disjunktive Verkn¨upfung beider Teile einer zerlegten LTL-Formel wird als ¨ Uber-deckung der LTL-Formel bezeichnet Im Folgenden wird die Notation N (p)
verwen-det, um anzuzeigen, dass die Formel p als Verpflichtung f¨ur den n¨achsten Zustand
gilt Man beachte, dass N(p1) ∧ N(p2) = N(p1∧ p2 ) und !N(p) = N(!p) ist.
Die Berechnung der ¨Uberdeckung einer PSL-FL−-Formel wird durch die Be-stimmung der ¨Uberdeckung von Formeln und SEREs bestimmt F¨ur LTL-Formeln kann die ¨Uberdeckung in zwei Schritten bestimmt werden:
Trang 21 Jede LTL-Formel wird entsprechend der folgenden Umformungen in einen aus-sagenlogischen Teil und eine Verpflichtung f¨ur den n¨achsten Zustand zerlegt:
p1U p2= p2∨ (p1 ∧ N(p1 U p2))
p1R p2= p2∧ (p1 ∨ N(p1 R p2))
F p = p ∨ N(F p)
2 Umwandlung des Ergebnisses in disjunktive Normalform
Die Berechnung der ¨Uberdeckung von regul¨aren Ausdr¨ucken erfolgt indem re-gul¨are Ausdr¨ucke in Disjunktionen aus dem leeren Symbolε, einer atomaren
Aus-sage b oder eines regul¨aren Ausdrucks zerlegt wird Dies erfolgt in drei Schritten:
1 F¨ur regul¨are Ausdr¨ucke r ,s,t werden zun¨achst die folgenden Distributivregeln
so oft wie m¨oglich angewendet:
(r | s)t = (rt | st)
t (r | s) = (tr | ts)
2 Enth¨alt der regul¨are Ausdruck den∗-Operator, dann wird der entsprechend
re-gul¨are Teilausdruck wie folgt umgeschrieben und anschließend Schritt 1 wie-derholt:
r ∗ = rr∗ |ε
3 Ersetze alle|-Symbole durch Disjunktionen (∨) und jeden Teilausdruck in der Form br wie folgt:
br = b ∧ N(r)
wobei b eine atomare Aussage und r ein regul¨arer Ausdruck ist
Beispiel 5.2.8 Die Berechnung der ¨Uberdeckung f¨ur den regul¨aren Ausdruck(a∗b)∗
sieht somit zun¨achst durch Anwendung der Schritte 1 und 2 wie folgt aus:
(a∗b)∗ = (a∗b)(a∗b)∗ |ε
= ((aa∗ |ε)b)(a∗b)∗ |ε
= (aa∗b | b)(a∗b)∗ |ε
= (aa∗b)(a∗b)∗ | b(a∗b)∗ |ε
Somit ergibt sich die ¨Uberdeckung zu (Schritt 3.):
a ∧ N((a∗b)(a∗b)∗) ∨ b ∧ N((a∗b)∗) ∨ε
Trang 3194 5 Eigenschaftspr¨ufung
Konstruktion des nichtdeterministischen endlichen Automaten
Durch die wiederholte Berechnung der ¨Uberdeckung kann f¨ur eine PSL-FL−-Formel der nichtdeterministische endliche Automat konstruiert werden Die ¨Uberdeckung einer PSL-FL−-Formel besteht aus Bedingungen f¨ur den aktuellen Zustand und Ver-pflichtungen f¨ur den folgenden Zustand F¨ur die Verpflichtung wird wiederum die
¨
Uberdeckung berechnet, sofern dies noch nicht geschehen ist Dies kann zu weite-ren Verpflichtungen (dann f¨ur den ¨ubern¨achsten Zustand) f¨uhweite-ren Die wiederholte Berechnung der ¨Uberdeckung terminiert irgendwann, da die verwendeten Umfor-mungen stets nur Teilformeln der Originalformel verwenden, welche eine endliche L¨ange haben
Die Terme der ¨Uberdeckungen ergeben schließlich die Zust¨ande des nichtdeter-ministischen endlichen Automaten Somit kann der nichtdeterministische endliche Automat wie folgt erzeugt werden:
1 Die Anfangszust¨ande entsprechen den Termen der Originalformel
2 F¨uge einen Zustands¨ubergang von einem Zustand x1zu einem Zustand x2
hin-zu, sofern der durch x2repr¨asentierte Term eine Teilformel enth¨alt, welche die
Verpflichtung im n¨achsten Zustand f¨ur die durch x1repr¨asentierte Formel ist
3 F¨uge einen zus¨atzlichen Zustand hinzu und markiere ihn als akzeptierenden stand F¨ur jeden Zustand ohne ausgehenden Zustands¨ubergang f¨uge einen Zu-stands¨ubergang von diesem Zustand zu dem akzeptierenden Zustand hinzu Dies bedeutet auch, dass der akzeptierende Zustand eine Selbstschleife besitzt
4 Markiere jeden Zustands¨ubergang mit der Konjunktion aller atomaren Formeln
in der mit dem Zustand assoziierten Formel
5 Entferne alle Zustands¨uberg¨ange, die mitε markiert sind, indem die entspre-chenden beiden Zust¨ande verschmolzen werden
Beispiel 5.2.9 Es wird wiederum der regul¨are Ausdruck (a∗b)∗ aus Beispiel 5.2.8
betrachtet Die ¨Uberdeckung des regul¨aren Ausdrucks hat zu folgender Formel gef¨uhrt:
a ∧ N((a∗b)(a∗b)∗) ∨ b ∧ N((a∗b)∗) ∨ε
Diese enth¨alt zwei Verpflichtungen f¨ur den n¨achsten Zustand Die Verpflichtung
N((a∗b)∗) entspricht der Originalformel und wird nicht weiter betrachtet F¨ur N(a∗b (a∗b)∗) jedoch muss eine weitere ¨Uberdeckung berechnet werden:
(a∗b)(a∗b)∗ = ((aa∗ |ε)b)(a∗b)∗
= (aa∗b | b)(a∗b)∗
= (aa∗b)(a∗b)∗ | b(a∗b)∗
Die ¨Uberdeckung ergibt sich zu:
a ∧ N((a∗b)(a∗b)∗) ∨ b ∧ N((a∗b)∗)
Diese ¨Uberdeckung enth¨alt wiederum zwei Verpflichtungen f¨ur den n¨achsten Zu-stand F¨ur beide ist jedoch bereits die ¨Uberdeckung berechnet, weshalb die Berech-nung der ¨Uberdeckungen beendet wird
Trang 4Der zugeh¨orige nichtdeterministische endliche Automat ist in Abb 5.19 zu
se-hen Die Zust¨ande s0, s1und s2sind die Anfangszust¨ande und entsprechen den drei Termen der ¨Uberdeckung der Originalformel aus Beispiel 5.2.8 Die Zust¨ande s3und
s4entsprechen den Termen der ¨Uberdeckung der Verpflichtung N((a∗b)(a∗b)∗) Der
akzeptierende Zustand ist in diesem Beispiel mit s2verschmolzen worden, da s2 le-diglich einen ausgehenden Zustands¨ubergang mit der Markierungεzu dem akzep-tierenden Zustand besitzt
b b b
a
a
ε
a b a
T
b ∧ N((a∗b)∗)
a ∧ N(a∗b(a∗b)∗)
a ∧ N((a∗b)(a∗b)∗) b ∧ N((a∗b)∗)
s3
s4
s2
Abb 5.19 Nichtdeterministischer endlicher Automat f¨ur den regul¨aren Ausdruck(a∗b)∗
[472]
Beispiel 5.2.10 Gegeben ist die PSL-FL − -Formel !p → G {(a | b)∗} Man beachte,
dass die Negation (!) nicht auf eine SERE angewendet wurde Die ¨Uberdeckung der Formel errechnet sich zu:
!p → G {(a | b)∗} = p ∨ {(a | b)∗} ∧ N(G {(a | b)∗})
= p ∨ {((a | b)(a | b)∗ |ε)} ∧ N(G {(a | b)∗})
= p ∨ {(a(a | b)∗ | b(a | b)∗ |ε)} ∧ N(G {(a | b)∗})
= p ∨ {a} ∧ N(G {(a | b)∗}) ∨ {b} ∧ N(G {(a | b)∗}) | {ε)}
∧ N(G {(a | b)∗})
Bei der letzten Umformung wurde ausgenutzt, dass p ∧ G p = G p ist.
Man sieht, dass keine weiteren Verpflichtungen f¨ur den n¨achsten Zustand ent-standen sind, f¨ur die noch keine ¨Uberdeckung bestimmt wurde Der resultierende nichtdeterministische Automat ist in Abb 5.20a) zu sehen Anfangszust¨ande sind
die Zust¨ande s0, s1, s2und s3 Der akzeptierende Zustand ist s4 Der nichtdetermi-nistische endliche Automat ohneε- ¨Uberg¨ange ist in Abb 5.20b) zu sehen
Determinierung
Ein einzelner Simulationslauf kann in einem nichtdeterministischen endlichen Auto-maten die Ausf¨uhrung vieler unterschiedlicher Pfade anregen All diese m¨oglichen
Trang 5196 5 Eigenschaftspr¨ufung
ε
ε∧ N(G {(a | b)∗})
T
T
b a
a b
p
b)
T T
a
b a
a b
p
a)
b ∧ N(G {(a | b)∗})
a ∧ N(G {(a | b)∗})
b ∧ N(G {(a | b)∗})
a ∧ N(G {(a | b)∗})
s2
s1
s0
s4
s3
Abb 5.20 a) nichtdeterministischer endlicher Automat f¨ur die PSL-FL− -Formel !p →
G{(a | b)∗} mitε- ¨Uberg¨angen und b) ohneε- ¨Uberg¨ange [472]
Pfade zu verfolgen kann sehr aufwendig sein Andererseits kann bei der Determinie-rung eines nichtdeterministischen endlichen Automaten eine exponentielle Anzahl
an Zust¨anden entstehen Dennoch ist es w¨unschenswert einen nichtdeterministischen endlichen Automaten in einen endlichen Automaten zu transformieren, so dass die-ser direkt als Monitor oder Generator in der Simulation dienen kann Hierzu wird
¨ublicherweise die sog Teilmengenkonstruktion verwendet.
Die Teilmengenkonstruktion funktioniert wie folgt:
1 Erzeuge einen Anfangszustand f¨ur den deterministischen endlichen Automaten, der die Menge aller Anfangszust¨ande des nichtdeterministischen endlichen Au-tomaten repr¨asentiert
2 F¨ur jeden neuen Zustand s im deterministischen endlichen Automaten verfahre
wie folgt:
• F¨ur jeden Buchstaben i im Alphabet bestimme den Folgezustand s Dieser
repr¨asentiert alle Folgezust¨ande im nichtdeterministischen endliche
Auto-maten, die durch Eingabe von i in einem der Zust¨ande, die in s repr¨asentiert
sind, erreichbar sind
• F¨uge s zu den Zust¨anden des deterministischen endlichen Automaten hinzu, sofern dieser Zustand noch nicht existiert, und f¨uge einen mit i markierten Zustands¨ubergang von s nach s hinzu
• Alle Zust¨ande im deterministischen endlichen Automaten, die einen
ak-zeptierenden Zustand des nichtdeterministischen endlichen Automaten re-pr¨asentieren, sind akzeptierende Zust¨ande
Beispiel 5.2.11 Betrachtet wird wiederum die PSL-FL − -Formel !p → G {(a | b)∗}
aus Beispiel 5.2.10 Der zugeh¨orige deterministische Automat ist in Abb 5.21 zu sehen
Trang 6p ∧!{a | b} !{a | b}
!{a | b} !p ∧ {a | b}
T
T
{a | b}
{a | b}
!p ∧ {a | b}
p ∧ {a | b}
s3
s2
Abb 5.21 Deterministischer endlicher Automat f¨ur die PSL-FL− -Formel !p → G {(a | b)∗}
[472]
Die Hardware-Synthese von Monitoren ist aus den generierten Monitoren unter der Annahme m¨oglich, dass Zeitpunkte f¨ur Zustands¨uberg¨ange mittels eines Takt-signals definiert sind F¨ur Software- oder Systembeschreibungen m¨ussen geeignete Ereignisse zun¨achst spezifiziert werden (siehe auch Abschnitt 8.1.4)
5.3 Symbolische Modellpr ¨ufung
Die in Abschnitt 5.2 vorgestellten Verifikationsmethoden zur CTL-Modellpr¨ufung basieren auf einer expliziten Aufz¨ahlung der erreichbaren Zust¨ande Aus diesem Grund sind diese Verfahren nur auf relativ kleine Systeme anwendbar Die Effizienz der Algorithmen kann jedoch erheblich gesteigert werden, wenn der Zustandsraum
symbolisch repr¨asentiert wird Dabei werden Zustandsmengen nicht mehr durch
Aufz¨ahlung der Zust¨ande, sondern implizit durch Formeln repr¨asentiert, wobei eine einzelne Formel eine Menge von vielen Zust¨anden beschreiben kann Im Folgenden werden Verfahren zur symbolischen CTL- und LTL-Modellpr¨ufung vorgestellt
5.3.1 BDD-basierte CTL-Modellpr ¨ufung
F¨ur eine symbolische CTL-Modellpr¨ufung m¨ussen analog zur symbolischen
Er-reichbarkeitsanalyse aus Abschnitt 4.3.3 die Zust¨ande s ∈ S der temporalen Struktur
M = (S,R,L) bin¨ar codiert werden Hierzu dient die Funktion:
σS : S → B k
Die Zahl k ∈ N ist dabei die Anzahl der f¨ur die Codierung verwendeten bin¨aren Variablen Damit k¨onnen Zustandsmengen S ⊆ S als charakteristische Funktionen
ψS dargestellt werden, mit der Eigenschaft:
∀s ∈ S :ψ(σ (s)) = T ⇔ s ∈ S
Trang 7198 5 Eigenschaftspr¨ufung
Weiterhin ergibt sich die charakteristische FunktionψR:Bk × B k → B f¨ur die
Zu-stands¨ubergangsrelation zu:
ψR(σS (s),σ S (s )) =
T falls (s,s ) ∈ R
Die charakteristischen Funktionen k¨onnen effizient mit reduzierten geordneten bin¨a-ren Entscheidungsdiagrammen repr¨asentiert werden (siehe Anhang B)
Mit den charakteristischen Funktionen k¨onnen nun die Funktionen COMPUTE, COMPUTE EX, COMPUTE EG und COMPUTE EU derart umgeschrieben wer-den, dass die CTL-Modellpr¨ufung symbolisch durchgef¨uhrt werden kann Jede sym-bolische Berechnung gibt dabei eine charakteristische Funktionψ:Bk → B der
be-rechneten Zustandsmenge zur¨uck
Zun¨achst wird die Funktion SYM COMPUTE vorgestellt Diese erh¨alt als
Argu-mente die temporale Struktur M und die CTL-Formelϕ
SYM COMPUTE(M,ϕ){
SWITCH
CASEϕ= F:
ψ:= F;
CASEϕ= T:
ψ:= T;
CASEϕ∈ V:
ψ:=s ∈{ s ∈ S |ϕ∈ L (s )}σS (s);
CASEϕ= p ∨ q:
SYM COMPUTE(M, q));
RETURNψ;
}
Im Falle, dassϕ eine atomare Formel v ∈ V darstellt, muss die Zustandsmenge derjenigen Zust¨ande symbolisch repr¨asentiert werden, die mit der Variablen v
mar-kiert sind Die symbolische Repr¨asentation dieser Menge ist die Disjunktion der Co-dierungen der entsprechenden Zust¨ande Die Methode SYM COMPUTE EX kann dann wie folgt implementiert werden:
SYM COMPUTE EX(M,ψp){
ψ:= ∃σ S (s ) :ψp | s: =s ∧ψR;
RETURNψ;
}
Trang 8Die Funktion SYM COMPUTE EX erh¨alt als Argument die temporale Struktur und die charakteristische Funktionψp, welche die Menge derjenigen Zust¨ande repr¨asen-tiert, deren direkte Vorg¨anger bestimmt werden sollen Die Funktion gibt die cha-rakteristische Funktion der Menge der Zust¨ande zur¨uck, die direkte Vorg¨anger der Zust¨ande codiert durchψpsind
Die Funktion SYM COMPUTE EG kann wie folgt realisiert werden:
SYM COMPUTE EG(M,ψp){
ψN:= T;
DO
ψR:=ψN;
ψN:=ψp ∧ SYM COMPUTE EX(M,ψN);
UNTIL (ψN=ψR)
RETURNψN;
}
Die Funktion erh¨alt die temporale Struktur M und die charakteristische Funktion
ψp der Zustandsmenge S pals Argument und liefert die charakteristische Funktion
f¨ur die Menge derjenigen Zust¨ande, in denen EGp gilt Da es sich hierbei um die
Berechnung des gr¨oßten Fixpunktes handelt, wird ψN mit T initialisiert Statt der
Berechnung der Schnittmenge wie in der Funktion COMPUTE EG, erfolgt nun die Konjunktion Boolescher Funktionen
Schließlich l¨asst sich die Funktion SYM COMPUTE EU wie folgt umsetzen:
SYM COMPUTE EU(M,ψp,ψq){
ψN:= F;
DO
ψR:=ψN;
ψN:=ψq ∨ (ψp ∧ SYM COMPUTE EX(M,ψN));
UNTIL (ψN=ψR)
RETURNψN;
}
Als Argumente erh¨alt die Funktion die temporale Struktur M sowie die
charakte-ristischen Funktionenψpundψq f¨ur die Zustandsmengen S p und S q Die Funktion
gibt eine charakteristische Funktion f¨ur die Menge der Zust¨ande zur¨uck, die E p U q
erf¨ullen Hierbei handelt es sich um die Bestimmung des kleinsten Fixpunktes, wes-halbψN vor der Iteration mitF (dem symbolischen ¨Aquivalent der leeren Menge)
initialisiert wird
5.3.2 SAT-basierte Modellpr ¨ufung
F¨ur die Modellpr¨ufung wird eine Spezifikation der geforderten funktionalen Eigen-schaften mittels einer Temporallogik vorgenommen, w¨ahrend das System als
tem-porale Struktur modelliert wird Explizite Modellpr¨ufung (siehe Abschnitt 5.2) hat jedoch oft mit der Zustandsraumexplosion zu k¨ampfen, weshalb symbolische Mo-dellpr¨ufung weit h¨aufiger zum Einsatz kommt Wie oben beschrieben, haben sich
Trang 9200 5 Eigenschaftspr¨ufung
bin¨are Entscheidungsdiagramme (BDD) als geeignet herausgestellt, um große Zu-standsr¨aume zu codieren Mit BDDs ist es m¨oglich, Systeme mit mehreren hundert Zustandsvariablen effizient zu traversieren Dabei h¨angt die Gr¨oße der BDDs jedoch stark von der gew¨ahlten Variablenordnung ab und eine optimale Variablenordnung
zu finden ist wiederum ein schweres Problem Vor diesem Hintergrund ist leicht
zu erkennen, dass f¨ur reale Systeme mit mehreren tausend Zustandsvariablen eine BDD-basierte Modellpr¨ufung nicht immer zielf¨uhrend ist
In [48, 49] stellen Biere et al ein SAT-basiertes Modellpr¨ufungsverfahren vor Die grundlegende Idee besteht darin, ein Gegenbeispiel einer gegebenen L¨ange k zu
suchen Somit handelt es sich bei der SAT-basierten Modellpr¨ufung um eine
Metho-de, welche die Falsifikation zum Ziel hat Hierf¨ur wird eine aussagenlogische For-mel konstruiert, die genau dann erf¨ullbar ist, wenn ein solches Gegenbeispiel
exis-tiert Somit spricht man bei SAT-basierter Modellpr¨ufung auch von einer beschr¨ank-ten Modellpr¨ufung (engl bounded model checking), wobei die maximale L¨ange des
gesuchten Gegenbeispiels die Schranke angibt Die Vorteile dieses Ansatzes liegen auf der Hand: Erstens k¨onnen Gegenbeispiele mittels SAT-basierter Modellpr¨ufung oftmals sehr schnell gefunden werden Dies liegt in der SAT-Solvern zugrundelie-genden Tiefensuche (siehe Anhang C.2) Dabei sollte beachtet werden, dass das Auffinden von Gegenbeispielen eine hohe industrielle Relevanz besitzt Zweitens
liefert SAT-basierte Modellpr¨ufung, sofern die Schranke k sukzessive erh¨oht wird,
k¨urzest m¨ogliche Gegenbeispiele, was oftmals das Verst¨andnis f¨ur das Gegenbeispiel erh¨oht Drittens ist der Speicherbedarf von SAT-basierter Modellpr¨ufung wesentlich geringer als bei BDD-basierter Modellpr¨ufung Dies erlaubt die Pr¨ufung wesentlich gr¨oßerer Systeme Schließlich ben¨otigt SAT-basierte Modellpr¨ufung keine
optimier-te Variablenordnung Standardverfahren wie in Anhang C.2 sind ausreichend
Im Folgenden wird die SAT-basierte symbolische Modellpr¨ufung f¨ur funktionale Eigenschaften, die in linearer temporaler Aussagenlogik (LTL, siehe Abschnitt 2.4.2) spezifiziert sind, vorgestellt Die Semantik von LTL-Formeln ist in Definition 2.4.4
auf Seite 76 bez¨uglich einer gegebenen temporalen Struktur M = (S,R,L) und einem
Pfad ˜s angegeben Die temporale Struktur besteht aus einer Zustandsmenge S, einer
¨
Ubergangsrelation R ⊆ S × S und einer Markierungsfunktion L : S → 2 V , wobei V
die Menge der atomaren Formeln (aussagenlogische Variablen) ist Ein Pfad ˜s=
s0,s1, ,s i , ist eine Sequenz an Zust¨anden ˜s i:= s i ,s i+1, beschreibt einen
Suffix von ˜s i s :˜ = s0, ,si beschreibt einen Pr¨afix von ˜s.
Handelt es sich bei M nicht um eine lineare Struktur, kann das Modellpr¨ufungs-problem f¨ur LTL-Formeln unterschiedlich betrachtet werden Die wird als univer-selle bzw existentielle Modellpr¨ufung bezeichnet und basiert auf der G¨ultigkeit der
Formel
Definition 5.3.1 (G ¨ultigkeit von LTL-Formeln) Eine LTL-Formelϕheißt univer-sell g¨ultig, falls f¨ur eine temporale Struktur M gilt, dass ∀˜s : M, ˜s |=ϕ ist Eine LTL-Formelϕheißt existentiell g¨ultig, falls f¨ur eine temporale Struktur M gilt, dass
∃˜s : M, ˜s |=ϕist.
Universelle und existentielle G¨ultigkeit ergeben sich aus der Darstellung von Formeln in CTL* Aus dieser Darstellung ergibt sich ebenfalls, dass eine
Trang 10LTL-Formelϕf¨ur eine gegebene temporale Struktur M universell g¨ultig ist, genau dann,
wenn¬ϕ nicht existentiell g¨ultig ist Um also das universelle Modellpr¨ufungspro-blem zu l¨osen, reicht es, die gegebene LTL-Formel zu negieren und anschließend
zu zeigen, dass das korrespondierende existentielle Modellpr¨ufungsproblem keine L¨osung besitzt Dies kann geschehen, indem man versucht, ein Gegenbeispiel zu fin-den Gelingt dies nicht, ist die Originalformel universell g¨ultig Da typischerweise eine Darstellung von LTL-Formeln in CTL* ¨uber die universelle G¨ultigkeit erfolgt, ist f¨ur die Einf¨uhrung der SAT-basierten Modellpr¨ufung die Diskussion der existen-tiellen Modellpr¨ufung hinreichend
In SAT-basierter Modellpr¨ufung wird eine beschr¨ankte Modellpr¨ufung durch-gef¨uhrt, wobei lediglich ein endlicher Pr¨afixi s eines Pfades ˜˜ s betrachtet wird, der
eine L¨osung f¨ur das existentielle Modellpr¨ufungsproblem sein k¨onnte Dabei wird
die L¨ange des Pr¨afixes mit einer Schranke k begrenzt Diese Schranke wird
typi-scherweise sukzessive inkrementiert, wenn es nicht m¨oglich ist, ein Gegenbeispiel f¨ur die gew¨ahlte Schranke zu finden
Eine wichtige Beobachtung ist, dass ein endlicher Pr¨afix dennoch eine unendli-che Sequenz von Zust¨anden repr¨asentieren kann, wenn dieser Schleifen enth¨alt
(sie-he Abb 5.22b)) Falls der Pr¨afix des Pfades keine Schleife enth¨alt (Abb 5.22a)), sagt dieser nichts ¨uber das endlos laufende System aus Betrachtet man beispielsweise die LTL-Formel Gϕ Nur ein Pr¨afix mit einer Schleife und G¨ultigkeit vonϕ in jedem Zustand kann ein Modell f¨ur diese LTL-Formel darstellen Ein Pr¨afix, bei dem in
je-dem Zustand s0bis s kϕerf¨ullt ist, der aber keine Schleife von s kzu einem fr¨uheren Zustand enth¨alt, kann kein Modell f¨ur Gϕsein
Abb 5.22 a) Pr¨afix ohne Schleife und b)(k,l)-Schleife [49]
Definition 5.3.2 ((k,l)-Schleife) Ein Pfad ˜s wird f¨ur ein gegebenes l und k mit l ≤ k
als (k,l)-Schleife bezeichnet, wenn gilt s k+1= s l und ˜ s = u·v ∞ mit u = s0, ,sl −1
und v = s l , ,s k .
Definition 5.3.3 (k-Schleife) Existiert ein l ∈ Z ≥0mit l ≤ k, so dass ˜s eine (k,l)-Schleife ist, so wird ˜ s auch einfach als k-Schleife bezeichnet.
F¨ur eine beschr¨ankte SAT-basierte Modellpr¨ufung ist es notwendig, dass die
Se-mantik von LTL-Formeln (siehe Definition 2.4.4 auf Seite 76) durch eine
beschr¨ank-te Semantik von LTL-Formeln approximiert wird F¨ur die beschr¨ankbeschr¨ank-te Semantik wird lediglich ein Pr¨afix von einem Pfad bestehend aus k+ 1 Zust¨anden betrachtet, d h
k s˜= s0, ,sk Falls dieser Pfad eine k-Schleife ist, so bleibt die LTL-Semantik aus
Definition 2.4.4 erhalten: