*This preview shows
pages
1–8. Sign up to
view the full content.*

This ** preview**
has intentionally

**sections.**

*blurred***to view the full version.**

*Sign up*This ** preview**
has intentionally

**sections.**

*blurred***to view the full version.**

*Sign up*This ** preview**
has intentionally

**sections.**

*blurred***to view the full version.**

*Sign up*This ** preview**
has intentionally

**sections.**

*blurred***to view the full version.**

*Sign up*
**Unformatted text preview: **CS256/Winter 2007 — Lecture #17 Zohar Manna 17-1 Introduction to Symbolic Model Checking and BDD’s References : • Chapters 5 and 6 of E. M. Clarke, O. Grunberg, and D. A. Peled: Model Checking , MIT Press 1999. • Randal Bryant: “Graph-Based Algorithms for Boolean Function Manipulation”. In IEEE Transactions on Computers , C-35-8, pp. 677–691, August, 1986. • Fabio Somenzi: The CU Decision Diagram Pack- age . http://vlsi.colorado.edu/ ∼ fabio/CUDD/ cuddIntro.html . 17-2 Symbolic Model Checking ( smc ) Invariance: Prove that P q 0 p , for p state formula ⇔ P q / 1 ¬ p ⇔ ¬ p is not reachable by any computation (run) of P . 17-3 Algorithm Reach (Symbolic reachability) Algorithm Reach ( P : fts ) : set of states S ← { s ∈ Σ | s q Θ } // initial states repeat S ← post ( S, P ) S ← S ∪ S until S does not change in an iteration. // At termination, S represents the set of // P-reachable states. post ( S, P ) = { s ∈ Σ | ∃ τ ∈ T ( P ) ∃ s ∈ S ( s, s ) ∈ τ } An algorithm that acts only in terms of sets of states (vs. individual states) is called symbolic . 17-4 Symbolic representation of sets of states Suppose that Σ contains ≤ 2 n states. Then we can map states into n-bit vectors. Example: If V = { d : 1 .. 31 , m : 1 .. 12 , y :- 4000 .. 4000 } , then it is enough to use n = d log 31 e + d log 12 e + d log 8001 e = 5 + 4 + 13 = 22 bits. A set of states S ⊆ Σ is then represented as a boolean function f S : Bool n → Bool , where Bool = { , 1 } . (characteristic function), f S ( s ) = ( 1 if s ∈ S if s 6∈ S 17-5 Example: Let D = {h d, m, y i valid dates. Then f D (00001 | {z } 1 0001 | {z } Jan |{z} + 011111000110 | {z } 1980 = 1 f D (11111 | {z } 31 0010 | {z } Feb |{z} + 011111000110 | {z } 1980 = 0 17-6 Symbolic representation of transition systems Let Σ be represented by a subset of Bool n . Θ : set of states, represented by f Θ : Bool n → Bool ....

View Full
Document