Generalized Buchi automata.

advertisement

Generalized Buchi automaton

1

Reminder: Buchi automata

A=<  , S,  , I, F>

 : Alphabet (finite).

S : States (finite).

 : S x  x S ) S is the transition relation.

I µ S are the Initial states.

F µ S is a set of accepting states.

An infinite word is accepted in A if it passes an infinite no. of times in at least one of the F states

A

S0

A

B

S1

B

2

Generalized Buchi automata

A=<  , S,  , I, F>

 : Alphabet (finite).

S : States (finite).

 : S x  x S ) S is the transition relation.

I µ S are the Initial states.

F µ 2 S is a set of sets of accepting states.

An infinite word is accepted in A if it passes an infinite no. of times in at least one state in each element of F

F

1

F

2

= {S0}

= {S0,S1}

A

S0

A

B

S1

B

3

Generalized Buchi automata

An infinite word is accepted in A if it passes an infinite no. of times in at least one state in each element of F

B

!

is ....

A

!

is ...

(AB)

!

is ...

F

1

F

2

= {S0}

= {S0,S1}

A

S0

A

B

S1

B

4

De-generalization of GBA

Turn a generalized Büchi automaton into a

Büchi automaton

The idea:

Each cycle must go through every copy

Each cycle must contain accepting states from each accepting set

5

De-generalization of GBA

Algorithm:

Duplicate the GBA to as many copies as the number of accepting sets

Redirect outgoing edges from accepting states to the next copy

6

Example

What is the language of A ?

S0 c a b

1

S1

S3

1,2

S2

2

1,2 correspond to F

1 and F

2

, the accepting sets

7

Example

 a

S0 b c

 

S2

S1'

 a

S0' b c

Two copies, because we have two accepting sets.

8

Example

 a

S0 b

 

S2 c

S1'

 a

S0' b c

Choose (arbitrarily) one copy as the initial one

9

Example a

S0 b

S2

 c

S1'

 a

S0' b c

Redirect outgoing edges from accepting states.

10

Example a

S0 b c

S2

S1'

 a

S0' b c

Only one copy is accepting

11

Example a

S0 b c

S2

Remove unreachable states

S3'

12

Example

What is the language of A’ ? S0

 a b

S2

S3' c

And here is our beautiful Buchi automaton

13

Another example...

a b b c c

A generalized Buchi automaton

14

And now... degeneralization a b b c c a b b c c

One copy for each accepting set in F

15

And now... de-generalization a b b c c a b b c c

Redirect outgoing edges from accepting states, to next copy

16

And now... de-generalization a b b c c a b b c c and so forth...

17

a b b c c a b b c c

Remove accepting states from all copies but one

Remove initial states from all copies but one

Remove unreachable states

18

a b b c c a b c

(a small optimization: collapsed states that cannot be distinguished)

19

Download