190 likes | 204 Views
Understand the concept of Generalized Buchi Automaton (GBA) and learn how to convert it into a Buchi Automaton using the Degeneralization Algorithm. Explore examples and step-by-step explanations.
E N D
A S0 S1 B A B 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
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 µ 2S 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 A S0 S1 B A B F1 = {S0} F2 = {S0,S1}
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 ... A S0 S1 B A B F1 = {S0} F2 = {S0,S1}
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
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 nextcopy
Example S0 c What is the language of A ? a b S2 S1 2 1 S3 1,2 1,2 correspond to F1 and F2, the accepting sets
Example S0 S0' c c a a b b S1 S2 S1' S2' S1 S2' S3 S3' S3 S3' Two copies, because we have two accepting sets.
Example S0 S0' c c a a b b S1 S2 S1' S2' S1 S2' S3 S3' S3 S3' Choose (arbitrarily) one copy as the initial one
Example S0 S0' c c a a b b S1 S2 S1' S2' S1 S2' S3 S3' S3 S3' Redirect outgoing edges from accepting states.
Example S0 S0' c c a a b b S1 S2 S1' S2' S1 S2' S3 S3' S3 S3' Only one copy is accepting
Example S0 c a b S1 S2 S1 S3 S3' S3 Remove unreachable states
Example S0 c What is the language of A’ ? a b S1 S2 S1 S3 S3' S3 And here is our beautiful Buchi automaton
Another example... b a c b c A generalized Buchi automaton
b b And now... degeneralization b a a c c b c c One copy for each accepting set inF
b b And now... de-generalization b a a c c b c c Redirect outgoing edges from accepting states, to next copy
b b And now... de-generalization b a a c c b c c and so forth...
b b b a a c c b c c Remove accepting states from all copies but one Remove initial states from all copies but one Remove unreachable states
b b b a a c c c (a small optimization: collapsed states that cannot be distinguished)