An Introduction to Multi-Valued Model Checking
|
|
- Maurice Turner
- 5 years ago
- Views:
Transcription
1 An Introduction to Multi-Valued Model Checking Georgios E. Fainekos Department of CIS University of Pennsylvania Written Preliminary Examination II 30 th of June, 2005
2 Model Checking: Is the system correct?? Extract model a b s 0 Formalize Specification a b s 2 a b s 1 A[Ga (Xb a)] Model Model Checker YES Witness NO Counter Example
3 Multi-Valued Model Checking: In what degree is the system correct?? M a=t b=f Extract model s 2 a=m b=t T T T s 0 M a=t b=m s 1 Formalize Specification A[Ga (Xb a)] MV-Model Checker The degree of satisfaction
4 Why multi-valued model checking? Application 1: conflicting viewpoints kegak a=t b=f s 0 a=f b=f TT { s 0 a=t b=f s 2 a=f s 1 b=t a=t b=t s 0 a=tt b=ff TF s 1 FT a=ff b=tf a=ft b=ft TT TT s 2 { TF FT FF {s 1 kex bk {s 0 TT {s 0,s 2 s b=f a=f 2 s 1 TF TT FT { TF FF FT { {s 1,s 2 FF Example modified from Chechik et al
5 Why multi-valued model checking? Application 2: Abstraction Using 3-valued logic introduce new special value Maybe to stand for unknown Advantages: No spurious counter-examples result = T, F or M (unknown) Verification even using incomplete models T M F s 0 s 1 p q r p q r p q r s 2 s 0,1 s 2 p=m q=f r=t T T M p=t q=t r=f Example taken from Marsha Chechik
6 Why multi-valued model checking? Application 3: Query Checking [Chan, CAV 00] Goal: speed-up design understanding discover properties not known a priori Temporal logic query temporal logic formula with placeholders (unknowns) e.g., AG? x, AG (p? x ) evaluates to strongest propositional formula that makes query true. Some applications {p, true provide partial explanation when property holds e.g. instead of AG (a b), ask AG? x {a, b answer a b is stronger! {false, p, p, true {p, p, true {true { { p, true provide diagnostic information when property fails e.g. if AG (req AF ack) fails - ask AG (req AF? x ) Slide courtesy of Marsha Chechik
7 Ordering objects A partial-order is a binary relation such that for all x,y,z S the following properties hold: Reflexivity Transitivity Antisymmetry A poset is the pair: S=(S, ) x v x x v y and y v z imply x v z x v y and y v x imply x = z In a linear order all the elements are comparable. sup(x) X inf(x) top (T) bottom ( ) Let X,Y be posets, then a map f : X Y is called order-preserving if: ( x 1,x 2 X).(x 1 v X x 2 f(x 1 ) v Y f(x 2 )) f
8 Lattices Define join and meet as: x t y := sup({x, y) and x u y := inf({x, y) Lattice L is a poset (L, ) where for all x,y L, x y and x y exist Complete lattice is a lattice where for all X L, X and X exist c-complete lattice is a complete lattice with complement operator ~ such that ~T= and ~ =T A lattice is distributive iff it satisfies the distributive law ( x, y, z L).(x u (y t z) =(x u y) t (x u z)) Let X,Y be posets, then a map f : X Y is called continuous function if for all non-empty directed sets Z X: t f(z) =f(t Z) and u f(z) =f(t Z)
9 Some important lemmas The join and meet are order preserving functions, i.e. for all x,y,z,w L x v y and z v w imply x t z v y t w The connecting lemma, for x,y L y w x v y iff x t y = y iff x u y = x Every finite lattice is complete z x Every continuous function is order preserving If X,Y are finite posets and f:x Y is order preserving, then f is continuous
10 Join irreducible elements An element x of a lattice L is join irreducible if (i) x (ii) x=y z implies x=y or x=z for all y,z L Every element of lattice L can be written as a join of join irreducible elements, for all x L: x = F {y J(L) y v x If L is distributive lattice then, the following are equivalent: x is join-irreducible if y,z L and x y z then x y or x z
11 Quasi-Boolean and Boolean Algebras A quasi-boolean algebra B is a structure B=(B,,, ~,,T); where T and are the greatest and least elements, (B,, ) is a distributive lattice and ~ is an unary operation of period 2 s.t. for every x B there exists unique ~x B satisfying: De Morgan laws: ø (x u y) =ø x tøy ø (x t y) =ø x uøy Antimonotonic: x v y iff ø y vø x Involution: ~~x=x A Boolean algebra B is a quasi-boolean algebra where for each element x B the following hold: Law of non-contradiction x uøx = Law of excluded middle x tøx = >
12 Quasi-Boolean and Boolean Algebras (examples) Quasi-Boolean Algebras B 3 =({0,½,1, ) B 3,3 =B 3 B 3 Boolean Algebras B S =(2 S, ), S={a,b,c 1 true 11 1½ ½1 ½ maybe 10 ½½ 01 0 false ½0 0½ ~1=0, ~0=1, ~½=½ true 1½,½1 likely unknown ½½ 10,01 disputed 0½,½0 unlikely {a,b,c {a,b {a,c {a {b { B 2 =({0,1, ) 1 true {b,c {c B 2,2 =B 2 B B false 0 false 00
13 Tarski-Knaster Fixpoint Theorem Let L be a complete lattice and f : L L be an order-preserving function, then f has fixpoints, i.e. f(x) = x. The least and greatest fixpoints are characterized as follows: Let y, z in L such that y f(y), y µx.f(x), f(z) z, νx.f(x) z and, let f to be continuous, then the iteration:
14 Multi-valued sets and relations A multi-valued set is a total function from the objects of a set S to the elements of a lattice L, i.e. : S L Intuitively, expresses the degree that an object s belongs to a set S Actually, in the two-valued case, i.e. when L=B 2, it reduces to the characteristic function of the set S A multi-valued relation on sets S and T over a lattice L is a function : S T L.
15 mv-kripke Structures An mv Kripke structure is a tuple M = (S, S 0,, AP,, L,D) S is a (finite) set of states S 0 is a set of initial states (S 0 S) : S S L is an mv-transition relation AP is a (finite) set of atomic propositions : S AP L is a total labelling function that maps a pair of a state s and an atomic proposition a to an element of the lattice L L is a lattice or an algebra D is the set of designated values
16 mv-kripke Structures (Examples) s 0 a=tt b=ff TF s 1 FT a=ff b=tf a=ft b=ft TT TT s 2 T pressed = T request = F pressed = T request = F T T pressed = M request = T M TT TF FT T FF M F Examples courtesy of Marsha Chechik
17 Predecessor mv-sets The existential predecessor set: The universal predecessor set: Bruns & Godefroid and Chechik et. al. (def. 1) Konikowska & Penczek (def. 2) Compare with classical definition:
18 Example For any a AP, we denote by DaD : S L the mv-set that represents the degree that the proposition a is satisfied in some state s The mv-set DaD introduces a partition of the state space s 0 Example from Chechik et al a=tt b=ff TF s 1 FT a=ff b=tf a=ft b=ft TT TT s 2 DaD {s 0 DbD { DbD {s 0 TT { {s 2 {s 1 {s 2 {s 2 {s 1 TF FT {s 1 {s 0 { FF {(s 1,s 2 ), (s 2,s 2 ) {(s 0,s 1 ) {(s 0,s 2 ) {(s 0,s 0 ), (s 1,s 0 ), (s 1,s 1 ), (s 2,s 0 ), (s 2,s 1 )
19 Example from Chechik et al a=t b=f s 0 a=f b=f s 2 a=f s 1 b=t s 0 a=t b=f a=t b=t s b=f a=f 2 s 1 s 0 a=tt b=ff TF s 1 FT a=ff b=tf a=ft b=ft TT TT s 2 DaD {s 0 DbD { DbD {s 0 TT { {s 2 {s 1 {s 2 {s 2 {s 1 TF FT {s 1 {s 0 { FF {(s 1,s 2 ), (s 2,s 2 ) pre (DaD) = pre (DaD) pre (DbD) {(s 0,s 1 ) {(s 0,s 2 ) { {s 0 {(s 0,s 0 ), (s 1,s 0 ), (s 1,s 1 ), (s 2,s 0 ), (s 2,s 1 ) { { {s 0,s 1,s 2 { {s 1,s 2 {
20 The multi-valued model checking problem Given multi-valued system M = (S, S 0,, AP,, L,D) and a specification φ Multi-valued model checking problem ( s S 0 ).(kϕk M (s) D) Alternative: Given multi-valued system M = (S, S 0,, AP,, L,D), state s in S and specification φ determine DφD M (s)
21 The multi-valued model checking problem Two main approaches Reduction methods to classical model checking [Bruns and Godefroid] Reduction for multi-valued µ-calculus [Chechik et. Al.] Reductions for multi-valued LTL, µ-calculus [Konikowska and Penczek] Reduction methods for mv-ctl* using designated values mv-ctl* for FLO and specific lattices (L 2,2,L 4+2,etc) µ-calculus Direct methods [Bruns and Godefroid] Extended alternating automata [Chechik et. Al.] Multi-valued CTL symbolic model checking
22 Temporal Logics (1) CTL* syntax Derived operators
23 Temporal logics (2): Semantic Intuition of Linear time properties G a -always a a a a a a a F a eventually a * * * a * * X a next state a * a * * * * a U b a until b a B b a before b a * a a b * * * a * b *
24 Temporal Logics (3): Semantic intuition of branching temporal properties
25 Mv-CTL* model checking using designated values (1) Semantics of mv-ctl * in Negation Normal Form (NNF) State formulas Path formulas
26 Mv-CTL* model checking using designated values (2) Theorem 1 (Reduction from NNF mv-ctl* to CTL* using Designated Values) Assume that L is a c-complete lattice. Let the designated values D and non-designated values N be closed under arbitrary bounds. Define τ : M = (S, S 0,, AP +,, L,D) K = (S, S 0, R, AP +, O) such that: Then for any state formula φ s and any path formula φ p of NNF mv- CTL* over the lattice L and any state s in S and path π in Paths M (s) of M, we have:
27 Mv-CTL* model checking using designated values (3) Sketch of proof: Notice that the paths on M and K are the same For any subset L S of L the following properties hold: Proof proceeds by induction on the structure of φ, some cases: φ=a, a in AP +, then holds by definition φ=φ 1 φ 2, then DφD M (s)=dφ 1 D M (s) Dφ 2 D M (s) D iff (property 1) ( i). (Dφ i D M (s) D) iff (IH) (K,s) φ i implies (K,s) φ 1 φ 2 =φ φ=[φ 1 Uφ 2 ], then DφD M (π[i]) D iff (property 1) there exists j>i+1 s.t. ( (π(j-1), π(j)) Dφ 2 D M (π[j])) D iff (as (π(j-1), π(j)) D and D is closed under bounds) Dφ 2 D M (π[j]) D and (property 2) for all 0<k<j ( (π(k-1), π(k)) Dφ 1 D M (π[k])) D iff Dφ 1 D M (π[k]) D iff (IH) on the same path π, (K,π[j]) φ 2 and for all 0<k<j (K,π[k]) φ 1 which by definition is (K,π[0]) [φ 1 Uφ 2 ]=φ
28 Mv-CTL* model checking using designated values (4) Theorem 2 (Reduction from mv-ctl* to CTL* using Designated Values) Assume that L is a c-complete lattice. Let the designated values D and non-designated values N be closed under arbitrary bounds. x D implies ~x N and x N implies ~x D Define τ : M = (S, S 0,, AP,, L,D) K = (S, S 0, R, AP, O) such that: Then for any state formula φ s and any path formula φ p of NNF mv-ctl* over the lattice L and any state s in S and path π in Paths M (s) of M, we have: Proof: The only additional case is for the complementation
29 Mv-CTL* model checking using designated values (5) Examples: Theorem 1: The condition that D and N should be closed under arbitrary bounds is satisfied by logics over finite linear orders i.e. 3-valued Kleene logic, many-value Lukasiewicz logics etc Theorem 2: The conditions are satisfied by: Logics over finite linear orders Logic over the lattice L 2,2 D N T F ~ Rosser-Turquette Gödel Lukasiewicz T D T D T D D N F N F N F 00 N
30 Mv-CTL* model checking using designated values (6) Remarks The complexity of mv-ctl* model checking is the same as the two-valued case The complexity of CTL* model checking is O( K 2 φ ) A combination of LTL and CTL model checking algorithms Due to the construction a counter-example in K is a counter-example in M The approach is helpful as long as we do not care about the exact value If the conditions of theorem 2 are satisfied then the 2 definitions of the predecessor sets coincide for the designated values
31 Syntax The propositional two-valued µ-calculus Semantics
32 mv-µ-calculus Model Checking by Reduction (1) Semantics of mv-µ-calculus in NNF wrt to mv-model M Atomic propositions and mv-transition relation take values over a quasi-boolean algebra B
33 mv-µ-calculus Model Checking by Reduction (2) Assume that the transition relation is 2-valued (denoted by R) Define translation: τ : M = (S, S 0, R, AP +,, B,D) K x = (S, S 0, R, AP +, O x ) For all s S and for some x B a O x (s) iff x a (s) Proposition: Let M be a mv-kripke structure over a finite distributive lattice L, φ an mv-µ-calculus formula in NNF, s in S and x, x in L, then (DφD Kx e)(s) = 1 and x x imply (DφD Kx e)(s) = 1. Proof: Straightforward double induction on the alternation depth and the structure of the formula φ. Main Result (Theorem): Let M be a mv-kripke structure over a finite distributive lattice L, φ an mv-µ-calculus formula in NNF, s in S, then (DφD M ε)(s) = {x J(L) (DφD Kx e)(s) = 1 Proof: Every element of lattice L can be written as a join of join irreducible elements, i.e. (DφD M ε)(s) = {x J(L) x (DφD M ε)(s)
34 mv-µ-calculus Model Checking by Reduction (3) Lemma: Let M be a mv-kripke structure over a finite distributive lattice L, φ an mv-µ-calculus formula in NNF, s in S and x in J(L), then (DφD Kx e)(s) = 1 iff x (DφD M ε)(s). Proof: By induction on the alternation depth n of the formula φ. Let n=0, we proceed by induction on the structure of φ, case φ=a AP + by definition φ=φ 1 φ 2, then Dφ 1 φ 2 D Kx e (s)=1 iff Dφ 1 D Kx e(s)=1 or Dφ 2 D Kx e(s)=1 iff (IH) x Dφ 1 D M ε(s) or x Dφ 2 D M ε (s) iff(*) x = x x Dφ 1 D M ε(s) Dφ 2 D M ε (s) iff x Dφ 1 φ 2 D M ε (s) Consider alternation depth n+1 and proceed by induction on the structure of φ, case φ=µχ.ψ(χ), then DµΧ.ψ(Χ)D Kx e (s)=1 iff s (f Kx,ψ ) S +1 ( ). Also, x DµΧ.ψ(Χ)D M ε (s) iff x (f M,ψ ) S +1 ( ). By IH s (f Kx,ψ ) S +1 ( ) iff x (f M,ψ ) S +1 ( ).
35 mv-µ-calculus Model Checking by Reduction (4) Reduction algorithm for mv-µ-calculus Reduction method for the mv-µ-caclulus calls at most J(L) times the µ-caclulus model checker The running time of the naive µ-caclulus model checking algorithm is: O( φ K S nest(φ) ) 1 ½ 0 Example: The Kripke structure K 1 expresses the pessimistic viewpoint that ½ is false, while K ½ expresses the optimistic viewpoint that both the values 1 and ½ are true. If K 1 satisfies φ then (DφD M ε)(s) = {1, ½ = 1. If K ½ satisfies φ then (DφD M ε)(s)= {½ = ½.
36 CTL Syntax Direct mv-ctl Model Checking (1) Semantics of mv-ctl wrt mv-model M Atomic propositions and mv-transition relation take values over a quasi-boolean algebra B
37 Direct mv-ctl Model Checking (2) mv-ctl symbolic model checking algorithm The running time of the mv-ctl symbolic model checking algorithm is: O( φ S M t L )
38 Direct mv-ctl Model Checking (3) Derived operators Derived fixpoint properties
39 Direct mv-ctl Model Checking (4) s 0 a=tt b=ff TF s 1 FT a=ff b=tf a=ft b=ft TT TT s 2 We want to model check the specification: kegak M We use the fixpoint: kegak = Z.kak B kexzk DaD {s 0 Z 0 {s 0,s 1,s 2 DEX Z 0 D {s 0,s 1,s 2 Z 1 {s 0 { {s 2 { { { { { {s 2 {s 1 { { {s 1 DEX Z 1 D { Z 2 { { {s 0,s 1,s 2 { {s 0,s 2 { {s 1
40 Remarks: Fairness conditions Preserve values of fair paths, set unfair paths to Let fairness conditions {c i then ( s S).(Dc i D K (s) {T, ) A computation is fair if every computation comprising it is fair Direct mv-ctl Model Checking (5) i.e. when we consider composition of different viewpoints DE c G φd K := νz.dφd K B B,i=1 n DEX E[φ U φ Z c k ]D K DE c X φd K :=DEX (φ (E c GT ))D K DE c [φuψ]d K :=DE[φU(ψ (E c GT ))]D K Generation of proof like counter-examples and witnesses
41 mv-model Checking in Practice (1) Reduction methods: just use existing model checkers nusmv, SPIN, CADP, EVALUATOR etc Direct Methods: χ-check: mv-ctl model checker based on symbolic methods An example to compare the two approaches: Case study: the SMV elevator example Single Button Collective Control 1 modified module Button per floor (outside elevator) 1 module Lift (var: floor, door, direction, 1 button per floor) Comparison using the same model checker χ-check Pentium III, 850MHz, 256MB RAM, Linux
42 mv-model Checking in Practice (2) Figure courtesy of M. Chechik et. Al.
43 mv-model Checking in Practice (3) Figures courtesy of M. Chechik et. Al.
44 Conclusions Both reduction and direct approaches to multi-valued model checking have their own advantages The additional expressive power of the mv-models permits the formal verification of problems that could not be handled before One concern: Hard to transfer these methods to industry one has to be well versed to many-valued logics
45 Future Directions Reduction to CTL* using designated values Built proof system mv-ctl symbolic model checker Introduce types for the atomic propositions Extend to mv-ltl model checking Use property patterns Investigate more realistic applications
46 References [1] G. Bruns and P. Godefroid, Model checking with multi-valued logics. Bell Labs, Lucent Technologies, Tech. Rep. ITD H, May [2], Model checking with multi-valued logics. in Proceedings of the 31st International Colloquium on Automata, Languages and Programming (ICALP), ser. Lecture Notes in Computer Science, vol Springer-Verlag, 2004, pp [3] M. Chechik, B. Devereux, S. Easterbrook, and A. Gurfinkel, Multivalued symbolic model-checking, ACM Trans. Softw. Eng. Methodol., vol. 12, no. 4, pp. 1 38, Oct [4] B. Konikowska and W. Penczek, On designated values in multivalued ctl* model checking, Fundamenta Informaticae, vol. 57, pp. 1 14, 2004.
47 Thank you! Questions???
An Introduction to Multi Valued Model Checking
An Introduction to Multi Valued Model Checking Georgios E. Fainekos Department of Computer and Information Science University of Pennsylvania, Philadelphia, PA 19104, USA E-mail: fainekos (at) grasp.cis.upenn.edu
More informationMulti-Valued Symbolic Model-Checking
Multi-Valued Symbolic Model-Checking MARSHA CHECHIK, BENET DEVEREUX, STEVE EASTERBROOK AND ARIE GURFINKEL University of Toronto This paper introduces the concept of multi-valued model-checking and describes
More informationModel Checking with CTL. Presented by Jason Simas
Model Checking with CTL Presented by Jason Simas Model Checking with CTL Based Upon: Logic in Computer Science. Huth and Ryan. 2000. (148-215) Model Checking. Clarke, Grumberg and Peled. 1999. (1-26) Content
More informationT Reactive Systems: Temporal Logic LTL
Tik-79.186 Reactive Systems 1 T-79.186 Reactive Systems: Temporal Logic LTL Spring 2005, Lecture 4 January 31, 2005 Tik-79.186 Reactive Systems 2 Temporal Logics Temporal logics are currently the most
More informationLecture 16: Computation Tree Logic (CTL)
Lecture 16: Computation Tree Logic (CTL) 1 Programme for the upcoming lectures Introducing CTL Basic Algorithms for CTL CTL and Fairness; computing strongly connected components Basic Decision Diagrams
More informationTimo Latvala. February 4, 2004
Reactive Systems: Temporal Logic LT L Timo Latvala February 4, 2004 Reactive Systems: Temporal Logic LT L 8-1 Temporal Logics Temporal logics are currently the most widely used specification formalism
More informationHow Vacuous is Vacuous?
How Vacuous is Vacuous? Arie Gurfinkel and Marsha Chechik Department of Computer Science, University of Toronto, Toronto, ON M5S 3G4, Canada. Email: {arie,chechik}@cs.toronto.edu Abstract. Model-checking
More informationFORMAL METHODS LECTURE V: CTL MODEL CHECKING
FORMAL METHODS LECTURE V: CTL MODEL CHECKING Alessandro Artale Faculty of Computer Science Free University of Bolzano Room 2.03 artale@inf.unibz.it http://www.inf.unibz.it/ artale/ Some material (text,
More informationTemporal Logic Model Checking
18 Feb, 2009 Thomas Wahl, Oxford University Temporal Logic Model Checking 1 Temporal Logic Model Checking Thomas Wahl Computing Laboratory, Oxford University 18 Feb, 2009 Thomas Wahl, Oxford University
More informationTemporal Logic Control under Incomplete or Conflicting Information
Temporal Logic Control under Incomplete or Conflicting Information Georgios Fainekos, and Herbert G. Tanner Abstract Temporal logic control methods have provided a viable path towards solving the single-
More informationPartial model checking via abstract interpretation
Partial model checking via abstract interpretation N. De Francesco, G. Lettieri, L. Martini, G. Vaglini Università di Pisa, Dipartimento di Ingegneria dell Informazione, sez. Informatica, Via Diotisalvi
More informationThorough Checking Revisited
Thorough Checking Revisited Shiva Nejati Mihaela Gheorghiu Marsha Chechik {shiva,mg,chechik}@cs.toronto.edu University of Toronto 1 Automated Abstraction SW/HW Artifact Correctness Property Model Extraction
More informationChapter 4: Computation tree logic
INFOF412 Formal verification of computer systems Chapter 4: Computation tree logic Mickael Randour Formal Methods and Verification group Computer Science Department, ULB March 2017 1 CTL: a specification
More informationLattice Automata. Orna Kupferman and Yoad Lustig
Lattice Automata Orna Kupferman and Yoad Lustig Hebrew University, School of Engineering and Computer Science, Jerusalem 91904, Israel Email: {orna,yoadl}@cs.huji.ac.il Abstract. Several verification methods
More informationIntroduction to Model Checking. Debdeep Mukhopadhyay IIT Madras
Introduction to Model Checking Debdeep Mukhopadhyay IIT Madras How good can you fight bugs? Comprising of three parts Formal Verification techniques consist of three parts: 1. A framework for modeling
More informationModal and Temporal Logics
Modal and Temporal Logics Colin Stirling School of Informatics University of Edinburgh July 23, 2003 Why modal and temporal logics? 1 Computational System Modal and temporal logics Operational semantics
More informationProbabilistic Model Checking Michaelmas Term Dr. Dave Parker. Department of Computer Science University of Oxford
Probabilistic Model Checking Michaelmas Term 2011 Dr. Dave Parker Department of Computer Science University of Oxford Overview Temporal logic Non-probabilistic temporal logic CTL Probabilistic temporal
More informationHow Vacuous Is Vacuous?
How Vacuous Is Vacuous? Arie Gurfinkel and Marsha Chechik Department of Computer Science, University of Toronto, Toronto, ON M5S 3G4, Canada. {arie,chechik}@cs.toronto.edu Abstract. Model-checking gained
More informationTrace Diagnostics using Temporal Implicants
Trace Diagnostics using Temporal Implicants ATVA 15 Thomas Ferrère 1 Dejan Nickovic 2 Oded Maler 1 1 VERIMAG, University of Grenoble / CNRS 2 Austrian Institute of Technology October 14, 2015 Motivation
More informationVerification. Arijit Mondal. Dept. of Computer Science & Engineering Indian Institute of Technology Patna
IIT Patna 1 Verification Arijit Mondal Dept. of Computer Science & Engineering Indian Institute of Technology Patna arijit@iitp.ac.in Introduction The goal of verification To ensure 100% correct in functionality
More informationHalting and Equivalence of Program Schemes in Models of Arbitrary Theories
Halting and Equivalence of Program Schemes in Models of Arbitrary Theories Dexter Kozen Cornell University, Ithaca, New York 14853-7501, USA, kozen@cs.cornell.edu, http://www.cs.cornell.edu/~kozen In Honor
More informationTemporal logics and explicit-state model checking. Pierre Wolper Université de Liège
Temporal logics and explicit-state model checking Pierre Wolper Université de Liège 1 Topics to be covered Introducing explicit-state model checking Finite automata on infinite words Temporal Logics and
More informationA MODEL-THEORETIC PROOF OF HILBERT S NULLSTELLENSATZ
A MODEL-THEORETIC PROOF OF HILBERT S NULLSTELLENSATZ NICOLAS FORD Abstract. The goal of this paper is to present a proof of the Nullstellensatz using tools from a branch of logic called model theory. In
More informationLinear Temporal Logic (LTL)
Chapter 9 Linear Temporal Logic (LTL) This chapter introduces the Linear Temporal Logic (LTL) to reason about state properties of Labelled Transition Systems defined in the previous chapter. We will first
More informationModel Checking Algorithms
Model Checking Algorithms Bow-Yaw Wang Institute of Information Science Academia Sinica, Taiwan November 14, 2018 Bow-Yaw Wang (Academia Sinica) Model Checking Algorithms November 14, 2018 1 / 56 Outline
More informationSymbolic Model Checking Property Specification Language*
Symbolic Model Checking Property Specification Language* Ji Wang National Laboratory for Parallel and Distributed Processing National University of Defense Technology *Joint Work with Wanwei Liu, Huowang
More informationTemporal Logic. M φ. Outline. Why not standard logic? What is temporal logic? LTL CTL* CTL Fairness. Ralf Huuck. Kripke Structure
Outline Temporal Logic Ralf Huuck Why not standard logic? What is temporal logic? LTL CTL* CTL Fairness Model Checking Problem model, program? M φ satisfies, Implements, refines property, specification
More informationPSPACE-completeness of LTL/CTL model checking
PSPACE-completeness of LTL/CTL model checking Peter Lohmann April 10, 2007 Abstract This paper will give a proof for the PSPACE-completeness of LTLsatisfiability and for the PSPACE-completeness of the
More informationMathematical Foundations of Logic and Functional Programming
Mathematical Foundations of Logic and Functional Programming lecture notes The aim of the course is to grasp the mathematical definition of the meaning (or, as we say, the semantics) of programs in two
More informationcse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska
cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska LECTURE 1 Course Web Page www3.cs.stonybrook.edu/ cse303 The webpage contains: lectures notes slides; very detailed solutions to
More informationSMV the Symbolic Model Verifier. Example: the alternating bit protocol. LTL Linear Time temporal Logic
Model Checking (I) SMV the Symbolic Model Verifier Example: the alternating bit protocol LTL Linear Time temporal Logic CTL Fixed Points Correctness Slide 1 SMV - Symbolic Model Verifier SMV - Symbolic
More informationAn Introduction to Modal Logic III
An Introduction to Modal Logic III Soundness of Normal Modal Logics Marco Cerami Palacký University in Olomouc Department of Computer Science Olomouc, Czech Republic Olomouc, October 24 th 2013 Marco Cerami
More informationFinite-State Model Checking
EECS 219C: Computer-Aided Verification Intro. to Model Checking: Models and Properties Sanjit A. Seshia EECS, UC Berkeley Finite-State Model Checking G(p X q) Temporal logic q p FSM Model Checker Yes,
More informationTemporal Logic. Stavros Tripakis University of California, Berkeley. We have designed a system. We want to check that it is correct.
EE 244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Fall 2016 Temporal logic Stavros Tripakis University of California, Berkeley Stavros Tripakis (UC Berkeley) EE 244, Fall 2016
More informationAxiomatisation of Hybrid Logic
Imperial College London Department of Computing Axiomatisation of Hybrid Logic by Louis Paternault Submitted in partial fulfilment of the requirements for the MSc Degree in Advanced Computing of Imperial
More informationChapter 6: Computation Tree Logic
Chapter 6: Computation Tree Logic Prof. Ali Movaghar Verification of Reactive Systems Outline We introduce Computation Tree Logic (CTL), a branching temporal logic for specifying system properties. A comparison
More informationQBF Encoding of Temporal Properties and QBF-based Verification
QBF Encoding of Temporal Properties and QBF-based Verification Wenhui Zhang State Key Laboratory of Computer Science Institute of Software, Chinese Academy of Sciences P.O.Box 8718, Beijing 100190, China
More informationOverview. overview / 357
Overview overview6.1 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation Tree Logic syntax and semantics of CTL expressiveness of CTL
More informationMODEL CHECKING. Arie Gurfinkel
1 MODEL CHECKING Arie Gurfinkel 2 Overview Kripke structures as models of computation CTL, LTL and property patterns CTL model-checking and counterexample generation State of the Art Model-Checkers 3 SW/HW
More informationFrom Liveness to Promptness
From Liveness to Promptness Orna Kupferman Hebrew University Nir Piterman EPFL Moshe Y. Vardi Rice University Abstract Liveness temporal properties state that something good eventually happens, e.g., every
More informationAutomata-Theoretic Model Checking of Reactive Systems
Automata-Theoretic Model Checking of Reactive Systems Radu Iosif Verimag/CNRS (Grenoble, France) Thanks to Tom Henzinger (IST, Austria), Barbara Jobstmann (CNRS, Grenoble) and Doron Peled (Bar-Ilan University,
More informationSoftware Verification using Predicate Abstraction and Iterative Refinement: Part 1
using Predicate Abstraction and Iterative Refinement: Part 1 15-414 Bug Catching: Automated Program Verification and Testing Sagar Chaki November 28, 2011 Outline Overview of Model Checking Creating Models
More informationIntroduction to Temporal Logic. The purpose of temporal logics is to specify properties of dynamic systems. These can be either
Introduction to Temporal Logic The purpose of temporal logics is to specify properties of dynamic systems. These can be either Desired properites. Often liveness properties like In every infinite run action
More informationModel Checking. Temporal Logic. Fifth International Symposium in Programming, volume. of concurrent systems in CESAR. In Proceedings of the
Sérgio Campos, Edmund Why? Advantages: No proofs Fast Counter-examples No problem with partial specifications can easily express many concurrency properties Main Disadvantage: State Explosion Problem Too
More informationCS256/Spring 2008 Lecture #11 Zohar Manna. Beyond Temporal Logics
CS256/Spring 2008 Lecture #11 Zohar Manna Beyond Temporal Logics Temporal logic expresses properties of infinite sequences of states, but there are interesting properties that cannot be expressed, e.g.,
More informationInformal Statement Calculus
FOUNDATIONS OF MATHEMATICS Branches of Logic 1. Theory of Computations (i.e. Recursion Theory). 2. Proof Theory. 3. Model Theory. 4. Set Theory. Informal Statement Calculus STATEMENTS AND CONNECTIVES Example
More informationThorough Checking Revisited
Thorough Checking Revisited Shiva Nejati, Mihaela Gheorghiu, and Marsha Chechik Department of Computer Science, University of Toronto, Toronto, ON M5S 3G4, Canada. Email:{shiva,mg,chechik}@cs.toronto.edu
More informationModel Checking & Program Analysis
Model Checking & Program Analysis Markus Müller-Olm Dortmund University Overview Introduction Model Checking Flow Analysis Some Links between MC and FA Conclusion Apology for not giving proper credit to
More informationComputation Tree Logic
Computation Tree Logic Hao Zheng Department of Computer Science and Engineering University of South Florida Tampa, FL 33620 Email: zheng@cse.usf.edu Phone: (813)974-4757 Fax: (813)974-5456 Hao Zheng (CSE,
More informationCourse Runtime Verification
Course Martin Leucker (ISP) Volker Stolz (Høgskolen i Bergen, NO) INF5140 / V17 Chapters of the Course Chapter 1 Recall in More Depth Chapter 2 Specification Languages on Words Chapter 3 LTL on Finite
More informationModel Checking for the -calculus. Paolo Zuliani , Spring 2011
Model Checking for the -calculus Paolo Zuliani 15-817, Spring 2011 Outline What is the -calculus? Semantics Model Checking algorithms [Other fixpoint theorems] The -calculus A language for describing properties
More informationCS357: CTL Model Checking (two lectures worth) David Dill
CS357: CTL Model Checking (two lectures worth) David Dill 1 CTL CTL = Computation Tree Logic It is a propositional temporal logic temporal logic extended to properties of events over time. CTL is a branching
More informationThe non-logical symbols determine a specific F OL language and consists of the following sets. Σ = {Σ n } n<ω
1 Preliminaries In this chapter we first give a summary of the basic notations, terminology and results which will be used in this thesis. The treatment here is reduced to a list of definitions. For the
More informationAlgorithmic verification
Algorithmic verification Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2018 Outline Overview Model checking Symbolic execution Outline Overview Model checking Symbolic execution Program verification
More informationAbstraction for Falsification
Abstraction for Falsification Thomas Ball 1, Orna Kupferman 2, and Greta Yorsh 3 1 Microsoft Research, Redmond, WA, USA. Email: tball@microsoft.com, URL: research.microsoft.com/ tball 2 Hebrew University,
More informationProvenance Semirings. Todd Green Grigoris Karvounarakis Val Tannen. presented by Clemens Ley
Provenance Semirings Todd Green Grigoris Karvounarakis Val Tannen presented by Clemens Ley place of origin Provenance Semirings Todd Green Grigoris Karvounarakis Val Tannen presented by Clemens Ley place
More information3-Valued Abstraction-Refinement
3-Valued Abstraction-Refinement Sharon Shoham Academic College of Tel-Aviv Yaffo 1 Model Checking An efficient procedure that receives: A finite-state model describing a system A temporal logic formula
More informationApplied Logic. Lecture 1 - Propositional logic. Marcin Szczuka. Institute of Informatics, The University of Warsaw
Applied Logic Lecture 1 - Propositional logic Marcin Szczuka Institute of Informatics, The University of Warsaw Monographic lecture, Spring semester 2017/2018 Marcin Szczuka (MIMUW) Applied Logic 2018
More informationCounterexample-Driven Model Checking
Counterexample-Driven Model Checking (Extended Abstract) Natarajan Shankar and Maria Sorea SRI International Computer Science Laboratory 333 Ravenswood Avenue Menlo Park, CA 94025, USA {shankar, sorea}@csl.sri.com
More informationFoundations of Mathematics
Foundations of Mathematics L. Pedro Poitevin 1. Preliminaries 1.1. Sets We will naively think of a set as a collection of mathematical objects, called its elements or members. To indicate that an object
More informationChapter 4: Classical Propositional Semantics
Chapter 4: Classical Propositional Semantics Language : L {,,, }. Classical Semantics assumptions: TWO VALUES: there are only two logical values: truth (T) and false (F), and EXTENSIONALITY: the logical
More information3. Temporal Logics and Model Checking
3. Temporal Logics and Model Checking Page Temporal Logics 3.2 Linear Temporal Logic (PLTL) 3.4 Branching Time Temporal Logic (BTTL) 3.8 Computation Tree Logic (CTL) 3.9 Linear vs. Branching Time TL 3.16
More informationModel Checking I. What are LTL and CTL? dack. and. dreq. and. q0bar
Model Checking I What are LTL and CTL? q0 or and dack dreq q0bar and 1 View circuit as a transition system (dreq, q0, dack) (dreq, q0, dack ) q0 = dreq and dack = dreq & (q0 + ( q0 & dack)) q0 or and D
More informationFirst-order resolution for CTL
First-order resolution for Lan Zhang, Ullrich Hustadt and Clare Dixon Department of Computer Science, University of Liverpool Liverpool, L69 3BX, UK {Lan.Zhang, U.Hustadt, CLDixon}@liverpool.ac.uk Abstract
More informationAlan Bundy. Automated Reasoning LTL Model Checking
Automated Reasoning LTL Model Checking Alan Bundy Lecture 9, page 1 Introduction So far we have looked at theorem proving Powerful, especially where good sets of rewrite rules or decision procedures have
More informationExploiting resolution proofs to speed up LTL vacuity detection for BMC
Int J Softw Tools Technol Transfer (20) 12:319 335 DOI.07/s009-009-0134-1 REGULAR PAPER Exploiting resolution proofs to speed up LTL vacuity detection for BMC Jocelyn Simmonds Jessica Davies Arie Gurfinkel
More informationPropositional Logics and their Algebraic Equivalents
Propositional Logics and their Algebraic Equivalents Kyle Brooks April 18, 2012 Contents 1 Introduction 1 2 Formal Logic Systems 1 2.1 Consequence Relations......................... 2 3 Propositional Logic
More informationLecture 2: Symbolic Model Checking With SAT
Lecture 2: Symbolic Model Checking With SAT Edmund M. Clarke, Jr. School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 (Joint work over several years with: A. Biere, A. Cimatti, Y.
More informationMathematical Preliminaries. Sipser pages 1-28
Mathematical Preliminaries Sipser pages 1-28 Mathematical Preliminaries This course is about the fundamental capabilities and limitations of computers. It has 3 parts 1. Automata Models of computation
More informationForcing in Lukasiewicz logic
Forcing in Lukasiewicz logic a joint work with Antonio Di Nola and George Georgescu Luca Spada lspada@unisa.it Department of Mathematics University of Salerno 3 rd MATHLOGAPS Workshop Aussois, 24 th 30
More informationUniversity of Oxford, Michaelis November 16, Categorical Semantics and Topos Theory Homotopy type theor
Categorical Semantics and Topos Theory Homotopy type theory Seminar University of Oxford, Michaelis 2011 November 16, 2011 References Johnstone, P.T.: Sketches of an Elephant. A Topos-Theory Compendium.
More informationLecture Notes on Emptiness Checking, LTL Büchi Automata
15-414: Bug Catching: Automated Program Verification Lecture Notes on Emptiness Checking, LTL Büchi Automata Matt Fredrikson André Platzer Carnegie Mellon University Lecture 18 1 Introduction We ve seen
More informationUniversal Algebra for Logics
Universal Algebra for Logics Joanna GRYGIEL University of Czestochowa Poland j.grygiel@ajd.czest.pl 2005 These notes form Lecture Notes of a short course which I will give at 1st School on Universal Logic
More informationCS 154, Lecture 4: Limitations on DFAs (I), Pumping Lemma, Minimizing DFAs
CS 154, Lecture 4: Limitations on FAs (I), Pumping Lemma, Minimizing FAs Regular or Not? Non-Regular Languages = { w w has equal number of occurrences of 01 and 10 } REGULAR! C = { w w has equal number
More informationBoolean Algebra. Sungho Kang. Yonsei University
Boolean Algebra Sungho Kang Yonsei University Outline Set, Relations, and Functions Partial Orders Boolean Functions Don t Care Conditions Incomplete Specifications 2 Set Notation $09,3/#0,9 438 v V Element
More informationMAT 570 REAL ANALYSIS LECTURE NOTES. Contents. 1. Sets Functions Countability Axiom of choice Equivalence relations 9
MAT 570 REAL ANALYSIS LECTURE NOTES PROFESSOR: JOHN QUIGG SEMESTER: FALL 204 Contents. Sets 2 2. Functions 5 3. Countability 7 4. Axiom of choice 8 5. Equivalence relations 9 6. Real numbers 9 7. Extended
More informationCTL Model checking. 1. finite number of processes, each having a finite number of finite-valued variables. Model-Checking
CTL Model checking Assumptions:. finite number of processes, each having a finite number of finite-valued variables.. finite length of CTL formula Problem:Determine whether formula f 0 is true in a finite
More informationTecniche di Verifica. Introduction to Propositional Logic
Tecniche di Verifica Introduction to Propositional Logic 1 Logic A formal logic is defined by its syntax and semantics. Syntax An alphabet is a set of symbols. A finite sequence of these symbols is called
More informationDuality in Logic. Duality in Logic. Lecture 2. Mai Gehrke. Université Paris 7 and CNRS. {ε} A ((ab) (ba) ) (ab) + (ba) +
Lecture 2 Mai Gehrke Université Paris 7 and CNRS A {ε} A ((ab) (ba) ) (ab) + (ba) + Further examples - revisited 1. Completeness of modal logic with respect to Kripke semantics was obtained via duality
More informationAn Introduction to Temporal Logics
An Introduction to Temporal Logics c 2001,2004 M. Lawford Outline Motivation: Dining Philosophers Safety, Liveness, Fairness & Justice Kripke structures, LTS, SELTS, and Paths Linear Temporal Logic Branching
More informationChapter 3: Linear temporal logic
INFOF412 Formal verification of computer systems Chapter 3: Linear temporal logic Mickael Randour Formal Methods and Verification group Computer Science Department, ULB March 2017 1 LTL: a specification
More informationCTL-RP: A Computational Tree Logic Resolution Prover
1 -RP: A Computational Tree Logic Resolution Prover Lan Zhang a,, Ullrich Hustadt a and Clare Dixon a a Department of Computer Science, University of Liverpool Liverpool, L69 3BX, UK E-mail: {Lan.Zhang,
More informationKRIPKE S THEORY OF TRUTH 1. INTRODUCTION
KRIPKE S THEORY OF TRUTH RICHARD G HECK, JR 1. INTRODUCTION The purpose of this note is to give a simple, easily accessible proof of the existence of the minimal fixed point, and of various maximal fixed
More informationTheoretical Foundations of the UML
Theoretical Foundations of the UML Lecture 17+18: A Logic for MSCs Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group moves.rwth-aachen.de/teaching/ws-1718/fuml/ 5.
More informationMATH 145 LECTURE NOTES. Zhongwei Zhao. My Lecture Notes for MATH Fall
MATH 145 LECTURE NOTES Zhongwei Zhao My Lecture Notes for MATH 145 2016 Fall December 2016 Lecture 1, Sept. 9 Course Orientation and Organization About the Professor Stephen New MC 5419 Ext 35554 Email:
More informationCTL Model Checking. Wishnu Prasetya.
CTL Model Checking Wishnu Prasetya wishnu@cs.uu.nl www.cs.uu.nl/docs/vakken/pv Background Example: verification of web applications à e.g. to prove existence of a path from page A to page B. Use of CTL
More informationFirst-Order Logic. 1 Syntax. Domain of Discourse. FO Vocabulary. Terms
First-Order Logic 1 Syntax Domain of Discourse The domain of discourse for first order logic is FO structures or models. A FO structure contains Relations Functions Constants (functions of arity 0) FO
More informationLecture 5: Minimizing DFAs
6.45 Lecture 5: Minimizing DFAs 6.45 Announcements: - Pset 2 is up (as of last night) - Dylan says: It s fire. - How was Pset? 2 DFAs NFAs DEFINITION Regular Languages Regular Expressions 3 4 Some Languages
More informationVerification Using Temporal Logic
CMSC 630 February 25, 2015 1 Verification Using Temporal Logic Sources: E.M. Clarke, O. Grumberg and D. Peled. Model Checking. MIT Press, Cambridge, 2000. E.A. Emerson. Temporal and Modal Logic. Chapter
More informationDatabase Theory VU , SS Complexity of Query Evaluation. Reinhard Pichler
Database Theory Database Theory VU 181.140, SS 2018 5. Complexity of Query Evaluation Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien 17 April, 2018 Pichler
More informationReview CHAPTER. 2.1 Definitions in Chapter Sample Exam Questions. 2.1 Set; Element; Member; Universal Set Partition. 2.
CHAPTER 2 Review 2.1 Definitions in Chapter 2 2.1 Set; Element; Member; Universal Set 2.2 Subset 2.3 Proper Subset 2.4 The Empty Set, 2.5 Set Equality 2.6 Cardinality; Infinite Set 2.7 Complement 2.8 Intersection
More informationAnnotated revision programs
Annotated revision programs Victor Marek Inna Pivkina Miros law Truszczyński Department of Computer Science, University of Kentucky, Lexington, KY 40506-0046 marek inna mirek@cs.engr.uky.edu Abstract Revision
More informationLinear-Time Logic. Hao Zheng
Linear-Time Logic Hao Zheng Department of Computer Science and Engineering University of South Florida Tampa, FL 33620 Email: zheng@cse.usf.edu Phone: (813)974-4757 Fax: (813)974-5456 Hao Zheng (CSE, USF)
More informationFinite Automata and Regular Languages
Finite Automata and Regular Languages Topics to be covered in Chapters 1-4 include: deterministic vs. nondeterministic FA, regular expressions, one-way vs. two-way FA, minimization, pumping lemma for regular
More informationStipulations, multivalued logic, and De Morgan algebras
Stipulations, multivalued logic, and De Morgan algebras J. Berman and W. J. Blok Department of Mathematics, Statistics, and Computer Science University of Illinois at Chicago Chicago, IL 60607 U.S.A. Dedicated
More informationA 3 Valued Contraction Model Checking Game: Deciding on the World of Partial Information
A 3 Valued Contraction Model Checking Game: Deciding on the World of Partial Information Jandson S. Ribeiro and Aline Andrade Distributed Systems Laboratory (LaSiD) Computer Science Department Mathematics
More informationCDS 270 (Fall 09) - Lecture Notes for Assignment 8.
CDS 270 (Fall 09) - Lecture Notes for Assignment 8. ecause this part of the course has no slides or textbook, we will provide lecture supplements that include, hopefully, enough discussion to complete
More informationMODEL-CHECKING IN DENSE REAL-TIME SHANT HARUTUNIAN
MODEL-CHECKING IN DENSE REAL-TIME SHANT HARUTUNIAN 1. Introduction These slides are for a talk based on the paper Model-Checking in Dense Real- Time, by Rajeev Alur, Costas Courcoubetis, and David Dill.
More informationModel Checking: An Introduction
Model Checking: An Introduction Meeting 3, CSCI 5535, Spring 2013 Announcements Homework 0 ( Preliminaries ) out, due Friday Saturday This Week Dive into research motivating CSCI 5535 Next Week Begin foundations
More informationOn the Expressiveness and Complexity of ATL
On the Expressiveness and Complexity of ATL François Laroussinie, Nicolas Markey, Ghassan Oreiby LSV, CNRS & ENS-Cachan Recherches en vérification automatique March 14, 2006 Overview of CTL CTL A Kripke
More information