250 likes | 521 Views
Model Checking. E. M. Clarke, O. Grumberg, D. A. Peled. Model Checking. Models. Temporal Logics. Model Checking Kripke Structure Graph (SCC) Tableaux Automata Symbolic (BDD, Fixpoint) On the Fly Partial order reduction. Chapter 2: Modeling Systems. Modeling Concurrent Systems
E N D
Model Checking E. M. Clarke, O. Grumberg, D. A. Peled 1
Model Checking Models Temporal Logics Model Checking Kripke Structure Graph (SCC) Tableaux Automata Symbolic (BDD, Fixpoint) On the Fly Partial order reduction 2
Chapter 2: Modeling Systems • Modeling Concurrent Systems • Kripke Structure (S,S0,R,L) • First Order Representation (V,S0,R) • Granularity of Transitions • Concurrent Systems • Digital Circuits (Synchronous/Asynchronous) • Programs • Concurrent Programs 3
Chapter 3: Temporal Logics • CTL* • Temporal Operators • Path Quantifier • Path and State Formulas • CTL and LTL • CTL/ACTL • LTL • Fairness • Fairness Constraints • Fair Kripke Structure (S,R,L,F) • Fair Semantics 4
Chapter 4: Model Checking • CTL Model Checking (Labeling) • CheckEU • CheckEG • Fairness (CheckFairEG) • LTL Model Checking by Tableau • PSPACE/NP-Hard • Tableau Construction (s,K) • Check Self-fulfilling SCC • CTL* Model Checking • CTL and LTL Subformulas • Divide and Conquer 5
Chapter 5: Binary Decision Diagrams • Representing Boolean Formulas/Functions • Ordered Binary Decision Trees • Ordered Binary Decision Diagrams • OBDD Operations • Representing Kripke Structure • Boolean Representation of Variables • Relation = Characterization Function • Characterization Function = OBDD • (S,S0,R,L) = OBDDs 6
Chapter 6: Symbolic MC • Fixpoint Representation • Fixpoint • Fixpoint Computation • CTL Formulas • Symbolic CTL Model Checking • Quantifier Boolean Formulas • CheckEX/CheckEU/CheckEG • Fairness • Fixpoint Representation of Fair EGf • CheckFairEG/CheckFairEX/CheckFairEU 7
Chapter 6(2): Symbolic MC • Counterexamples and Witnesses • Relational Product Computation • RelProd • Partitioned Transition Relations • Symbolic LTL Model Checking • Tableaux for LTL Formulas • Product of Kripke Structures and LTL Tableaux • Fairness Constraints for Until-Subformulas • Symbolic Model Checking 8
Chapter 7: MC for -Calculus • Propositional -Calculus • Modified Kripke Structure (S,T,L) • Relational Variables and Environments • Alternation Depth • Evaluating Fixpoint Formulas • Algorithms • OBDD Representation • CTL to -Calculus • Complexity 9
Chapter 9: MC and Automata • Automata • Finite Words • Infinite Words • Buchi Automata • Nondeterministic Buchi Automata • Generalized Buchi Automata • Checking Emptiness • Double DFS • Correctness 10
Chapter 9(2): MC and Automata • LTL to Automata • On the Fly Model Checking • Checking Language Containment Symbolically 11
Chapter 10: Partial Order Reduction • Concurrency in Asynchronous Systems • Depth First Search • ample(s) versus enabled(s) • Independence and Invisibility • Independence • Invisibility • Invariant under Stuttering • Partial Order Reduction for LTL_x • c0 – c4 12
Chapter 10(2): Partial Order Red. • Calculating Ample Sets • c0, c2, c1 – Heuristic, c3 – c3’ • Heuristic • On the Fly Reduction • Correctness • Partial Order Reduction in SPIN • MC in Practice 13
Chapter 8: MC in Practice • SMV Model Checker • Modules • Synchronous and interleaved Composition • Nondeterministic Transitions • Transition Relations • Model Checking Example • IEEE Futurebus+ Standard 14
归类 • 不同类型的模型 • 不同类型的时序逻辑 • 各种模型检测算法(优化方法)及算法正确性分析 • 模型检测工具和实例 15
模型 模型之间的 关系 • Kripke Structures • Fair Kripke Structures • Modified Kripke Structures • First Order Representation • Digital Circuits (Synchronous/Asynchronous) • Programs and Concurrent Programs • Buchi Automata • Generalized Buchi Automata 模型之间的 转换 不同模型的 特点 16
时序逻辑 逻辑的 语法语义 • CTL* • CTL/ACTL • LTL • -Calculus 不同逻辑的 关系 不同逻辑的 特点 17
模型检测相关算法(1) 算法 复杂性 • CTL Model Checking (Labeling) • LTL Model Checking by Tableau • CTL* Model Checking • Symbolic CTL Model Checking • Symbolic Fair CTL Model Checking • Symbolic LTL Model Checking • Model Checking for -Calculus • Checking Emptiness 算法的 基本原理 算法 正确性 18
模型检测相关算法(2) • Counterexamples and Witnesses • Relational Product Computation • LTL to Automata • CTL to -Calculus • Concurrent Programs to First Order Rep. 19
模型检测相关算法(3) • On the Fly Model Checking • Partial Order Reduction • Heuristics for Ample Sets • Checking Language Containment Symbolically 20
模型检测算法相关数据结构 表示方法 • OBDD 化简和计算 方法 21
模型检测工具 • SMV –IEEE Futurebus+ Standard • SPIN – Leader Election 22
总体课程目标 • 掌握模型检测基础理论 • 不同类型的模型 • 不同类型的时序逻辑 • 各种模型检测算法及算法正确性分析 • 具备模型检测方法研究及应用的能力 • 能够较快阅读本专业方向的文献 • 能够针对特定问题设计模型检测算法 • 能够应用模型检测方法和工具对特定问题进行验证