Kleene algebra to compute with invariant sets of dynamical ... · B. A. Davey and H. A. Priestley....
Transcript of Kleene algebra to compute with invariant sets of dynamical ... · B. A. Davey and H. A. Priestley....
MotivationKleene algebraBoolean lattice
Applications
Kleene algebra to compute with invariant sets ofdynamical systems
Lab-STICC, ENSTA-Bretagne
MRIS, ENSTA-Paris, March 15, 2018
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Motivation [5][4]
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Consider the system
S : x(t) = f(x(t))
Denote by ϕ(t,x) the �ow map.
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Positive invariant set
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
A set A is positive invariant [1] if
x ∈ A, t ≥ 0 =⇒ ϕ(t,x) ∈ A.
Or equivalentlyϕ([0,∞],A)⊂ A.
The set of all positive invariant sets is a complete lattice.
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Kleene algebra
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Lattice
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
A lattice (L ,≤) is a partially ordered set, closed under least upperand greatest lower bounds [2].A machine lattice (LM ,≤) of L is complete sublattice of (L ,≤)which is �nite. Moreover both L and LM have the same top andbottom.
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Machine lattice
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Kleene algebra
We consider a set F of automorphism f :P (X)→P (X) such that
f (X) = Xf (A∩B) = f (A)∩ f (B)
Note that f is inclusion monotonic.
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Kleene(+, ·,∗) Kleene(∩,◦,∗)Addition a+b f ∩gProduct a ·b f ◦g
Associativity a+(b+ c) = (a+b)+ c f ∩ (g ∩h) = (f ∩g)∩ha(bc) = (ab)c f ◦ (g ◦h) = (f ◦g)◦h
Commutativity a+b = b+a f ∩g = g ∩ fDistributivity a(b+ c) = (ab)+(ac) f ◦ (g ∩h) = (f ◦g)∩ (f ◦h)
(b+ c)a= (ba)+(ca) (g ∩h)◦ f = (g ◦ f )∩ (h ◦ f )zero a+0= a f ∩>= f
One a1= 1a= a f ◦ Id = Id ◦ f = f
Annihilation a0= 0a= 0 f ◦>=>Idempotence a+a= a f ∩ f = f
Partial order a≤ b⇔ a+b = b f ⊃ g ⇔ f ∩g = g
Kleene star a∗ = 1+a+aa+aaa+ ... f ∗ = Id ∩ f ∩ f 2∩ f 3∩ . . .
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Reducers
To an automorphism f ∈F , we can associate the reducerR = Id ∩ f .
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
We have
A⊂ B⇒R (A)⊂R (B) monotonicityR (A)⊂ A degrowth
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Theorem. We have(Id ∩ f )∞ = f ∗
Proof. Since f is such that f (A∩B)) = f (A)∩ f (B), we have
(Id ∩ f )2 (A) = (Id ∩ f )(A∩ f (A)) == A∩ f (A)∩ f (A∩ f (A))= A∩ f (A)∩ f 2 (A)
and
(Id ∩ f )∞ (A) = A∩ f (A)∩ f 2 (A)∩ f 3 (A)∩·· ·= f ∗ (A) .
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
We de�ne
Fix(f ∗) = {A | f ∗(A) = A}= Fix(Id ∩ f )
From the Knaster�Tarski theorem, it is a complete sublattice of L .
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
(a) : Red nodes : A, (b):A∩ f (A), (c):A∩ f (A)∩ f 2 (A),(d):f ∗ (A) .
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Goal. Compute with closure sets f ∗i,i ∈ {1,2, . . .}, i.e., compute
with expressions such as
f ∗ (A)∩ (g∗ (A)∪h∗ (A))∗
We want to factorize the �xed point operators as much as possible.
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Factorization properties [3]
f ∗∩ f ∗ = f ∗
(f ∗)∗ = f ∗
(f ∗∩g∗)∗ = (f ∩g)∗
f ∗ ◦ (f ◦g∗)∗ = (f ∩g)∗
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Dealing state equations
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
De�ne −→f (A) = ϕ([−1,0],A)←−f (A) = ϕ([0,1],A)
We have
−→f (Rn) = Rn
−→f (A∩B) =
−→f (A)∩
−→f (B)
←−f (Rn) = Rn
←−f (A∩B) =
←−f (A)∩
←−f (B)
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
The sets−→f ∗ (A) ,
←−f ∗ (A) correspond to the largest positive and
negative invariant sets included in A.
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
The largest invariant set included in A is(−→f ∩←−f)∗
(A)
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Illustration
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Kleene intervals
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Given an automorphism f , we want to compute f ∗(a) where a is in(L ,≤) (for instance (Rn,⊂)).Machine sublattice LM of L (maze for instance).
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Interval automorphism
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
An interval automorphism [f −, f +] containing f is a pair of twomachine automorphism f −, f + with such that
a ∈LM ⇒ f − (a)≤ f (a)≤ f + (a) .
Lemma. We have
Fix((f −)
∗)⊂LM ∩Fix(f ∗)⊂ Fix((f +)
∗)
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Fixed points Fix((f −)
∗)in magenta, Fix
((f +)
∗)in blue
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Theorem. If a ∈ [a−,a+], where a−,a+ both belong to LM , then
(i) f ∗ (a) ∈[(f −)
∗(a−) ,(f +)
∗(a+)
](ii) f ∗ ◦ (f −)∗ (a−) = (f −)
∗(a−)
(iii) f ∗ (a)≤ (Id ∩ f +)i (a+) , ∀i ≥ 0
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Algorithm
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Computation of f ∗ (a) ,a ∈ [a]
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Boolean lattice
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
A Boolean lattice L is a complemented distributive lattice.Every element a has a unique complement a, satisfying a∨a =>and a∧a =⊥.
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
We havea ≤ b⇔ b ≤ a
a∨b = b∧a (De Morgan's laws)
a∧b = b∨a
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Interval arithmetic
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
[a−,a+] =[a+,a−
]f ([a−,a+]) = [f (a−) , f (a+)]
[a−,a+]∧ [b−,b+] = [a−∧b−,a+∧b+][a−,a+]∨ [b−,b+] = [a−∨b−,a+∨b+]
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Monotonic case
Compute x = f ∗1 (a)∨ (f ∗2 (b)∧ f ∗3 (c)) . We have
x ∈ [ f ∗1 (a−)∨ (f ∗2 (b−)∧ f ∗3 (c−))(Id ∩ f i1
)(a+)∨
((Id ∩ f i2
)(b+)∧
(Id ∩ f i3
)(c+)
)].
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Non monotonic case
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
We want to compute x = f ∗1 (a)∧ f ∗2(b). Applying interval
arithmetic rules, we get
x ∈[f ∗1(a−)∧ f ∗2
(b+), f ∗1
(a+)∧ f ∗2
(b−)]
,
i.e., we need to go up to the �xed point for both bounds.
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Forward reach set
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Forward reach set of A de�ned by
Forw(f,A) = {x | ∃t ≥ 0,∃x0 ∈ A,ϕ(t,x0) = x} .
We get
Forw(f,A) =←−f ∗(A).
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Monotonic path planning
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
The set of paths that start in the set A and reach B is given by
Path(A,B) = Forw(A)∩Back(B) =←−f ∗(A)∩−→f ∗(B).
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
A to B problem
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Consider two sets A,B such that B⊂ A. We want to compute theset
X=CaptA→B= {x | ∃t ≥ 0,ϕ(t,x) ∈ B and ∀t1 ∈ [0, t],ϕ(t1,x) ∈ A} .
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Non monotonic path planning
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Find the set X of all paths that start in A, avoid B and reach C.
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
Franco Blanchini and Stefano Miani.Set-Theoretic Methods in Control.Springer Science & Business Media, October 2007.
B. A. Davey and H. A. Priestley.Introduction to Lattices and Order.Cambridge University Press, (ISBN 0521784514), 2002.
Dexter Kozen.A completeness theorem for kleene algebras and the algebra ofregular events.In Giles Kahn, editor, Proceedings of the Sixth Annual IEEE
Symp. on Logic in Computer Science, LICS 1991, pages214�225. IEEE Computer Society Press, July 1991.
T. Le Mézo, L. Jaulin, and B. Zerr.Inner approximation of a capture basin of a dynamical system.
Kleene algebra to compute with invariant sets of dynamical systems
MotivationKleene algebraBoolean lattice
Applications
In Abstracts of the 9th Summer Workshop on Interval
Methods. Lyon, France, June 19-22, 2016.
T. Le Mézo, L. Jaulin, and B. Zerr.An interval approach to compute invariant sets.IEEE Transaction on Automatic Control, 62:4236�4243, 2017.
Kleene algebra to compute with invariant sets of dynamical systems