Presentation is loading. Please wait.

Presentation is loading. Please wait.

Automata and Formal Lanugages Büchi Automata and Model Checking Ralf Möller based on slides by Chang-Beom Choi Provable Software Lab, KAIST.

Similar presentations


Presentation on theme: "Automata and Formal Lanugages Büchi Automata and Model Checking Ralf Möller based on slides by Chang-Beom Choi Provable Software Lab, KAIST."— Presentation transcript:

1 Automata and Formal Lanugages Büchi Automata and Model Checking Ralf Möller based on slides by Chang-Beom Choi Provable Software Lab, KAIST

2 Transition System to Mealy-Style Automaton Translation 2 1 3 Each state is labeled with the propositions that hold in that state Example transition systemCorresponding automaton {p,q} {p} {q} {p,q} {q} i 1 23 p,q qp But: No accept states

3 Overview B ü chi Automata Büchi Automata –Automata which accept infinite words –named after Julius Richard Büchi, Swiss Logician Usually used for modeling systems with infinite sequences of states, each of which satisfies certain atomic propositions Büchi Automaton M accepts sequences of labels for program states: L(M) describes all potential sequences of state labels of the system (and therefore describes system behavior)

4 Overview B ü chi Automaton (deterministic version) Definition –M = (Σ, S, s 0, , F) Σ : alphabet (set of “labels for program states”) S : set of automaton states s 0 : initial state  : a transition function (S x Σ x S) F : a set of accepting states

5 –M = (Σ, S, s 0, , F) –The input of M is infinite w : a 0, a 1, … ( ∈ Σ ω ) –A run is a sequence of states r: s 0,s 1, … ( ∈ S ω ) Initiation: s 0 ∈ S 0 Consecution : s i+1 ∈  (s i, a i ) –Accepting run (r = s 0,s 1, … ) There exists an infinite number of integers i ∈ N such that s i ∈ F Overview B ü chi Automaton

6 Overview B ü chi Automata P must eventually occur, and if it occurs P holds forever Σ = {P, true} S = {q 0, q 1 } s 0 = {q 0 }  = {(q 0,true, q 0 ), (q 0, P, q 1 ), (q 1,P, q 1 ) F = {q 1 } run : q 0, q 1, q 1, q 1, …

7 Overview B ü chi Automata P must eventually occur, and if it occurs P holds forever Σ = {P, true} S = {q 0, q 1 } s 0 = {q 0 }  = {(q 0,true, q 0 ), (q 0, P, q 1 ), (q 1,P, q 1 ) F = {q 1 } Relation to Linear Temporal Logic

8 LTL Properties  Büchi automata G p p pp true F p p pp true G (F p) p The size of the property automaton can be exponential in the size of the LTL formula pp pp p

9 Overview Model checking –Specify requirement properties and build system model –Generate possible states from the model and then check whether given requirement properties are satisfied within the state space OK Error Trace Found or Target Program Requirement Properties Model Check 

10 Overview A process of Model Checking –Modeling Build a model of program or system –Specification Describe requirement properties –Verification Checking that a model of the program or system satisfies a given specification

11 Overview How can we model check of a program or system? –Modeling Build a Büchi automaton for a given program or system –Specification Describe requirement properties using Temporal Logic –Verification Automatically (semi-automatic)

12 Model Checker Overview Process of Model Checking Target Program Requirement Properties 


Download ppt "Automata and Formal Lanugages Büchi Automata and Model Checking Ralf Möller based on slides by Chang-Beom Choi Provable Software Lab, KAIST."

Similar presentations


Ads by Google