Linear-Time Logic. Hao Zheng
|
|
- Miranda Garrett
- 6 years ago
- Views:
Transcription
1 Linear-Time Logic Hao Zheng Department of Computer Science and Engineering University of South Florida Tampa, FL Phone: (813) Fax: (813) Hao Zheng (CSE, USF) Comp Sys Verification 1 / 37
2 Overview 1 Linear Time Logic: Syntax & Semantics (Section ) 2 Linear Time Logic: Equivalences (Section 5.1.4) 3 Linear Time Logic: Additional Operators (Section 5.1.5) 4 Linear Time Logic: Specifying Fairness (Section 5.1.6) Hao Zheng (CSE, USF) Comp Sys Verification 2 / 37
3 LT Properties An LT property is a set of infinite traces over AP. Specifying such sets explicitly is often inconvenient. Mutual exclusion is specified over AP = { c 1, c 2 } by P mutex = set of infinite words A 0 A 1 A 2... with { c 1, c 2 } A i for all i 0 Starvation freedom is specified over AP = { c 1, w 1, c 2, w 2 } by P nostarve = set of infinite words A 0 A 1 A 2... such that: ( ) ( ) ( ) ( ) j. w1 A j j. c1 A j j. w2 A j j. c2 A j Such properties can be specified succinctly using linear temporal logic. Hao Zheng (CSE, USF) Comp Sys Verification 3 / 37
4 Contents 1 Linear Time Logic: Syntax & Semantics (Section ) 2 Linear Time Logic: Equivalences (Section 5.1.4) 3 Linear Time Logic: Additional Operators (Section 5.1.5) 4 Linear Time Logic: Specifying Fairness (Section 5.1.6) Hao Zheng (CSE, USF) Comp Sys Verification 4 / 37
5 5.1.1 Linear Temporal Logic (LTL): Syntax Linear temporal logic is a logic for describing LT properties. An extension of propositional logic with temporal modalities. Modal logic over infinite sequences [Pnueli 1977]. Propositional logic: a AP atomic proposition φ and φ ψ negation and conjunction Temporal operators: φ next state fulfills φ φ U ψ φ holds Until a ψ-state is reached Syntax of LTL over AP ϕ ::= true a ϕ ϕ ϕ ϕ ϕ U ϕ where a AP is an atomic proposition. Hao Zheng (CSE, USF) Comp Sys Verification 5 / 37
6 LTL Derived Operators φ ψ ( φ ψ) φ ψ φ ψ φ ψ (φ ψ) (ψ φ) φ ψ (φ ψ) ( φ ψ) true φ φ false true φ true U φ eventually in the future φ φ globally true Precedence order: The unary operators bind stronger than the binary ones. and bind equally strong. U takes precedence over,, and. Hao Zheng (CSE, USF) Comp Sys Verification 6 / 37
7 LTL Intuitive Semantics LTL Intuitive Semantics a (atomic prop.) a arbitrary arbitrary arbitrary arbitrary arbitrary a (next step) a b a Ub (until) a arbitrary arbitrary arbitrary a b a b b arbitrary a (eventually) a a a a arbitrary a (globally) a a a a a Chris J. Myers (Lecture 5: LTL) Verification of Cyber-Physical Systems 7/ 1 Hao Zheng (CSE, USF) Comp Sys Verification 7 / 37
8 LTL Intuitive Semantics LTL Intuitive Semantics a (atomic prop.) a arbitrary arbitrary arbitrary arbitrary arbitrary a arbitrary arbitrary arbitrary Let σ = A a (next step) 0 A 1 A 2... (2 AP ) ω. σ = a iff a A a b a b a 0 (i.e., A b 0 = a) b arbitrary a Ub (until) a (eventually) a a a a arbitrary a (globally) a a a a a Hao Chris Zheng J. Myers (CSE, (Lecture USF) 5: LTL) Verification Comp of Sys Cyber-Physical Verification Systems 7 / 7/ 37 1
9 LTL Intuitive Semantics LTL Intuitive Semantics a (atomic prop.) a arbitrary arbitrary arbitrary arbitrary a (next step) arbitrary a arbitrary arbitrary arbitrary Let σ = A 0 A 1 Aa 2.. b. (2 AP a ) b. a b b arbitrary a Ub (until) σ = a iff A 1 = a a a a a arbitrary a (eventually) a (globally) a a a a a Hao Chris Zheng J. Myers (CSE, (Lecture USF) 5: LTL) Verification Comp of Sys Cyber-Physical Verification Systems 7 / 7/ 37 1
10 LTL Intuitive Semantics LTL Intuitive Semantics a (atomic prop.) a arbitrary arbitrary arbitrary arbitrary arbitrary a (next step) a b a Ub (until) a arbitrary arbitrary arbitrary a b a b b arbitrary Let σ = A 0 A 1 A 2 a... (2 AP a ) ω. a a arbitrary a (eventually) σ = a U b iff j 0. A j = b and A i = a, 0 i < j a a a a a a (globally) Hao Chris Zheng J. Myers (CSE, (Lecture USF) 5: LTL) Verification Comp of Sys Cyber-Physical Verification Systems 7 / 7/ 37 1
11 LTL Intuitive Semantics LTL Intuitive Semantics a (atomic prop.) a arbitrary arbitrary arbitrary arbitrary arbitrary a (next step) a b a Ub (until) a arbitrary arbitrary arbitrary a b a b b arbitrary a (eventually) a a a a arbitrary Let σ = A 0 A 1 A 2. a.. (2 AP a) ω. a a a a (globally) σ = a iff i 0. A i = a Chris J. Myers (Lecture 5: LTL) Verification of Cyber-Physical Systems 7/ 1 Hao Zheng (CSE, USF) Comp Sys Verification 7 / 37
12 LTL Intuitive Semantics LTL Intuitive Semantics a (atomic prop.) a arbitrary arbitrary arbitrary arbitrary a (next step) arbitrary a arbitrary arbitrary arbitrary a b a b a b b arbitrary a Ub (until) Let σ = A 0 A 1 A 2... (2 AP ) ω. a a a a arbitrary a (eventually) σ = a iff i 0. A i = a a (globally) a a a a a Hao Chris Zheng J. Myers (CSE, (Lecture USF) 5: LTL) Verification Comp of Sys Cyber-Physical Verification Systems 7 / 7/ 37 1
13 New Temporal Modalities and Let σ = A 0 A 1 A 2... (2 AP ) ω. ϕ infinitely often ϕ σ = ϕ iff i 0 j i. A j = ϕ Hao Zheng (CSE, USF) Comp Sys Verification 8 / 37
14 New Temporal Modalities and Let σ = A 0 A 1 A 2... (2 AP ) ω. ϕ eventually forever ϕ... σ = ϕ iff i 0 j i. A j = ϕ Hao Zheng (CSE, USF) Comp Sys Verification 9 / 37
15 Traffic Light Properties Once red, the light cannot become green immediately (red green) The light becomes green eventually: The light becomes green infinitely often: Once red, the light becomes green eventually: green green (red green) Once red, the light always becomes green eventually after being yellow for some time in-between: (red (red U (yellow (yellow U green)))) Note these properties assume European traffic light which goes red, red/yellow, green, yellow, repeat. Hao Zheng (CSE, USF) Comp Sys Verification 10 / 37
16 LTL General Semantics (5.1.2) Let σ = A 0 A 1 A 2... (2 AP ) ω. σ = true σ = a iff a A 0 (i.e., A 0 = a) σ = ϕ 1 ϕ 2 iff σ = ϕ 1 and σ = ϕ 2 σ = ϕ iff σ = ϕ σ = ϕ iff σ[1..] = A 1 A 2 A 3... = ϕ σ = ϕ 1 U ϕ 2 iff j 0. σ[j..] = ϕ 2 and σ[i..] = ϕ 1, 0 i < j where σ[i..] = A i A i+1 A i+2... is suffix of σ from index i on. Hao Zheng (CSE, USF) Comp Sys Verification 11 / 37
17 General Semantics of,, and Let σ = A 0 A 1 A 2... (2 AP ) ω. σ = ϕ iff j 0. σ[j..] = ϕ σ = ϕ iff j 0. σ[j..] = ϕ σ = ϕ iff j 0. i j. σ[i...] = ϕ σ = ϕ iff j 0. i j. σ[i...] = ϕ where σ[i..] = A i A i+1 A i+2... is suffix of σ from index i on. Hao Zheng (CSE, USF) Comp Sys Verification 12 / 37
18 Definition 5.6 Semantics Over Words The LT-property { induced by LTL formula ϕ over AP is: Words(ϕ) = σ (2 AP) ω } σ = ϕ, where = is the smallest satisfaction relation. Hao Zheng (CSE, USF) Comp Sys Verification 13 / 37
19 Definition 5.7 Semantics Over Paths and States Let TS = (S, Act,, I, AP, L) be a transition system without terminal states, and let ϕ be an LTL-formula over AP. For infinite path fragment π of TS: For state s S: π = ϕ iff trace(π) = ϕ s = ϕ iff π Paths(s). π = ϕ TS satisfies ϕ, denoted TS = ϕ, iff Traces(TS) Words(ϕ) Hao Zheng (CSE, USF) Comp Sys Verification 14 / 37
20 Semantics for Transition Systems TS = ϕ iff (* transition system semantics *) Traces(TS) Words(ϕ) iff (* definition of = for LT-properties *) TS = Words(ϕ) iff (* Definition of Words(ϕ) *) π = ϕ for all π Paths(TS) iff (* semantics of = for states *) s 0 = ϕ for all s 0 I. Hao Zheng (CSE, USF) Comp Sys Verification 15 / 37
21 LTL Examples LTL Examples s 1 {a,b } s 2 {a,b } s 3 {a} TS = a? TS = a? Chris J. Myers (Lecture 5: LTL) Verification of Cyber-Physical Systems 12 / 1 Hao Zheng (CSE, USF) Comp Sys Verification 16 / 37
22 LTL Examples LTL Examples s 1 {a,b } s 2 {a,b } s 3 {a} TS = a TS = a? TS = (a b)? Chris J. Myers (Lecture 5: LTL) Verification of Cyber-Physical Systems 12 / 1 Hao Zheng (CSE, USF) Comp Sys Verification 16 / 37
23 LTL Examples LTL Examples s 1 {a,b } s 2 {a,b } s 3 {a} TS = a TS = (a TS = a? b) TS = ( b (a b))? Chris J. Myers (Lecture 5: LTL) Verification of Cyber-Physical Systems 12 / 1 Hao Zheng (CSE, USF) Comp Sys Verification 16 / 37
24 LTL Examples LTL Examples s 1 {a,b } s 2 {a,b } s 3 {a} TS = a TS = TS (a = a? b) TS = ( b (a b)) Chris J. Myers (Lecture 5: LTL) Verification of Cyber-Physical Systems 12 / 1 Hao Zheng (CSE, USF) Comp Sys Verification 16 / 37
25 LTL Examples LTL Examples s 1 {a,b } s 2 {a,b } s 3 {a} TS = a TS = TS (a = a? b) TS = ( b (a b)) TS = b U (a b)? Chris J. Myers (Lecture 5: LTL) Verification of Cyber-Physical Systems 12 / 1 Hao Zheng (CSE, USF) Comp Sys Verification 16 / 37
26 LTL Examples LTL Examples s 1 {a,b } s 2 {a,b } s 3 {a} TS = a TS = TS (a = a? b) TS = ( b (a b)) TS = b U (a b) Chris J. Myers (Lecture 5: LTL) Verification of Cyber-Physical Systems 12 / 1 Hao Zheng (CSE, USF) Comp Sys Verification 16 / 37
27 Semantics of Negation For paths, it holds π = ϕ if and only if π = ϕ since: Words( ϕ) = ( 2 AP) ω \ Words(ϕ). But: TS = ϕ and TS = ϕ are not equivalent in general. It holds: TS = ϕ implies TS = ϕ, not always the reverse! Note that: TS = ϕ iff Traces(TS) Words(ϕ) iff Traces(TS) \ Words(ϕ) iff Traces(TS) Words( ϕ). TS neither satisfies ϕ nor ϕ if there are paths π 1 and π 2 in TS such that π 1 = ϕ and π 2 = ϕ. Hao Zheng (CSE, USF) Comp Sys Verification 17 / 37
28 Negation Example Negation Example s 1 s 2 {a} s 0 /0 /0 A transition system for which TS = a and TS = a. A transition system for which TS 6 = a and TS 6 = a. Hao Zheng (CSE, USF) Comp Sys Verification 18 / 37
29 Contents 1 Linear Time Logic: Syntax & Semantics (Section ) 2 Linear Time Logic: Equivalences (Section 5.1.4) 3 Linear Time Logic: Additional Operators (Section 5.1.5) 4 Linear Time Logic: Specifying Fairness (Section 5.1.6) Hao Zheng (CSE, USF) Comp Sys Verification 19 / 37
30 5.1.4 Equivalence LTL formulas φ, ψ are equivalent, denoted φ ψ, if: Words(φ) = Words(ψ) Hao Zheng (CSE, USF) Comp Sys Verification 20 / 37
31 Duality and Idempotence Laws Duality: φ φ φ φ φ φ Idempotency: φ φ φ φ φ U (φ U ψ) φ U ψ (φ U ψ) U ψ φ U ψ Hao Zheng (CSE, USF) Comp Sys Verification 21 / 37
32 Absorption and Distributive Laws Absorption: φ φ φ φ Distribution: (φ U ψ) ( φ) U ( ψ) (φ ψ) φ ψ (φ ψ) φ ψ but......: (φ U ψ) ( φ) U ( ψ) (φ ψ) φ ψ (φ ψ) φ ψ Hao Zheng (CSE, USF) Comp Sys Verification 22 / 37
33 Distributive Laws Distributive Laws {b } {a} /0 TS 6 = (a ^ b) and TS = a ^ b TS = (a b) and TS = ( a b) Chris J. Myers (Lecture 5: LTL) Verification of Cyber-Physical Systems 18 / 1 Hao Zheng (CSE, USF) Comp Sys Verification 23 / 37
34 Contents 1 Linear Time Logic: Syntax & Semantics (Section ) 2 Linear Time Logic: Equivalences (Section 5.1.4) 3 Linear Time Logic: Additional Operators (Section 5.1.5) 4 Linear Time Logic: Specifying Fairness (Section 5.1.6) Hao Zheng (CSE, USF) Comp Sys Verification 24 / 37
35 5.1.5 Weak Until The weak-until (or: unless) operator: ϕ W ψ def = (ϕ U ψ) ϕ ϕ W ψ does not require a ψ-state to be reached. Until U and weak until W are dual: (ϕ U ψ) (ϕ ψ) W ( ϕ ψ) (ϕ W ψ) (ϕ ψ) U ( ϕ ψ) Until and weak until are equally expressive: ψ ψ W false ϕ U ψ (ϕ W ψ) ψ Hao Zheng (CSE, USF) Comp Sys Verification 25 / 37
36 The Release Operator The release operator: ϕ R ψ def = ( ϕ U ψ). ψ always holds, a requirement that is released as soon as ϕ holds Hao Zheng (CSE, USF) Comp Sys Verification 26 / 37
37 Contents 1 Linear Time Logic: Syntax & Semantics (Section ) 2 Linear Time Logic: Equivalences (Section 5.1.4) 3 Linear Time Logic: Additional Operators (Section 5.1.5) 4 Linear Time Logic: Specifying Fairness (Section 5.1.6) Hao Zheng (CSE, USF) Comp Sys Verification 27 / 37
38 Recall Action-Based Fairness Constraints For set A of actions and infinite run ρ: Unconditional fairness Some action in A occurs infinitely often along ρ. Strong fairness If actions in A are infinitely often enabled (not necessarily always!) then some action in A has to occur infinitely often in ρ. Weak fairness If actions in A are continuously enabled (no temporary disabling!) then it has to occur infinitely often in ρ. This chapter uses state-based fairness assumptions (and constraints). Hao Zheng (CSE, USF) Comp Sys Verification 28 / 37
39 5.1.6 LTL Fairness Constraints Let Φ and Ψ be propositional logic formulas over AP. 1 An unconditional LTL fairness constraint is of the form: ufair = Ψ 2 A strong LTL fairness condition is of the form: sfair = Φ Ψ 3 A weak LTL fairness constraint is of the form: wfair = Φ Ψ Φ stands for something is enabled ; Ψ for something is taken Hao Zheng (CSE, USF) Comp Sys Verification 29 / 37
40 Fair Satisfaction For state s in transition system TS (over AP) without terminal states, let FairPaths fair (s) = { π Paths(s) π = fair } FairTraces fair (s) = { trace(π) π FairPaths fair (s) } For LTL-formula ϕ, and LTL fairness assumption fair: s = fair ϕ if and only if π FairPaths fair (s). π = ϕ and TS = fair ϕ if and only if s 0 I. s 0 = fair ϕ = fair is the fair satisfaction relation for LTL; = the standard one for LTL Hao Zheng (CSE, USF) Comp Sys Verification 30 / 37
41 Example 5.27 Randomized Arbiter noncrit 1 unlock noncrit 2 req 1 req 2 rel wait 1 head rel tail rel wait 2 enter 1 enter 2 crit 1 enter 1 lock enter 2 crit 2 TS 1 k Arbiter k TS 2 6 = = crit 11 But: TS 1 karbiter k TS 2 = fair crit crit 1 1 ^ crit crit 2 2 with fair = head head ^ tail tail Hao Zheng (CSE, USF) Comp Sys Verification 31 / 37
42 Semaphore-Based Mutual Exclusion Semaphore-Based Mutual Exclusion n 1,n 2,y=1 rel req 2 req 1 rel w 1,n 2,y=1 n 1,w 2,y=1 req 2 enter 2 enter 1 req 1 c 1,n 2,y=0 w 1,w 2,y=1 n 1,c 2,y=0 req rel 2 rel enter 2 enter1 req 1 c 1,w 2,y=0 w 1,c 2,y=0 F = /0, {enter 1 },{enter 2 }, {req 1 },{req 2 } sfair 1 = (wait 1 ^ crit 2 )! crit 1 sfair 1 = wait 1 crit 1 Chris J. Myers (Lecture 5: LTL) Verification of Cyber-Physical Systems 35 / 1 Hao Zheng (CSE, USF) Comp Sys Verification 32 / 37
43 Semaphore-Based Semaphore-Based Mutual Exclusion Mutual Exclusion n 1,n 2,y=1 rel req 2 req 1 rel w 1,n 2,y=1 n 1,w 2,y=1 req 2 enter 2 enter 1 req 1 c 1,n 2,y=0 w 1,w 2,y=1 n 1,c 2,y=0 req rel 2 rel enter 2 enter1 req 1 c 1,w 2,y=0 w 1,c 2,y=0 F = /0, {enter 1 },{enter 2 }, {req 1 },{req 2 } sfair 1 = (wait 1 ^ crit 2 )! crit 1 fair = sfair 1 sfair 2 Chris J. Myers (Lecture 5: LTL) Verification of Cyber-Physical Systems 35 / 1 Hao Zheng (CSE, USF) Comp Sys Verification 32 / 37
44 Semaphore-Based Mutual Exclusion Semaphore-Based Mutual Exclusion n 1,n 2,y=1 rel req 2 req 1 rel w 1,n 2,y=1 n 1,w 2,y=1 req 2 enter 2 enter 1 req 1 c 1,n 2,y=0 w 1,w 2,y=1 n 1,c 2,y=0 req rel 2 rel enter 2 enter1 req 1 c 1,w 2,y=0 w 1,c 2,y=0 F = /0, {enter 1 },{enter 2 }, {req 1 },{req 2 } sfair 1 = (wait 1 ^ crit 2 )! crit 1 fair = sfair 1 sfair 2 Chris J. Myers (Lecture 5: LTL) Verification of Cyber-Physical Systems 35 / 1 TS Sem = fair crit 1 crit 2 Hao Zheng (CSE, USF) Comp Sys Verification 32 / 37
45 Theorem 5.30 Reducing = fair to = For: A transition system TS without terminal states LTL formula ϕ, and LTL fairness assumption fair It holds: TS = fair ϕ if and only if TS = (fair ϕ) Verifying an LTL-formula under a fairness assumption can be done using standard verification algorithms for LTL. Hao Zheng (CSE, USF) Comp Sys Verification 33 / 37
46 LTL Model-Checking Problem The following decision problem: Given finite transition system TS and LTL-formula ϕ: yields yes if TS = ϕ, and no (plus a counterexample) if TS = ϕ See section 5.2 for details. Hao Zheng (CSE, USF) Comp Sys Verification 34 / 37
47 A First Attempt TS = ϕ if and only if Traces(TS) Words(ϕ) }{{} L ω(a ϕ) if and only if Traces(TS) L ω (A ϕ ) = But complementation of NBA is quadratically exponential. If A has n states, A has c n2 states in worst case! Use the fact that L ω (A ϕ ) = L ω (A ϕ )! Hao Zheng (CSE, USF) Comp Sys Verification 35 / 37
48 Observation TS = ϕ if and only if Traces(TS) Words(ϕ) if and only if if and only if if and only if Traces(TS) ( (2 AP ) ω \ Words(ϕ) ) = Traces(TS) Words( ϕ) = }{{} L ω(a ϕ) TS A ϕ = F where F is the set of accepting states of A ϕ. LTL model checking is thus reduced to persistence checking! Hao Zheng (CSE, USF) Comp Sys Verification 36 / 37
49 Overview ofoverview LTL Model of LTL Checking Model Checking System Negation of property Model of system LTL-formula j model checker Generalised Büchi automaton G j Transition system TS Büchi automaton A j Product transition system TS A j TS A j = P pers(a j) Yes No (counter-example) Hao Zheng (CSE, USF) Comp Sys Verification 37 / 37
Computation 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 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 informationChapter 5: Linear Temporal Logic
Chapter 5: Linear Temporal Logic Prof. Ali Movaghar Verification of Reactive Systems Spring 94 Outline We introduce linear temporal logic (LTL), a logical formalism that is suited for specifying LT properties.
More informationChapter 5: Linear Temporal Logic
Chapter 5: Linear Temporal Logic Prof. Ali Movaghar Verification of Reactive Systems Spring 91 Outline We introduce linear temporal logic (LTL), a logical formalism that is suited for specifying LT properties.
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 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 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 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 informationTransition Systems and Linear-Time Properties
Transition Systems and Linear-Time Properties Lecture #1 of Principles of Model Checking Joost-Pieter Katoen Software Modeling and Verification Group affiliated to University of Twente, Formal Methods
More informationSafety and Liveness Properties
Safety and Liveness Properties Lecture #6 of Model Checking Joost-Pieter Katoen Lehrstuhl 2: Software Modeling and Verification E-mail: katoen@cs.rwth-aachen.de November 5, 2008 c JPK Overview Lecture
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 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 informationTopics in Verification AZADEH FARZAN FALL 2017
Topics in Verification AZADEH FARZAN FALL 2017 Last time LTL Syntax ϕ ::= true a ϕ 1 ϕ 2 ϕ ϕ ϕ 1 U ϕ 2 a AP. ϕ def = trueu ϕ ϕ def = ϕ g intuitive meaning of and is obt Limitations of LTL pay pay τ τ soda
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 informationChapter 5: Linear Temporal Logic
Chapter 5: Linear Temporal Logic Prof. Ali Movaghar Verification of Reactive Systems Outline n n We introduce linear temporal logic (LTL), a logical formalism that is suited for specifying LT properties.
More informationAutomata on Infinite words and LTL Model Checking
Automata on Infinite words and LTL Model Checking Rodica Condurache Lecture 4 Lecture 4 Automata on Infinite words and LTL Model Checking 1 / 35 Labeled Transition Systems Let AP be the (finite) set of
More informationComputer-Aided Program Design
Computer-Aided Program Design Spring 2015, Rice University Unit 3 Swarat Chaudhuri February 5, 2015 Temporal logic Propositional logic is a good language for describing properties of program states. However,
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 informationChapter 3: Linear-Time Properties
Chapter 3: Linear-Time Properties Prof. Ali Movaghar Verification of Reactive Systems Outline n n To verify the transition system model of the system under consideration, we need to specify the property
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 informationLinear Temporal Logic and Büchi Automata
Linear Temporal Logic and Büchi Automata Yih-Kuen Tsay Department of Information Management National Taiwan University FLOLAC 2009 Yih-Kuen Tsay (SVVRL @ IM.NTU) Linear Temporal Logic and Büchi Automata
More informationSystems Verification. Alessandro Abate. Day 1 January 25, 2016
Systems Verification Alessandro Abate Day 1 January 25, 2016 Outline Course setup Intro to formal verification Models - labelled transition systems Properties as specifications - modal logics Model checking
More informationBasics of Linear Temporal Proper2es
Basics of Linear Temporal Proper2es Robert B. France State vs ac2on view Ac2on view abstracts out states; focus only on ac2on labels State view: focus only on states and the proposi2ons that are true in
More informationLecture 2 Automata Theory
Lecture 2 Automata Theory Ufuk Topcu Nok Wongpiromsarn Richard M. Murray Outline: Transition systems Linear-time properties Regular propereties EECI, 14 May 2012 This short-course is on this picture applied
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 for reactive systems/software
Temporal Logics CS 5219 Abhik Roychoudhury National University of Singapore The big picture Software/ Sys. to be built (Dream) Properties to Satisfy (caution) Today s lecture System Model (Rough Idea)
More informationFORMAL METHODS LECTURE III: LINEAR TEMPORAL LOGIC
Alessandro Artale (FM First Semester 2007/2008) p. 1/39 FORMAL METHODS LECTURE III: LINEAR TEMPORAL LOGIC Alessandro Artale Faculty of Computer Science Free University of Bolzano artale@inf.unibz.it http://www.inf.unibz.it/
More informationComputation Tree Logic
Chapter 6 Computation Tree Logic Pnueli [88] has introduced linear temporal logic to the computer science community for the specification and verification of reactive systems. In Chapter 3 we have treated
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 informationPSL Model Checking and Run-time Verification via Testers
PSL Model Checking and Run-time Verification via Testers Formal Methods 2006 Aleksandr Zaks and Amir Pnueli New York University Introduction Motivation (Why PSL?) A new property specification language,
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 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 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 informationLecture 2 Automata Theory
Lecture 2 Automata Theory Ufuk Topcu Nok Wongpiromsarn Richard M. Murray EECI, 18 March 2013 Outline Modeling (discrete) concurrent systems: transition systems, concurrency and interleaving Linear-time
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 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 informationHelsinki University of Technology Laboratory for Theoretical Computer Science Research Reports 66
Helsinki University of Technology Laboratory for Theoretical Computer Science Research Reports 66 Teknillisen korkeakoulun tietojenkäsittelyteorian laboratorion tutkimusraportti 66 Espoo 2000 HUT-TCS-A66
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 informationAutomata-based Verification - III
COMP30172: Advanced Algorithms Automata-based Verification - III Howard Barringer Room KB2.20: email: howard.barringer@manchester.ac.uk March 2009 Third Topic Infinite Word Automata Motivation Büchi Automata
More informationFORMAL METHODS LECTURE IV: COMPUTATION TREE LOGIC (CTL)
Alessandro Artale (FM First Semester 2007/2008) p. 1/37 FORMAL METHODS LECTURE IV: COMPUTATION TREE LOGIC (CTL) Alessandro Artale Faculty of Computer Science Free University of Bolzano artale@inf.unibz.it
More informationAbstractions and Decision Procedures for Effective Software Model Checking
Abstractions and Decision Procedures for Effective Software Model Checking Prof. Natasha Sharygina The University of Lugano, Carnegie Mellon University Microsoft Summer School, Moscow, July 2011 Lecture
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 informationCIS 4930/6930: Principles of Cyber-Physical Systems
CIS 4930/6930: Principles of Cyber-Physical Systems Chapter 11 Scheduling Hao Zheng Department of Computer Science and Engineering University of South Florida H. Zheng (CSE USF) CIS 4930/6930: Principles
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 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 informationLTL Model Checking. Wishnu Prasetya.
LTL Model Checking Wishnu Prasetya wishnu@cs.uu.nl www.cs.uu.nl/docs/vakken/pv Overview This pack : Abstract model of programs Temporal properties Verification (via model checking) algorithm Concurrency
More informationTimo Latvala. March 7, 2004
Reactive Systems: Safety, Liveness, and Fairness Timo Latvala March 7, 2004 Reactive Systems: Safety, Liveness, and Fairness 14-1 Safety Safety properties are a very useful subclass of specifications.
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 informationSyntax and Semantics of Propositional Linear Temporal Logic
Syntax and Semantics of Propositional Linear Temporal Logic 1 Defining Logics L, M, = L - the language of the logic M - a class of models = - satisfaction relation M M, ϕ L: M = ϕ is read as M satisfies
More informationLinear-time Temporal Logic
Linear-time Temporal Logic Pedro Cabalar Department of Computer Science University of Corunna, SPAIN cabalar@udc.es 2015/2016 P. Cabalar ( Department Linear oftemporal Computer Logic Science University
More informationCHAPTER 4 CLASSICAL PROPOSITIONAL SEMANTICS
CHAPTER 4 CLASSICAL PROPOSITIONAL SEMANTICS 1 Language There are several propositional languages that are routinely called classical propositional logic languages. It is due to the functional dependency
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 informationTemporal Logic of Actions
Advanced Topics in Distributed Computing Dominik Grewe Saarland University March 20, 2008 Outline Basic Concepts Transition Systems Temporal Operators Fairness Introduction Definitions Example TLC - A
More informationAn On-the-fly Tableau Construction for a Real-Time Temporal Logic
#! & F $ F ' F " F % An On-the-fly Tableau Construction for a Real-Time Temporal Logic Marc Geilen and Dennis Dams Faculty of Electrical Engineering, Eindhoven University of Technology P.O.Box 513, 5600
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 informationLecture Notes on Software Model Checking
15-414: Bug Catching: Automated Program Verification Lecture Notes on Software Model Checking Matt Fredrikson André Platzer Carnegie Mellon University Lecture 19 1 Introduction So far we ve focused on
More informationComp487/587 - Boolean Formulas
Comp487/587 - Boolean Formulas 1 Logic and SAT 1.1 What is a Boolean Formula Logic is a way through which we can analyze and reason about simple or complicated events. In particular, we are interested
More informationLTL is Closed Under Topological Closure
LTL is Closed Under Topological Closure Grgur Petric Maretić, Mohammad Torabi Dashti, David Basin Department of Computer Science, ETH Universitätstrasse 6 Zürich, Switzerland Abstract We constructively
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 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 informationLogic in Automatic Verification
Logic in Automatic Verification Javier Esparza Sofware Reliability and Security Group Institute for Formal Methods in Computer Science University of Stuttgart Many thanks to Abdelwaheb Ayari, David Basin,
More informationCIS 842: Specification and Verification of Reactive Systems. Lecture Specifications: Specification Patterns
CIS 842: Specification and Verification of Reactive Systems Lecture Specifications: Specification Patterns Copyright 2001-2002, Matt Dwyer, John Hatcliff, Robby. The syllabus and all lectures for this
More informationCS 267: Automated Verification. Lecture 1: Brief Introduction. Transition Systems. Temporal Logic LTL. Instructor: Tevfik Bultan
CS 267: Automated Verification Lecture 1: Brief Introduction. Transition Systems. Temporal Logic LTL. Instructor: Tevfik Bultan What do these people have in common? 2013 Leslie Lamport 2007 Clarke, Edmund
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 informationBenefits of Interval Temporal Logic for Specification of Concurrent Systems
Benefits of Interval Temporal Logic for Specification of Concurrent Systems Ben Moszkowski Software Technology Research Laboratory De Montfort University Leicester Great Britain email: benm@dmu.ac.uk http://www.tech.dmu.ac.uk/~benm
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 informationHomework 2: Temporal logic
ICS-E5010 Computer-Aided Verification and Synthesis, Spring 2016 Stavros Tripakis Homework 2: Temporal logic Assigned: January 20, 2016 Due: February 1, 2016 Total: 235 points. 1. (20 points) Two formulae
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 informationComputation Tree Logic (CTL) & Basic Model Checking Algorithms
Computation Tree Logic (CTL) & Basic Model Checking Algorithms Martin Fränzle Carl von Ossietzky Universität Dpt. of Computing Science Res. Grp. Hybride Systeme Oldenburg, Germany 02917: CTL & Model Checking
More informationω-automata Automata that accept (or reject) words of infinite length. Languages of infinite words appear:
ω-automata ω-automata Automata that accept (or reject) words of infinite length. Languages of infinite words appear: in verification, as encodings of non-terminating executions of a program. in arithmetic,
More informationAutomata-based Verification - III
CS3172: Advanced Algorithms Automata-based Verification - III Howard Barringer Room KB2.20/22: email: howard.barringer@manchester.ac.uk March 2005 Third Topic Infinite Word Automata Motivation Büchi Automata
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 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 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 informationTecniche di Specifica e di Verifica. Automata-based LTL Model-Checking
Tecniche di Specifica e di Verifica Automata-based LTL Model-Checking Finite state automata A finite state automaton is a tuple A = (Σ,S,S 0,R,F) Σ: set of input symbols S: set of states -- S 0 : set of
More informationModelling and Analysing Variability in Product Families
Modelling and Analysing Variability in Product Families Maurice H. ter Beek ISTI CNR, Pisa, Italy joint work with P. Asirelli A. Fantechi S. Gnesi ISTI CNR University of Florence ISTI CNR University of
More informationProperty Checking of Safety- Critical Systems Mathematical Foundations and Concrete Algorithms
Property Checking of Safety- Critical Systems Mathematical Foundations and Concrete Algorithms Wen-ling Huang and Jan Peleska University of Bremen {huang,jp}@cs.uni-bremen.de MBT-Paradigm Model Is a partial
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 informationESE601: Hybrid Systems. Introduction to verification
ESE601: Hybrid Systems Introduction to verification Spring 2006 Suggested reading material Papers (R14) - (R16) on the website. The book Model checking by Clarke, Grumberg and Peled. What is verification?
More informationTruth-Functional Logic
Truth-Functional Logic Syntax Every atomic sentence (A, B, C, ) is a sentence and are sentences With ϕ a sentence, the negation ϕ is a sentence With ϕ and ψ sentences, the conjunction ϕ ψ is a sentence
More informationFormal Verification Techniques. Riccardo Sisto, Politecnico di Torino
Formal Verification Techniques Riccardo Sisto, Politecnico di Torino State exploration State Exploration and Theorem Proving Exhaustive exploration => result is certain (correctness or noncorrectness proof)
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 informationA brief history of model checking. Ken McMillan Cadence Berkeley Labs
A brief history of model checking Ken McMillan Cadence Berkeley Labs mcmillan@cadence.com Outline Part I -- Introduction to model checking Automatic formal verification of finite-state systems Applications
More informationCS477 Formal Software Dev Methods
CS477 Formal Software Dev Methods Elsa L Gunter 2112 SC, UIUC egunter@illinois.edu http://courses.engr.illinois.edu/cs477 Slides based in part on previous lectures by Mahesh Vishwanathan, and by Gul Agha
More informationThe Expressivity of Universal Timed CCP: Undecidability of Monadic FLTL and Closure Operators for Security
The Expressivity of Universal Timed CCP: Undecidability of Monadic FLTL and Closure Operators for Security Carlos Olarte and Frank D. Valencia INRIA /CNRS and LIX, Ecole Polytechnique Motivation Concurrent
More informationTemporal & Modal Logic. Acronyms. Contents. Temporal Logic Overview Classification PLTL Syntax Semantics Identities. Concurrency Model Checking
Temporal & Modal Logic E. Allen Emerson Presenter: Aly Farahat 2/12/2009 CS5090 1 Acronyms TL: Temporal Logic BTL: Branching-time Logic LTL: Linear-Time Logic CTL: Computation Tree Logic PLTL: Propositional
More informationTimed Automata. Chapter Clocks and clock constraints Clock variables and clock constraints
Chapter 10 Timed Automata In the previous chapter, we have discussed a temporal logic where time was a discrete entities. A time unit was one application of the transition relation of an LTS. We could
More informationDouble Header. Model Checking. Model Checking. Overarching Plan. Take-Home Message. Spoiler Space. Topic: (Generic) Model Checking
Double Header Model Checking #1 Two Lectures Model Checking SoftwareModel Checking SLAM and BLAST Flying Boxes It is traditional to describe this stuff (especially SLAM and BLAST) with high-gloss animation
More informationA Hierarchy for Accellera s Property Specification Language
A Hierarchy for Accellera s Property Specification Language Thomas Türk May 1st, 2005 Diploma Thesis University of Kaiserslautern Supervisor: Prof. Dr. Klaus Schneider Vorliegende Diplomarbeit wurde von
More informationA logical framework to deal with variability
A logical framework to deal with variability (research in progress) M.H. ter Beek joint work with P. Asirelli, A. Fantechi and S. Gnesi ISTI CNR Università di Firenze XXL project meeting Pisa, 21 June
More informationIntroduction to Formal Verification Methods Exercise 4
Introduction to Formal Verification Methods Exercise 4 Guy Katz, 301062063 May 30, 2013 Question 1 We argue that there exists a weakly fair non-progress cycle in the given model. ssuming weak fairness,
More informationLTL and CTL. Lecture Notes by Dhananjay Raju
LTL and CTL Lecture Notes by Dhananjay Raju draju@cs.utexas.edu 1 Linear Temporal Logic: LTL Temporal logics are a convenient way to formalise and verify properties of reactive systems. LTL is an infinite
More informationENES 489p. Verification and Validation: Logic and Control Synthesis
11/18/14 1 ENES 489p Verification and Validation: Logic and Control Synthesis Mumu Xu mumu@umd.edu November 18, 2014 Institute for Systems Research Aerospace Engineering University of Maryland, College
More informationModel checking, verification of CTL. One must verify or expel... doubts, and convert them into the certainty of YES [Thomas Carlyle]
Chater 5 Model checking, verification of CTL One must verify or exel... doubts, and convert them into the certainty of YES or NO. [Thomas Carlyle] 5. The verification setting Page 66 We introduce linear
More informationGuest lecturer: Prof. Mark Reynolds, The University of Western Australia
Università degli studi di Udine Corso per il dottorato di ricerca: Temporal Logics: Satisfiability Checking, Model Checking, and Synthesis January 2017 Lecture 01, Part 02: Temporal Logics Guest lecturer:
More informationDecision Procedures for CTL
Decision Procedures for CTL Oliver Friedmann 1 Markus Latte 1 1 Dept. of Computer Science, Ludwig-Maximilians-University, Munich, Germany CLoDeM Edinburgh, 15 July 2010 Introduction to CTL Origin: Emerson
More informationA brief introduction to Logic. (slides from
A brief introduction to Logic (slides from http://www.decision-procedures.org/) 1 A Brief Introduction to Logic - Outline Propositional Logic :Syntax Propositional Logic :Semantics Satisfiability and validity
More informationLecture 7. Logic. Section1: Statement Logic.
Ling 726: Mathematical Linguistics, Logic, Section : Statement Logic V. Borschev and B. Partee, October 5, 26 p. Lecture 7. Logic. Section: Statement Logic.. Statement Logic..... Goals..... Syntax of Statement
More informationCSC Discrete Math I, Spring Propositional Logic
CSC 125 - Discrete Math I, Spring 2017 Propositional Logic Propositions A proposition is a declarative sentence that is either true or false Propositional Variables A propositional variable (p, q, r, s,...)
More informationProbabilistic Model Checking Michaelmas Term Dr. Dave Parker. Department of Computer Science University of Oxford
Probabilistic Model Checking Michaelmas Term 20 Dr. Dave Parker Department of Computer Science University of Oxford Overview PCTL for MDPs syntax, semantics, examples PCTL model checking next, bounded
More information