Presentation is loading. Please wait.

Presentation is loading. Please wait.

Ekaterina Mineev Edited by: Guy Lando

Similar presentations


Presentation on theme: "Ekaterina Mineev Edited by: Guy Lando"— Presentation transcript:

1 Ekaterina Mineev Edited by: Guy Lando
-Automata Ekaterina Mineev Edited by: Guy Lando

2 Today: 1 Introduction - notation - -Automata overview

3 Today: 1 Introduction - notation - -Automata overview
2 Nondeterministic models - Büchi acceptance - Muller acceptance - Rabin acceptance - Streett acceptance - parity condition

4 Today(cont.): 2.1 Equivalency of nondeterministic models

5 Today(cont.): 2.1 Equivalency of nondeterministic models
- Büchi condition - equivalency of deterministic* models

6 Today(cont.): 2.1 Equivalency of nondeterministic models
- Büchi condition - equivalency of deterministic* models 4 Some lower bound for transformations

7 Today(cont.): 2.1 Equivalency of nondeterministic models
- Büchi condition - equivalency of deterministic* models 4 Some lower bound for transformations 5 Weak acceptance conditions - Staiger-Wagner acceptance

8 Today(cont.): 2.1 Equivalency of nondeterministic models
- Büchi condition - equivalency of deterministic* models 4 Some lower bound for transformations 5 Weak acceptance conditions - Staiger-Wagner acceptance 6 Conclusion

9 Notation

10 Notation  := {0, 1, 2, 3, …}

11 Notation  := {0, 1, 2, 3, …}  - finite alphabet

12 Notation  := {0, 1, 2, 3, …}  - finite alphabet
* - set of finite words over 

13 Notation  := {0, 1, 2, 3, …}  - finite alphabet
* - set of finite words over   - set of infinite words (-words) over 

14 Notation  := {0, 1, 2, 3, …}  - finite alphabet
* - set of finite words over   - set of infinite words (-words) over  u, v, w – finite words

15 Notation  := {0, 1, 2, 3, …}  - finite alphabet
* - set of finite words over   - set of infinite words (-words) over  u, v, w – finite words , ,  - infinite words

16 Notation  := {0, 1, 2, 3, …}  - finite alphabet
* - set of finite words over   - set of infinite words (-words) over  a, b, c – symbols in the alphabet u, v, w – finite words , ,  - infinite words  = (0)(1)(2)… with (i)

17 Notation  := {0, 1, 2, 3, …}  - finite alphabet
* - set of finite words over   - set of infinite words (-words) over  a, b, c – symbols in the alphabet u, v, w – finite words , ,  - infinite words  = (0)(1)(2)… with (i) ,  - runs of automata

18 Notation  := {0, 1, 2, 3, …}  - finite alphabet
* - set of finite words over   - set of infinite words (-words) over  a, b, c – symbols in the alphabet u, v, w – finite words , ,  - infinite words  = (0)(1)(2)… with (i) ,  - runs of automata -language – set of -words

19 Notation(cont.)

20 Notation(cont.) ||a – number of occurrences of a in 

21 Notation(cont.) ||a – number of occurrences of a in 
Occ() := {ai (i)=a}

22 Notation(cont.) ||a – number of occurrences of a in 
Occ() := {ai (i)=a} Inf () := {ai j>i (j)=a}

23 Notation(cont.) ||a – number of occurrences of a in 
Occ() := {ai (i)=a} Inf () := {ai j>i (j)=a} 2M – powerset of a set M

24 Notation(cont.) ||a – number of occurrences of a in 
Occ() := {ai (i)=a} Inf () := {ai j>i (j)=a} 2M – powerset of a set M REG – class of regular languages

25 Notation(cont.) ||a – number of occurrences of a in 
Occ() := {ai (i)=a} Inf () := {ai j>i (j)=a} 2M – powerset of a set M REG – class of regular languages L(A) := {*A accepts } - -language recognized by A

26 -Automata -Automaton is (Q, , , qI, Acc)

27 -Automata -Automaton is (Q, , , qI, Acc) Q – finite set of states

28 -Automata -Automaton is (Q, , , qI, Acc) Q – finite set of states
 - finite alphabet

29 -Automata -Automaton is (Q, , , qI, Acc) Q – finite set of states
 - finite alphabet  : Q  2Q/Q – state transition function

30 -Automata -Automaton is (Q, , , qI, Acc) Q – finite set of states
 - finite alphabet  : Q  2Q/Q – state transition function qIQ – initial state

31 -Automata -Automaton is (Q, , , qI, Acc) Q – finite set of states
 - finite alphabet  : Q  2Q/Q – state transition function qIQ – initial state Acc – acceptance component

32 -Automata can be given in different way!!!
-Automaton is (Q, , , qI, Acc) Q – finite set of states  - finite alphabet  : Q  2Q/Q – state transition function qIQ – initial state Acc – acceptance component can be given in different way!!!

33 -Automata – (notes 1-3) can be given in different way!!!
-Automaton is (Q, , , qI, Acc) Q – finite set of states  - finite alphabet  : Q  2Q/Q – state transition function qIQ – initial state Acc – acceptance component can be given in different way!!! |A| = |Q| - size of automaton Acc size sometimes used too in complexity estimations

34 Büchi acceptance

35 Büchi acceptance -Automaton (Q, , , qI, FQ) is Büchi if
Acc is Büchi acceptance:

36 Büchi acceptance – (notes 4)
-Automaton (Q, , , qI, FQ) is Büchi if Acc is Büchi acceptance: A word * is accepted by A iff there exists a run  of A on  satisfying the condition: Inf()F  

37 Example 1 L := {{a, b}|  ends with a or with (ab)}

38 Büchi acceptance(cont.) – (notes 5)
is accepted by A iff some run of A on  visit some final state qF infinitely often, i.e. W(q0, q)W(q, q)

39 Büchi acceptance(cont.) – (notes 5-8**)
is accepted by A iff some run of A on  visit some final state qF infinitely often, i.e. W(q0, q)W(q, q) The Büchi recognizable -languages are the -languages of the form: L=ki=1 UiVi with k and Ui , Vi  REG for i=1, 2, 3, …

40 Büchi acceptance(cont.)
The family of -languages is also called the -Kleene closure of the class of regular languages denoted -KC(REG)

41 Muller acceptance

42 Muller acceptance -Automaton (Q, , , qI, F 2Q) is Muller if
Acc is Muller acceptance:

43 Muller acceptance – (notes 9)
-Automaton (Q, , , qI, F 2Q) is Muller if Acc is Muller acceptance: A word * is accepted by A iff there exists a run  of A on  satisfying the condition: Inf()F

44 Example 2 L := {{a, b}|  ends with a or with (ab)}
F = { {qa}, {qa,qb} }

45 Büchi and Muller automata
Nondeterministic Büchi automata and nondeterministic Muller automata are equivalent in expressive power

46 Büchi and Muller automata
Nondeterministic Büchi automata and nondeterministic Muller automata are equivalent in expressive power One direction is simple: F := { KQ | KF  }

47 Büchi and Muller automata – (notes 10-12**)
Nondeterministic Büchi automata and nondeterministic Muller automata are equivalent in expressive power One direction is simple: F := { KQ | KF  } Second is complex and multiples states number exponentially

48 Rabin acceptance

49 Rabin acceptance -Automaton (Q, , , qI, ),
 = {(E1, F1),…,(Ek, Fk)} with Ei, Fi  Q is Rabin if Acc is Rabin acceptance:

50 Rabin acceptance – (notes 13)
-Automaton (Q, , , qI, ),  = {(E1, F1),…,(Ek, Fk)} with Ei, Fi  Q is Rabin if Acc is Rabin acceptance: A word * is accepted by A iff there exists a run  of A on  satisfying the condition: (E,F) . (Inf()E = )  (Inf()F  )

51 Example 3 L – words that consist of infinitely many a’s but only finitely many b’s  = { ({qb}, {qa}) }

52 Example 4 L – words that contain infinitely many b’s only if they also contain infinitely many a’s  = { (, {qa}) }

53 Streett acceptance

54 Streett acceptance -Automaton (Q, , , qI, ),
 = {(E1, F1),…,(Ek, Fk)} with Ei, Fi  Q is Streett if Acc is Streett acceptance:

55 Streett acceptance – (notes 14-16)
-Automaton (Q, , , qI, ),  = {(E1, F1),…,(Ek, Fk)} with Ei, Fi  Q is Streett if Acc is Streett acceptance: A word * is accepted by A iff there exists a run  of A on  satisfying the condition: (E,F) . (Inf()E  )  (Inf()F = )

56 Example 5 L – words that contain infinitely many b’s only if they also contain infinitely many a’s  = { ({qa}, {qb}) }

57 Transformation Rabin or Streett automaton to Muller automaton
Let A = (Q, , , qI, ) be a Rabin/Streett automaton.

58 Transformation Rabin or Streett automaton to Muller automaton – (notes 17)
Let A = (Q, , , qI, ) be a Rabin/Streett automaton. Define A’ = (Q, , , qI, F) with F = {G 2Q| (E,F) . GE =   GF  } F = {G 2Q| (E,F) . GE    GF = }

59 Transformation Rabin or Streett automaton to Muller automaton
Let A = (Q, , , qI, ) be a Rabin/Streett automaton. Define A’ = (Q, , , qI, F) with F = {G 2Q| (E,F) . GE =   GF  } F = {G 2Q| (E,F) . GE    GF = } Then L(A) = L(A’)

60 Transformation Büchi automaton to Rabin or Streett automaton
Let A = (Q, , , qI, FQ) is Büchi automaton.

61 Transformation Büchi automaton to Rabin or Streett automaton
Let A = (Q, , , qI, FQ) is Büchi automaton. Define A’ = (Q, , , qI, ) with = { (, F) } = { (F, Q) }

62 Transformation Büchi automaton to Rabin or Streett automaton – (notes 18-19**)
Let A = (Q, , , qI, FQ) is Büchi automaton. Define A’ = (Q, , , qI, ) with = { (, F) } = { (F, Q) } Then A’ is Rabin/Streett automaton that L(A) = L(A’)

63 Parity condition Parity condition amounts to the Rabin condition for the special case: E1  F1  E2  … Em  Fm

64 Parity condition Parity condition amounts to the Rabin condition for the special case: E1  F1  E2  … Em  Fm State of E1 receive color(index) 1, State Fi \ Ei have color 2i, State Ei \ Fi-1 have color 2i-1

65 Parity condition -Automaton (Q, , , qI, c),
c : Q  { 1, …, k}, k   is parity if Acc is parity acceptance:

66 Parity condition – (notes 20-23**)
-Automaton (Q, , , qI, c), c : Q  { 1, …, k}, k   is parity if Acc is parity acceptance: A word * is accepted by A iff there exists a run  of A on  satisfying the condition: Min{c(q) | q  Inf()} is even

67 interim conclusion Nondeterministic Büchi automata, Muller automata, Rabin automata, Streett automata, and parity automata are all equivalent in expressive power, i.e. they recognize the same -language

68 interim conclusion – (notes 24)
Nondeterministic Büchi automata, Muller automata, Rabin automata, Streett automata, and parity automata are all equivalent in expressive power, i.e. they recognize the same -language The -language recognized by these -automata from class -KC(REG), i.e. the -Kleene closure of the class of regular languages

69 Deterministic models

70 Deterministic models Deterministic Muller automata, Rabin automata, Streett automata, and parity automata are all equivalent in expressive power

71 Deterministic models Deterministic Muller automata, Rabin automata, Streett automata, and parity automata are all equivalent in expressive power They all recognize the regular  -languages

72 Deterministic models – (notes 25)
Deterministic Muller automata, Rabin automata, Streett automata, and parity automata are all equivalent in expressive power They all recognize the regular  -languages Büchi deterministic automata is too weak …

73 Büchi deterministic automata is too weak …
L – words that consist of infinitely many a’s but only finitely many b’s

74 Büchi deterministic automata is too weak … – (notes 26**)
L – words that consist of infinitely many a’s but only finitely many b’s F = { {qa} } – Muller automata

75 Transformation Muller automation to Rabin automation

76 Transformation Muller automation to Rabin automation
Let A = (Q, , , qI, F) be a deterministic Muller automation. Assume w.l.o.g. that Q={1, …, k} and qI=1. Let Q. Define A’ as following:

77 Transformation Muller automation to Rabin automation
Let A = (Q, , , qI, F) be a deterministic Muller automation. Assume w.l.o.g. that Q={1, …, k} and qI=1. Let Q. Define A’ as following: - Q’ := { w(Q{})* | qQ{} . |w|q = 1}

78 Transformation Muller automation to Rabin automation
Let A = (Q, , , qI, F) be a deterministic Muller automation. Assume w.l.o.g. that Q={1, …, k} and qI=1. Let Q. Define A’ as following: - Q’ := { w(Q{})* | qQ{} . |w|q = 1} - qI‘ := k…1

79 Transformation Muller automation to Rabin automation – (notes 27**)
Let A = (Q, , , qI, F) be a deterministic Muller automation. Assume w.l.o.g. that Q={1, …, k} and qI=1. Let Q. Define A’ as following: - Q’ := { w(Q{})* | qQ{} . |w|q = 1} - qI‘ := k…1 - for i, i’Q, a, and (i, a)=i’ for any word m1…mr mr+1…mk  Q with mk=i , i’=ms : ’(m1…mr mr+1…mk,a)= (m1…ms-1 ms+1…mki’)

80 Transformation Muller automation to Rabin automation
-  = {(E1, F1), …, (Ek, Fk)} define as following:

81 Transformation Muller automation to Rabin automation
-  = {(E1, F1), …, (Ek, Fk)} define as following: - Ej := {uv | |u| < j}

82 Transformation Muller automation to Rabin automation
-  = {(E1, F1), …, (Ek, Fk)} define as following: - Ej := {uv | |u| < j} - Fj := {uv | |u| < j}  {uv | |u|=j  {mQ | mv}  F} where mv means “m occurs in v”

83 Transformation Muller automation to Rabin automation – (notes 27-28**)
-  = {(E1, F1), …, (Ek, Fk)} define as following: - Ej := {uv | |u| < j} - Fj := {uv | |u| < j}  {uv | |u|=j  {mQ | mv}  F} where mv means “m occurs in v” Then L(A) = L(A’)…

84 Transformation Muller automation to parity automation
From definition we have: E1  F1  E2 …  Ek  Fk Delete all pair where Ej = Fj and left strictly increasing chain of sets Thus have defined a parity automaton recognize same L(A)

85 Transformation Muller automation to Rabin automation
By transformation a deterministic Muller automation with n states is transformed into a deterministic Rabin automata with n·n! states and n accepting pairs It works analogously for nondeterministic automata

86 Complement of L(A) by Muller automata
Let A = (Q, , , qI, F) be a deterministic Muller automata.

87 Complement of L(A) by Muller automata
Let A = (Q, , , qI, F) be a deterministic Muller automata. Define A’ = (Q, , , qI, 2Q \ F) Muller automata

88 Complement of L(A) by Muller automata
Let A = (Q, , , qI, F) be a deterministic Muller automata. Define A’ = (Q, , , qI, 2Q \ F) Muller automata Then L(A’) is complement of L(A)

89 Complement of L(A) by Rabin/Streett automata
Let A = (Q, , , qI, )

90 Complement of L(A) by Rabin/Streett automata
Let A = (Q, , , qI, ) The Rabin condition (*) is: (E,F) . (Inf()E = )  (Inf()F  )

91 Complement of L(A) by Rabin/Streett automata
Let A = (Q, , , qI, ) The Rabin condition (*) is: (E,F) . (Inf()E = )  (Inf()F  ) The Streett condition (**) is: (E,F) . (Inf()E  )  (Inf()F = )

92 Complement of L(A) by Rabin/Streett automata
Let A = (Q, , , qI, ) The Rabin condition (*) is: (E,F) . (Inf()E = )  (Inf()F  ) The Streett condition (**) is: (E,F) . (Inf()E  )  (Inf()F = ) Then L(A, (*)) is complement of L(A, (**))

93 Complement L(A) by parity automaton
Let A = (Q, , , qI, c) be a deterministic parity automaton

94 Complement L(A) by parity automaton
Let A = (Q, , , qI, c) be a deterministic parity automaton Define A’ = (Q, , , qI, c’) with c’(q) = c(q)+1

95 Complement L(A) by parity automaton
Let A = (Q, , , qI, c) be a deterministic parity automaton Define A’ = (Q, , , qI, c’) with c’(q) = c(q)+1 Then L(A’) is complement of L(A)

96 interim conclusion Deterministic Muller automata, Rabin automata, Streett automata, and parity automata recognize same -languages, and the class of these -languages is closed under complementation

97 Some lower bound for transformations

98 Some lower bound for transformations
Lemma 1: Let A = (Q, , , qI, ) be Robin automaton, and assume 1, 2 are two non-accepting runs. Then any run  with Inf() = Inf(1)  Inf(2) is also non-accepting

99 Some lower bound for transformations – (notes 29**)
Lemma 1: Let A = (Q, , , qI, ) be Robin automaton, and assume 1, 2 are two non-accepting runs. Then any run  with Inf() = Inf(1)  Inf(2) is also non-accepting Lemma 2: Let A = (Q, , , qI, ) be a Streett automata, and assume 1, 2 are two accepting runs. Then any run  with Inf() = Inf(1)  Inf(2) is also accepting

100 Lower bound for non-deterministic Buchi to deterministic Rabin– (notes 30**)
Let A(An)n>1 defined over ={1,…,n,#} A set of initial states is given for simplicity (can turn it into one state by adding arrows from it to all the initial states)

101 Lower bound for non-deterministic Buchi to deterministic Rabin– (notes 30**)
Let A(An)n>1 defined over ={1,…,n,#} Ln=L(A) – exist k and j1,…,jk{1,…,n} such that each pair jtjt+1 for t<k and jkj1 appears infinitely often in 

102 Lower bound for non-deterministic Buchi to deterministic Rabin– (notes 30**)
We encode the symbols 1,…,n by words over {0, 1}* such that i is encoded by: 0i1, if i<n 0i0*1, if i=n

103 Lower bound for non-deterministic Buchi to deterministic Rabin– (notes 30**)
We encode the symbols 1,…,n by words over {0, 1}* such that i is encoded by: 0i1, if i<n 0i0*1, if i=n Lemma 3: There exist a family of languages (Ln)n>1 over the  = {0, 1, #} recognizable by nondeterministic Büchi automata of size O(n) such that any nondeterministic Streett automaton accepting the complement language of Ln has at least n! states

104 Lower bound for non-deterministic Buchi to deterministic Rabin– (notes 30**)
From lemma 3 we conclude: Lemma 4: There exist a family of languages (Ln)n>1 over the  = {0, 1, #} recognizable by nondeterministic Büchi automata of size O(n) such that any equivalent deterministic Rabin automata must be of size n! or larger

105 Lower bound for deterministic Streett to deterministic Rabin– (notes 31**)
Lemma 5: There exist a family of languages (Ln)n>1 over the  = {0, 1} recognizable by deterministic Streett automata with O(n) states and O(n) pairs of designated state sets such that any equivalent deterministic Rabin automata must be of size n! or larger

106 Weak acceptance conditions

107 Weak acceptance conditions
-Automaton (Q, , , qI, F 2Q) is weak if Acc is Staiger-Wagner acceptance:

108 Weak acceptance conditions
-Automaton (Q, , , qI, F 2Q) is weak if Acc is Staiger-Wagner acceptance: A word * is accepted by A iff there exists a run  of A on  satisfying the condition: Occ()F

109 Weak acceptance conditions
There are two additional special cases conditions:

110 Weak acceptance conditions
There are two special cases used: Occ()  F   acceptance F = {X  2Q | X  F  } (can be simulated by Staiger and Wagner automaton with this accepting component)

111 Weak acceptance conditions
There are two special cases used as conditions: Occ()  F   acceptance F = {X  2Q | X  F  } (can be simulated by Staiger and Wagner automaton with this accepting component) Occ()  F - 1’-acceptance F = {X  2Q | X  F} (for Staiger ad Wagner)

112 Weak acceptance conditions
Acceptance by occurrence set can be simulated by Büchi acceptance

113 Weak acceptance conditions
Acceptance by occurrence set can be simulated by Büchi acceptance The transformation need exponential blow-up. It can be avoided if only acceptance or 1’-acceptance are involved

114 Weak acceptance conditions – (notes 32-35**)
Acceptance by occurrence set can be simulated by Büchi acceptance The transformation need exponential blow-up. It can be avoided if only acceptance or 1’-acceptance are involved The reverse transformation are not possible

115 Conclusion We have shown the expressive equivalence of:

116 Conclusion We have shown the expressive equivalence of:
Nondeterministic Büchi, Muller, Rabin, Streett, and parity automata

117 Conclusion We have shown the expressive equivalence of:
Nondeterministic Büchi, Muller, Rabin, Streett, and parity automata Deterministic Muller, Rabin, Streett, and parity automata

118 Conclusion Theorem(with no proof):
Nondeterministic Büchi automata accept the same -languages as deterministic Muller automata

119 Conclusion Theorem(with no proof):
Nondeterministic Büchi automata accept the same -languages as deterministic Muller automata Conclusion: all these automata are equivalent in expressive power


Download ppt "Ekaterina Mineev Edited by: Guy Lando"

Similar presentations


Ads by Google