Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 20 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
20
Dung lượng
237,43 KB
Nội dung
554 C Algorithmen Nach Abb. C.4 wird zun ¨ achst der SAT-Solver aufgerufen, um die aussagenlogische Formel ϕ a auf Erf ¨ ullbarkeit zu testen. Eine m ¨ ogliche Belegung β ,die ϕ a erf ¨ ullt, w ¨ are z. B. β = {¬a 1 ,¬a 2 ,¬a 3 ,¬a 4 ,b 5,1 ,b 6,1 } . Durch BCP vervollst ¨ andigt sich die Belegung β zu: β = {¬a 1 ,b 1 ,¬a 2 ,b 2 ,¬a 3 ,b 3 ,¬a 4 ,b 4 ,b 5,1 ,b 6,1 } Dies impliziert die folgende Menge atomarer pr ¨ adikatenlogischer Formeln: Φ = {(u − w ≤ 5),(v + w ≤ 6), (z = 0),(u + v ≥ 12),(x = z + 1), (y = z + 2),(u + v − 4 · x − 4 · y = 0)} Die Konjunktion der Formeln wird vom Theoriel ¨ oser (in diesem Fall ein LRA- Solver, engl. Linear Reel Arithmetic) auf Erf ¨ ullbarkeit ¨ uberpr ¨ uft. Die oben gege- bene Formelmenge Φ ist nicht erf ¨ ullbar. Die anschließende Konfliktanalyse (siehe Abb. C.5) ergibt, dass die Belegung b 1 = b 2 = b 4 := T zu einem Konflikt gef ¨ uhrt hat. Aus diesem Grund wird zur Verfeinerung der aussagenlogischen Formel ϕ a die Klausel ¬b 1 ∨¬b 2 ∨¬b 4 (¬(b 1 ∧ b 2 ∧ b 4 )) hinzugef ¨ ugt. b 6,1 b 5,1 u − w ≤ 5 v + w ≤ 6 z = 0 u + v ≥ 12 u + v ≤ 11 0 ≤−1 b 1 b 3 b 4 b 2 Abb. C.5. Konfliktanalyse im LRA-Solver [397] In Beispiel C.3.1 konnte der Theoriel ¨ oser keine konsistente Belegung der Va- riablen der pr ¨ adikatenlogischen Formeln finden. In diesem Fall sagt man, dass das Modell der aussagenlogischen Formel T -inkonsistent ist. Andernfalls heißt das Mo- dell T -konsistent. In dem oben skizzierten Vorgehen werden lediglich vollst ¨ andige Modelle der aussagenlogischen Formel auf T -Konsistenz gepr ¨ uft. Eine m ¨ ogliche Verbesserung des SMT-Solvers besteht darin, auch partielle Belegungen auf T -Konsistenz zu pr ¨ ufen. C.3 SMT-Solver 555 Beispiel C.3.2. Dies wird anhand des Beispiels C.3.1 verdeutlicht, nachdem die Klausel ¬b 1 ∨¬b 2 ∨¬b 4 vom SMT-Solver gelernt wurde. Abbildung C.6 zeigt die einzelnen Entscheidungen des SAT-Solvers sowie die Interaktion des SAT-Solvers mit dem Theoriel ¨ oser. ¬a 1 ¬a 2 ¬a 1 ¬a 2 ¬a 1 ¬a 2 b 6,1 b 5,1 u + v −4 ·x−4·y = 0 u + v −4 ·x −4·y = 0 u + v − 4 ·x −4·y = 0 u + v −4 ·x −4·y = 0 b 1 u − w ≤ 5¬a 1 a) b 1 b 2 u − w ≤ 5 u + v ≤ 11 v + w ≤ 6 b) {¬b 4 ,a 4 ,¬a 3 } b 3 z = 0 b 1 b 2 u − w ≤ 5 u + v ≤ 11 v + w ≤ 6 c) b 1 b 2 u − w ≤ 5 u + v ≤ 11 v + w ≤ 6 d) b 3 z = 0 x = z +1 y = 1b 5,1 b 3 z = 0 x = z +1 y = 1 y = 2y = z +2 {¬b 4 ,a 4 ,¬a 3 }{¬b 4 ,a 4 ,¬a 3 } Abb. C.6. Schnelle Konfliktanalyse Im ersten Schritt (Abb. C.6a)) belegt der SAT-Solver die Boolesche Variable a 1 mit dem Wert F. Durch BCP wird die Variable b 1 mit dem Wert T belegt. Da b 1 = T eine atomare pr ¨ adikatenlogische Formel impliziert, wird sofort der LRA-Solver aufgerufen. Neben der Formel (u−w ≤ 5) muss der LRA-Solver auch die unbedingte Formel (u + v − 4 · x − 4 · y = 0) erf ¨ ullen. Da dies m ¨ oglich ist, wird die Kontrolle an den SAT-Solver zur ¨ uck gegeben. Im zweiten Schritt weist der SAT-Solver der Booleschen Variablen a 2 den Wert F zu (Abb. C.6b)). BCP f ¨ uhrt zur Zuweisung b 2 := T. Diese Belegung f ¨ uhrt wiederum zu einem Aufruf des LRA-Solver, der nun zus ¨ atzlich die Formel (u +w ≤ 6) erf ¨ ullen muss. Da auch dies m ¨ oglich ist, wird die Kontrolle an den SAT-Solver zur ¨ uck gege- ben. Noch im selben Schritt f ¨ uhren die Implikationen dazu, dass {¬b 4 ,a 4 ,¬a 3 ,b 3 } 556 C Algorithmen zur Belegung der Booleschen Variablen hinzugef ¨ ugt wird, wobei b 3 wiederum zu einer Implikation f ¨ uhrt und den Aufruf des Theoriel ¨ osers erzwingt. Dieser bekommt als zus ¨ atzliche Formel (z = 0), welche zusammen mit den bereits implizierten For- meln erf ¨ ullbar ist. Im dritten Schritt (Abb. C.6c)) wird der Booleschen Variablen b 5,1 der Wert T durch den SAT-Solver zugewiesen. Dies f ¨ uhrt dazu, dass zu Φ die Formel (x = z+1) hinzugef ¨ ugt wird. Diese Formel vereinfacht sich mit (z = 0) zu (x = 1). Auch jetzt ist weiterhin die konjunktive Verkn ¨ upfung der atomaren pr ¨ adikatenlogischen Formeln erf ¨ ullbar. Im vierten Schritt (Abb. C.6d) schließlich weist der SAT-Solver der Variablen b 6,1 den Wert T zu, was wiederum eine Implikation und damit einen Aufruf des LRA-Solver nach sich zieht. Auch in diesem Fall ist die Konjunktion der Formeln durch den LRA-Solver erf ¨ ullbar. Da auch ebenfalls ein Modell der aussagenlogi- schen Formel ϕ a gefunden wurde, ist dieses auch LRA-konsistent. Dies bedeutet, dass die pr ¨ adikatenlogische Formel ϕ aus Gleichung (C.1) erf ¨ ullbar ist. Viele effiziente SMT-Solver sind in den letzten Jahren entstanden, z. B. Ario [397], BarceLogic [348], CVCLite/CVC3 [29], DLSAT [310], haRVey [130], Math- SAT [56], Sateen [261], SDSAT [178], Simplify [131], TSAT++ [16], UCLID [280], Yices [142], Verifun [164], Zapato [24]. C.4 CTL-Fixpunktberechnung Zur formalen Spezifikation funktionaler Eigenschaften wird h ¨ aufig die temporale Aussagenlogik CTL (engl. Computation Tree Logic) verwendet. Diese ist in Ab- schnitt 2.4.2 eingef ¨ uhrt. Jeder der acht Operatoren mit Verzweigungslogik in CTL l ¨ asst sich als ein Fixpunkt charakterisieren. Ein Fixpunkt einer Funktion f l ¨ asst sich charakterisieren als f (a)=a, d. h. dass die Anwendung einer Funktion auf ein Ar- gument a das Ergebnis a liefert. F ¨ ur CTL-Fixpunkte sind sog. Funktionale der Ausgangspunkt. Ein Funktional ist eine Abbildung zwischen Mengen von Abbildungen. Ein Funktional τ wird im Folgenden mit λ y : ϕ bezeichnet. Dabei ist ϕ eine CTL-Formel und y eine in ϕ enthaltene Variable. Wird das Funktional auf eine Formel p angewandt, so wird in ϕ jedes Vorkommen von y durch p ersetzt. Beispiel C.4.1. Gegeben ist das Funktional τ := λ y : x ∨ y sowie die Formel p := F. Die Anwendung von τ auf p liefert: τ (p)= τ (F)=x ∨ F = x Definition C.4.1 (Fixpunkt eines Funktionals). Eine Formel p heißt Fixpunkt eines Funktionals τ , genau dann, wenn gilt: τ (p)=p C.4 CTL-Fixpunktberechnung 557 Beispiel C.4.2. Gegeben ist das Funktional τ := λ y : x∨y sowie die Formel p := x∨z. Die Anwendung von τ auf die Formel p liefert: τ (p)= τ (x ∨ z)=x ∨ (x ∨ z)=x ∨ z = p Somit ist p Fixpunkt von τ . Definition C.4.2 (Monotonie eines Funktionals). Ein Funktional τ heißt monoton, genau dann, wenn gilt: p ⊆ q ⇒ τ (p) ⊆ τ (q) Anschaulich bedeutet dies f ¨ ur aussagenlogische Formeln, dass wenn q die selben und eventuelle zus ¨ atzliche Einsstellen enth ¨ alt wie p, so enth ¨ alt τ (q) die selben und eventuell zus ¨ atzliche Einsstellen zu τ (p). Beispiel C.4.3. Gegeben ist das Funktional τ := λ y : x ∨y und die Formeln p := x ∧z und q := z,d.h.p ⊂ q, dann ergibt sich τ (p) zu τ (p)=x∨(x∧z)=x und τ (q)=x∨z. Allgemein gilt, dass jedes monotone Funktional τ = λ y : ϕ einen kleinsten Fix- punkt μ y : ϕ und einen gr ¨ oßten Fixpunkt ν y : ϕ besitzt. Im Folgenden bezeichne τ i (p) diejenige Formel, die sich nach i-facher Iteration des Funktionals f ¨ ur die Anfangsformel p ergibt, d. h. τ i (p) := τ ( τ ( τ (p))) . i-fach Weiterhin bezeichne i τ i (p) die Vereinigung aller Formeln, die durch i-fache Iteration des Funktionals τ ausgehend von der Anfangsformel p entstehen, d. h. i τ i (p) := τ (p) ∪ τ ( τ (p)) ∪···∪ τ ( τ ( τ (p))) ∪ τ ( τ ( τ (p))) . (i − 1)-fach i-fach Schließlich bezeichne i τ i (p) die Schnittmenge aller Formeln, die durch i-fache Iteration des Funktionals τ ausgehend von der Anfangsformel p entstehen, d. h. i τ i (p) := τ (p) ∩ τ ( τ (p)) ∩···∩ τ ( τ ( τ (p))) ∩ τ ( τ ( τ (p))) . (i − 1)-fach i-fach Definition C.4.3 (Vereinigungs- und Schnittstetigkeit). Ein Funktional τ heißt vereinigungsstetig, wenn f ¨ ur eine beliebige unendliche Folge (p 1 , p 2 , p 3 , ) mit p 1 ⊆ p 2 ⊆ p 3 ⊆ gilt: i τ (p i )= τ i p i τ heißt schnittstetig, wenn f ¨ ur eine beliebige unendliche Folge (p 1 , p 2 , p 3 , ) mit p 1 ⊆ p 2 ⊆ p 3 ⊆ gilt: i τ (p i )= τ i p i 558 C Algorithmen Es gilt, dass wenn τ = λ y : ϕ ein monotones Funktional ist und ϕ eine CTL- Formel, dann ist ϕ vereinigungs- und schnittstetig. Der kleinste und gr ¨ oßte Fixpunkt l ¨ asst sich wie folgt berechnen: μ y : ϕ := i τ i (F) (C.2) ν y : ϕ := i τ i (T) (C.3) F ¨ ur eine beliebige temporale Struktur M (siehe Abschnitt 2.4.1) gilt: EG p := ν y : p ∧ EX y (C.4) E p U q := μ y : q ∨ (p ∧ EX y) (C.5) Im Folgenden werden f ¨ ur eine gegebene temporale Struktur M Zustandsmengen mit CTL-Formeln ϕ assoziiert, d. h. {s ∈ S | M,s |= ϕ }. Beispiel C.4.4. Gegeben ist die temporale Struktur M aus Abb. C.7a). Es soll durch Fixpunktberechnung gezeigt werden, dass im Zustand s 0 der temporalen Struktur M die CTL-Formel EG p gilt. p gilt in den Zust ¨ anden s 0 , s 1 und s 2 . Nach Glei- chung (C.4) muss der gr ¨ oßte Fixpunkt mit Anfangsformel T berechnet werden. Der erste Schritt besteht darin, die Menge aller Zust ¨ ande S[0] zu bestimmen. Da τ 0 = T, gilt S[0]={s 0 ,s 1 ,s 2 ,s 3 }. Dies ist in Abb. C.7b) dargestellt. Nun erfolgt die Iteration: 1. Im ersten Schritt der Iteration erh ¨ alt man τ 1 = τ (T)=p ∧ EX T = p. Die zu- geh ¨ orige Zustandsmenge ist diejenige Menge an Zust ¨ anden, die mit p markiert sind, d. h. S[1]={s 0 ,s 1 ,s 2 }. Dies ist in Abb. C.7c) dargestellt. 2. Im zweiten Schritt der Iteration ergibt sich τ 2 = τ (p)=p∧EXp. Dies repr ¨ asen- tiert diejenigen Zust ¨ ande, die mit p markiert sind und die einen mit p markier- ten Zustand in einem Schritt erreichen k ¨ onnen. Dies ergibt die Zustandsmenge S[2]={s 0 ,s 1 }, die in Abb. C.7d) dargestellt ist. 3. Im dritten Schritt ergibt sich τ 3 = τ (p ∧ EX p)=p ∧ EX (p ∧ EX p).Diere- pr ¨ asentierte Zustandsmenge besteht aus den Zust ¨ anden, die mit p markiert sind, einen mit p markierten Zustand in einem Zustands ¨ ubergang erreichen k ¨ onnen und von dort einen mit p markierten Zustand in einem weiteren Zustands ¨ uber- gang erreichen k ¨ onnen. Dies ist die Menge S[3]={s 0 }, die in Abb. C.7e) zu sehen ist. 4. Im vierten Schritt ergibt sich τ 4 = τ ( τ 3 )=p ∧ EX (p ∧ EX (p ∧ EX p)).Die repr ¨ asentierte Zustandsmenge besteht aus denjenigen Zust ¨ anden aus der Menge S[3], die zus ¨ atzlich in einen weiteren Schritt wieder einen mit p markierten Zu- stand erreichen k ¨ onnen. Aufgrund der Schleife an Zustand s 0 ist dies die Menge S[4]={s 0 } = S[3]. Hiermit ist der gr ¨ oßte Fixpunkt erreicht. F ¨ ur die Berechnung der Menge an Zust ¨ anden, in denen auf der gegebenen tempora- len Struktur M die CTL-Formel EG p gilt, muss nach Gleichung (C.3) die Schnitt- menge aller Iterationsschritte bestimmt werden: C.4 CTL-Fixpunktberechnung 559 s 0 s 3 s 2 s 1 b) s 0 s 3 s 2 s 1 a) s 0 s 3 s 2 s 1 c) s 0 s 3 s 2 s 1 s 0 s 3 s 2 s 1 d) e) ppp ppp τ 0 = T τ 1 = p ∧ EX T = p τ 2 = p ∧ EX p τ 3 = p ∧ EX (p ∧ EX p)= τ 4 p p ppp pp pp Abb. C.7. Berechnung von EG p EG p = i ( λ y : p ∧ EX y) i (T) Dies kann direkt auf den assoziierten Zustandsmengen erfolgen: S[0] ∩ S[1] ∩ S[2] ∩ S[3]={s 0 } Da s 0 Element dieser Menge ist, gilt EG p im Zustand s 0 der temporalen Struktur M. Beispiel C.4.5. Gegeben ist die temporale Struktur M aus Abb. C.8a). Es soll durch Fixpunktberechnung gezeigt werden, dass im Zustand s 0 der temporalen Struktur M die CTL-Formel E p U q gilt. Nach Gleichung (C.5) muss der kleinste Fix- punkt berechnet werden. Der Anfangszustand τ 0 = F impliziert S[0]=∅.Diesist in Abb. C.8a) dargestellt. Nun erfolgt die Iteration: 1. Im ersten Schritt der Iteration erh ¨ alt man τ 1 = τ (F)=q ∨ (p ∧ EX F)=q.Die zugeh ¨ orige Zustandsmenge ist diejenige Menge an Zust ¨ anden, die mit q markiert sind, d. h. S[1]={s 2 }. Dies ist in Abb. C.8b) dargestellt. 2. Im zweiten Schritt der Iteration ergibt sich τ 2 = τ (q)=q ∨ (p ∧ EX q).Dies repr ¨ asentiert diejenigen Zust ¨ ande, die mit q markiert sind oder die mit p markiert sind und einen mit q markierten Zustand in einem Schritt erreichen k ¨ onnen. Dies ergibt die Zustandsmenge S[2]={s 1 ,s 2 }, die in Abb. C.8c) dargestellt ist. 560 C Algorithmen s 0 s 3 s 2 s 1 b) s 0 s 3 s 2 s 1 d) s 0 s 3 s 2 s 1 c) s 0 s 3 s 2 s 1 a) τ 0 = F τ 1 = q ∨(p ∧ EX F) τ 2 = q ∨(p ∧ EX q) τ 3 = q ∨(p ∧ EX (q ∨ (p ∧ EX q))) = τ 4 qpp ppq qpp ppq Abb. C.8. Berechnung von E p U q 3. Im dritten Schritt ergibt sich τ 3 = τ (q ∨ (p ∧ EX q)) = q ∨ (p ∧ EX (q ∨ (p ∧ EX q))). Die repr ¨ asentierte Zustandsmenge besteht aus den Zust ¨ anden, • die mit q markiert sind, • die mit p markiert sind und einen mit q markierten Zustand in einem Zu- stands ¨ ubergang erreichen k ¨ onnen, oder • die mit p markiert sind, in einem Zustands ¨ ubergang einen mit p markierten Zustand und in einem weiteren Zustands ¨ ubergang einen mit q markierten Zustand erreichen k ¨ onnen. Dies ist die Menge S[3]={s 0 ,s 1 ,s 2 }, die in Abb. C.7d) zu sehen ist. 4. Im vierten Schritt ergibt sich τ 4 = τ ( τ 3 )= τ 3 . Die repr ¨ asentierte Zustandsmenge ist identisch mit S[3]. Hiermit ist der kleinste Fixpunkt erreicht. F ¨ ur die Berechnung der Zust ¨ ande, in denen auf der gegebenen temporalen Struktur M die CTL-Formel E p U q gilt, muss nach Gleichung (C.2) noch die Vereinigungs- menge aller Iterationsschritte bestimmt werden: E p U q = i ( λ y : q ∨ (p ∧ EX y)) i (F) Dies kann direkt auf den berechneten Zustandsmengen erfolgen: S[0] ∪ S[1] ∪ S[2] ∪ S[3]={s 0 ,s 1 ,s 2 } Da s 0 Element dieser Menge ist, gilt E p U q im Zustand s 0 der temporalen Struktur M. Literatur 1. ABRAMOVICI,M.,M.A.BREUER und A. D. FRIEDMAN: Digital Systems Testing and Testable Design. John Wiley & Sons, Inc., Hoboken, New Jersey, U.S.A., 1994. 2. A CKERMANN,WILHELM: Solvable Cases of the Decision Problem. North-Holland Pub. Co, Amsterdam, The Netherlands, 1954. 3. A GHA,G.:Abstracting Interaction Patterns: A Programming Paradigm for Open Dis- tributed Systems.In:N AJM, E. und J-B. STEFANI (Herausgeber): Formal Methods for Open Object-based Distributed Systems, Seiten 135—153. Springer, 1997. 4. A HO,A.V.,R.SETHI und J. D. ULLMAN: Principles of Compiler Design. Addison- Wesley, Reading, MA, 2006. 2. Auflage. 5. A KERS,S.B.:Binary Decision Diagrams. IEEE Transactions on Computers, C- 27(6):509–516, 1978. 6. A LOUL,F.A.,I.L.MARKOV und K. A. SAKALLAH: FORCE: A Fast & Easy-to- Implement Variable-Ordering Heuristic.In:Proceedings of the Great Lakes symposium on VLSI (GLSVLSI), Seiten 116–119, 2003. 7. A LUR,R.:Timed Automata.In:Proceedings of the International Conference on Com- puter Aided Verification (CAV), Seiten 8–22, 1999. 8. A LUR,R.,C.COURCOUBETIS und D. L. DILL: Model Checking in Dense Real-Time. Information and Computation, 104(1):2–34, 1993. 9. A LUR, R. und D. L. DILL: Automata for Modeling Real-Time Systems.In:Procee- dings of the International Colloquium on Automata, Languages and Programming,Sei- ten 322–335, 1990. 10. A LUR, R. und D . L. DILL: A Theory of Timed Automata. Theoretical Computer Science, 126(2):183–235, 1994. 11. A LUR, R. und T. A. HENZINGER: Logics and Models of Real Time: A Survey.In: Real-Time: Theory in Practice, Seiten 74–106, 1992. 12. A LUR, R. und T. A. HENZINGER: A Really Temporal Logic. Journal of the ACM, 41(1):181–203, 1994. 13. A MBLER,S.W.:The Elements of UML(TM) 2.0 Style. Cambridge University Press, New York, NY, U.S.A., 2005. 14. A NANTHARAMAN, T. S., E. M. CLARKE,M.J.FOSTER und B. MISHRA: Compiling Path Expressions into VLSI Circuits.In:Proceedings of the Symposium on Principles of Programming Languages (POPL), Seiten 191–204, 1985. 15. A NDREWS,T.,S.QADEER,S.K.RAJAMANI,J.REHOF und Y. XIE: Zing: Exploiting Program Structure for Model Checking Concurrent Software.In:Proceedings of the International Conference on Concurrency Theory (CONCUR), Seiten 1–15, 2004. 562 Literatur 16. A RMANDO,A.,C.CASTELLINI,E.GIUNCHIGLIA und M. MARATEA: ASAT-Based Decision Procedure for the Boolean Combination of Difference Constraints.In:Pro- ceedings of the International Conference on Theory and Applications of Satisfiability Testing (SAT), Seiten 16–29, 2004. 17. A RMANDO,A.,J.MANTOVANI und L. PLATANIA: Bounded Model Checking of Soft- ware Using SMT Solvers Instead of SAT Solvers.In:Proceedings of the International SPIN Workshop (SPIN), Seiten 146–162, 2006. 18. A RMANDO,A.,J.MANTOVANI und L. PLATANIA: Bounded Model Checking of Soft- ware Using SMT Solvers Instead of SAT Solvers. International Journal on Software Tools for Technology Transfer (STTT), 11(1):69–83, 2009. 19. A SHCROFT,E.A.:Proving Assertions about Parallel Programs. Journal of Computer and Systems Science, 10(1):110–135, 1975. 20. A SHENDEN,P.J.:The Designer’s Guide to VHDL. Morgan Kaufmann Publishers Inc., San Francisco, 1991. 21. A UDSLEY,N.C.,A.BURNS,M.F.RICHARDSON,K.TINDELL und A. J. WELLINGS: Applying new Scheduling Theory to Static Priority Preemptive Scheduling. Real-Time Systems, 8(5):284–292, 1993. 22. B ACCELLI,F.,G.COHEN,G.J.OLSDER und J P. QUADRAT: Synchronization and Linearity: An Algebra for Discrete Event Systems. John Wiley & Sons, Inc., Chichester, West Sussex, England, 1992. 23. B ALARIN, F. und A. L. SANGIOVANNI-VINCENTELLI: An Iterative A pproach to Lan- guage Containment.In:Proceedings of the International Conference on Computer Ai- ded Verification (CAV), Seiten 29–40, 1993. 24. B ALL,T.,B.COOK,S.K.LAHIRI und L. ZHANG: Zapato: Automatic Theorem Pro- ving for Predicate Abstraction Refinement.In:Proceedings of the International Confe- rence on Computer Aided Verification (CAV), Seiten 457–461, 2004. 25. B ALL,T.,B.COOK,V.LEVIN und S. K. RAJAMANI: SLAM and Static Driver Veri- fier: Technology Transfer of Formal Methods Inside Microsoft.In:Proceedings of the International Conference on Integrated Formal Methods (IFM), Seiten 1–20, 2004. 26. B ALL,T.,R.MAJUMDAR,T.MILLSTEIN und S. K. RAJAMANI: Automatic Predicate Abstraction of C Programs. ACM SIGPLAN Notices, 36(5):203–213, 2001. 27. B ALL, T. und S. K. RAJAMANI: Bebop: A Symbolic Model Checker for Boolean Pro- grams.In:Proceedings of the International SPIN Workshop (SPIN), Seiten 113–130, 2000. 28. B ALL, T. und S. K. RAJAMANI: Formal Methods Specification and Verification Gui- debook for Software and Computer Systems. Technischer Bericht MSR-TR-2002-09, Microsoft Research, Redmond, WA, 2002. 29. B ARRETT, C. und S. BEREZIN: CVC Lite: A New Implementation of the Cooperating Validity Checker.In:Proceedings of the International Conference on Computer Aided Verification (CAV), Seiten 515–518, 2004. 30. B ARRETT,C.W.:Checking Validity of Quantifier-Free Formulas in Combinations of First-Order Theories. Doktorarbeit, Stanford University, CA, U.S.A., 2003. 31. B ARRETT,C.W.,D.L.DILL und J. R. LEVITT: A Decision Procedure for Bit-Vector Arithmetic.In:Proceedings of the Design Automation Conference (DAC), Seiten 522– 527, 1998. 32. B AUMGARTEN,B.:Petri-Netze Grundlagen und Anwendungen. Spektrum Akademi- scher Verlag, Mannheim, 1996. 2. Auflage. 33. B AYARDO, R. J. und R. C. SCHRAG: Using CSP Look-Back Techniques to Solve Real- World SAT Instances.In:Proceedings of the National Conference on Artificial Intelli- gence, Seiten 203–208, 1997. Literatur 563 34. B ECKER, B. und R. DRECHSLER: How Many Decomposition Types do we Need? In: Proceedings of the European Conference on Design and Test (EDTC), Seiten 438–443, 1995. 35. B ECKER,B.,R.DRECHSLER und R. ENDERS: On the Representational Power of Bit- Level and Word-Level Decision Diagrams.In:Proceedings of the Asia and South Pacific Design Automation Conference (ASPDAC), Seiten 461–467, 1997. 36. B ECKER,B.,R.DRECHSLER und P. MOLITOR: Technische Informatik: Eine Ein- f ¨ uhrung. Pearson Studium, Deutschland, 2005. 37. B EN-ARI,M.,Z.MANNA und A. PNUELI: The Temporal Logic of Branching Time. In: Proceedings of the Symposium on Principles of Programming Languages (POPL), Seiten 164–176, 1981. 38. B ENVENISTE, A. und P. LEGUERNIC: Hybrid Dynamical Systems Theory and the SI- GNAL Language. IEEE Transactions on Automatic Control, 35(5):535–546, 1990. 39. B ´ ERARD,B.,M.BIDOIT,A.FINKEL,F.LAROUSSINIE,A.PETIT,L.PETRUCCI, P. S CHNOEBELEN und P. M CKENZIE: Systems and Software Verification. Springer, Berlin, Heidelberg, 2001. 40. B EREZIN,S.,A.BIERE,E.M.CLARKE und Y. ZHU: Combining Symbolic Model Checking with Uninterpreted Functions for Out-of-Order Processor Verification.In: Proceedings of the I nternational Conference on Formal Methods in Computer-Aided Design (FMCAD), Seiten 369–386, 1998. 41. B ERGERON,J.:Writing Testbenches: Functional Verification of HDL Models. Kluwer Academic Publishers, Dordrecht, 2003. 2. Auflage. 42. B ERGERON,J.,E.CERNY,A.HUNTER und A. NIGHTINGALE: Verification Methodo- logy Manual for SystemVerilog. Springer, New York, Berlin, Heidelberg, 2005. 43. B ERMAN, C. L. und L. H. TREVILLYAN: Functional Comparison of Logic Designs for VLSI Circuits.In:Proceedings of the International Conference on Computer-Aided Design (ICCAD), Seiten 456–459, 1989. 44. B ERRY, G. und G. GONTHIER: The ESTEREL Synchronous Programming Language: Design, Semantics, Implementation. Science of Computer Programming, 19(2):87–152, 1992. 45. B ERTACCO,V.:Scalable Hardware Verification with Symbolic Simulation. Springer, New York, NY, U.S.A., 2006. 46. B EYER,D.,T.A.HENZINGER und G. TH ´ EODULOZ: Configurable Software Verifica- tion: Concretizing the Convergence of Model Checking and Program Analysis.In:Pro- ceedings of the International Conference on Computer Aided Verification (CAV), Seiten 504–518, 2007. 47. B HASKER,J.:A SystemC Primer. Star Galaxy Publishing, Allentown, Pennsylvania, 2004. 2. Auflage. 48. B IERE,A.,A.CIMATTI,E.M.CLARKE,M.FUJITA und Y. ZHU: Symbolic Model Checking Using SAT Procedures instead of BDDs.In:Proceedings of the Design Auto- mation Conference (DAC), Seiten 317–320, 1999. 49. B IERE,A.,A.CIMATTI,E.M.CLARKE und Y. ZHU: Symbolic Model Checking wi- thout BDDs.In:Tools and Algorithms for Construction and Analysis of Systems, Seiten 193–207. Springer, Berlin, Heidelberg, 1999. 50. B IERE, A. und W. KUNZ: SAT and ATPG: Boolean Engines for Formal Hardware Ve- rification.In:Proceedings of the International Conference on Computer-Aided Design (ICCAD), Seiten 782–785, 2002. 51. B IROLINI,A.:Reliability Engineering: Theory and Practice. Springer, Berlin, Heidel- berg, 2004. 2. Auflage. [...]... International Workshop on Automatic Verification Methods for Finite State Systems, Seiten 197–212, 1990 133 D ONLIN , A.: Transaction Level Modeling: Flows and Use Models In: Proceedings of the Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS), Seiten 75–80, 2004 134 D RECHSLER , R und B B ECKER: Overview of Decision Diagrams IEE Proceedings on Computers and Digital Techniques, 144(3):187–193,... Real-Time Systems Information and Computation, 111(2):193–244, 1994 219 H ERBER , P., J F ELLMUTH und S G LESNER: Model Checking SystemC Designs Using Timed Automata In: Proceedings of the Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS), Seiten 131–136, 2008 220 H IND , M.: Pointer Analysis: Haven’t We Solved this Problem Yet? In: Proceedings of the Workshop on Program Analysis . D ONLIN,A.:Transaction Level Modeling: Flows and Use Models.In:Proceedings of the Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS), Seiten 75–80, 2004. 134. D RECHSLER,. GLESNER: Model Checking SystemC Designs Using Timed Automata.In:Proceedings of the Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS), Seiten 131–136, 2008. 220. H IND,M.:Pointer