Lecture 2 Automata Theory
|
|
- Emmeline Anabel Foster
- 5 years ago
- Views:
Transcription
1 Lecture 2 Automata Theory Ufuk Topcu Nok Wongpiromsarn Richard M. Murray Outline: Transition systems Linear-time properties Regular propereties EECI, 14 May 2012
2 This short-course is on this picture applied to a particular class of systems/problems. requirements (on the system behavior) assumptions (on the unknowns, e.g., environment behavior) complete system or some of its components verification synthesis satisfied (+certificate) violated (+counterexample) controller that render the system to satisfy the spec s no such controller exists 2
3 This short-course is on this picture applied to a particular class of systems/problems. requirements (on the system behavior) assumptions (on the unknowns, e.g., environment behavior) complete system or some of its components formal specifications system model verification synthesis satisfied (+certificate) violated (+counterexample) controller that render the system to satisfy the spec s no such controller exists 2
4 This short-course is on this picture applied to a particular class of systems/problems. requirements (on the system behavior) assumptions (on the unknowns, e.g., environment behavior) complete system or some of its components formal specifications system model This lecture is an intro to these. verification synthesis satisfied (+certificate) violated (+counterexample) controller that render the system to satisfy the spec s no such controller exists 2
5 Finite transition system A finite transition system is a mathematical description of the behavior of systems, plants, controllers or environments with finite (discrete) inputs, outputs, and internal states and transitions between the states. 3
6 Finite transition system A finite transition system is a mathematical description of the behavior of systems, plants, controllers or environments with finite (discrete) inputs, outputs, and internal states and transitions between the states. front pad rear pad door q 0 q 1 {door is open} {door is not open} 3
7 Finite transition system A finite transition system is a mathematical description of the behavior of systems, plants, controllers or environments with finite (discrete) inputs, outputs, and internal states and transitions between the states. front pad rear pad door front q 0 q 1 {door is open} {door is not open} 3
8 Finite transition system A finite transition system is a mathematical description of the behavior of systems, plants, controllers or environments with finite (discrete) inputs, outputs, and internal states and transitions between the states. front pad rear pad door front q 0 q 1 {door is open} {door is not open} neither 3
9 Finite transition system A finite transition system is a mathematical description of the behavior of systems, plants, controllers or environments with finite (discrete) inputs, outputs, and internal states and transitions between the states. front pad rear pad door rear, both, neither front front, rear, both q 0 q 1 {door is open} {door is not open} neither 3
10 Finite transition system Example: Traffic logic planner in Alice. Partial nomenclature: DR = drive. STO = stop. NP = no passing, no reversing. P = passing, no reversing. PR = passing, reversing allowed. S = safe clearance with obstacle. A = aggressive clearance with obstacle. B = no clearance with obstacle. 4
11 Finite transition system Example: Traffic lights. q 1 s 1 traffic light 2 q 2 {g 1 } traffic light 1 c 2 s 2 {g 2 } traffic light 2 traffic light 1 c 1 e 1 γ 2 γ 1 γ 2 γ1 c 3 e 2 environment controller 5
12 Preliminaries A proposition is a statement that can be either true or false, but not both. Examples: Traffic light is green is a proposition. The front pad is occupied is a proposition. Is the front pad? is not a proposition. 6
13 Preliminaries A proposition is a statement that can be either true or false, but not both. Examples: Traffic light is green is a proposition. The front pad is occupied is a proposition. Is the front pad? is not a proposition. An atomic proposition is one whose truth or falsity does not depend on the truth or falsity of any other proposition. Examples: All propositions above are atomic propositions. If traffic light is green, the car can drive is not an atomic proposition. 6
14 Preliminaries A proposition is a statement that can be either true or false, but not both. Examples: Traffic light is green is a proposition. The front pad is occupied is a proposition. Is the front pad? is not a proposition. An atomic proposition is one whose truth or falsity does not depend on the truth or falsity of any other proposition. Examples: All propositions above are atomic propositions. If traffic light is green, the car can drive is not an atomic proposition. For notational brevity, use propositional variables to abbreviate propositions. For example, p Traffic light is green q Front pad is occupied 6
15 Finite transition system A transition system TS is a tuple TS =(S, Act,, I, AP, L), where S is a set of states, Act is a set of actions, S Act S is a transition relation, I S is a set of initial states, AP is a set of atomic propositions, L : S 2 AP is a labeling function, and TS is called finite if S, Act, and AP are finite. rear, both, neither front, rear, both front q 0 q 1 {door is not open} neither {door is open} example S = {q 0,q 1 } Act = {rear, front, both, neither} = {(q 0, front, q 1 ), (q 1, neither, q 0 ), (q 1, rear, q 1 ),...} I = {q 0 } L(q 0 )={door is not open} L(q 1 )={door is open} 7
16 Finite transition system A transition system TS is a tuple TS =(S, Act,, I, AP, L), where S is a set of states, Act is a set of actions, S Act S is a transition relation, I S is a set of initial states, AP is a set of atomic propositions, L : S 2 AP is a labeling function, and TS is called finite if S, Act, and AP are finite. AP depends on the characteristics of the system of interest. For state s, L(s) is the set of atomic propositions that are satisfied at s. Labels model outputs or observables. Actions model inputs or communication. rear, both, neither front, rear, both front q 0 q 1 {door is not open} neither {door is open} example S = {q 0,q 1 } Act = {rear, front, both, neither} = {(q 0, front, q 1 ), (q 1, neither, q 0 ), (q 1, rear, q 1 ),...} I = {q 0 } L(q 0 )={door is not open} L(q 1 )={door is open} 7
17 Propositional logic Given finite set AP of atomic propositions, the set of propositional logic formulas is inductively defined by: - true is a formula; - any a AP is a formula; - if φ 1, φ 2, and φ are formulas, so are φ and φ 1 φ 2 ; and - nothing else is a formula. From Specifying Systems by L. Lamport: Propositional logic is the math of the Boolean values, true and false, and the operators,,, 8
18 Propositional logic Given finite set AP of atomic propositions, the set of propositional logic formulas is inductively defined by: - true is a formula; - any a AP is a formula; - if φ 1, φ 2, and φ are formulas, so are φ and φ 1 φ 2 ; and - nothing else is a formula. From Specifying Systems by L. Lamport: Propositional logic is the math of the Boolean values, true and false, and the operators,,, Notation Connectives: (negation), (and) (or), (implies) 1 for true and 0 for false. Example propositional logic formulas obtained by applying the above four rules: φ 1 φ 2 := ( φ 1 φ 2 ) φ 1 φ 2 := φ 1 φ 2 8
19 Propositional logic Given finite set AP of atomic propositions, the set of propositional logic formulas is inductively defined by: - true is a formula; - any a AP is a formula; - if φ 1, φ 2, and φ are formulas, so are φ and φ 1 φ 2 ; and - nothing else is a formula. From Specifying Systems by L. Lamport: Propositional logic is the math of the Boolean values, true and false, and the operators,,, Notation Connectives: (negation), (and) (or), (implies) 1 for true and 0 for false. Example propositional logic formulas obtained by applying the above four rules: φ 1 φ 2 := ( φ 1 φ 2 ) The evaluation function µ : AP {0, 1} assigns a truth value to each a AP. The truth value µ(φ) of a formula Φ is determined by substituting the values for the atomic propositions specified by µ. Given: AP = {a, b, c}, µ(a) = 0 and µ(b) =µ(c) =1. Φ 1 =(a b) c, µ(φ 1 )=1 Φ 2 =(a b) c, µ(φ 2 )=0 φ 1 φ 2 := φ 1 φ 2 8
20 Logical dynamical system as a finite transition system x 1 [k + 1] = x 2 [k] u[k], x 1 [0] = 0, x 2 [k + 1] = x 1 [k] u[k], x 2 [0] = 1, y[k] =x 1 [k] x 2 [k] φ 1 φ 2 := ( φ 1 φ 2 ) (φ 1 φ 2 ) XOR (exclusive or) gives true only if exactly one of the operands is true. S = {0, 1]} 2 Act = {0, 1} I = {(0, 1)} AP = {y} L(x 1,x 2 )= {y} (indicating 1) if x1 x 2 =0 1 (indicating 0) otherwise 9
21 Concurrent systems Systems in which multiple tasks can be executed at the same time potentially with inter-task communication and resource sharing. 10
22 Concurrent systems Systems in which multiple tasks can be executed at the same time potentially with inter-task communication and resource sharing. Example: multi-threaded control Separate code into independent threads Switch between threads, allowing each to run simultaneously Potential problems: deadlocks, race conditions Thread Usage in Alice (DGC05) Modes of communication between the subsystems: hand-shaking (leads to synchrony) changing the values of shared variables (leads to asynchrony) 10
23 Composition of transition systems (by handshaking) Let TS 1 =(S 1, Act 1, 1,I 1, AP 1,L 1 ) and TS 2 =(S 2, Act 2, 2,I 2, AP 2,L 2 ) be transition systems. Their parallel composition, TS 1 TS 2 is the transition system defined by TS 1 TS 2 =(S 1 S 2, Act 1 Act 2,,I 1 I 2, AP 1 AP 2,L) where L(s 1,s 2 )=L 1 (s 1 ) L 2 (s 2 ) and is defined by the following rules: If Act 1 Act 2, s 1 1 s 1, and s 2 2 s 2,thens 1,s 2 s 1,s 2. If Act 1 \ Act 2 and s 1 1 s 1,thens 1,s 2 s 1,s 2. If Act 2 \ Act 1 and s 2 2 s 2,thens 1,s 2 s 1,s 2. q 1 s 1 q 1,s 1 q 1,s 2 {g 2 } q 2 s 2 q 2,s 1 q 2,s 2 {g 1 } traffic light 1 {g 2 } traffic light 2 {g 1 } {g 1,g 2 } 11
24 Composition of transition systems (by handshaking) Let TS 1 =(S 1, Act 1, 1,I 1, AP 1,L 1 ) and TS 2 =(S 2, Act 2, 2,I 2, AP 2,L 2 ) be transition systems. Their parallel composition, TS 1 TS 2 is the transition system defined by TS 1 TS 2 =(S 1 S 2, Act 1 Act 2,,I 1 I 2, AP 1 AP 2,L) where L(s 1,s 2 )=L 1 (s 1 ) L 2 (s 2 ) and is defined by the following rules: If Act 1 Act 2, s 1 1 s 1, and s 2 2 s 2,thens 1,s 2 s 1,s 2. If Act 1 \ Act 2 and s 1 1 s 1,thens 1,s 2 s 1,s 2. If Act 2 \ Act 1 and s 2 2 s 2,thens 1,s 2 s 1,s 2. q 1 s 1 q 1,s 1 q 1,s 2 {g 2 } q 2 s 2 q 2,s 1 q 2,s 2 {g 1 } traffic light 1 {g 2 } traffic light 2 {g 1 } {g 1,g 2 } 11
25 Composition of transition systems (by handshaking) Let TS 1 =(S 1, Act 1, 1,I 1, AP 1,L 1 ) and TS 2 =(S 2, Act 2, 2,I 2, AP 2,L 2 ) be transition systems. Their parallel composition, TS 1 TS 2 is the transition system defined by TS 1 TS 2 =(S 1 S 2, Act 1 Act 2,,I 1 I 2, AP 1 AP 2,L) where L(s 1,s 2 )=L 1 (s 1 ) L 2 (s 2 ) and is defined by the following rules: If Act 1 Act 2, s 1 1 s 1, and s 2 2 s 2,thens 1,s 2 s 1,s 2. If Act 1 \ Act 2 and s 1 1 s 1,thens 1,s 2 s 1,s 2. If Act 2 \ Act 1 and s 2 2 s 2,thens 1,s 2 s 1,s 2. q 1 q 2 {g 1 } traffic light 1 s 1 s 2 {g 2 } traffic light 2 q 1,s 1 q 2,s 1 {g 2 } q 1,s 2 q 2,s 2 {g 1 } {g 1,g 2 } c 2 c 1 c 3 controller {g 1 } q 2,s 1,c 2 q 1,s 1,c 1 q 1,s 2,c 3 {g 2 } + Unreachable states 11
26 Paths of a finite transition system Given a transition system TS =(S, Act,, I, AP, L). For s S, P ost(s) := s S : a Act s.t. s a s Example: Post((0,0)) = {(0,0),(1,0)}. A state s is terminal iff Post(s) is empty. 12
27 Paths of a finite transition system Given a transition system TS =(S, Act,, I, AP, L). For s S, P ost(s) := s S : a Act s.t. s a s Example: Post((0,0)) = {(0,0),(1,0)}. q A state s is terminal iff Post(s) is empty. 12
28 Paths of a finite transition system Given a transition system TS =(S, Act,, I, AP, L). For s S, P ost(s) := s S : a Act s.t. s a s Example: Post((0,0)) = {(0,0),(1,0)}. A state s is terminal iff Post(s) is empty. A sequence of states, either finite π = s 0 s 1 s 2...s n or infinite π = s 0 s 1 s 2..., is a path fragment if s i+1 P ost(s i ), i 0. (0, 1) 0,1 (1, 0) 1 (1, 1) 1 (1, 1) 0 (1, 0) 0 (0, 0) 0 (0, 0) 1 (1, 0) 0 (0, 1) 0,1 (1, 0) 1 (1, 1). 12
29 Paths of a finite transition system Given a transition system TS =(S, Act,, I, AP, L). For s S, P ost(s) := s S : a Act s.t. s a s Example: Post((0,0)) = {(0,0),(1,0)}. A state s is terminal iff Post(s) is empty. A sequence of states, either finite π = s 0 s 1 s 2...s n or infinite π = s 0 s 1 s 2..., is a path fragment if s i+1 P ost(s i ), i 0. A path is a path fragment s.t. and it is either finite with terminal or infinite. Denote the set of paths in TS by P ath(ts). s 0 I s n a path: (0, 1) 0,1 (1, 0) 1 (1, 1) 1 (1, 1) 0 not a path: (1, 0) 0 (0, 0) 0 (0, 0) 1 (1, 0) 0 not a path: (0, 1) 0,1 (1, 0) 1 (1, 1). 12
30 Traces of a finite transition system Equivalent FSMs w/ and w/o terminal state Consider a finite transition system TS =(S, Act,, I, AP, L) with no terminal states (wlog). The trace of an infinite path fragment The set, π = s 0 s 1 s 2... trace(π) =L(s 0 )L(s 1 )L(s 2 )..., of traces of TS is defined by. T races(ts)={trace(π) :π P aths(ts)} T races(ts) is defined by sequence of sets of atomic propositions that are valid in the states along the path 13
31 Traces of a finite transition system Equivalent FSMs w/ and w/o terminal state Consider a finite transition system TS =(S, Act,, I, AP, L) with no terminal states (wlog). The trace of an infinite path fragment The set, π = s 0 s 1 s 2... trace(π) =L(s 0 )L(s 1 )L(s 2 )..., of traces of TS is defined by. T races(ts)={trace(π) :π P aths(ts)} T races(ts) is defined by sequence of sets of atomic propositions that are valid in the states along the path rear, both, neither front, rear, both front q 0 q 1 {door is not open} {door is open} neither Actions: f, f, n, b, f, f, b,... Path: q 0 q 1 q 1 q 0 q 0 q 1 q 1 q 1... Trace: o, o, o, o, o, o, o, o,... (with some abuse of notation) 13
32 Linear-time properties A linear-time (LT) property P over atomic propositions in AP is a set of infinite sequences over 2 AP. Let P be an LT property over AP and TS =(S, Act,, I, AP, L) bea transition system. TS satisfies P, denoted as TS = P, iff T races(ts) P. 14
33 Linear-time properties A linear-time (LT) property P over atomic propositions in AP is a set of infinite sequences over 2 AP. Let P be an LT property over AP and TS =(S, Act,, I, AP, L) bea transition system. TS satisfies P, denoted as TS = P, iff T races(ts) P. traces of TS admissible, desired, undesired, etc. behavior 14
34 Linear-time properties A linear-time (LT) property P over atomic propositions in AP is a set of infinite sequences over 2 AP. Let P be an LT property over AP and TS =(S, Act,, I, AP, L) bea transition system. TS satisfies P, denoted as TS = P, iff T races(ts) P. traces of TS admissible, desired, undesired, etc. behavior Example: AP = {red1, green1, red2, green2} P1 = The first light is infinitely often green. [A 0 A 1 A 2... with green1 A i 2 AP holds for infinitely many i] {r1,g2}{g1,r2}{r1,g2}{g1,r2}... {g1} {g1} {g1}... {g1,g2}{g1,g2}{g1,g2}... {r1,g2}{r1g1}... P2 = The lights are never both green simultaneously. [A 0 A 1 A 2... with green1 / A i or green2 / A i, for all i 0] 14
35 Linear-time properties A linear-time (LT) property P over atomic propositions in AP is a set of infinite sequences over 2 AP. Let P be an LT property over AP and TS =(S, Act,, I, AP, L) bea transition system. TS satisfies P, denoted as TS = P, iff T races(ts) P. traces of TS {g 2 } admissible, desired, undesired, etc. behavior q 1,s 1 q 1,s 2 Example: AP = {red1, green1, red2, green2} P1 = The first light is infinitely often green. [A 0 A 1 A 2... with q 2,s green1 1 A i q 2,s 2 AP 2 holds for infinitely many i] {g 1 } {g 1,g 2 } {r1,g2}{g1,r2}{r1,g2}{g1,r2}... {g1} {g1} {g1}... {g1,g2}{g1,g2}{g1,g2}... {r1,g2}{r1g1}... P2 = The lights are never both green simultaneously. [A 0 A 1 A 2... with green1 / A i or green2 / A i, for all i 0] c 2 c 1 c 3 {g 1 } q 2,s 1,c 2 q 1,s 1,c 1 q 1,s 2,c 3 {g 2 } + Unreachable states 14
36 Linear-time properties A linear-time (LT) property P over atomic propositions in AP is a set of infinite sequences over 2 AP. Let P be an LT property over AP and TS =(S, Act,, I, AP, L) bea transition system. TS satisfies P, denoted as TS = P, iff T races(ts) P. traces of TS {g 2 } admissible, desired, undesired, etc. behavior q 1,s 1 q 1,s 2 Example: AP = {red1, green1, red2, green2} P1 = The first light is infinitely often green. [A 0 A 1 A 2... with q 2,s green1 1 A i q 2,s 2 AP 2 holds for infinitely many i] {g 1 } {g 1,g 2 } {r1,g2}{g1,r2}{r1,g2}{g1,r2}... {g1} {g1} {g1}... {g1,g2}{g1,g2}{g1,g2}... {r1,g2}{r1g1}... P2 = The lights are never both green simultaneously. [A 0 A 1 A 2... with green1 / A i or green2 / A i, for all i 0] c 2 c 1 c 3 {g 1 } q 2,s 1,c 2 q 1,s 1,c 1 q 1,s 2,c 3 {g 2 } + Unreachable states The transition system satisfies P2, but it does not satisfy P1. 14
37 Invariants An LT property P Φ over AP is an invariant with respect to a propositional logic formula Φ over AP if P Φ = {A 0 A 1 A 2... (2 AP ) ω : A j = Φ j 0}. 15
38 Invariants An LT property P Φ over AP is an invariant with respect to a propositional logic formula Φ over AP if P Φ = {A 0 A 1 A 2... (2 AP ) ω : A j = Φ j 0}. Notation: repeat infinitely many times For A AP, let the evaluation µ A be the characteristic function of A. A = Φ iff µ A (Φ) =1 15
39 Invariants An LT property P Φ over AP is an invariant with respect to a propositional logic formula Φ over AP if P Φ = {A 0 A 1 A 2... (2 AP ) ω : A j = Φ j 0}. Notation: repeat infinitely many times For A AP, let the evaluation µ A be the characteristic function of A. A = Φ iff µ A (Φ) =1 Example: The LT property the lights are never both green simultaneously is an invariant with respect to Φ = green1 green2. 15
40 Invariants An LT property P Φ over AP is an invariant with respect to a propositional logic formula Φ over AP if P Φ = {A 0 A 1 A 2... (2 AP ) ω : A j = Φ j 0}. Notation: repeat infinitely many times For A AP, let the evaluation µ A be the characteristic function of A. A = Φ iff µ A (Φ) =1 Example: The LT property the lights are never both green simultaneously is an invariant with respect to Φ = green1 green2. Given TS, Φ, and P Φ, TS = P Φ? The following four statements are equivalent TS = P Φ trace(π) P Φ, π P ath(ts) L(s) = Φ, s S on a path of TS L(s) = Φ, s Reach(TS) A state s is reachable if there exists an execution fragment s.t. s 0 I and Reach(TS) a s 1 a 0 2 a s1 n s n = s : set of reachable states in TS Invariants are state properties. That is, for verification, find the reachable states and check Φ. 15
41 Safety properties An LT property P safe is a safety property if for all words σ (2 AP ) ω \P safe there exists a finite prefix ˆσ of σ s.t. P safe {σ (2 AP ) ω :ˆσ is a finite prefix of σ } =. Bad things have happened in the bad prefix starts with satisfies. ˆσ P safe ˆσ. Hence, no infinite word that 16
42 Safety properties An LT property P safe is a safety property if for all words σ (2 AP ) ω \P safe there exists a finite prefix ˆσ of σ s.t. P safe {σ (2 AP ) ω :ˆσ is a finite prefix of σ } =. Bad things have happened in the bad prefix starts with satisfies. ˆσ P safe ˆσ. Hence, no infinite word that Example: AP = {red, green, yellow} At least one of the lights is always on is a safety property. {σ = A 0 A 1... : A j AP A j = } Bad prefixes: finite words that contain. Two lights are never on at the same time is a safety property. {σ = A 0 A 1... : A j AP card(a j ) 1} Bad prefixes: finite words that contain {red,green}, {red,yellow}, and so on. 16
43 Safety properties An LT property P safe is a safety property if for all words σ (2 AP ) ω \P safe there exists a finite prefix ˆσ of σ s.t. P safe {σ (2 AP ) ω :ˆσ is a finite prefix of σ } =. Bad things have happened in the bad prefix starts with satisfies. ˆσ P safe ˆσ. Hence, no infinite word that Example: AP = {red, green, yellow} At least one of the lights is always on is a safety property. {σ = A 0 A 1... : A j AP A j = } Bad prefixes: finite words that contain. Two lights are never on at the same time is a safety property. {σ = A 0 A 1... : A j AP card(a j ) 1} Any invariant is a safety property. There are safety properties that are not invariant. Example: AP = {red, yellow} Each red is immediately preceded by a yellow is a safety property, but not invariant (because it is not a state property). Sample bad prefixes: Bad prefixes: finite words that contain {r} {y}{y}{r}{r} {r} {red,green}, {red,yellow}, and so on. 16
44 Liveness properties An LT property P is a liveness property if and only if for each finite word w of 2 AP there exists an infinite word σ (2 AP ) ω satisfying wσ P. Example: Two traffic lights with First light will eventually turn green First light will turn green infinitely often AP = {red1, green1, red2, green2} 17
45 Liveness properties An LT property P is a liveness property if and only if for each finite word w of 2 AP there exists an infinite word σ (2 AP ) ω satisfying wσ P. Example: Two traffic lights with First light will eventually turn green First light will turn green infinitely often AP = {red1, green1, red2, green2} Use of liveness properties: specify the absence of (undesired) infinite loops or progress toward a goal. rule out executions that cannot realistically occur (fairness), e.g., in an asynchronous execution, every process is activate infinitely often. 17
46 Liveness properties An LT property P is a liveness property if and only if for each finite word w of 2 AP there exists an infinite word σ (2 AP ) ω satisfying wσ P. Example: Two traffic lights with First light will eventually turn green First light will turn green infinitely often AP = {red1, green1, red2, green2} Use of liveness properties: specify the absence of (undesired) infinite loops or progress toward a goal. rule out executions that cannot realistically occur (fairness), e.g., in an asynchronous execution, every process is activate infinitely often. Example: Is the following a safety or liveness property? the first light is eventually green after it is initially red three time instances in a row 17
47 Liveness properties An LT property P is a liveness property if and only if for each finite word w of 2 AP there exists an infinite word σ (2 AP ) ω satisfying wσ P. Example: Two traffic lights with First light will eventually turn green First light will turn green infinitely often AP = {red1, green1, red2, green2} Use of liveness properties: specify the absence of (undesired) infinite loops or progress toward a goal. rule out executions that cannot realistically occur (fairness), e.g., in an asynchronous execution, every process is activate infinitely often. safety liveness Example: Is the following a safety or liveness property? the first light is eventually green after it is initially red three time instances in a row r 1 r 1 r 1 (2 AP ) ω (2 AP ) g 1 (2 AP ) ω Answer: It is a combination of a safety and a liveness property. Liveness: any finite word can be extended by an infinite word A 0 A 1 A 2... with green1 A j for some j 0. Safety: any finite word A 0 A 1 A 2 with red1 / A i for any i {0, 1, 2} is a bad prefix. 17
48 Invariant Safety Liveness state condition something bad never happens something good will happen eventually violated at individual states any infinite run violating the property has a finite prefix violated only by infinite runs verification: find the reachable states and check the invariant condition verification: verification:?? 18
49 Nondeterministic finite automaton (NFA) A nondeterministic finite automaton A =(Q, Σ, δ,q 0,F) is a tuple with - A is a set of states, - Σ is an alphabet, - δ : Q Σ 2 Q is a transition function, - Q 0 Q is a set of initial states, and - F Q is a set of accept (or: final) states. Q = {q0,q1,q2}, Σ = {A, B} Q 0 = {q0}, F = {q2} δ(q0,a)={q0}, δ(q1,a)={q2}, δ(q2,a)=, δ(q0,b)={q0,q1} δ(q1,b)={q2} δ(q0,b)= 19
50 Nondeterministic finite automaton (NFA) A nondeterministic finite automaton A =(Q, Σ, δ,q 0,F) is a tuple with - A is a set of states, - Σ is an alphabet, - δ : Q Σ 2 Q is a transition function, - Q 0 Q is a set of initial states, and - F Q is a set of accept (or: final) states. set of finite words Let w = A 1...A n Σ be a finite word. A run for w in A is a finite sequence of states q 0 q 1...q n s.t. - q 0 Q 0 Q = {q0,q1,q2}, Σ = {A, B} Q 0 = {q0}, F = {q2} δ(q0,a)={q0}, δ(q1,a)={q2}, δ(q2,a)=, δ(q0,b)={q0,q1} δ(q1,b)={q2} δ(q0,b)= A i+1 - q i q i+1 for all 0 i<n. word run empty word B ABA BBA BA BBA q0 q0q1 q0q0q0q0 q0q0q0q0 q0q1q2 q0q0q1q2 19
51 Nondeterministic finite automaton (NFA) A nondeterministic finite automaton A =(Q, Σ, δ,q 0,F) is a tuple with - A is a set of states, - Σ is an alphabet, - δ : Q Σ 2 Q is a transition function, - Q 0 Q is a set of initial states, and - F Q is a set of accept (or: final) states. set of finite words Let w = A 1...A n Σ be a finite word. A run for w in A is a finite sequence of states q 0 q 1...q n s.t. - q 0 Q 0 Q = {q0,q1,q2}, Σ = {A, B} Q 0 = {q0}, F = {q2} δ(q0,a)={q0}, δ(q1,a)={q2}, δ(q2,a)=, δ(q0,b)={q0,q1} δ(q1,b)={q2} δ(q0,b)= A i+1 - q i q i+1 for all 0 i<n. word run A run q 0 q 1...q n is called accepting if q n F. A finite word in accepted if it leads to an accepting run. The accepted language L(A) of A is the set of finite words in Σ accepted by A. accepted empty word B ABA BBA BA BBA q0 q0q1 q0q0q0q0 q0q0q0q0 q0q1q2 q0q0q1q2 19
52 Regular safety properties A set L Σ of finite strings is called a regular language if there is a nondeterministic finite automaton A s.t. L = L(A). NFA: A =(Q, Σ, δ,q 0,F) language (set of finite words) accepted by the NFA 20
53 Regular safety properties A set L Σ of finite strings is called a regular language if there is a nondeterministic finite automaton A s.t. L = L(A). A safety property P safe over AP is called regular if its set of bad prefixes constitutes a regular language over 2 AP. That is: NFA A s.t. L(A) = bad prefixes of P safe NFA: A =(Q, Σ, δ,q 0,F) language (set of finite words) accepted by the NFA 20
54 Regular safety properties A set L Σ of finite strings is called a regular language if there is a nondeterministic finite automaton A s.t. L = L(A). A safety property P safe over AP is called regular if its set of bad prefixes constitutes a regular language over 2 AP. That is: NFA A s.t. L(A) = bad prefixes of P safe NFA: A =(Q, Σ, δ,q 0,F) language (set of finite words) accepted by the NFA Example: AP = {red, green, yellow} Each red must be preceded immediately by a yellow is a regular safety property. Sample bad prefixes: {}{}{red} {}{red} {yellow}{yellow}{green}{red} A 0 A 1...A n s.t. n>0, red A n, and yellow / A n 1 general form of minimal bad prefixes yellow q1 q0 q2 red yellow red yellow red yellow 20
55 Verifying regular safety properties Given a transition system TS and a regular safety property P safe, both over the atomic propositions AP. Let A be an NFA s.t. L(A) =BadP ref(p safe ). 21
56 Verifying regular safety properties Given a transition system TS and a regular safety property P safe, both over the atomic propositions AP. Let A be an NFA s.t. L(A) =BadP ref(p safe ). T races(ts) P safe 21
57 Verifying regular safety properties Given a transition system TS and a regular safety property P safe, both over the atomic propositions AP. Let A be an NFA s.t. L(A) =BadP ref(p safe ). TS = P safe iff T races(ts) P safe iff T races(ts) ((2 AP ) ω \P safe )= iff T races(ts) BadP ref(p safe ).(2 AP ) ω = iff pref(t races(ts)) BadP ref(p safe )= iff pref(t races(t S)) L(A) = finite prefixes T races(ts) P safe For words w and σ, w.σ denotes their concatenation. 21
58 Verifying regular safety properties Given a transition system TS and a regular safety property P safe, both over the atomic propositions AP. Let A be an NFA s.t. L(A) =BadP ref(p safe ). TS = P safe iff T races(ts) P safe iff T races(ts) ((2 AP ) ω \P safe )= iff T races(ts) BadP ref(p safe ).(2 AP ) ω = iff pref(t races(ts)) BadP ref(p safe )= iff pref(t races(t S)) L(A) = finite prefixes (2 AP ) ω (2 AP ) ω \P safe T races(ts) P safe For words w and σ, w.σ denotes their concatenation. 21
59 Invariant Safety Liveness state condition something bad never happens something good will happen eventually violated at individual states any infinite run violating the property has a finite prefix violated only by infinite runs verification: find the reachable states and check the invariant condition verification: based on nondeterministic finite automaton which accepts finite runs verification:? 22
60 Nondeterministic Buchi automaton (NBA) A nondeterministic Buchi automaton is same as an NFA with its runs interpreted differently. A =(Q, Σ, δ,q 0,F) Let w = A 1 A 2... Σ ω be an infinite string. A run for w in A is an infinite sequence q 0 q 1... of states s.t. - q 0 Q 0 and A - q 1 A 0 2 A q1 3 q
61 Nondeterministic Buchi automaton (NBA) A nondeterministic Buchi automaton is same as an NFA with its runs interpreted differently. A =(Q, Σ, δ,q 0,F) Let w = A 1 A 2... Σ ω be an infinite string. A run for w in A is an infinite sequence q 0 q 1... of states s.t. - q 0 Q 0 and A - q 1 A 0 2 A q1 3 q2... AP = {red, green} A run is accepting if q j F for infinitely many j. A string w is accepted by A if there is an accepting run of w in A. L ω (A): set of infinite strings accepted by A. input word: {green}{}{green}{}{green}{}... run: q 0 q 1 q 0 q 1 q 0 q 1... input word: ({green, red}{}{green}{red}) ω run: q 0 q 1 q 0 q 1 q 0 q
62 Nondeterministic Buchi automaton (NBA) A nondeterministic Buchi automaton is same as an NFA with its runs interpreted differently. A =(Q, Σ, δ,q 0,F) Let w = A 1 A 2... Σ ω be an infinite string. A run for w in A is an infinite sequence q 0 q 1... of states s.t. - q 0 Q 0 and A - q 1 A 0 2 A q1 3 q2... AP = {red, green} A run is accepting if q j F for infinitely many j. A string w is accepted by A if there is an accepting run of w in A. L ω (A): set of infinite strings accepted by A. A set of infinite string L ω Σ ω is called an ω-regular language if there is an NBA A s.t. L ω = L ω (A). The NBA on the right accepts the infinite words satisfying the LT property: infinitely often green. input word: {green}{}{green}{}{green}{}... run: q 0 q 1 q 0 q 1 q 0 q 1... input word: ({green, red}{}{green}{red}) ω run: q 0 q 1 q 0 q 1 q 0 q
63 ω -Regular Properties NBA: A =(Q, Σ, δ,q 0,F) An LT property P over AP is called ω-regular if P is an ω-regular language over 2 AP. Invariant, regular safety, and various liveness properties are ω-regular. Let P be an ω-regular property and A be an NBA that represents the bad traces for P. Basic idea behind model checking ω-regular properties: TS = P if and only if Traces(TS) P if and only if Traces(TS) (2 AP ) ω \ P = if and only if if and only if Traces(TS) P = Traces(TS) L ω (A) = 24
64 Invariant Safety Liveness state condition something bad never happens something good will happen eventually violated at individual states any infinite run violating the property has a finite prefix violated only by infinite runs verification: find the reachable states and check the invariant condition verification: based on nondeterministic finite automaton which accepts finite runs verification: based on nondeterministic Buchi automaton which accepts infinite runs 25
Lecture 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 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 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 informationLecture 4 Model Checking and Logic Synthesis
Lecture 4 Model Checking and Logic Synthesis Nok Wongpiromsarn Richard M. Murray Ufuk Topcu EECI, 18 March 2013 Outline Model checking: what it is, how it works, how it is used Computational complexity
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 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 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 informationLecture 9 Synthesis of Reactive Control Protocols
Lecture 9 Synthesis of Reactive Control Protocols Nok Wongpiromsarn Singapore-MIT Alliance for Research and Technology Richard M. Murray and Ufuk Topcu California Institute of Technology EECI, 16 May 2012
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 informationThe State Explosion Problem
The State Explosion Problem Martin Kot August 16, 2003 1 Introduction One from main approaches to checking correctness of a concurrent system are state space methods. They are suitable for automatic analysis
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 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 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 informationLecture 7 Synthesis of Reactive Control Protocols
Lecture 7 Synthesis of Reactive Control Protocols Richard M. Murray Nok Wongpiromsarn Ufuk Topcu California Institute of Technology AFRL, 25 April 2012 Outline Review: networked control systems and cooperative
More informationEmbedded systems specification and design
Embedded systems specification and design David Kendall David Kendall Embedded systems specification and design 1 / 21 Introduction Finite state machines (FSM) FSMs and Labelled Transition Systems FSMs
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 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 informationUNIT-I. Strings, Alphabets, Language and Operations
UNIT-I Strings, Alphabets, Language and Operations Strings of characters are fundamental building blocks in computer science. Alphabet is defined as a non empty finite set or nonempty set of symbols. The
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 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 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 informationClasses and conversions
Classes and conversions Regular expressions Syntax: r = ε a r r r + r r Semantics: The language L r of a regular expression r is inductively defined as follows: L =, L ε = {ε}, L a = a L r r = L r L r
More informationLogic Model Checking
Logic Model Checking Lecture Notes 10:18 Caltech 101b.2 January-March 2004 Course Text: The Spin Model Checker: Primer and Reference Manual Addison-Wesley 2003, ISBN 0-321-22862-6, 608 pgs. the assignment
More informationComputational Models #1
Computational Models #1 Handout Mode Nachum Dershowitz & Yishay Mansour March 13-15, 2017 Nachum Dershowitz & Yishay Mansour Computational Models #1 March 13-15, 2017 1 / 41 Lecture Outline I Motivation
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 informationChapter 6: NFA Applications
Chapter 6: NFA Applications Implementing NFAs The problem with implementing NFAs is that, being nondeterministic, they define a more complex computational procedure for testing language membership. To
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 informationSynthesis of Control Protocols for Autonomous Systems
Unmanned Systems, Vol. 0, No. 0 (2013) 1 19 c World Scientific Publishing Company Synthesis of Control Protocols for Autonomous Systems Tichakorn Wongpiromsarn a, Ufuk Topcu b, Richard M. Murray c a Ministry
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 informationLecture 8 Receding Horizon Temporal Logic Planning & Finite-State Abstraction
Lecture 8 Receding Horizon Temporal Logic Planning & Finite-State Abstraction Ufuk Topcu Nok Wongpiromsarn Richard M. Murray AFRL, 26 April 2012 Contents of the lecture: Intro: Incorporating continuous
More informationFailure Diagnosis of Discrete Event Systems With Linear-Time Temporal Logic Specifications
Failure Diagnosis of Discrete Event Systems With Linear-Time Temporal Logic Specifications Shengbing Jiang and Ratnesh Kumar Abstract The paper studies failure diagnosis of discrete event systems with
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 informationNondeterministic finite automata
Lecture 3 Nondeterministic finite automata This lecture is focused on the nondeterministic finite automata (NFA) model and its relationship to the DFA model. Nondeterminism is an important concept in the
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 informationComputational Models - Lecture 1 1
Computational Models - Lecture 1 1 Handout Mode Ronitt Rubinfeld and Iftach Haitner. Tel Aviv University. February 29/ March 02, 2016 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames
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 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 informationFinite Automata. Seungjin Choi
Finite Automata Seungjin Choi Department of Computer Science and Engineering Pohang University of Science and Technology 77 Cheongam-ro, Nam-gu, Pohang 37673, Korea seungjin@postech.ac.kr 1 / 28 Outline
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 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 informationCSE 105 Theory of Computation Professor Jeanne Ferrante
CSE 105 Theory of Computation http://www.jflap.org/jflaptmp/ Professor Jeanne Ferrante 1 Today s agenda NFA Review and Design NFA s Equivalence to DFA s Another Closure Property proof for Regular Languages
More informationRecognizing Safety and Liveness by Alpern and Schneider
Recognizing Safety and Liveness by Alpern and Schneider Calvin Deutschbein 17 Jan 2017 1 Intro 1.1 Safety What is safety? Bad things do not happen For example, consider the following safe program in C:
More informationIntroduction. Büchi Automata and Model Checking. Outline. Büchi Automata. The simplest computation model for infinite behaviors is the
Introduction Büchi Automata and Model Checking Yih-Kuen Tsay Department of Information Management National Taiwan University FLOLAC 2009 The simplest computation model for finite behaviors is the finite
More informationClosure Properties of Regular Languages. Union, Intersection, Difference, Concatenation, Kleene Closure, Reversal, Homomorphism, Inverse Homomorphism
Closure Properties of Regular Languages Union, Intersection, Difference, Concatenation, Kleene Closure, Reversal, Homomorphism, Inverse Homomorphism Closure Properties Recall a closure property is a statement
More informationCISC 4090: Theory of Computation Chapter 1 Regular Languages. Section 1.1: Finite Automata. What is a computer? Finite automata
CISC 4090: Theory of Computation Chapter Regular Languages Xiaolan Zhang, adapted from slides by Prof. Werschulz Section.: Finite Automata Fordham University Department of Computer and Information Sciences
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 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 informationcse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska
cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska LECTURE 6 CHAPTER 2 FINITE AUTOMATA 2. Nondeterministic Finite Automata NFA 3. Finite Automata and Regular Expressions 4. Languages
More informationDesign and Analysis of Distributed Interacting Systems
Design and Analysis of Distributed Interacting Systems Organization Prof. Dr. Joel Greenyer April 11, 2013 Organization Lecture: Thursdays, 10:15 11:45, F 128 Tutorial: Thursdays, 13:00 13:45, G 323 first
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 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 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 informationFORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
5-453 FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY NON-DETERMINISM and REGULAR OPERATIONS THURSDAY JAN 6 UNION THEOREM The union of two regular languages is also a regular language Regular Languages Are
More information2. Elements of the Theory of Computation, Lewis and Papadimitrou,
Introduction Finite Automata DFA, regular languages Nondeterminism, NFA, subset construction Regular Epressions Synta, Semantics Relationship to regular languages Properties of regular languages Pumping
More informationNondeterministic Finite Automata
Nondeterministic Finite Automata Mahesh Viswanathan Introducing Nondeterminism Consider the machine shown in Figure. Like a DFA it has finitely many states and transitions labeled by symbols from an input
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 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 informationRegular Language Equivalence and DFA Minimization. Equivalence of Two Regular Languages DFA Minimization
Regular Language Equivalence and DFA Minimization Equivalence of Two Regular Languages DFA Minimization Decision Property: Equivalence Given regular languages L and M, is L = M? Algorithm involves constructing
More informationLecture 3: Nondeterministic Finite Automata
Lecture 3: Nondeterministic Finite Automata September 5, 206 CS 00 Theory of Computation As a recap of last lecture, recall that a deterministic finite automaton (DFA) consists of (Q, Σ, δ, q 0, F ) where
More informationTesting with model checkers: A survey
COMPETENCE NETWORK SOFTNET AUSTRIA Testing with model checkers: A survey SNA-TR-2007-P2-04 Gordon Fraser, Franz Wotawa, Paul E. Ammann SNA TECHNICAL REPORT NOVEMBER 2007 Competence Network Softnet Austria,
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 informationEECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization
EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Discrete Systems Lecture: Automata, State machines, Circuits Stavros Tripakis University of California, Berkeley Stavros
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 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 informationFinite Automata. Dr. Neil T. Dantam. Fall CSCI-561, Colorado School of Mines. Dantam (Mines CSCI-561) Finite Automata Fall / 35
Finite Automata Dr. Neil T. Dantam CSCI-561, Colorado School of Mines Fall 2017 Dantam (Mines CSCI-561) Finite Automata Fall 2017 1 / 35 Outline Dantam (Mines CSCI-561) Finite Automata Fall 2017 2 / 35
More informationProofs, Strings, and Finite Automata. CS154 Chris Pollett Feb 5, 2007.
Proofs, Strings, and Finite Automata CS154 Chris Pollett Feb 5, 2007. Outline Proofs and Proof Strategies Strings Finding proofs Example: For every graph G, the sum of the degrees of all the nodes in G
More informationLecture 23 : Nondeterministic Finite Automata DRAFT Connection between Regular Expressions and Finite Automata
CS/Math 24: Introduction to Discrete Mathematics 4/2/2 Lecture 23 : Nondeterministic Finite Automata Instructor: Dieter van Melkebeek Scribe: Dalibor Zelený DRAFT Last time we designed finite state automata
More informationFinite Universes. L is a fixed-length language if it has length n for some
Finite Universes Finite Universes When the universe is finite (e.g., the interval 0, 2 1 ), all objects can be encoded by words of the same length. A language L has length n 0 if L =, or every word of
More informationClarifications from last time. This Lecture. Last Lecture. CMSC 330: Organization of Programming Languages. Finite Automata.
CMSC 330: Organization of Programming Languages Last Lecture Languages Sets of strings Operations on languages Finite Automata Regular expressions Constants Operators Precedence CMSC 330 2 Clarifications
More informationSanjit A. Seshia EECS, UC Berkeley
EECS 219C: Computer-Aided Verification Explicit-State Model Checking: Additional Material Sanjit A. Seshia EECS, UC Berkeley Acknowledgments: G. Holzmann Checking if M satisfies : Steps 1. Compute Buchi
More informationCMSC 330: Organization of Programming Languages
CMSC 330: Organization of Programming Languages Theory of Regular Expressions DFAs and NFAs Reminders Project 1 due Sep. 24 Homework 1 posted Exam 1 on Sep. 25 Exam topics list posted Practice homework
More informationFinite Automata. Mahesh Viswanathan
Finite Automata Mahesh Viswanathan In this lecture, we will consider different models of finite state machines and study their relative power. These notes assume that the reader is familiar with DFAs,
More informationBüchi Automata and their closure properties. - Ajith S and Ankit Kumar
Büchi Automata and their closure properties - Ajith S and Ankit Kumar Motivation Conventional programs accept input, compute, output result, then terminate Reactive program : not expected to terminate
More informationFinite Automata. Dr. Neil T. Dantam. Fall CSCI-561, Colorado School of Mines. Dantam (Mines CSCI-561) Finite Automata Fall / 43
Finite Automata Dr. Neil T. Dantam CSCI-561, Colorado School of Mines Fall 2018 Dantam (Mines CSCI-561) Finite Automata Fall 2018 1 / 43 Outline Languages Review Traffic Light Example Deterministic Finite
More informationUses of finite automata
Chapter 2 :Finite Automata 2.1 Finite Automata Automata are computational devices to solve language recognition problems. Language recognition problem is to determine whether a word belongs to a language.
More informationCSE 311: Foundations of Computing. Lecture 23: Finite State Machine Minimization & NFAs
CSE : Foundations of Computing Lecture : Finite State Machine Minimization & NFAs State Minimization Many different FSMs (DFAs) for the same problem Take a given FSM and try to reduce its state set by
More informationFurther discussion of Turing machines
Further discussion of Turing machines In this lecture we will discuss various aspects of decidable and Turing-recognizable languages that were not mentioned in previous lectures. In particular, we will
More informationCS 154. Finite Automata, Nondeterminism, Regular Expressions
CS 54 Finite Automata, Nondeterminism, Regular Expressions Read string left to right The DFA accepts a string if the process ends in a double circle A DFA is a 5-tuple M = (Q, Σ, δ, q, F) Q is the set
More informationCSE 135: Introduction to Theory of Computation Nondeterministic Finite Automata (cont )
CSE 135: Introduction to Theory of Computation Nondeterministic Finite Automata (cont ) Sungjin Im University of California, Merced 2-3-214 Example II A ɛ B ɛ D F C E Example II A ɛ B ɛ D F C E NFA accepting
More informationDecentralized Control of Discrete Event Systems with Bounded or Unbounded Delay Communication
Decentralized Control of Discrete Event Systems with Bounded or Unbounded Delay Communication Stavros Tripakis Abstract We introduce problems of decentralized control with communication, where we explicitly
More informationAutomatic Synthesis of Distributed Protocols
Automatic Synthesis of Distributed Protocols Rajeev Alur Stavros Tripakis 1 Introduction Protocols for coordination among concurrent processes are an essential component of modern multiprocessor and distributed
More informationAlgorithms for NLP
Regular Expressions Chris Dyer Algorithms for NLP 11-711 Adapted from materials from Alon Lavie Goals of Today s Lecture Understand the properties of NFAs with epsilon transitions Understand concepts and
More informationCMPSCI 250: Introduction to Computation. Lecture #22: From λ-nfa s to NFA s to DFA s David Mix Barrington 22 April 2013
CMPSCI 250: Introduction to Computation Lecture #22: From λ-nfa s to NFA s to DFA s David Mix Barrington 22 April 2013 λ-nfa s to NFA s to DFA s Reviewing the Three Models and Kleene s Theorem The Subset
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 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 informationFinite State Machines Transducers Markov Models Hidden Markov Models Büchi Automata
Finite State Machines Transducers Markov Models Hidden Markov Models Büchi Automata Chapter 5 Deterministic Finite State Transducers A Moore machine M = (K,, O,, D, s, A), where: K is a finite set of states
More informationTHEORY OF SYSTEMS MODELING AND ANALYSIS. Henny Sipma Stanford University. Master class Washington University at St Louis November 16, 2006
THEORY OF SYSTEMS MODELING AND ANALYSIS Henny Sipma Stanford University Master class Washington University at St Louis November 16, 2006 1 1 COURSE OUTLINE 8:37-10:00 Introduction -- Computational model
More informationChapter Five: Nondeterministic Finite Automata
Chapter Five: Nondeterministic Finite Automata From DFA to NFA A DFA has exactly one transition from every state on every symbol in the alphabet. By relaxing this requirement we get a related but more
More informationLecture Notes On THEORY OF COMPUTATION MODULE -1 UNIT - 2
BIJU PATNAIK UNIVERSITY OF TECHNOLOGY, ODISHA Lecture Notes On THEORY OF COMPUTATION MODULE -1 UNIT - 2 Prepared by, Dr. Subhendu Kumar Rath, BPUT, Odisha. UNIT 2 Structure NON-DETERMINISTIC FINITE AUTOMATA
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 informationCONCATENATION AND KLEENE STAR ON DETERMINISTIC FINITE AUTOMATA
1 CONCATENATION AND KLEENE STAR ON DETERMINISTIC FINITE AUTOMATA GUO-QIANG ZHANG, XIANGNAN ZHOU, ROBERT FRASER, LICONG CUI Department of Electrical Engineering and Computer Science, Case Western Reserve
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 informationCS21 Decidability and Tractability
CS21 Decidability and Tractability Lecture 2 January 5, 2018 January 5, 2018 CS21 Lecture 2 1 Outline Finite Automata Nondeterministic Finite Automata Closure under regular operations NFA, FA equivalence
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 informationAutomata Theory. Lecture on Discussion Course of CS120. Runzhe SJTU ACM CLASS
Automata Theory Lecture on Discussion Course of CS2 This Lecture is about Mathematical Models of Computation. Why Should I Care? - Ways of thinking. - Theory can drive practice. - Don t be an Instrumentalist.
More informationExtended transition function of a DFA
Extended transition function of a DFA The next two pages describe the extended transition function of a DFA in a more detailed way than Handout 3.. p./43 Formal approach to accepted strings We define the
More informationOp#mal Control of Nonlinear Systems with Temporal Logic Specifica#ons
Op#mal Control of Nonlinear Systems with Temporal Logic Specifica#ons Eric M. Wolff 1 Ufuk Topcu 2 and Richard M. Murray 1 1 Caltech and 2 UPenn University of Michigan October 1, 2013 Autonomous Systems
More informationCS21 Decidability and Tractability
CS21 Decidability and Tractability Lecture 3 January 9, 2017 January 9, 2017 CS21 Lecture 3 1 Outline NFA, FA equivalence Regular Expressions FA and Regular Expressions January 9, 2017 CS21 Lecture 3 2
More information