Set of reachable chemical species Let R = { R i } be a set of rules. Let Species be the set of all chemical species ( C, c 1 , c ′ k , . . . ∈ Species ). 1 , . . . , c k , c ′ Let Species 0 be the set of initial . We write: c 1 , . . . , c m → R k c ′ 1 , . . . , c ′ n whenever: 1. there is an embedding of the lhs of R k in the solution c 1 , . . . , c m ; 2. the (embedding/rule) produces the solution c ′ n . 1 , . . . , c ′ We are interested in Species ω the set of all chemical species that can be constructed in one or several applications of rules in R starting from the set Species 0 of initial chemical species. (We do not care about the number of occurrences of each chemical species). Jérôme Feret 18 June 2013
Inductive definition We define the mapping F as follows: ℘ ( Species ) → ℘ ( Species ) � � � F : ∃ R k ∈ R , c 1 , . . . , c m ∈ X, � c ′ X � → X ∪ . � j c 1 , . . . , c m → R k c ′ 1 , . . . , c ′ � n We define the set of reachable chemical species as follows: � � � � � n ∈ N F n ( Species 0 ) Species ω = . Jérôme Feret 19 June 2013
Local views R Y1 R l. u l R r Y1 E u l r E E r. α ({R(Y1 ∼ u,l!1), E(r!1)}) = {R(Y1 ∼ u,l!r.E); E(r!l.R)}. Jérôme Feret 20 June 2013
Galois connexion • Let Local _ view be the set of all local views. • Let α ∈ ℘ ( Species ) → ℘ ( Local _ view ) be the function that maps any set of chemical species into the set of their local views. • Let γ ∈ ℘ ( Local _ view ) → ℘ ( Species ) be the function that maps any set of local views into the set of chemical species that can be built with these local views. • The pair ( α, γ ) forms a Galois connexion: γ − − ℘ ( Local _ view ) . ← ℘ ( Species ) − − → α Jérôme Feret 21 June 2013
γ ◦ α γ ◦ α is an upper closure operator: it abstracts away some information. Guess the image of the following set of chemical species ? { } R a l r Jérôme Feret 22 June 2013
α ◦ γ α ◦ γ is a lower closure operator: it simplifies (or reduces) constraints. Guess the image of the following set of local views ? } { ; R a S a l r l r R R R R r. r. l. l. Jérôme Feret 23 June 2013
One more question α ◦ γ is a lower closure operator: it simplifies (or reduces) constraints. Guess the image of the following set of local views ? } { ; R a R a l r l r R R R r. l. l. Jérôme Feret 24 June 2013
Abstract rules R R R R r r r r # R R R R Y1 Y1 Y1 Y1 p p u u . . l r l l r r l r E E R R r. r. r. r. Jérôme Feret 25 June 2013
Abstract counterpart to F We define F ♯ as: ℘ ( Local _ view ) → ℘ ( Local _ view ) � � F ♯ : � ∃ R k ∈ R , lv 1 , . . . , lv m ∈ X, � lv ′ X � → X ∪ . � j lv 1 , . . . , lv m → ♯ R k lv ′ 1 , . . . , lv ′ � n We have: • F ♯ is monotonic; . ⊆ γ ◦ F ♯ ; • F ◦ γ Jérôme Feret 26 June 2013
Soundness Theorem 1 Let: 1. ( D, ⊆ , ∪ ) and ( D ♯ , ⊑ , ⊔ ) be chain-complete partial orders; γ D ♯ be a Galois connexion; 2. D − − − ← − → α 3. F ∈ D → D and F ♯ ∈ D ♯ → D ♯ be monotonic mappings such that: . ⊆ γ ◦ F ♯ ; F ◦ γ 4. x 0 ∈ D be an element such that: x 0 ⊆ F ( x 0 ) ; Then: 1. both lfp x 0 F and lfp α ( x 0 ) F ♯ exist, 2. lfp x 0 F ⊆ γ ( lfp α ( x 0 ) F ♯ ) . Jérôme Feret 27 June 2013
Overview 1. Introduction 2. Kappa language 3. Local views 4. Local set of chemical species 5. Local rule systems 6. Conclusion Jérôme Feret 28 June 2013
Concretization For any X ∈ ℘ ( Local _ view ) , γ ( X ) is given by a rewrite system: . For any lv ∈ X , we add the following rules: . p p Y2 I Y2 u F Y1 Y3 u E u F r. l E Y1 p Y3 r. . E . . p u r. Y2 u l F Y1 Y3 E r E F p u r. l. r. l p r r l r l . F E p l. r. Y2 u F r Y1 Y3 r Y3 r Y3 F E u F Y3. l. Y3. l r E p r. I and semi-links are non-terminal. I is the initial symbol. Jérôme Feret 29 June 2013
Pumping lemma • We use this rewrite system to enumerate the chemical species of γ ( X ) . • There are two cases: 1. either there is a finite number of rewrite sequences; 2. or we encounter cyclic derivations i.e. an open chemical species with a cycle of the following form: R.l-r.E ... R.l-r.E can be built. • We only enumerate chemical species that are reached through an acyclic rewriting computation. • It turns out that: if X ∈ Im ( α ) then each rewrite sequence is the prefix of a terminating rewrite sequence. (So there is an unbounded number of species if, and only if, there is an unbounded number of rewrite sequences.) Jérôme Feret 30 June 2013
Examples 1. Make the demo for egf 2. Make the demo for fgf 3. Make the demo for sfb 4. Make the demo for Global invariants Jérôme Feret 31 June 2013
Which information is abstracted away ? Our analysis is exact (no false positive): • for EGF cascade ( 356 chemical species); • for FGF cascade ( 79080 chemical species); • for SFB cascade ( ≈ 2.10 19 chemical species); We know how to build systems with false positives . . . . . . but they seem to be biologically meaningless. This raises the following issues: • Can we characterize which information is abstracted away ? • Which is the form of the systems, for which we have no false positive ? • Do we learn something about the biological systems that we describe ? Jérôme Feret 32 June 2013
Which information is abstracted away ? Theorem 2 We suppose that: 1. ( D, ⊆ ) be a partial order; 2. ( D ♯ , ⊑ , ⊔ ) be chain-complete partial order; γ D ♯ be a Galois connexion; 3. D − − − ← − → Species α 4. F ∈ D → D and F ♯ ∈ D ♯ → D ♯ are monotonic; inv . lfp α ( Species 0 ) F ♯ 5. F ◦ γ ⊆ γ ◦ F ♯ ; Species ω 6. x 0 , inv ∈ D such that: • x 0 ⊆ F ( x 0 ) ⊆ F ( inv ) ⊆ inv , • inv = γ ( α ( inv )) , • and α ( F ( γ ( α ( inv )))) = F ♯ ( α ( inv )) ; Then, lfp α ( x 0 ) F ♯ exists and γ ( lfp α ( x 0 ) F ♯ ) ⊆ inv . Jérôme Feret 33 June 2013
When is there no false positive ? Theorem 3 We suppose that: 1. ( D, ⊆ , ∪ ) and ( D ♯ , ⊑ , ⊔ ) are chain-complete partial orders; γ 2. ( D, ⊆ ) − − − ( D ♯ , ⊑ ) is a Galois connexion; ← − → α 3. F : D → D is a monotonic map; 4. x 0 is a concrete element such that x 0 ⊆ F ( x 0 ) ; . 5. F ◦ γ ⊆ γ ◦ F ♯ ; 6. F ♯ ◦ α = α ◦ F ◦ γ ◦ α . Then: • lfp x 0 F and lfp α ( x 0 ) F ♯ exist; ⇒ lfp x 0 F = γ ( lfp α ( x 0 ) F ♯ ) . • lfp x 0 F ∈ Im ( γ ) ⇐ Jérôme Feret 34 June 2013
Local set of chemical species Definition 1 We say that a set X ⊆ Species of chemical species is local if and only if X ∈ Im ( γ ) . (ie. a set X is local if and only if X is exactly the set of all the species that are generated by a given set of local views.) Jérôme Feret 35 June 2013
Swapping relation among tuples Species ∗ of chemical species. SWAP We define the binary relation ∼ SWAP We say that ( C 1 , . . . , C m ) ( D 1 , . . . , D n ) if and only if: ∼ r l ( C 1 , . . . , C m ) matches with r l r l while ( D 1 , . . . , D n ) matches with r l Jérôme Feret 36 June 2013
Swapping closure Theorem 4 Let X ⊆ Species be a set of chemical species. The two following assertions are equivalent: 1. the set X ⊆ Species is local; 2. for any tuples ( C i ) i ∈ I , ( D j ) j ∈ J ∈ Species ∗ such that: • ( C i ) i ∈ I ∈ X ∗ , SWAP • and ( C i ) i ∈ I ( D j ) j ∈ J ; ∼ we have ( D j ) j ∈ J ∈ X ∗ . Jérôme Feret 37 June 2013
Proof (easier implication way) If: • X = γ ( α ( X )) , • ( C i ) i ∈ I ∈ X ∗ , SWAP • and ( C i ) i ∈ I ( D j ) j ∈ J ; ∼ Then: SWAP we have α ( { C i | i ∈ I } ) = α ( { D j | j ∈ J } ) (because ( C i ) i ∈ I ( D j ) j ∈ J ) ∼ (because ( C i ) i ∈ I ∈ X ∗ and α mon); and α ( { C i | i ∈ I } ) ⊆ α ( X ) so α ( { D j | j ∈ J } ) ⊆ α ( X ) ; so { D j | j ∈ J } ⊆ γ ( α ( X )) (by def. of Galois connexions); so { D j | j ∈ J } ⊆ X (since X = γ ( α ( X )) ); so ( D j ) j ∈ J ∈ X ∗ . Jérôme Feret 38 June 2013
Proof (more difficult implication way) SWAP We suppose that X is close with respect to ∼ . We want to prove that γ ( α ( X )) ⊆ X . We prove, by induction, that any open complex that can be built using the rewrite system (associated with α ( X ) ) can be embedded in a complex in X : • By def. of α , this is satisfied for any local view in α ( X ) ; • This remains satisfied after unfolding a semi-link with a local view; • This remains satisfied after binding two semi-links. Jérôme Feret 39 June 2013
Initialization . p Y2 u I F Y1 Y3 E u r. l E p r. . . C ∈ X p (since lv ∈ α ( X ) ) lv Y2 u F Y1 Y3 E u r. l E p r. Jérôme Feret 40 June 2013
Unfolding a semi-link p Y2 u F Y1 Y3 r E F u r. l. l p r . p C ′ ∈ X C ∈ X . . . open partial species p . . lv Y2 u F r Y1 . F Y3 l. E u r. l E p r. Jérôme Feret 41 June 2013
Unfolding a semi-link p Y2 u F Y1 Y3 r E F u r. l. l p r . p . . C " ∈ X . . . � � SWAP open partial species ∼ p lv Y2 u F r Y1 . Y3 E u r. l p Jérôme Feret 42 June 2013
Binding two semi-links r l r l E F r. l. . . . . . . . . C ′′ ∈ X C ∈ X � � open partial species open partial species SWAP ∼ r r . . r r . . E r. F l. Jérôme Feret 43 June 2013
Bonus Let X ∈ Im ( α ) be a set of views. 1. Each open complex C built with the local views in X is a sub-complex of a close complex C ′ in γ ( X ) . 2. When considering the rewrite system that computes γ ( X ) , any partial rewriting sequence can be completed in a successful one. 3. We have F ♯ ◦ α = α ◦ F ◦ γ ◦ α . Jérôme Feret 44 June 2013
Overview 1. Introduction 2. Kappa language 3. Local views 4. Local set of chemical species 5. Local rule systems 6. Conclusion Jérôme Feret 45 June 2013
Outline We have proved that: • if the set Species ω of reachable chemical species is close with respect SWAP swapping ∼ , • then the reachability analysis is exact (i.e. Species ω = γ ( lfp α ( Species 0 ) F ♯ ) ). Now we give some sufficient conditions that ensure this property. Jérôme Feret 46 June 2013
Sufficient conditions Whenever the following assumptions: 1. initial agents are not bound; 2. rules are atomic; 3. rules are local: • only agents that interact are tested, • no cyclic patterns (neither in lhs, nor in rhs); 4. binding rules do not interfere i.e. if both: • A(a ∼ m,S),B(b ∼ n,T) → A(a ∼ m!1,S),B(b ∼ n!1,T) • and A(a ∼ m’,S’),B(b ∼ n’,T’) → A(a ∼ m’!1,S’),B(b ∼ n’!1,T’), then: • A(a ∼ m,S),B(b ∼ n’,T’) → A(a ∼ m!1,S),B(b ∼ n’!1,T’); 5. chemical species in γ ( α ( Species ω )) are acyclic, are satisfied, the set of reachable chemical species is local. Jérôme Feret 47 June 2013
Proof outline We sketch a proof in order to discover sufficient conditions that ensure this property: • We consider tuples of complexes in which the same kind of links occur twice. • We want to swap these links. • We introduce the history of their computation. • There are several cases. . . Jérôme Feret 48 June 2013
First case (I/V) C ′ ∈ Species ω C ∈ Species ω . . r r . . r r . . . . Jérôme Feret 49 June 2013
First case (II/V) just before the links are made ∗ C ′ ∈ Species ω C ∈ Species ω ∗ . . r r . . r r . . . . Jérôme Feret 50 June 2013
First case (III/V) we suppose we can swap the links ∗ C ∈ Species ω . . r r . . r r . . . . Jérôme Feret 51 June 2013
� � � First case (IV/V) Then, we ensure that further computation steps: • are always possible; • have the same effect on local views; SWAP • commute with the swapping relation ∼ . SWAP ∼ ,σ C ′ C n n R ,φ R ,φ SWAP ∼ ,σ � C ′ C n + 1 n + 1 Jérôme Feret 52 June 2013
First case (V/V) ∗ C ∈ Species ω . . . . r r . . r r . . . . Jérôme Feret 53 June 2013
Second case (I/II) C ∈ Species ω . . . . . r r . . r r . . . . we assume that the chemical species C is acyclic Jérôme Feret 54 June 2013
Second case (II/II) . . . . r r . . r r . . . . . . r r . . r r . . . . Jérôme Feret 55 June 2013
Sufficient conditions Whenever the following assumptions: 1. initial agents are not bound; 2. rules are atomic; 3. rules are local: • only agents that interact are tested, • no cyclic patterns (neither in lhs, nor in rhs); 4. binding rules do not interfere i.e. if both: • A(a ∼ m,S),B(b ∼ n,T) → A(a ∼ m!1,S),B(b ∼ n!1,T) • and A(a ∼ m’,S’),B(b ∼ n’,T’) → A(a ∼ m’!1,S’),B(b ∼ n’!1,T’), then: • A(a ∼ m,S),B(b ∼ n’,T’) → A(a ∼ m!1,S),B(b ∼ n’!1,T’); 5. chemical species in γ ( α ( Species ω )) are acyclic, are satisfied, the set of reachable chemical species is local. Jérôme Feret 56 June 2013
Third case (I/III) C ∈ Species ω . . . . . . r r r r . . . . r r r r . . . . . . . . Jérôme Feret 57 June 2013
Third case (II/III) ∗ C ∈ Species ω . . . . . . r r r r . . . . . . . . Jérôme Feret 58 June 2013
Third case (III/III) ∗ C ∈ Species ω C ∈ Species ω . . . . . . r r r r . . . . r r r r . . . . ? ? ? . . . . Jérôme Feret 59 June 2013
Non local systems ∆ = R(a ∼ u) Species 0 R(a ∼ u) ↔ R(a ∼ p) R(a ∼ u),R(a ∼ u) → R(a ∼ u!1),R(a ∼ u!1) ∆ Rules = R(a ∼ p),R(a ∼ u) → R(a ∼ p!1),R(a ∼ p!1) R(a ∼ p),R(a ∼ p) → R(a ∼ p!1),R(a ∼ p!1) R(a ∼ u!1),R(a ∼ u!1) ∈ Species ω R(a ∼ p!1),R(a ∼ p!1) ∈ Species ω But R(a ∼ u!1),R(a ∼ p!1) �∈ Species ω . Jérôme Feret 60 June 2013
Non local systems ∆ = A(a ∼ u),B(a ∼ u) Species 0 A(a ∼ u),B(a ∼ u) → A(a ∼ u!1),B(a ∼ u!1) ∆ A(a ∼ u!1),B(a ∼ u!1) → A(a ∼ p!1),B(a ∼ u!1) Rules = A(a ∼ u!1),B(a ∼ u!1) → A(a ∼ u!1),B(a ∼ p!1) A(a ∼ u!1),B(a ∼ p!1) ∈ Species ω A(a ∼ p!1),B(a ∼ u!1) ∈ Species ω But A(a ∼ p!1),B(a ∼ p!1) �∈ Species ω . Jérôme Feret 61 June 2013
Non local systems ∆ = A(a ∼ u) Species 0 � A(a ∼ u) ↔ A(a ∼ p) � ∆ Rules = A(a ∼ u),A(a ∼ p) → A(a ∼ u!1),A(a ∼ p!1) A(a ∼ u!1),A(a ∼ p!1) ∈ Species ω But A(a ∼ p!1),A(a ∼ p!1) �∈ Species ω . Jérôme Feret 62 June 2013
Non local systems ∆ = R(a,b) Species 0 ∆ = { R(a,b),R(a) → R(a,b!1),R(a!1) } Rules R(a,b!2),R(a!2,b!1),R(a!1,b) ∈ Species ω But R(a!1,b!1) �∈ Species ω . Jérôme Feret 63 June 2013
Overview 1. Introduction 2. Kappa language 3. Local views 4. Local set of chemical species 5. Local rule systems 6. Conclusion Jérôme Feret 64 June 2013
Conclusion • A scalable static analysis to abstract the reachable chemical species. • A class of models for which the abstraction is complete. • Many applications: - idiomatic description of reachable chemical species; - - dead rule detection; - - rule decontextualization; - - computer-driven kinetic refinement. - • It can also help simulation algorithms: - wake up/inhibition map (agent-based simulation); - - flat rule system generation (for bounded set of chemical species); - - on the fly flat rule generation (for large/unbounded set) - Jérôme Feret 64 June 2013
École thématique Modélisation formelle de réseaux de régulation biologique Formal model reduction [PNAS’09,LICS’10,MFPS’10,Chaos’10,MFPS’11] Jérôme Feret Laboratoire d’Informatique de l’École Normale Supérieure INRIA, ÉNS, CNRS June 2013
Overview 1. Context and motivations 2. Handmade ODEs 3. Abstract interpretation framework 4. Concrete semantics 5. Abstract semantics 6. Conclusion Jérôme Feret 2 June 2013
Rule-based models E G dx 1 dt = − k 1 · x 1 · x 2 + k − 1 · x 3 1 / 2 1 b y 1 dx 2 r z 1 dt = − k 1 · x 1 · x 2 + k − 1 · x 3 1 / 2 1 / 3 a dx 3 dt = k 1 · x 1 · x 2 − k − 1 · x 3 + 2 · k 2 · x 3 · x 3 − k − 2 · x 4 1 / 2 l R 1 / 3 1 d z 2 y 2 1 / 2 x dx 4 3 − k 2 · x 4 + v 4 · x 5 dt = k 2 · x 2 p 4 + x 5 − k 3 · x 4 − k − 3 · x 5 1 / 3 Y 68 r dx 5 dt = · · · So Y 7 1 y 3 z 3 1 / 2 Y 48 . . pi . 1 / 2 Sh dx n dt = − k 1 · x 1 · c 2 + k − 1 · x 3 Interaction ODEs CTMC map Jérôme Feret 3 June 2013
Complexity walls Jérôme Feret 4 June 2013
A breach in the wall(s) ? Jérôme Feret 5 June 2013
Overview 1. Context and motivations 2. Handmade ODEs (a) a simple adapter (b) a system with a switch 3. Abstract interpretation framework 4. Concrete semantics 5. Abstract semantics 6. Conclusion Jérôme Feret 6 June 2013
A simple adapter B A C Jérôme Feret 7 June 2013
A simple adapter B A , ∅ B ∅ ← → AB ∅ k AB ,k AB d A , ∅ BC ← → ABC k AB ,k AB d ∅ B ∅ , C ← → ∅ BC k BC ,k BC d AB ∅ , C ← → ABC k BC ,k BC d A C Jérôme Feret 7 June 2013
A simple adapter B A , ∅ B ∅ ← → AB ∅ k AB ,k AB d A , ∅ BC ← → ABC k AB ,k AB d ∅ B ∅ , C ← → ∅ BC k BC ,k BC d AB ∅ , C ← → ABC k BC ,k BC d A C d [ A ] d · [ AB ∅ ] + k AB d · [ ABC ] − k AB · [ A ] ·∅ B ∅ − k AB · A ·∅ BC dt = k AB d [ C ] d · ([ ∅ BC ] + [ ABC ]) − [ C ] · k BC · ([ ∅ B ∅ ] + [ AB ∅ ]) dt = k BC d [ ∅ B ∅ ] d · [ AB ∅ ] + k BC d · [ ∅ BC ] − k AB · [ A ] · [ ∅ B ∅ ] − k BC · [ ∅ B ∅ ] · [ C ] = k AB dt d [ AB ∅ ] d · [ AB ∅ ] − k BC · [ AB ∅ ] · [ C ] = k AB · [ A ] · [ ∅ B ∅ ] + k BC d · [ ABC ] − k AB dt d [ ∅ BC ] d · [ ABC ] + k BC · [ C ] · [ ∅ B ∅ ] − [ ∅ BC ] · ( k BC d + [ A ] · k AB ) = k AB dt d [ ABC ] = k AB · [ A ] · [ ∅ BC ] + k BC · [ C ] · [ AB ∅ ] − [ ABC ] · ( k AB d + k BC d ) dt Jérôme Feret 7 June 2013
A simple adapter B A , ∅ B ∅ ← → AB ∅ k AB ,k AB d A , ∅ BC ← → ABC k AB ,k AB d ∅ B ∅ , C ← → ∅ BC k BC ,k BC d AB ∅ , C ← → ABC k BC ,k BC d A C d [ A ] d · [ AB ∅ ] + k AB d · [ ABC ] − k AB · [ A ] ·∅ B ∅ − k AB · A ·∅ BC dt = k AB d [ C ] d · ([ ∅ BC ] + [ ABC ]) − [ C ] · k BC · ([ ∅ B ∅ ] + [ AB ∅ ]) dt = k BC d [ ∅ B ∅ ] d · [ AB ∅ ] + k BC d · [ ∅ BC ] − k AB · [ A ] · [ ∅ B ∅ ] − k BC · [ ∅ B ∅ ] · [ C ] = k AB dt d [ AB ∅ ] d · [ AB ∅ ] − k BC · [ AB ∅ ] · [ C ] = k AB · [ A ] · [ ∅ B ∅ ] + k BC d · [ ABC ] − k AB dt d [ ∅ BC ] = k AB d · [ ABC ] + k BC · [ C ] · [ ∅ B ∅ ] − [ ∅ BC ] · ( k BC d + [ A ] · k AB ) dt d [ ABC ] = k AB · [ A ] · [ ∅ BC ] + k BC · [ C ] · [ AB ∅ ] − [ ABC ] · ( k AB d + k BC d ) dt Jérôme Feret 7 June 2013
Two subsystems B A C Jérôme Feret 8 June 2013
Two subsystems ������ ������ ������ ������ B B ������ ������ ������ ������ ������ ������ ������ ������ ������ ������ ������ ������ A C ������ ������ ������ ������ ������ ������ ������ ������ Jérôme Feret 8 June 2013
Two subsystems ������ ������ ������ ������ B B ������ ������ ������ ������ ������ ������ ������ ������ ������ ������ ������ ������ A C ������ ������ ������ ������ [ A ] = [ A ] [ C ] = [ C ] ������ ������ ������ ������ ∆ ∆ [ AB? ] = [ AB ∅ ] + [ ABC ] [ ?BC ] = [ ∅ BC ] + [ ABC ] ∆ ∆ [ ∅ B? ] = [ ∅ B ∅ ] + [ ∅ BC ] [ ?B ∅ ] = [ ∅ B ∅ ] + [ AB ∅ ] d [ A ] d [ C ] d · [ AB? ] − [ A ] · k AB · [ ∅ B? ] d · [ ?BC ] − [ C ] · k BC · [ ?B ∅ ] dt = k AB dt = k BC d [ AB? ] d [ ?BC ] = [ A ] · k AB · [ ∅ B? ] − k AB d · [ AB? ] = [ C ] · k BC · [ ?B ∅ ] − k BC d · [ ?BC ] dt dt d [ ∅ B? ] d [ ?B ∅ ] = k AB d · [ AB? ] − [ A ] · k AB · [ ∅ B? ] = k BC d · [ ?BC ] − [ C ] · k BC · [ ?B ∅ ] dt dt Jérôme Feret 8 June 2013
Dependence index The binding with A and with C would be independent if, and only if: [ ABC ] [ AB? ] [ ?BC ] = [ ∅ B? ] + [ AB? ] . Thus we define the dependence index as follows: ∆ = [ ABC ] · ([ ∅ B? ] + [ AB? ]) − [ AB? ] · [ ?BC ] . X We have (after a short computation): dX [ A ] · k AB + k AB d + [ C ] · k BC + k BC dt = − X · � � . d So the property: [ ABC ] [ AB? ] [ ?BC ] = [ ∅ B? ] + [ AB? ] . is an invariant (i.e. if it holds at time t , it holds at any time t ′ ≥ t ). Jérôme Feret 9 June 2013
Overview 1. Context and motivations 2. Handmade ODEs (a) a simple adapter (b) a system with a switch 3. Abstract interpretation framework 4. Concrete semantics 5. Abstract semantics 6. Conclusion Jérôme Feret 10 June 2013
A system with a switch Jérôme Feret 11 June 2013
A system with a switch ( u , u , u ) − → ( u , p , u ) k c ( u , p , u ) − → ( p , p , u ) k l ( u , p , p ) − → ( p , p , p ) k l ( u , p , u ) − → ( u , p , p ) k r ( p , p , u ) − → ( p , p , p ) k r Jérôme Feret 11 June 2013
A system with a switch ( u , u , u ) − → ( u , p , u ) k c ( u , p , u ) − → ( p , p , u ) k l ( u , p , p ) − → ( p , p , p ) k l ( u , p , u ) − → ( u , p , p ) k r ( p , p , u ) − → ( p , p , p ) k r d [( u , u , u )] = − k c · [( u , u , u )] dt d [( u , p , u )] = − k l · [( u , p , u )] + k c · [( u , u , u )] − k r · [( u , p , u )] dt d [( u , p , p )] = − k l · [( u , p , p )] + k r · [( u , p , u )] dt d [( p , p , u )] = k l · [( u , p , u )] − k r · [( p , p , u )] dt d [( p , p , p )] = k l · [( u , p , p )] + k r · [( p , p , u )] dt Jérôme Feret 11 June 2013
Two subsystems Jérôme Feret 12 June 2013
Two subsystems Jérôme Feret 12 June 2013
Two subsystems [( u , u , u )] = [( u , u , u )] [( u , u , u )] = [( u , u , u )] ∆ ∆ [( u , p , ? )] = [( u , p , u )] + [( u , p , p )] [( ? , p , u )] = [( u , p , u )] + [( p , p , u )] ∆ ∆ [( p , p , ? )] = [( p , p , u )] + [( p , p , p )] [( ? , p , p )] = [( u , p , p )] + [( p , p , p )] d [( u , u , u )] d [( u , u , u )] = − k c · [( u , u , u )] = − k c · [( u , u , u )] dt dt d [( u , p , ? )] d [( ? , p , u )] = − k l · [( u , p , ? )] + k c · [( u , u , u )] = − k r · [( ? , p , u )] + k c · [( u , u , u )] dt dt d [( p , p , ? )] d [( ? , p , p )] = k l · [( u , p , ? )] = k r · [( ? , p , u )] dt dt Jérôme Feret 12 June 2013
Dependence index The states of left site and right site would be independent if, and only if: [( ? , p , u )] + [( ? , p , p )] = [( p , p , p )] [( ? , p , p )] [( p , p , ? )] . Thus we define the dependence index as follows: ∆ = [( p , p , p )] · ([( ? , p , u )] + [( ? , p , p )]) − [( ? , p , p )] · [( p , p , ? )] . X We have: dX k l + k r � dt = − X · � + k c · [( p , p , p )] · [( u , u , u )] . So the property ( X = 0 ) is not an invariant. Jérôme Feret 13 June 2013
Conclusion We can use the absence of flow of information to cut chemical species into self-consistent fragments of chemical species: − some information is abstracted away: we cannot recover the concentration of any species; + flow of information is easy to abstract; We are going to track the correlations that are read by the system. Jérôme Feret 14 June 2013
Recommend
More recommend