Automi Ibridi
Carla Piazza1
1Dipartimento di Matematica ed Informatica Universit `a di Udine
carla.piazza@dimi.uniud.it
Indice del Corso (Dis)Ordinato
Automi Ibridi: Sintassi e Semantica Sistemi a stati finiti(breve ripasso) Il problema dellaRaggiungibilit `a Risultati diIndecidibilit `a
Classi notevoli di Automi Ibridi:timed, rectangular,o-minimal, . . . Tecniche di Decisione: (Bi)Simulazione,Cylindric Algebraic Decomposition, Teoremi di Selezione, Semantiche approssimate Equazioni Differenziali
. . . e tanto altro:
Logiche temporali Composizione di Automi Il caso Stocastico
Stabilit `a, Osservabilit `a, Controllabilit `a Strumenti Software
Applicazioni
Eliminazione dei Quantificatori
Definition (Eliminazione dei Quantificatori)
Una teoria al primo-ordineT ammette l’eliminazione dei quantificatori se per ogni formulaψdiT esiste una formula QF (ψ)equivalente aψe priva di quantificatori
Example SuRla formula
∀x(yx2+zx + w > 0) E equivalente alla formula`
z2− 4yw < 0
Eliminazione dei Quantificatori
Definition (Eliminazione dei Quantificatori)
Una teoria al primo-ordineT ammette l’eliminazione dei quantificatori se per ogni formulaψdiT esiste una formula QF (ψ)equivalente aψe priva di quantificatori
Example SuRla formula
∀x(yx2+zx + w > 0) E equivalente alla formula`
z2− 4yw < 0
Eliminazione dei Quantificatori
Definition (Eliminazione dei Quantificatori)
Una teoria al primo-ordineT ammette l’eliminazione dei quantificatori se per ogni formulaψdiT esiste una formula QF (ψ)equivalente aψe priva di quantificatori
Example SuRla formula
∀x(yx2+zx + w > 0) E equivalente alla formula`
z2− 4yw < 0
Eliminazione dei Quantificatori e Decidibilit `a
Theorem
SeT ammette l’eliminazione dei quantificatori,QF (ψ) `e calcolabile e la validit `a/soddisfacibilit `a delle formule senza quantificatori `e decidibile, alloraT `edecidibile
Example (Aritmetica di Presburger)
SiaT = (+, 0, 1)la teoria al primo-ordine di(N, +, 0, 1)ovvero:
0 6= x + 1 x + 0 = x
x + 1 = y + 1 → x = y
(x + y ) + z = x + (y + z) ∧ x + y = y + x (P(0) ∧ P(x ) → P(x + 1)) → ∀y (P(y ))
T ammette l’eliminazione dei quantificatori ed `edecidibile
Eliminazione dei Quantificatori e Decidibilit `a
Theorem
SeT ammette l’eliminazione dei quantificatori,QF (ψ) `e calcolabile e la validit `a/soddisfacibilit `a delle formule senza quantificatori `e decidibile, alloraT `edecidibile
Example (Aritmetica di Presburger)
SiaT = (+, 0, 1)la teoria al primo-ordine di(N, +, 0, 1)ovvero:
0 6= x + 1 x + 0 = x
x + 1 = y + 1 → x = y
(x + y ) + z = x + (y + z) ∧ x + y = y + x (P(0) ∧ P(x ) → P(x + 1)) → ∀y (P(y ))
T ammette l’eliminazione dei quantificatori ed `edecidibile
O-minimalit `a
Definition (O-minimalit `a)
SiaM = (M, . . . , <)un modello su cui `e definito un ordine totale <,M `e o-minimale se ogni insiemeX ⊆ M definibile `e un unione finita dipunti e intervalli
Una teoriaT `e o-minimale se ha solo modelli o-minimali Example
SiaRsin= (R, +, sin(·), 0, 1, <) sin(x ) = 0
definisce un insieme infinito di punti, quindiRsinnon `e o-minimale
O-minimalit `a
Definition (O-minimalit `a)
SiaM = (M, . . . , <)un modello su cui `e definito un ordine totale <,M `e o-minimale se ogni insiemeX ⊆ M definibile `e un unione finita dipunti e intervalli
Una teoriaT `e o-minimale se ha solo modelli o-minimali Example
SiaRsin= (R, +, sin(·), 0, 1, <) sin(x ) = 0
definisce un insieme infinito di punti, quindiRsinnon `e o-minimale
O-minimalit `a
Example
SiaN = (N, +, 0, 1)l’aritmetica di Presburger
∃y (x = y + y )
E soddisfatta dall’insieme` P dei numeri pari, quindiN non `e o-minimale
Example
SiaRexp= (R, +, ∗, e·,0, 1, <) `e o-minimale
O-minimalit `a
Example
SiaN = (N, +, 0, 1)l’aritmetica di Presburger
∃y (x = y + y )
E soddisfatta dall’insieme` P dei numeri pari, quindiN non `e o-minimale
Example
SiaRexp= (R, +, ∗, e·,0, 1, <) `e o-minimale
O-minimalit `a e Decidibilit `a
Theorem
SeT `e o-minimale ed ammette l’eliminazione dei quantificatori, alloraT `edecidibile
Example
SiaR = (R, +, ∗, 0, 1, <) `e o-minimale ed ammette l’eliminazione dei quantificatori [Tarski]
E anche nota come “semi-algebraic` theory over the reals”
Gli algoritmi di decisione sono anche noti comeCylindrical Algebraic Decomposition (CAD)(si veda Mathematica, Matlab, . . . )
Un caso unidimensionale
Consideriamo un polinomio di gradonin una variabile p(X ) = anXn+an−1Xn−1+ · · · +a1X + a0
Supponiamo chelimX →−∞p(X ) = −∞elimX →+∞p(X ) = +∞
La formulap(X ) > 0ha almeno una soluzione inR
Un caso unidimensionale
Consideriamo un polinomio di gradonin una variabile p(X ) = anXn+an−1Xn−1+ · · · +a1X + a0
Supponiamo chelimX →−∞p(X ) = −∞elimX →+∞p(X ) = +∞
La formulap(X ) > 0ha almeno una soluzione inR
Un caso unidimensionale
Consideriamo un polinomio di gradonin una variabile p(X ) = anXn+an−1Xn−1+ · · · +a1X + a0
Supponiamo chelimX →−∞p(X ) = −∞elimX →+∞p(X ) = +∞
La formulap(X ) > 0ha almeno una soluzione inR
Un caso unidimensionale
esiste un intervallo in cuip(X )cresce esiste un intervallo in cuip0(X ) > 0 p0(X )`e di gradon − 1
studiop0(X ) > 0 studiop00(X ) > 0 . . .
doponpassi arrivo ad una costante
Un caso unidimensionale
esiste un intervallo in cuip(X )cresce esiste un intervallo in cuip0(X ) > 0 p0(X )`e di gradon − 1
studiop0(X ) > 0 studiop00(X ) > 0 . . .
doponpassi arrivo ad una costante
Un caso unidimensionale
esiste un intervallo in cuip(X )cresce esiste un intervallo in cuip0(X ) > 0 p0(X )`e di gradon − 1
studiop0(X ) > 0 studiop00(X ) > 0 . . .
doponpassi arrivo ad una costante
Un caso unidimensionale
esiste un intervallo in cuip(X )cresce esiste un intervallo in cuip0(X ) > 0 p0(X )`e di gradon − 1
studiop0(X ) > 0 studiop00(X ) > 0 . . .
doponpassi arrivo ad una costante
Un caso unidimensionale
esiste un intervallo in cuip(X )cresce esiste un intervallo in cuip0(X ) > 0 p0(X )`e di gradon − 1
studiop0(X ) > 0 studiop00(X ) > 0 . . .
doponpassi arrivo ad una costante
Un caso unidimensionale
esiste un intervallo in cuip(X )cresce esiste un intervallo in cuip0(X ) > 0 p0(X )`e di gradon − 1
studiop0(X ) > 0 studiop00(X ) > 0 . . .
doponpassi arrivo ad una costante
Un caso unidimensionale
esiste un intervallo in cuip(X )cresce esiste un intervallo in cuip0(X ) > 0 p0(X )`e di gradon − 1
studiop0(X ) > 0 studiop00(X ) > 0 . . .
doponpassi arrivo ad una costante
Radici reali di un polinomio
Theorem (Sturm)
Siap(X )un polinomio suR, sianoa, b ∈ R `e possibile
determinare quante radici dip(X )cadono nell’intervallo(a, b)
Per arrivare al risultato di Tarski suRk occorre sfruttare le proiezioni
O-minimal Hybrid Automata
Definition (Lafferriere, Pappas, Sastry 2000)
Un automaH = hZ,Z0,V,E,Inv,Dyn,Act,Reseti `e detto o-minimalese
le formuleInv,Act,Reset sono definite su una teoria o-minimale
Dynsono campi vettoriali le cui soluzioni sono o-minimali Reset non dipendono daZ
O-minimal Hybrid Automata
Theorem
Gli automi o-minimali hanno il quoziente perbisimulazione finito
Se costruiti su una teoria o-minimaledecidibile, gli automi o-minimali hanno una quoziente per bisimulazionecalcolabile
O-minimal Hybrid Automata
Theorem
Gli automi o-minimali hanno il quoziente perbisimulazione finito
Se costruiti su una teoria o-minimaledecidibile, gli automi o-minimali hanno una quoziente per bisimulazionecalcolabile
come possiamoestenderli? (FOCoRe, IDA, Prodotto Cartesiano)
come altro possiamosfruttareil risultato di Tarski? (Tiwari, Ratschan)
Inclusion Dynamics
Passiamo da funzioni adinclusioniper definire il flusso
r = f (r, 0) f (r, δ)
f (r, 2δ)
f (r, 3δ)
f (r, 4δ)
r F (r, δ) F (r, 2δ)
F (r, 3δ) F (r, 4δ)
Dyn[Z , Z0,T ] ≡ Z0=f (Z , T ) Dyn[Z , Z0,T ] ≡ Z0 ∈ F (Z , T )
Inclusion Dynamics
Passiamo da funzioni adinclusioniper definire il flusso
r = f (r, 0) f (r, δ)
f (r, 2δ)
f (r, 3δ)
f (r, 4δ)
r F (r, δ) F (r, 2δ)
F (r, 3δ) F (r, 4δ)
Dyn[Z , Z0,T ] ≡ Z0=f (Z , T ) Dyn[Z , Z0,T ] ≡ Z0 ∈ F (Z , T )
Perch ´e Inclusion Dynamics?
Possiamo usarle per:
approssimaresoluzioni di equazioni differenziali stimareparametri non noti coinvolti nelle dinamiche
Problemi
Dobbiamo garantire che seDyn(v )[Z , Z0,T ]vale, allora esiste un flussocontinuoche soddisfa la dinamica
SeDyn(v )[Z , Z0,T ] ≡ Z0=fv(Z , T ), `e sufficiente richiedere chefv sia continua
SeDyn(v )[Z , Z0,T ] ≡ Z0∈ Fv(Z , T ), la Hausdorff continuit `a di Fv non basta
Esempio
Fv(X , t) =
ht cos θ, sin θi | θ ∈ [1t,1t +2π − |t|]
if t 6= 0 {hx, y i | y ∈ [−1, 1] ∧ x = 0} otherwise
+1
−1 Fv(X, 0)
Fv(X, t0)
Fv(X, t1)
t0 t1
1 t1
1 t1− |t|
Hybrid Automata with Inclusion Dynamics
Definition (Michael’s Form)
SiaFZv(T )def= {Z0| Dyn(v )[Z , Z0,T ] ∧ Inv (v )[Z0]}. Un automa `e inMichael’s formse
1 FZv `e lower semi-continua
2 per ognit ∈ IZv l’insiemeFZv(t) `e chiuso e convesso doveIZv `e il pi `u grande intervallo[0, t0)tale cheFZv(t) 6= ∅per ognit ∈ [0, t0)
Theorem
SeH `e in Michael’s form, alloras ∈ Frv(t)ssehv , r i−→t Chv , si.
Hybrid Automata with Inclusion Dynamics
Definition (Michael’s Form)
SiaFZv(T )def= {Z0| Dyn(v )[Z , Z0,T ] ∧ Inv (v )[Z0]}. Un automa `e inMichael’s formse
1 FZv `e lower semi-continua
2 per ognit ∈ IZv l’insiemeFZv(t) `e chiuso e convesso doveIZv `e il pi `u grande intervallo[0, t0)tale cheFZv(t) 6= ∅per ognit ∈ [0, t0)
Theorem
SeH `e in Michael’s form, alloras ∈ Frv(t)ssehv , r i−→t Chv , si.
Michael’s Form e Raggiungibilit `a
Per ogni automa in Michael’s form, possiamo scrivere una formulaReach(H, ph)[Z , Z0,T ], doveph = v0, . . . ,vn `e un cammino inhV, Ei, tale che
Reach(H, ph)[Z , Z0,T ]
vale ⇐⇒
H raggiungehvn,Z0i dahv0,Z icon una
traiettoria corrispondente aph
Problema
Sfortunatamente, esistono automi con cammini discreti di lunghezza infinita
Michael’s Form e Raggiungibilit `a
Per ogni automa in Michael’s form, possiamo scrivere una formulaReach(H, ph)[Z , Z0,T ], doveph = v0, . . . ,vn `e un cammino inhV, Ei, tale che
Reach(H, ph)[Z , Z0,T ]
vale ⇐⇒
H raggiungehvn,Z0i dahv0,Z icon una
traiettoria corrispondente aph
Problema
Sfortunatamente, esistono automi con cammini discreti di lunghezza infinita
FOCoRe e IDA
FOCoRe(FirstOrderConstantReset hybrid automata) sono first-order hybrid automata:
in Michael’s form
conconstant resets(i.e.,Reset(e)[Z , Z0]non dipende da Z)
IDA(IndependentDynamics hybridAutomata) consentono identity resetstra locazioni che hanno la stessa dinamica
Possiamo ridurre il problema della raggiungibilit `a per FOCoRe e IDAT-automata al problema della soddifacibilit `a di formule in T
FOCoRe e IDA
FOCoRe(FirstOrderConstantReset hybrid automata) sono first-order hybrid automata:
in Michael’s form
conconstant resets(i.e.,Reset(e)[Z , Z0]non dipende da Z)
IDA(IndependentDynamics hybridAutomata) consentono identity resetstra locazioni che hanno la stessa dinamica Possiamo ridurre il problema della raggiungibilit `a per FOCoRe e IDAT-automata al problema della soddifacibilit `a di formule in T
Raggiungibilit `a e Bisimulazione
Theorem
SiaT una teoria al primo-ordine decidibile. Il problema della raggiungibilit `a per FOCoRe e IDAT-automata `e decidibile
Theorem
Esistono FOCoRe e IDA con quozienti per (bi)simulazione infiniti
Predicate Abstraction
A. Tiwari and G. Khanna Series of Abstractions for Hybrid Automata, HSCC 2002
Consideriamo un’automaH in cui:
ledinamichesono definite conequazioni differenzialidella forma
Z = p(Z )˙ conppolinomio
invarianti, activation e resetsonodisequazioni tra polinomi In generale, su questi automi la raggiungibilit `a `eindecidibile
Prediacate Abstraction - Intuitivamente
Consideriamo il caso di una sola locazione in cui Z = p(Z )˙
Divido lo spazio in un numero finito di regioni a seconda che p(Z ) > 0
p(Z ) = 0 p(Z ) < 0
Predicate Abstraction - Intuitivamente
p(Z ) `e continua, quindi per passare dap(Z ) > 0ap(Z ) < 0 occorre passare attraversop(Z ) = 0
inoltre per passare dap(Z ) > 0ap(Z ) = 0deve essereZ00<0
calcoloZ00=p0(Z ) ∗ Z0 =p0(Z ) ∗ p(Z ) risuddivido lo spazio . . .
itero il ragionamento
Predicate Abstraction - Intuitivamente
p(Z ) `e continua, quindi per passare dap(Z ) > 0ap(Z ) < 0 occorre passare attraversop(Z ) = 0
inoltre per passare dap(Z ) > 0ap(Z ) = 0deve essereZ00<0
calcoloZ00=p0(Z ) ∗ Z0 =p0(Z ) ∗ p(Z ) risuddivido lo spazio . . .
itero il ragionamento
Predicate Abstraction - Intuitivamente
p(Z ) `e continua, quindi per passare dap(Z ) > 0ap(Z ) < 0 occorre passare attraversop(Z ) = 0
inoltre per passare dap(Z ) > 0ap(Z ) = 0deve essereZ00<0
calcoloZ00=p0(Z ) ∗ Z0 =p0(Z ) ∗ p(Z ) risuddivido lo spazio . . .
itero il ragionamento
Predicate Abstraction - Intuitivamente
p(Z ) `e continua, quindi per passare dap(Z ) > 0ap(Z ) < 0 occorre passare attraversop(Z ) = 0
inoltre per passare dap(Z ) > 0ap(Z ) = 0deve essereZ00<0
calcoloZ00=p0(Z ) ∗ Z0 =p0(Z ) ∗ p(Z ) risuddivido lo spazio . . .
itero il ragionamento
Predicate Abstraction - Stati e Transizioni
Intendo astrarreH con(Q, →)
Come costruiscoQ?
considero l’insiemeP0dei polinomi che occorrono inH saturoP0chiudendolo per ‘‘derivazione”(ottengoP) per ogni polinomiop ∈ P considero una variabilexp che varia in{−, +, 0}
considero l’insiemeQ = {−, +, 0}|P|delle possibili combinazioni di valori assunti dalle varibili
Predicate Abstraction - Stati e Transizioni
Intendo astrarreH con(Q, →)
Come costruisco →? seq1→ q2, allora devono valere le seguenti condizioni:
sexp = +inq1exp =0inq2, allora deve esserexp0 = − inq1
. . .
Constraint Interval Arithmetics
S. Ratschan and Z. She Safety Verification of Hybrid Systems by Constraint Propagation Based Abstraction Refinement, HSCC 2005