Control and Synthesis, from a Distributed Perspective
Anca Muscholl
VTSA Summer School, Nancy, August 2018
1 / 104
Control and Synthesis, from a Distributed Perspective Anca Muscholl - - PowerPoint PPT Presentation
Control and Synthesis, from a Distributed Perspective Anca Muscholl VTSA Summer School, Nancy, August 2018 1 / 104 Outline 1 Introduction 2 Basics on automata and logic 3 Basics on synthesis and control: Churchs problem 4 Distributed
1 / 104
1 Introduction 2 Basics on automata and logic 3 Basics on synthesis and control: Church’s problem 4 Distributed synthesis: Pnueli/Rosner model 5 Control for distributed automata. New decidability results. 2 / 104
3 / 104
4 / 104
4 / 104
5 / 104
6 / 104
6 / 104
7 / 104
a
a
8 / 104
a
a0
a1
9 / 104
10 / 104
11 / 104
12 / 104
13 / 104
13 / 104
1 direct implication: describe accepting runs in MSO
Partition dom(w) into sets Xs, one for each state s. First position belongs to
s∈S0 Xs. Last one (resp. infinitely many
positions) belongs to
f∈F Xf.
Consistency of automaton transitions: for each k ∈ dom(w), s ∈ S, a ∈ Σ, k ∈ Xs ∧ Pa(k) = ⇒
− →s′
(k + 1) ∈ Xs′
2 reverse implication: regular languages are closed under union (disjunction),
14 / 104
a
15 / 104
16 / 104
17 / 104
a
a
a
18 / 104
∨
∧
1
19 / 104
∨
∧
1
19 / 104
20 / 104
21 / 104
22 / 104
23 / 104
23 / 104
23 / 104
24 / 104
24 / 104
24 / 104
24 / 104
24 / 104
25 / 104
25 / 104
25 / 104
26 / 104
26 / 104
27 / 104
28 / 104
29 / 104
30 / 104
31 / 104
31 / 104
a
a0
a1
32 / 104
33 / 104
34 / 104
0(F)
0 (F) ∪
0 (F), (v, w) ∈ E} ∪
0 (F)}
0(F) ⊆ Attr1 0(F) ⊆ · · · ⊆ Attr|V |
0(F) is the set of vertices from which P0 can reach F after at most i
35 / 104
0(F) = {b, c, f}
0(F) = {b, c, f, g, d}
0(F) = {b, c, f, g, d, e}
36 / 104
0 (F): set of states from which P0 can reach F in at least one move.
0 (F), as well as a positional strategy, in polynomial
0 (X(i) ∩ F)
0 (W0 ∩ F).
37 / 104
i, W ′ 1−i) = Parity(G \ A);
1−i = ∅ then
i ∪ A ;
1−i);
i , W ′′ 1−i) = Parity(G \ B);
i ;
1−i ;
38 / 104
0 = {c, d, e} and W ′ 1 = {a, b}.
0 = {c, d, e, f, g} and W ′′ 1 = ∅, so
0 and W1 = B.
39 / 104
0 = {c, d, e} and W ′ 1 = {a, b}.
0 = {c, d, e, f, g} and W ′′ 1 = ∅, so
0 and W1 = B.
39 / 104
40 / 104
Plant P Controller C
events control actions
41 / 104
a
a
42 / 104
43 / 104
w
w
43 / 104
44 / 104
45 / 104
45 / 104
a
q − → (q, a) if q
a
− → is defined, q − → (q, ⊥), (q, a) − → q′ if either q
a
− → q′, or q
b
− → q′ for some b ∈ Σenv, (q, ⊥) − → q′ if q
b
− → q′ for some b ∈ Σenv. Otherwise, (q, ⊥) − → q.
46 / 104
47 / 104
48 / 104
49 / 104
49 / 104
49 / 104
50 / 104
50 / 104
51 / 104
51 / 104
52 / 104
52 / 104
52 / 104
53 / 104
53 / 104
53 / 104
54 / 104
54 / 104
54 / 104
54 / 104
55 / 104
55 / 104
56 / 104
57 / 104
58 / 104
a
p∈dom(a) Sp × p∈dom(a) Sp
59 / 104
a
p∈dom(a) Sp × p∈dom(a) Sp
59 / 104
60 / 104
y = CAS (T,x,old,new) T x s
new s’ s v v y = CAS (T,x,old,new) T x s’’ v old 6=
60 / 104
61 / 104
a
p)p∈P if
a
p)p∈dom(a), and
q = sq for q /
61 / 104
a
p)p∈P if
a
p)p∈dom(a), and
q = sq for q /
61 / 104
62 / 104
63 / 104
64 / 104
65 / 104
65 / 104
65 / 104
66 / 104
67 / 104
68 / 104
69 / 104
70 / 104
71 / 104
72 / 104
73 / 104
73 / 104
74 / 104
74 / 104
75 / 104
75 / 104
75 / 104
76 / 104
ab
ba
77 / 104
s1, s′p
s′, s′p s1, s′
1p
s2, s′
2p 78 / 104
if dom(a) = {p}: easy, only local update s, s′p
a
− → s, ∆(s′, a)p if dom(a) = {p, p} and p is the parent of p in CG: apply diamond lemma to combine information stored by p, p (s1, s′
1p, s2, s′ 2p) a
− → (s′, s′p, s2, s′p) , where s′ = ∆(s, a), s = D(s2, s′
1, s′ 2, X(p)) and X(p) ⊆ P is the subtree of
CG rooted at p.
p∈P Sp: apply diamond lemma to combine information
79 / 104
80 / 104
81 / 104
82 / 104
83 / 104
83 / 104
84 / 104
84 / 104
85 / 104
85 / 104
86 / 104
p
c b c a d b b d a p q r
p
87 / 104
p
c b c a d b b d a p q r
p
87 / 104
c b c a d b d a p q r
88 / 104
c b c a d b d a a p q r
88 / 104
c b c a d b b d a p q r
88 / 104
c b c a d b b d a p q r
88 / 104
89 / 104
controllers do not exchange full information (loosely cooperating), or their strategies are based only on local histories, or the specification is not comm-closed.
89 / 104
90 / 104
91 / 104
r
92 / 104
q controllable q-actions, bq uncontrollable q-action
r
93 / 104
94 / 104
r
r )∗.
r )∗ → Σloc r
r )∗
94 / 104
r
r )∗.
r )∗ → Σloc r
r )∗
94 / 104
95 / 104
q
95 / 104
′, (sj, fj)1≤j≤k
q
c
q
95 / 104
′, (sj, fj)1≤j<i, si ′′, (sj, fj)i<j≤k
i
fi
i,
i) b
q, s′′ i )
95 / 104
′′, (sj, fj)i<j≤k
i
95 / 104
96 / 104
n
96 / 104
97 / 104
97 / 104
97 / 104
97 / 104
98 / 104
98 / 104
98 / 104
99 / 104
p
q
p
99 / 104
100 / 104
101 / 104
102 / 104
103 / 104
103 / 104
103 / 104
103 / 104
103 / 104
104 / 104
104 / 104