• Keine Ergebnisse gefunden

Omega-Automaten: Automaten über unendlichen Eingabeworten, Büchi-Automaten

N/A
N/A
Protected

Academic year: 2022

Aktie "Omega-Automaten: Automaten über unendlichen Eingabeworten, Büchi-Automaten"

Copied!
12
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(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 system Corresponding automaton

{p,q}

{p}

{q}

{p,q}

{q}

i

1

2 3

p,q

q p

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 : a0, a1, … (Σω) – A run is a sequence of states r: s0,s1, … (Sω)

Initiation: s0 ∈ S0

Consecution : si+1 (si, ai)

– Accepting run (r = s0,s1, … )

There exists an infinite number of integers i ∈ N such that si ∈ F

Overview

Büchi Automaton

(6)

Overview

Büchi Automata

• P must eventually occur,

and if it occurs P holds forever

Σ = {P, true}

S = {q0, q1}

s0 = {q0}

 = {(q0,true, q0), (q0, P, q1), (q1,P, q1)

F = {q1}

run : q0, q1, q1, q1, …

(7)

Overview

Büchi Automata

• P must eventually occur,

and if it occurs P holds forever

Σ = {P, true}

S = {q0, q1}

s0 = {q0}

 = {(q0,true, q0), (q0, P, q1), (q1,P, q1)

F = {q1}

Relation to

Linear Temporal Logic

(8)

LTL Properties  Büchi automata

G p p p

true

F 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

(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



Referenzen

ÄHNLICHE DOKUMENTE

CPre

Put your solutions in the letterbox labeled Automaten und formale Sprachen adjacent to room lf , or hand them in through the online moodle -platform. If you hand in online,

Bitte werfen Sie Ihre Abgabe in den mit Automaten und formale Sprachen beschrifteten Briefkasten neben Raum lf , oder geben Sie sie online ab ¨ uber die moodle-Plattform.. Wenn

Die Vorstellung einer derartig herausragenden Bedeutung des sich öffnenden Erdinne- ren wurde nachhaltig durch die Veröffentlichungen Georg Pawers alias Georgius Agricola

Man zeichnet alle Kanten ein, die benötigt werden, damit sich die von dem Automaten akzeptierte Sprache nicht ändert, wenn man die -Kante wegläÿt. Hierzu kann man sich überlegen,

Damit lassen sich neue Impf- stoffe auch gegen Bakterien herstellen, die nicht gezüchtet oder deren Zucker nicht isoliert werden können.. Sein Plan: Man stelle ein Glykan von

Zelluläret Automat repräsentiert beispielsweise Stadt Zwei Bevölkerungsgruppen (Akteure) bewohnen die Zellen.

Zellulärer Automat repräsentiert beispielsweise Stadt Zwei Bevölkerungsgruppen (Akteure) bewohnen die Zellen?.