172
Computational approaches to analyze complex dynamic systems: model-checking and its applications. Part 4: Models and algorithms to analyze large-scale concurrent systems: approaches inspired by pi-calculus and static analysis Morgan Magnin [email protected] | www.morganmagnin.net NII - Inoue Laboratory ´ Ecole Centrale de Nantes - IRCCyN - MeForBio team Lecture Series - Lecture 4 / NII - 2013/04/17 M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 1 / 62

Computational approaches to analyze complex dynamic

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Computational approaches to analyze complex dynamic

Computational approaches to analyze complexdynamic systems: model-checking and its

applications.Part 4: Models and algorithms to analyze large-scaleconcurrent systems: approaches inspired by pi-calculus

and static analysis

Morgan [email protected] | www.morganmagnin.net

NII - Inoue LaboratoryEcole Centrale de Nantes - IRCCyN - MeForBio team

Lecture Series - Lecture 4 / NII - 2013/04/17

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 1 / 62

Page 2: Computational approaches to analyze complex dynamic

1 Introduction

2 Modeling biological regulatory networksThomas’ frameworkFrom Thomas’ framework to discrete-event systemsFrom Thomas’ framework to timed systemsCommon limits of current models for biological analyses

3 The Process Hitting: a framework well suited to concurrent systemsDefinitionFrom biological models to Process Hitting and refiningTool for analyzing Process Hitting: pint

4 Inferring information on the biological model thanks to the ProcessHitting

Interaction Graph InferenceParametrization Inference

5 Summary & Conclusion

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 2 / 62

Page 3: Computational approaches to analyze complex dynamic

Introduction

Overview

1 Introduction

2 Modeling biological regulatory networksThomas’ frameworkFrom Thomas’ framework to discrete-event systemsFrom Thomas’ framework to timed systemsCommon limits of current models for biological analyses

3 The Process Hitting: a framework well suited to concurrent systemsDefinitionFrom biological models to Process Hitting and refiningTool for analyzing Process Hitting: pint

4 Inferring information on the biological model thanks to the ProcessHitting

Interaction Graph InferenceParametrization Inference

5 Summary & Conclusion

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 3 / 62

Page 4: Computational approaches to analyze complex dynamic

Introduction

Motivations

Objective: formal verification of properties

Model the system S :

Discrete models: finite state automata, Petri nets, . . . ⇒ Lecture 1Timed models:

Timed extensions of finite state automata: timed/hybrid automata ⇒Lecture 2Timed extensions of Petri nets: time/stopwatch Petri nets ⇒ Lecture 3

Formalize the specification ϕ :

ObserversTemporal logics: LTL, CTL, . . . ⇒ Lecture 1Timed extensions of temporals logics ⇒ Lectures 2 & 3

Does S |= ϕ ?

Model-checking algorithms

⇒ State space exploration

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 4 / 62

Page 5: Computational approaches to analyze complex dynamic

Introduction

Motivations

Objective: formal verification of properties

Model the system S :

Discrete models: finite state automata, Petri nets, . . . ⇒ Lecture 1Timed models:

Timed extensions of finite state automata: timed/hybrid automata ⇒Lecture 2Timed extensions of Petri nets: time/stopwatch Petri nets ⇒ Lecture 3

Formalize the specification ϕ :

ObserversTemporal logics: LTL, CTL, . . . ⇒ Lecture 1Timed extensions of temporals logics ⇒ Lectures 2 & 3

Does S |= ϕ ?

Model-checking algorithms

⇒ State space exploration

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 4 / 62

Page 6: Computational approaches to analyze complex dynamic

Introduction

Some major issues

Need for modeling tasks with suspending/resuming features

Expressivity/Decidability compromise to discuss ⇒ Lectures 2 & 3

State space combinatorial explosion

Need for symbolic approaches ⇒ Lectures 2 & 3

Need for new models and abstracted algorithms ⇒ Lecture 4

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 5 / 62

Page 7: Computational approaches to analyze complex dynamic

Introduction

Some major issues

Need for modeling tasks with suspending/resuming features

Expressivity/Decidability compromise to discuss ⇒ Lectures 2 & 3

State space combinatorial explosion

Need for symbolic approaches ⇒ Lectures 2 & 3

Need for new models and abstracted algorithms ⇒ Lecture 4

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 5 / 62

Page 8: Computational approaches to analyze complex dynamic

Introduction

Context and Aims

MeForBio team: Algebraic modeling to study complex dynamicalbiological systems

1) Two main modelsHistorical model: Biological Regulatory Network (Rene Thomas)Recently designed model: Process Hitting

2) Allow efficient translation from one model to the other

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 6 / 62

Page 9: Computational approaches to analyze complex dynamic

Introduction

Context and Aims

MeForBio team: Algebraic modeling to study complex dynamicalbiological systems

1) Two main modelsHistorical model: Biological Regulatory Network (Rene Thomas)Recently designed model: Process Hitting

2) Allow efficient translation from one model to the other

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 6 / 62

Page 10: Computational approaches to analyze complex dynamic

Introduction

Today’s issue

Tricky question

How can we study complex dynamical biological systems, involving up to1.000 interacting components?

Observation

Classical model-checking approaches suffer from state space explosion

Leads:

Taking profit for Process Algebra structure, based on a compactrepresentation of the interactionsDevelop static analysis approaches to verify some crucial properties,e.g. stable states, reachability, key processes, . . .

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 7 / 62

Page 11: Computational approaches to analyze complex dynamic

Introduction

Contribution

Scientific challenge

How can we cope with the analysis of large-scale systems, involving upto 1.000 interacting components?

Objectives of this talk

Introduce a Process Algebra inspired framework based on a compactrepresentation of the interactions

Develop efficient static analysis approaches to answer mostcommon problems

Apply the methodology to large-scale biological regulatory networks

Joint work with

L. Pauleve (ETH Zurich), M. Folschette, O. Roux (IRCCyN)

K. Inoue (NII)

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 8 / 62

Page 12: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks

Overview

1 Introduction

2 Modeling biological regulatory networksThomas’ frameworkFrom Thomas’ framework to discrete-event systemsFrom Thomas’ framework to timed systemsCommon limits of current models for biological analyses

3 The Process Hitting: a framework well suited to concurrent systemsDefinitionFrom biological models to Process Hitting and refiningTool for analyzing Process Hitting: pint

4 Inferring information on the biological model thanks to the ProcessHitting

Interaction Graph InferenceParametrization Inference

5 Summary & Conclusion

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 9 / 62

Page 13: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks Thomas’ framework

Short introduction to Biological Regulatory Networks

Principle of R. Thomas’ discrete modeling [TGL76]

Activations and inhibitions between genes

Gene/protein couples

Genes expression is associated to a set of discrete logic levels

Effective control beyond a given threshold; opposite effect below.

Interaction graphNodes = Genes

Directed edges = Interactions

But what is the evolutionarytendency of a when a is at level1 and b at level 1? ⇒ Need forparametrization

a b

2−

1−

1+

0..2 0..1

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 10 / 62

Page 14: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks Thomas’ framework

Biological Regulatory Network (Thomas’ modeling)

z

a

b

0..1

0..1

0..2

1− 1+

1−

ωkz,ωa b

− + 1− − 0+ + 2+ − 1

ωka,ωa

+ 1− 0

kb,ω1

Proposed by Rene Thomas in 1973, several extensions since then

Historical bio-informatics model for studying genes interactions

Widely used and well-adapted to represent dynamic gene systems

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 11 / 62

Page 15: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks Thomas’ framework

Biological Regulatory Network (Thomas’ modeling)

z

a

b

0..1

0..1

0..2

1− 1+

1−

ωkz,ωa b

− + 1− − 0+ + 2+ − 1

ωka,ωa

+ 1− 0

kb,ω1︸ ︷︷ ︸

Interaction Graph

Interaction Graph: structure of the system (genes & interactions)

Nodes: genesName a, b, zPossible values (levels of expression) 0..1, 0..2

Edges: interactionsThreshold 1Type (activation or inhibition) + / −

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 11 / 62

Page 16: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks Thomas’ framework

Biological Regulatory Network (Thomas’ modeling)

z

a

b

0..1

0..1

0..2

1− 1+

1−

ωkz,ωa b

− + 1− − 0+ + 2+ − 1

ωka,ωa

+ 1− 0

kb,ω1︸ ︷︷ ︸

Interaction Graph

Interaction Graph: structure of the system (genes & interactions)

Nodes: genesName a, b, zPossible values (levels of expression) 0..1, 0..2

Edges: interactionsThreshold 1Type (activation or inhibition) + / −

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 11 / 62

Page 17: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks Thomas’ framework

Biological Regulatory Network (Thomas’ modeling)

z

a

b

0..1

0..1

0..2

1− 1+

1−

ωkz,ωa b

− + 1− − 0+ + 2+ − 1

ωka,ωa

+ 1− 0

kb,ω1︸ ︷︷ ︸

Interaction Graph

Interaction Graph: structure of the system (genes & interactions)

Nodes: genesName a, b, zPossible values (levels of expression) 0..1, 0..2

Edges: interactionsThreshold 1Type (activation or inhibition) + / −

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 11 / 62

Page 18: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks Thomas’ framework

Biological Regulatory Network (Thomas’ modeling)

z

a

b

0..1

0..1

0..2

1− 1+

1−

ωkz,ωa b

− + 1− − 0+ + 2+ − 1

ωka,ωa

+ 1− 0

kb,ω1︸ ︷︷ ︸

Parametrization

Parametrization: strength of the influences (cooperations)

Maps of tendencies for each gene

→ To any influences of predecessors ω→ Corresponds a parameter kx ,ω

kz,{a+,b+} = 2 means: z tends to 2 when a ≥ 1 and b < 1

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 11 / 62

Page 19: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks Thomas’ framework

Biological Regulatory Network (Thomas’ modeling)

z

a

b

0..1

0..1

0..2

1− 1+

1−

ωkz,ωa b

− + 1− − 0+ + 2+ − 1

ωka,ωa

+ 1− 0

kb,ω1︸ ︷︷ ︸

Parametrization

Parametrization: strength of the influences (cooperations)

Maps of tendencies for each gene

→ To any influences of predecessors ω→ Corresponds a parameter kx ,ω

kz,{a+,b+} = 2 means: z tends to 2 when a ≥ 1 and b < 1

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 11 / 62

Page 20: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks Thomas’ framework

Biological Regulatory Network (Thomas’ modeling)

z

a

b

0..1

0..1

0..2

1− 1+

1−

ωkz,ωa b

− + 1− − 0+ + 2+ − 1

ωka,ωa

+ 1− 0

kb,ω1︸ ︷︷ ︸

Biological Regulatory Network

→ All needed information to run the model or study its dynamics:Build the State GraphFind reachability properties, fixed points, attractorsOther properties...

→ Strengths: well adapted for the study of biological systems→ Drawbacks: inherent complexity; needs the full

specification of cooperations

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 12 / 62

Page 21: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks Thomas’ framework

Limits of discrete modeling

f

c a

Figure: Motif inside biological segmentation networks (e.g. drosophila)

(Rmq.: boolean network)

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 13 / 62

Page 22: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks Thomas’ framework

Limits of discrete modeling

ca−

f

a

c

f

a

c

δfa+ δ

δfc+

1

2

0

1

0

2

1

0

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 14 / 62

Page 23: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks Thomas’ framework

Issues related to the synthesis of timed parameters

Problems

Infer the production and degradation rates

Consider accumulation mechanisms (on/off oscillations)

Adaptation of the R. Thomas model

The logic interaction graph is enriched with two functions. Thesefunctions give, for any discrete state of the network and for any gene:

The production delay of the gene, depending on its set of resources;

The degradation delay of the gene, depending on its set of resources.

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 15 / 62

Page 24: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks Thomas’ framework

Increasing the models expressivity

Adapt the model to biological issues

Introduction of delays ⇒ timed transition systems

Need for modeling tasks with suspend / resume ⇒ introduce thenotion of stopwatches

Balance between expressivity and decidability

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 16 / 62

Page 25: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks Thomas’ framework

Problem

Choosing an appropriate time model for S

Dense time?

Discrete time?

Inference and verification of quantitative temporal properties

⇒ Efficient state-space exploration algorithms⇒ Compact data structures for storage and computation of the statespace

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 17 / 62

Page 26: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks Thomas’ framework

Problem

Choosing an appropriate time model for S

Dense time?

Discrete time?

Inference and verification of quantitative temporal properties

⇒ Efficient state-space exploration algorithms⇒ Compact data structures for storage and computation of the statespace

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 17 / 62

Page 27: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to discrete-event systems

Analysis of Biological Regulatory Networks

Motivation: apply modal logics

Compute state graph and check properties

Translate the model into a discrete-events (resp. timed) model, e.g.(time) Petri nets, and check properties

Motivation: why Petri nets?

Mathematical and graphic formalism

Easy representation concurrence and parallelism

Structural properties (P-invariants, T-invariants, ...)

Dynamical properties (liveness, boundedness, reachability, ...)

Mature tools : Snoopy, ginSIM, Romeo, etc.

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 18 / 62

Page 28: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to discrete-event systems

Petri net - Reminder

P1

t1

P2

t2

P4

t4

P3

t3

Figure: A Petri net

{P1,P2,P4}

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 19 / 62

Page 29: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to discrete-event systems

Petri net - Reminder

P1

t1

P2

t2

P4

t4

P3

t3

Figure: A Petri net

{P1,P2,P4}t2→ {P1,P3,P4}

t1→ . . .

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 19 / 62

Page 30: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to discrete-event systems

Petri net - Reminder

P1

t1

P2

t2

P4

t4

P3

t3

Figure: An other Petri net

{P1,P2,P4}

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 20 / 62

Page 31: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to discrete-event systems

Petri net - Reminder

P1

t1

P2

t2

P4

t4

P3

t3

Figure: An other Petri net

{P1,P2,P4}t2→ {P3,P4} . . .

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 20 / 62

Page 32: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to discrete-event systems

Petri net with reset arcs - Reminder

P1

t1

P2

t2

P4

t4

P3

t3

Figure: A Petri net with reset arcs

{P1,P2, 5× P4}t2→ . . .

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 21 / 62

Page 33: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to discrete-event systems

Petri net with reset arcs - Reminder

P1

t1

P2

t2

P4

t4

P3

t3

Figure: A Petri net with reset arcs

{P1,P2, 5× P4}t2→ {P1,P3}

t1→ . . .

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 21 / 62

Page 34: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to discrete-event systems

Petri nets with read arcs

P1

t1

P2

t2

P4

t4

P3

t3

Figure: A Petri net with read arcs

{P1,P2,P4}

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 22 / 62

Page 35: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to discrete-event systems

Petri nets with read arcs

P1

t1

P2

t2

P4

t4

P3

t3

Figure: A Petri net with read arcs

{P1,P2,P4}t2→ {P1,P3,P4} . . .

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 22 / 62

Page 36: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to discrete-event systems

(Logic) Inhibitor Hyperarc Petri nets : AND inhibition

P1

t1

P2

t2

P4

t4

P3

t3

Figure: An inhibitor hyperarc Petri net

{P1,P2,P4}

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 23 / 62

Page 37: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to discrete-event systems

(Logic) Inhibitor Hyperarc Petri nets : AND inhibition

P1

t1

P2

t2

P4

t4

P3

t3

Figure: An inhibitor hyperarc Petri net : t1 inhibited iff (M(P3) ≥ 1 andM(P4) ≥ 1)

{P1,P2,P4}t2→ {P1,P3,P4}

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 23 / 62

Page 38: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to discrete-event systems

(Logic) Inhibitor Hyperarc Petri nets : AND inhibition

P1

t1

P2

t2

P4

t4

P3

t3

Figure: An inhibitor hyperarc Petri net

{P1,P2,P4}t2→ {P1,P3,P4}

t3→ {P1,P4}t1→ . . .

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 23 / 62

Page 39: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to discrete-event systems

From regulatory networks to Petri nets

Principle

One place per gene

Marking: discrete level of concentration

c aka,{} ka,{c}

sc→a,+

Figure: A simple regulatory network

Critical issues

How to test the concentration level without decrementing it?

How to model an action that takes place only below a givenconcentration?

→ Use read and inhibitor (hyper)arcs

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 24 / 62

Page 40: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to discrete-event systems

From regulatory networks to Petri nets

cNaN

t+a,{}

t�a,{}

sc�>a

sc�>a

ka,{}

sc�>a

sc�>a

ka,{c}

t+a,{c}

t�a,{c}

c aka,{} ka,{c}

sc!a,+

ka,{c} + 1

ka,{} + 1

Figure: Translation towards Petri nets

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 25 / 62

Page 41: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to discrete-event systems

From regulatory networks to Petri nets

Analysis

Automated translation

Bounded networks → reduced cost of read and logic inhibitorhyperarcs

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 26 / 62

Page 42: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to timed systems

From regulatory networks to time extensions of Petri nets

Principle

Thinly discretize the concentration levels (thus thresholds) of eachgene

Associate the production and degradation delays to transitionsresulting from the discrete translation

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 27 / 62

Page 43: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to timed systems

From regulatory networks to time extensions of Petri nets

cNaN

t+a,{}

t�a,{}

nc.sc�>a

nc.sc�>a

na.ka,{}

nc.sc�>a

nc.sc�>a

t+a,{c}

t�a,{c}

c a

ka,{} ka,{c}

sc!a,+

Parametrization

Delays

�+a,{}

��a,{}

�+a,{c}

��a,{c}

[��a,{c}, ��a,{c}]

[�+a,{c}, �

+a,{c}]

[�+a,{}, �

+a,{}]

[��a,{}, ��a,{}]

nc.ka,{c}

nc.ka,{c} + 1

na.ka,{} + 1

Figure: Translation towards time Petri nets

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 28 / 62

Page 44: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to timed systems

From regulatory networks to time extensions of Petri nets

Analysis

Allows the model-checking of (parametric) TCTL formulae

Possibility to infer the time parameters associated to a transition

Automate the translation and export to Romeo software

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 29 / 62

Page 45: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to timed systems

Model validation

Objective : formal verification of a model properties

Model the S system:→ Petri nets, Time Petri nets, Stopwatch Petri nets, . . .

Formalize the specification ϕ :→ observers, timed logics (LTL, CTL, TCTL),. . .

Does S |= ϕ ?

Algorithms implemented in Romeo in both dense time and discrete-time

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 30 / 62

Page 46: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to timed systems

Model validation

Objective : formal verification of a model properties

Model the S system:→ Petri nets, Time Petri nets, Stopwatch Petri nets, . . .

Formalize the specification ϕ :→ observers, timed logics (LTL, CTL, TCTL),. . .

Does S |= ϕ ?

Algorithms implemented in Romeo in both dense time and discrete-time

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 30 / 62

Page 47: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to timed systems

Application : p53-MdM2 network

P D

2, -

NC1, -

1, -

1, -

2, +

1, +

Figure: Network from [WAjK09]

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 31 / 62

Page 48: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to timed systems

Application : p53-MdM2 network

Figure: Translation into time Petri net

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 32 / 62

Page 49: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to timed systems

Biological analysis

Model validation

Verify properties (sustained oscillations, damped oscillations, . . .)

Model-checking of TCTL formulae

Delays inference

Model-checking of parametric TCTL formulae

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 33 / 62

Page 50: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks From Thomas’ framework to timed systems

Biological analysis

Limits

Undecidability of TCTL model-checking, even for boundedparametric TPN [TLR09]

State space combinatorial explosion

Limitation in the size of the nets and number of parameters

Methodology

Identification of relevant sub-problems

Progressive inference of time delays

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 34 / 62

Page 51: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks Common limits of current models for biological analyses

Tools for Interaction Graphs Study

Interaction Graphs [RCB05]

No positive circuit ⇒ only 1 attractor

No negative circuit ⇒ no cyclic attractor

Positive circuits ⇒ criterion for max. number of attractors

Temporal logics ⇒ check properties (needs State Graph)

→ SM-BIONET [KCRB09], ginSIM [CNT12], Biocham [CFS06]→ Translate models into discrete-event systems and run

model-checkers

Some recent works focus on boolean networks topological fixedpoints: [PR10]

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 35 / 62

Page 52: Computational approaches to analyze complex dynamic

Modeling biological regulatory networks Common limits of current models for biological analyses

Tools for Interaction Graphs Study

Interaction Graphs [RCB05]

No positive circuit ⇒ only 1 attractor

No negative circuit ⇒ no cyclic attractor

Positive circuits ⇒ criterion for max. number of attractors

Temporal logics ⇒ check properties (needs State Graph)

→ SM-BIONET [KCRB09], ginSIM [CNT12], Biocham [CFS06]→ Translate models into discrete-event systems and run

model-checkers

Some recent works focus on boolean networks topological fixedpoints: [PR10]

Problem

Combinatorial explosion when computing the State Graph→ Need for static analysis → introduction of the Process Hitting

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 35 / 62

Page 53: Computational approaches to analyze complex dynamic

Process Hitting

Overview

1 Introduction

2 Modeling biological regulatory networksThomas’ frameworkFrom Thomas’ framework to discrete-event systemsFrom Thomas’ framework to timed systemsCommon limits of current models for biological analyses

3 The Process Hitting: a framework well suited to concurrent systemsDefinitionFrom biological models to Process Hitting and refiningTool for analyzing Process Hitting: pint

4 Inferring information on the biological model thanks to the ProcessHitting

Interaction Graph InferenceParametrization Inference

5 Summary & Conclusion

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 36 / 62

Page 54: Computational approaches to analyze complex dynamic

Process Hitting Definition

Intuitive principle of the Process Hitting framework

Process = component a at level iInteraction =

a at level i makes b at level j increase ordecrease to level k

denotedai → bj � bk (hit and bounce)

Definition (Interaction and Retroaction)

Interaction (ai → bj � bk), where ai is the level of a process a and bj 6= bk ,Retroaction (ai → ai � ak): when ai = bj .

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 37 / 62

Page 55: Computational approaches to analyze complex dynamic

Process Hitting Definition

The Process Hitting modeling

a

0

1

b

0

1

z

0

1

2

Sorts: components a, b, z

Processes: local states / levels of expression z0, z1, z2

States: sets of active processes

Actions: dynamics b1 → z0 � z1, a0 → a0 � a1, a1 → z1 � z2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 38 / 62

Page 56: Computational approaches to analyze complex dynamic

Process Hitting Definition

The Process Hitting modeling

a

0

1

b

0

1

z

0

1

2

Sorts: components a, b, z

Processes: local states / levels of expression z0, z1, z2

States: sets of active processes

Actions: dynamics b1 → z0 � z1, a0 → a0 � a1, a1 → z1 � z2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 38 / 62

Page 57: Computational approaches to analyze complex dynamic

Process Hitting Definition

The Process Hitting modeling

a

0

1

b

0

1

z

0

1

2

Sorts: components a, b, z

Processes: local states / levels of expression z0, z1, z2

States: sets of active processes 〈a0, b1, z0〉Actions: dynamics b1 → z0 � z1, a0 → a0 � a1, a1 → z1 � z2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 38 / 62

Page 58: Computational approaches to analyze complex dynamic

Process Hitting Definition

The Process Hitting modeling

a

0

1

b

0

1

z

0

1

2

Sorts: components a, b, z

Processes: local states / levels of expression z0, z1, z2

States: sets of active processes 〈a0, b1, z0〉Actions: dynamics b1 → z0 � z1, a0 → a0 � a1, a1 → z1 � z2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 38 / 62

Page 59: Computational approaches to analyze complex dynamic

Process Hitting Definition

The Process Hitting modeling

a

0

1

b

0

1

z

0

1

2

Sorts: components a, b, z

Processes: local states / levels of expression z0, z1, z2

States: sets of active processes 〈a0, b1, z1〉Actions: dynamics b1 → z0 � z1, a0 → a0 � a1, a1 → z1 � z2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 38 / 62

Page 60: Computational approaches to analyze complex dynamic

Process Hitting Definition

The Process Hitting modeling

a

0

1

b

0

1

z

0

1

2

Sorts: components a, b, z

Processes: local states / levels of expression z0, z1, z2

States: sets of active processes 〈a1, b1, z1〉Actions: dynamics b1 → z0 � z1, a0 → a0 � a1, a1 → z1 � z2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 38 / 62

Page 61: Computational approaches to analyze complex dynamic

Process Hitting Definition

The Process Hitting modeling

a

0

1

b

0

1

z

0

1

2

Sorts: components a, b, z

Processes: local states / levels of expression z0, z1, z2

States: sets of active processes 〈a1, b1, z2〉Actions: dynamics b1 → z0 � z1, a0 → a0 � a1, a1 → z1 � z2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 38 / 62

Page 62: Computational approaches to analyze complex dynamic

Process Hitting Definition

Adding cooperations[PMR12]

a

0

1

b

0

1

z

0

1

2

How to introduce some cooperation between sorts? a1 ∧ b0 → z1 � z2

Solution: a cooperative sort abConstraint: each configuration is represented by one process〈a1, b0〉 ⇒ ab10

Advantage: regular sort; drawbacks: complexity, temporal shiftM. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 39 / 62

Page 63: Computational approaches to analyze complex dynamic

Process Hitting Definition

Adding cooperations[PMR12]

a

0

1

b

0

1

z

0

1

2

How to introduce some cooperation between sorts? a1 ∧ b0 → z1 � z2

Solution: a cooperative sort abConstraint: each configuration is represented by one process〈a1, b0〉 ⇒ ab10

Advantage: regular sort; drawbacks: complexity, temporal shiftM. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 39 / 62

Page 64: Computational approaches to analyze complex dynamic

Process Hitting Definition

Adding cooperations[PMR12]

a

0

1

b

0

1

z

0

1

2

How to introduce some cooperation between sorts? a1 ∧ b0 → z1 � z2

Solution: a cooperative sort abConstraint: each configuration is represented by one process〈a1, b0〉 ⇒ ab10

Advantage: regular sort; drawbacks: complexity, temporal shiftM. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 39 / 62

Page 65: Computational approaches to analyze complex dynamic

Process Hitting Definition

Adding cooperations[PMR12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11

How to introduce some cooperation between sorts? a1 ∧ b0 → z1 � z2

Solution: a cooperative sort abConstraint: each configuration is represented by one process〈a1, b0〉 ⇒ ab10

Advantage: regular sort; drawbacks: complexity, temporal shiftM. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 39 / 62

Page 66: Computational approaches to analyze complex dynamic

Process Hitting Definition

Adding cooperations[PMR12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11

How to introduce some cooperation between sorts? a1 ∧ b0 → z1 � z2

Solution: a cooperative sort abConstraint: each configuration is represented by one process〈a1, b0〉 ⇒ ab10

Advantage: regular sort; drawbacks: complexity, temporal shiftM. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 39 / 62

Page 67: Computational approaches to analyze complex dynamic

Process Hitting Definition

Adding cooperations[PMR12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11

How to introduce some cooperation between sorts? a1 ∧ b0 → z1 � z2

Solution: a cooperative sort abConstraint: each configuration is represented by one process〈a1, b0〉 ⇒ ab10

Advantage: regular sort; drawbacks: complexity, temporal shiftM. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 39 / 62

Page 68: Computational approaches to analyze complex dynamic

Process Hitting Definition

Adding cooperations[PMR12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11

How to introduce some cooperation between sorts? a1 ∧ b0 → z1 � z2

Solution: a cooperative sort abConstraint: each configuration is represented by one process〈a1, b0〉 ⇒ ab10

Advantage: regular sort; drawbacks: complexity, temporal shiftM. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 39 / 62

Page 69: Computational approaches to analyze complex dynamic

Process Hitting Definition

Adding cooperations[PMR12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11

How to introduce some cooperation between sorts? a1 ∧ b0 → z1 � z2

Solution: a cooperative sort abConstraint: each configuration is represented by one process〈a1, b0〉 ⇒ ab10

Advantage: regular sort; drawbacks: complexity, temporal shiftM. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 39 / 62

Page 70: Computational approaches to analyze complex dynamic

Process Hitting Definition

Adding cooperations[PMR12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11

How to introduce some cooperation between sorts? a1 ∧ b0 → z1 � z2

Solution: a cooperative sort abConstraint: each configuration is represented by one process〈a1, b0〉 ⇒ ab10

Advantage: regular sort; drawbacks: complexity, temporal shiftM. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 39 / 62

Page 71: Computational approaches to analyze complex dynamic

Process Hitting Definition

Adding cooperations[PMR12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11

How to introduce some cooperation between sorts? a1 ∧ b0 → z1 � z2

Solution: a cooperative sort abConstraint: each configuration is represented by one process〈a1, b0〉 ⇒ ab10

Advantage: regular sort; drawbacks: complexity, temporal shiftM. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 39 / 62

Page 72: Computational approaches to analyze complex dynamic

Process Hitting Definition

Adding cooperations[PMR12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11

How to introduce some cooperation between sorts? a1 ∧ b0 → z1 � z2

Solution: a cooperative sort abConstraint: each configuration is represented by one process〈a1, b0〉 ⇒ ab10

Advantage: regular sort; drawbacks: complexity, temporal shiftM. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 39 / 62

Page 73: Computational approaches to analyze complex dynamic

Process Hitting Definition

Adding cooperations[PMR12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11

How to introduce some cooperation between sorts? a1 ∧ b0 → z1 � z2

Solution: a cooperative sort ab to express a1 ∧ b0

Constraint: each configuration is represented by one process〈a1, b0〉 ⇒ ab10

Advantage: regular sort; drawbacks: complexity, temporal shiftM. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 39 / 62

Page 74: Computational approaches to analyze complex dynamic

Process Hitting Definition

Adding cooperations[PMR12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11

How to introduce some cooperation between sorts? a1 ∧ b0 → z1 � z2

Solution: a cooperative sort ab to express a1 ∧ b0

Constraint: each configuration is represented by one process〈a1, b0〉 ⇒ ab10

Advantage: regular sort; drawbacks: complexity, temporal shiftM. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 39 / 62

Page 75: Computational approaches to analyze complex dynamic

Process Hitting Definition

Adding cooperations[PMR12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11

How to introduce some cooperation between sorts? a1 ∧ b0 → z1 � z2

Solution: a cooperative sort ab to express a1 ∧ b0

Constraint: each configuration is represented by one process〈a1, b0〉 ⇒ ab10

Advantage: regular sort; drawbacks: complexity, temporal shiftM. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 39 / 62

Page 76: Computational approaches to analyze complex dynamic

Process Hitting Definition

Static Analysis: Fixed Points[PMR11a]

Fixed point = state where no action can be fired

→ avoid couples of processes bounded by an action

z

0

1

2

b

0 1

a

0

1

Exponential complexity w.r.t. the number of sorts

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 40 / 62

Page 77: Computational approaches to analyze complex dynamic

Process Hitting Definition

Static Analysis: Fixed Points[PMR11a]

Fixed point = state where no action can be fired

→ avoid couples of processes bounded by an action

→ Hitless Graph

z

0

1

2

b

0 1

a

0

1

z

0

1

2

b

0 1

a

0

1

Exponential complexity w.r.t. the number of sorts

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 40 / 62

Page 78: Computational approaches to analyze complex dynamic

Process Hitting Definition

Static Analysis: Fixed Points[PMR11a]

Fixed point = state where no action can be fired

→ avoid couples of processes bounded by an action

→ Hitless Graph → n-cliques = fixed points

z

0

1

2

b

0 1

a

0

1

z

0

1

2

b

0 1

a

0

1

Exponential complexity w.r.t. the number of sorts

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 40 / 62

Page 79: Computational approaches to analyze complex dynamic

Process Hitting Definition

Static Analysis: Fixed Points[PMR11a]

Fixed point = state where no action can be fired

→ avoid couples of processes bounded by an action

→ Hitless Graph → n-cliques = fixed points

z

0

1

2

b

0 1

a

0

1

z

0

1

2

b

0 1

a

0

1

Exponential complexity w.r.t. the number of sorts

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 40 / 62

Page 80: Computational approaches to analyze complex dynamic

Process Hitting Definition

Static Analysis: Fixed Points[PMR11a]

Fixed point = state where no action can be fired

→ avoid couples of processes bounded by an action

→ Hitless Graph → n-cliques = fixed points

z

0

1

2

b

0 1

a

0

1

z

0

1

2

b

0 1

a

0

1

Exponential complexity w.r.t. the number of sorts

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 40 / 62

Page 81: Computational approaches to analyze complex dynamic

Process Hitting Definition

Static Analysis: Fixed Points[PMR11a]

Fixed point = state where no action can be fired

→ avoid couples of processes bounded by an action

→ Hitless Graph → n-cliques = fixed points

z

0

1

2

b

0 1

a

0

1

z

0

1

2

b

0 1

a

0

1

Exponential complexity w.r.t. the number of sorts

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 40 / 62

Page 82: Computational approaches to analyze complex dynamic

Process Hitting Definition

Static analysis: successive reachability[PMR12]

Problem

Given an initial state of a Process Hitting, is it possible to reachsuccessively ai , then bj , then ak , then cl , . . .?⇒ Combinatorial explosion of the dynamics to explore

Key idea

Instead of checking the successive reachability R, which is complex, wewill check:

an under-approximation P: if P is not satisfied, then R neither

an over-approximation Q: if Q is satisfied, then R too.

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 41 / 62

Page 83: Computational approaches to analyze complex dynamic

Process Hitting Definition

Static analysis: successive reachability[PMR12]

Successive reachability of processes:

a

0

1

b

0

1

2

d

0

1

2

c

0 1

Initial context〈a1, {b0, b1}, c0, d0〉

Objectives[ � d1 :: � b1 :: � d2 ]

[ � d2 ]

→ Concretization of the objective = scenarioa0 → c0 � c1 :: b0 → d0 � d1 :: c1 → b0 � b1 :: b1 → d1 � d2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 42 / 62

Page 84: Computational approaches to analyze complex dynamic

Process Hitting Definition

Static analysis: successive reachability[PMR12]

Successive reachability of processes:

a

0

1

b

0

1

2

d

0

1

2

c

0 1

Initial context〈a1, {b0, b1}, c0, d0〉

Objectives[ � d1 :: � b1 :: � d2 ]

[ � d2 ]

→ Concretization of the objective = scenarioa0 → c0 � c1 :: b0 → d0 � d1 :: c1 → b0 � b1 :: b1 → d1 � d2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 42 / 62

Page 85: Computational approaches to analyze complex dynamic

Process Hitting Definition

Static analysis: successive reachability[PMR12]

Successive reachability of processes:

a

0

1

b

0

1

2

d

0

1

2

c

0 1

1?2?

3?

Initial context〈a1, {b0, b1}, c0, d0〉

Objectives[ � d1 :: � b1 :: � d2 ]

[ � d2 ]

→ Concretization of the objective = scenarioa0 → c0 � c1 :: b0 → d0 � d1 :: c1 → b0 � b1 :: b1 → d1 � d2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 42 / 62

Page 86: Computational approaches to analyze complex dynamic

Process Hitting Definition

Static analysis: successive reachability[PMR12]

Successive reachability of processes:

a

0

1

b

0

1

2

d

0

1

2

c

0 1

1?

Initial context〈a1, {b0, b1}, c0, d0〉

Objectives[ � d1 :: � b1 :: � d2 ]

[ � d2 ]

→ Concretization of the objective = scenarioa0 → c0 � c1 :: b0 → d0 � d1 :: c1 → b0 � b1 :: b1 → d1 � d2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 42 / 62

Page 87: Computational approaches to analyze complex dynamic

Process Hitting Definition

Static analysis: successive reachability[PMR12]

Successive reachability of processes:

a

0

1

b

0

1

2

d

0

1

2

c

0 1

1?

Initial context〈a1, {b0, b1}, c0, d0〉

Objectives[ � d1 :: � b1 :: � d2 ]

[ � d2 ]

→ Concretization of the objective = scenarioa0 → c0 � c1 :: b0 → d0 � d1 :: c1 → b0 � b1 :: b1 → d1 � d2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 42 / 62

Page 88: Computational approaches to analyze complex dynamic

Process Hitting Definition

Static analysis: successive reachability[PMR12]

Successive reachability of processes:

a

0

1

b

0

1

2

d

0

1

2

c

0 1

1?

Initial context〈a1, {b0, b1}, c0, d0〉

Objectives[ � d1 :: � b1 :: � d2 ]

[ � d2 ]

→ Concretization of the objective = scenarioa0 → c0 � c1 :: b0 → d0 � d1 :: c1 → b0 � b1 :: b1 → d1 � d2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 42 / 62

Page 89: Computational approaches to analyze complex dynamic

Process Hitting Definition

Static analysis: successive reachability[PMR12]

Successive reachability of processes:

a

0

1

b

0

1

2

d

0

1

2

c

0 1

1?

Initial context〈a1, {b0, b1}, c0, d0〉

Objectives[ � d1 :: � b1 :: � d2 ]

[ � d2 ]

→ Concretization of the objective = scenarioa0 → c0 � c1 :: b0 → d0 � d1 :: c1 → b0 � b1 :: b1 → d1 � d2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 42 / 62

Page 90: Computational approaches to analyze complex dynamic

Process Hitting Definition

Static analysis: successive reachability[PMR12]

Successive reachability of processes:

a

0

1

b

0

1

2

d

0

1

2

c

0 1

1?

Initial context〈a1, {b0, b1}, c0, d0〉

Objectives[ � d1 :: � b1 :: � d2 ]

[ � d2 ]

→ Concretization of the objective = scenarioa0 → c0 � c1 :: b0 → d0 � d1 :: c1 → b0 � b1 :: b1 → d1 � d2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 42 / 62

Page 91: Computational approaches to analyze complex dynamic

Process Hitting Definition

Static analysis: successive reachability[PMR12]

Successive reachability of processes:

a

0

1

b

0

1

2

d

0

1

2

c

0 1

Initial context〈a1, {b0, b1}, c0, d0〉

Objectives[ � d1 :: � b1 :: � d2 ]

[ � d2 ]

→ Concretization of the objective = scenarioa0 → c0 � c1 :: b0 → d0 � d1 :: c1 → b0 � b1 :: b1 → d1 � d2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 42 / 62

Page 92: Computational approaches to analyze complex dynamic

Process Hitting Definition

Over- and Under-approximations[PMR12]

Static analysis by abstractions:

→ Directly checking an objective sequence R is hard

→ Rather check the approximations P and Q, where P ⇒ R ⇒ Q:

Exact solution

R

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 43 / 62

Page 93: Computational approaches to analyze complex dynamic

Process Hitting Definition

Over- and Under-approximations[PMR12]

Static analysis by abstractions:

→ Directly checking an objective sequence R is hard

→ Rather check the approximations P and Q, where P ⇒ R ⇒ Q:

Over-Approximation

¬Q

Exact solution

R

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 43 / 62

Page 94: Computational approaches to analyze complex dynamic

Process Hitting Definition

Over- and Under-approximations[PMR12]

Static analysis by abstractions:

→ Directly checking an objective sequence R is hard

→ Rather check the approximations P and Q, where P ⇒ R ⇒ Q:

Over-Approximation

¬Q

Exact solution

R

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 43 / 62

Page 95: Computational approaches to analyze complex dynamic

Process Hitting Definition

Over- and Under-approximations[PMR12]

Static analysis by abstractions:

→ Directly checking an objective sequence R is hard

→ Rather check the approximations P and Q, where P ⇒ R ⇒ Q:

Over-Approximation

¬Q

Under-Approximation

P

Exact solution

R

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 43 / 62

Page 96: Computational approaches to analyze complex dynamic

Process Hitting Definition

Over- and Under-approximations[PMR12]

Static analysis by abstractions:

→ Directly checking an objective sequence R is hard

→ Rather check the approximations P and Q, where P ⇒ R ⇒ Q:

Over-Approximation

¬Q

Under-Approximation

P

Exact solution

R

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 43 / 62

Page 97: Computational approaches to analyze complex dynamic

Process Hitting Definition

Over- and Under-approximations[PMR12]

Static analysis by abstractions:

→ Directly checking an objective sequence R is hard

→ Rather check the approximations P and Q, where P ⇒ R ⇒ Q:

Over-Approximation

¬Q

Under-Approximation

P

Exact solution

R

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 43 / 62

Page 98: Computational approaches to analyze complex dynamic

Process Hitting Definition

Over- and Under-approximations[PMR12]

Static analysis by abstractions:

→ Directly checking an objective sequence R is hard

→ Rather check the approximations P and Q, where P ⇒ R ⇒ Q:

Over-Approximation

¬Q

Under-Approximation

P

Exact solution

R

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 43 / 62

Page 99: Computational approaches to analyze complex dynamic

Process Hitting Definition

Over- and Under-approximations[PMR12]

Static analysis by abstractions:

→ Directly checking an objective sequence R is hard

→ Rather check the approximations P and Q, where P ⇒ R ⇒ Q:

Over-Approximation

¬Q

Under-Approximation

P

Exact solution

R

Linear w.r.t. the number of sorts andexponential w.r.t. the number of processes in each sort

→ Efficient for big models with few levels of expression

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 43 / 62

Page 100: Computational approaches to analyze complex dynamic

Process Hitting Definition

Under-approximation

a

0

1

b

0

1

2

d

0

1

2

c

0 1

?

→ New abstract structureSufficient condition:

d0 �∗ d2

d2b0 b1 �∗ b0 a1 a1 �∗ a1

b0 �∗ b0

b1 b1 �∗ b1

b0 �∗ b1 c1 c1 �∗ c1

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 44 / 62

Page 101: Computational approaches to analyze complex dynamic

Process Hitting Definition

Under-approximation

a

0

1

b

0

1

2

d

0

1

2

c

0 1

? → New abstract structureSufficient condition:

no cycle

each objective has a solution

d0 �∗ d2

d2b0 b1 �∗ b0 a1 a1 �∗ a1

b0 �∗ b0

b1 b1 �∗ b1

b0 �∗ b1 c1 c1 �∗ c1

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 44 / 62

Page 102: Computational approaches to analyze complex dynamic

Process Hitting Definition

Under-approximation

a

0

1

b

0

1

2

d

0

1

2

c

0 1

?→ New abstract structureSufficient condition:

no cycle

each objective has a solution

R is true

d0 �∗ d2

d2b0 b1 �∗ b0 a1 a1 �∗ a1

b0 �∗ b0

b1 b1 �∗ b1

b0 �∗ b1 c1 c1 �∗ c1

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 44 / 62

Page 103: Computational approaches to analyze complex dynamic

Process Hitting Definition

Under-approximation

a

0

1

b

0

1

2

d

0

1

2

c

0 1

? → New abstract structureSufficient condition:

no cycle

each objective has a solution

d0 �∗ d2

d2b0 b1 �∗ b0 a1 a0 �∗ a1

b1 b1 �∗ b1

b0 �∗ b1 c1 c0 �∗ c1 a0 a0 �∗ a0

b0 �∗b0 a1 �∗a1

c1 �∗c1 a1 �∗ a0⊥

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 44 / 62

Page 104: Computational approaches to analyze complex dynamic

Process Hitting Definition

Under-approximation

a

0

1

b

0

1

2

d

0

1

2

c

0 1

?→ New abstract structureSufficient condition:

no cycle

each objective has a solution

Inconclusive

d0 �∗ d2

d2b0 b1 �∗ b0 a1 a0 �∗ a1

b1 b1 �∗ b1

b0 �∗ b1 c1 c0 �∗ c1 a0 a0 �∗ a0

b0 �∗b0 a1 �∗a1

c1 �∗c1 a1 �∗ a0⊥

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 44 / 62

Page 105: Computational approaches to analyze complex dynamic

Process Hitting Definition

Over-approximation

a

0

1

b

0

1

2

d

0

1

2

c

0 1

?

Necessary condition:

d1 �∗ d2

b2 b0 �∗ b2 d1 d1 �∗ d1

b1 b0 �∗ b1 c1 c0 �∗ c1 a0 a1 �∗ a0⊥

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 45 / 62

Page 106: Computational approaches to analyze complex dynamic

Process Hitting Definition

Over-approximation

a

0

1

b

0

1

2

d

0

1

2

c

0 1

? Necessary condition:

There exists a traversal with no cycle

objective → follow one solution

solution → follow all processes

process → follow all objectives

d1 �∗ d2

b2 b0 �∗ b2 d1 d1 �∗ d1

b1 b0 �∗ b1 c1 c0 �∗ c1 a0 a1 �∗ a0⊥

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 45 / 62

Page 107: Computational approaches to analyze complex dynamic

Process Hitting Definition

Over-approximation

a

0

1

b

0

1

2

d

0

1

2

c

0 1

? Necessary condition:

There exists a traversal with no cycle

objective → follow one solution

solution → follow all processes

process → follow all objectives

d1 �∗ d2

b2 b0 �∗ b2 d1 d1 �∗ d1

b1 b0 �∗ b1 c1 c0 �∗ c1 a0 a1 �∗ a0⊥

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 45 / 62

Page 108: Computational approaches to analyze complex dynamic

Process Hitting Definition

Over-approximation

a

0

1

b

0

1

2

d

0

1

2

c

0 1

?Necessary condition:

There exists a traversal with no cycle

objective → follow one solution

solution → follow all processes

process → follow all objectives

R is false

d1 �∗ d2

b2 b0 �∗ b2 d1 d1 �∗ d1

b1 b0 �∗ b1 c1 c0 �∗ c1 a0 a1 �∗ a0⊥

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 45 / 62

Page 109: Computational approaches to analyze complex dynamic

Process Hitting Definition

Over-approximation

a

0

1

b

0

1

2

d

0

1

2

c

0 1

? Necessary condition:

There exists a traversal with no cycle

objective → follow one solution

solution → follow all processes

process → follow all objectives

d0 �∗ d2

b2 b1 �∗ b2 d1 d0 �∗ d1

b0 b1 �∗ b0 a1 a1 �∗ a1

b1 b1 �∗ b1

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 45 / 62

Page 110: Computational approaches to analyze complex dynamic

Process Hitting Definition

Over-approximation

a

0

1

b

0

1

2

d

0

1

2

c

0 1

?Necessary condition:

There exists a traversal with no cycle

objective → follow one solution

solution → follow all processes

process → follow all objectives

Inconclusive

d0 �∗ d2

b2 b1 �∗ b2 d1 d0 �∗ d1

b0 b1 �∗ b0 a1 a1 �∗ a1

b1 b1 �∗ b1

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 45 / 62

Page 111: Computational approaches to analyze complex dynamic

Process Hitting Definition

Over-approximation

a

0

1

b

0

1

2

d

0

1

2

c

0 1

?Necessary condition:

There exists a traversal with no cycle

objective → follow one solution

solution → follow all processes

process → follow all objectives

Inconclusive

d0 �∗ d2

b2 b1 �∗ b2 d1 d0 �∗ d1

b0 b1 �∗ b0 a1 a1 �∗ a1

b1 b1 �∗ b1 Key processes

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 45 / 62

Page 112: Computational approaches to analyze complex dynamic

Process Hitting Definition

Stochastic Features[PMR11b]

Introduces time features

Parameters: either (r , sa), or the firing interval [d ;D].

→ Tests by simulation and model-checking

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 46 / 62

Page 113: Computational approaches to analyze complex dynamic

Process Hitting Definition

Stochastic Features[PMR11b]

Introduces time featuresParameters: either (r , sa), or the firing interval [d ;D].

t0

1rd D

t0

1rd D

t0

1rd D

action duration

→ Tests by simulation and model-checking

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 46 / 62

Page 114: Computational approaches to analyze complex dynamic

Process Hitting Definition

Stochastic Features[PMR11b]

Introduces time featuresParameters: either (r , sa), or the firing interval [d ;D].

t0

1rd D

t0

1rd D

t0

1rd D

action duration

a

0

1

b

0

1

a0 → b0 � b1t

a0 → a0 � a1t

→ b1 reached with a very lowprobability.

→ Tests by simulation and model-checking

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 46 / 62

Page 115: Computational approaches to analyze complex dynamic

Process Hitting Definition

Stochastic Features[PMR11b]

Introduces time featuresParameters: either (r , sa), or the firing interval [d ;D].

t0

1rd D

t0

1rd D

t0

1rd D

action duration

a

0

1

b

0

1

a0 → b0 � b1t

a0 → a0 � a1t

→ b1 reached with a very lowprobability.

→ Tests by simulation and model-checking

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 46 / 62

Page 116: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Translation of the Generalized Dynamics

Positive interaction:

a b

+1

a

0

1

b

0

1

2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 47 / 62

Page 117: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Translation of the Generalized Dynamics

Positive interaction:

a b

+1

a

0

1

b

0

1

2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 47 / 62

Page 118: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Translation of the Generalized Dynamics

Positive interaction:

a b

+1

a

0

1

b

0

1

2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 47 / 62

Page 119: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Translation of the Generalized Dynamics

Positive interaction:

a b

+1

a

0

1

b

0

1

2

Negative interaction:

a b

−1

a

0

1

b

0

1

2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 47 / 62

Page 120: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Translation of the Generalized Dynamics

Positive interaction:

a b

+1

a

0

1

b

0

1

2

Negative interaction:

a b

−1

a

0

1

b

0

1

2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 47 / 62

Page 121: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Translation of the Generalized Dynamics

Positive interaction:

a b

+1

a

0

1

b

0

1

2

Negative interaction:

a b

−1

a

0

1

b

0

1

2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 47 / 62

Page 122: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Refining with Actions Removal

Prevent behaviors by deleting unrealistic actions

a

0

1

b

0

1

2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 48 / 62

Page 123: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Refining with Actions Removal

Prevent behaviors by deleting unrealistic actions

a

0

1

b

0

1

2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 48 / 62

Page 124: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Refining with Actions Removal

Prevent behaviors by deleting unrealistic actions

a

0

1

b

0

1

2

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 48 / 62

Page 125: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Refining with Cooperation

Allow cooperation between two genes

How to express (a1 ∧ b1)→ z0 � z1?

→ Add a cooperative sort reflecting the state of a and b

a

0

1

b

0

1

z

0

1

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 49 / 62

Page 126: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Refining with Cooperation

Allow cooperation between two genes

How to express (a1 ∧ b1)→ z0 � z1?

→ Add a cooperative sort reflecting the state of a and b

a

0

1

b

0

1

z

0

1

ab

00

01

10

11

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 49 / 62

Page 127: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Refining with Cooperation

Allow cooperation between two genes

How to express (a1 ∧ b1)→ z0 � z1?

→ Add a cooperative sort reflecting the state of a and b

a

0

1

b

0

1

z

0

1

ab

00

01

10

11

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 49 / 62

Page 128: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Refining with Cooperation

Allow cooperation between two genes

How to express (a1 ∧ b1)→ z0 � z1?

→ Add a cooperative sort reflecting the state of a and b

a

0

1

b

0

1

z

0

1

ab

00

01

10

11

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 49 / 62

Page 129: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Refining with Cooperation

Allow cooperation between two genes

How to express (a1 ∧ b1)→ z0 � z1?

→ Add a cooperative sort reflecting the state of a and b

a

0

1

b

0

1

z

0

1

ab

00

01

10

11

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 49 / 62

Page 130: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Refining with Cooperation

Allow cooperation between two genes

How to express (a1 ∧ b1)→ z0 � z1?

→ Add a cooperative sort reflecting the state of a and b

a

0

1

b

0

1

z

0

1

ab

00

01

10

11

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 49 / 62

Page 131: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Refining with Cooperation

Allow cooperation between two genes

How to express (a1 ∧ b1)→ z0 � z1?

→ Add a cooperative sort reflecting the state of a and b

a

0

1

b

0

1

z

0

1

ab

00

01

10

11

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 49 / 62

Page 132: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Refining with Cooperation

Allow cooperation between two genes

How to express (a1 ∧ b1)→ z0 � z1?

→ Add a cooperative sort reflecting the state of a and b

a

0

1

b

0

1

z

0

1

ab

00

01

10

11

→ Introduces a temporal shift (over-approximation)

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 49 / 62

Page 133: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

Using Process Hitting forInteraction Graphs Study

Motivation

Interaction Graph is the historical discrete model (suitable andwidespread in biological research)

Several tools exist of the analysis of interaction graphs, but the stategraph is needed for some results ⇒ combinatorial explosion

Contribution: Process Hitting to study large Biological RegulatoryNetworks

Translation from Interaction Graphs + Refining

Efficient static analysis

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 50 / 62

Page 134: Computational approaches to analyze complex dynamic

Process Hitting From biological models to Process Hitting and refining

The Process Hitting modeling

Key features

Dynamic modeling with an atomistic point of view

→ Independent actions→ Cooperation modeled with cooperative sorts

Efficient static analysis

→ Reachability of a process can be computed in linear timein the number of sorts

Useful for the study of large biological models

→ Up to hundreds of sorts

(Future) extensions

Actions with stochasticity

Actions with priorities

Continuous time with clocks?M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 51 / 62

Page 135: Computational approaches to analyze complex dynamic

Process Hitting Tool for analyzing Process Hitting: pint

The Pint Tool[http://processhitting.wordpress.com]

Features

Free software (API available for future developments)

Textual language to describe a Process Hitting (GUI currently underdevelopment)

Implemented tools:

Translations from and to various other modelsFixed points researchStochastic simulationReachability checker

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 52 / 62

Page 136: Computational approaches to analyze complex dynamic

Process Hitting Tool for analyzing Process Hitting: pint

The Pint Tool[http://processhitting.wordpress.com]

Results and performance (reachability analysis):Model sorts procs actions states Biocham1 libddd2 PINT

egfr20 35 196 670 264 [3s-KO] [1s-150s] 0.007stcrsig40 54 156 301 273 [1s-KO] [0.6s-KO] 0.004stcrsig94 133 448 1124 2194 KO KO 0.030segfr104 193 748 2356 2320 KO KO 0.050s

1 [Inria Paris-Rocquencourt/Contraintes]2 [LIP6/Move]

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 52 / 62

Page 137: Computational approaches to analyze complex dynamic

Process Hitting Tool for analyzing Process Hitting: pint

The Mobyle portal[http://cardioserve.nantes.inserm.fr/cgi-bin/mobyle/portal.py]

Presentation

Web application unifying tools for systems biology analysis

Powered by the Mobyle framework

Project led in the context of the French ANR “BIOTempo”project

Figure: General architecture of the BIOtempo Mobyle server

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 53 / 62

Page 138: Computational approaches to analyze complex dynamic

Process Hitting Tool for analyzing Process Hitting: pint

The Mobyle portal[http://cardioserve.nantes.inserm.fr/cgi-bin/mobyle/portal.py]

Presentation

Web application unifying tools for systems biology analysis

Powered by the Mobyle framework

Project led in the context of the French ANR “BIOTempo”project

Figure: Screenshot from the BIOtempo Mobyle server:cardioserve.nantes.inserm.fr/cgi-bin/mobyle/portal.py

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 53 / 62

Page 139: Computational approaches to analyze complex dynamic

Information inference

Overview

1 Introduction

2 Modeling biological regulatory networksThomas’ frameworkFrom Thomas’ framework to discrete-event systemsFrom Thomas’ framework to timed systemsCommon limits of current models for biological analyses

3 The Process Hitting: a framework well suited to concurrent systemsDefinitionFrom biological models to Process Hitting and refiningTool for analyzing Process Hitting: pint

4 Inferring information on the biological model thanks to the ProcessHitting

Interaction Graph InferenceParametrization Inference

5 Summary & Conclusion

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 54 / 62

Page 140: Computational approaches to analyze complex dynamic

Information inference

Inferring a BRN with Thomas’ parameters

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11

a

b

z

1+

1−

ω kz,ω∅ 1{b} 0{a} 2{a; b} 1

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 55 / 62

Page 141: Computational approaches to analyze complex dynamic

Information inference

Inferring a BRN with Thomas’ parameters

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11

1

a

b

z

1+

1−

ω kz,ω∅ 1{b} 0{a} 2{a; b} 1

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 55 / 62

Page 142: Computational approaches to analyze complex dynamic

Information inference

Inferring a BRN with Thomas’ parameters

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11

1 2

a

b

z

1+

1−

ω kz,ω∅ 1{b} 0{a} 2{a; b} 1

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 55 / 62

Page 143: Computational approaches to analyze complex dynamic

Information inference Interaction Graph Inference

Inferring the Interaction Graph[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11a

b

z

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 56 / 62

Page 144: Computational approaches to analyze complex dynamic

Information inference Interaction Graph Inference

Inferring the Interaction Graph[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11a

b

z

{

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 56 / 62

Page 145: Computational approaches to analyze complex dynamic

Information inference Interaction Graph Inference

Inferring the Interaction Graph[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11a

b

z

{

→ Exhaustive search in all possible configurations

1. Pick one regulator [a], and choose an active process for all the others[b0].

2. Change the active process of this regulator [a0, a1] and watch the focalprocesses.

3. Conclude locally: (a0 � a1 ⇒ z0 � z2)⇒ activation (+) & threshold = 1.

4. Iterate

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 56 / 62

Page 146: Computational approaches to analyze complex dynamic

Information inference Interaction Graph Inference

Inferring the Interaction Graph[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11a

z

b

{{b = 0}

→ Exhaustive search in all possible configurations

1. Pick one regulator [a], and choose an active process for all the others[b0].

2. Change the active process of this regulator [a0, a1] and watch the focalprocesses.

3. Conclude locally: (a0 � a1 ⇒ z0 � z2)⇒ activation (+) & threshold = 1.

4. Iterate

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 56 / 62

Page 147: Computational approaches to analyze complex dynamic

Information inference Interaction Graph Inference

Inferring the Interaction Graph[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11a

z

b

{{b = 0}

→ Exhaustive search in all possible configurations

1. Pick one regulator [a], and choose an active process for all the others[b0].

2. Change the active process of this regulator [a0, a1] and watch the focalprocesses.

3. Conclude locally: (a0 � a1 ⇒ z0 � z2)⇒ activation (+) & threshold = 1.

4. Iterate

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 56 / 62

Page 148: Computational approaches to analyze complex dynamic

Information inference Interaction Graph Inference

Inferring the Interaction Graph[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11a

z

b

{{b = 0}

→ Exhaustive search in all possible configurations

1. Pick one regulator [a], and choose an active process for all the others[b0].

2. Change the active process of this regulator [a0, a1] and watch the focalprocesses.

3. Conclude locally: (a0 � a1 ⇒ z0 � z2)⇒ activation (+) & threshold = 1.

4. Iterate

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 56 / 62

Page 149: Computational approaches to analyze complex dynamic

Information inference Interaction Graph Inference

Inferring the Interaction Graph[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11a

z

b

{{b = 0}

→ Exhaustive search in all possible configurations

1. Pick one regulator [a], and choose an active process for all the others[b0].

2. Change the active process of this regulator [a0, a1] and watch the focalprocesses.

3. Conclude locally: (a0 � a1 ⇒ z0 � z2)⇒ activation (+) & threshold = 1.

4. Iterate

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 56 / 62

Page 150: Computational approaches to analyze complex dynamic

Information inference Interaction Graph Inference

Inferring the Interaction Graph[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11a

z

b

{{b = 0}

→ Exhaustive search in all possible configurations

1. Pick one regulator [a], and choose an active process for all the others[b0].

2. Change the active process of this regulator [a0, a1] and watch the focalprocesses.

3. Conclude locally: (a0 � a1 ⇒ z0 � z2)⇒ activation (+) & threshold = 1.

4. Iterate

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 56 / 62

Page 151: Computational approaches to analyze complex dynamic

Information inference Interaction Graph Inference

Inferring the Interaction Graph[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11a

z

b

{{b = 0} ⇒ 1+

→ Exhaustive search in all possible configurations

1. Pick one regulator [a], and choose an active process for all the others[b0].

2. Change the active process of this regulator [a0, a1] and watch the focalprocesses.

3. Conclude locally: (a0 � a1 ⇒ z0 � z2)⇒ activation (+) & threshold = 1.

4. Iterate

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 56 / 62

Page 152: Computational approaches to analyze complex dynamic

Information inference Interaction Graph Inference

Inferring the Interaction Graph[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11a

z

b

{{b = 1}{b = 0} ⇒ 1+

→ Exhaustive search in all possible configurations

1. Pick one regulator [a], and choose an active process for all the others[b0].

2. Change the active process of this regulator [a0, a1] and watch the focalprocesses.

3. Conclude locally: (a0 � a1 ⇒ z0 � z2)⇒ activation (+) & threshold = 1.

4. Iterate

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 56 / 62

Page 153: Computational approaches to analyze complex dynamic

Information inference Interaction Graph Inference

Inferring the Interaction Graph[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11a

z

b

{{b = 1}{b = 0} ⇒ 1+

→ Exhaustive search in all possible configurations

1. Pick one regulator [a], and choose an active process for all the others[b0].

2. Change the active process of this regulator [a0, a1] and watch the focalprocesses.

3. Conclude locally: (a0 � a1 ⇒ z0 � z2)⇒ activation (+) & threshold = 1.

4. Iterate

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 56 / 62

Page 154: Computational approaches to analyze complex dynamic

Information inference Interaction Graph Inference

Inferring the Interaction Graph[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11a

z

b

{{b = 1} ⇒ ∼{b = 0} ⇒ 1+

→ Exhaustive search in all possible configurations

1. Pick one regulator [a], and choose an active process for all the others[b0].

2. Change the active process of this regulator [a0, a1] and watch the focalprocesses.

3. Conclude locally: (a0 � a1 ⇒ z0 � z2)⇒ activation (+) & threshold = 1.

4. Iterate

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 56 / 62

Page 155: Computational approaches to analyze complex dynamic

Information inference Interaction Graph Inference

Inferring the Interaction Graph[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11a

z

b

{{b = 1} ⇒ ∼{b = 0} ⇒ 1+

}1+

→ Exhaustive search in all possible configurations

1. Pick one regulator [a], and choose an active process for all the others[b0].

2. Change the active process of this regulator [a0, a1] and watch the focalprocesses.

3. Conclude locally: (a0 � a1 ⇒ z0 � z2)⇒ activation (+) & threshold = 1.

4. Iterate and conclude globally.

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 56 / 62

Page 156: Computational approaches to analyze complex dynamic

Information inference Interaction Graph Inference

Inferring the Interaction Graph[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11a

z

b

{{b = 1} ⇒ ∼{b = 0} ⇒ 1+

}1+

Problematic cases:→ No focal processes (cycle)→ Opposite influences (+ & −)

}⇒ Unsigned edge

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 56 / 62

Page 157: Computational approaches to analyze complex dynamic

Information inference Parametrization Inference

Inferring Parameters[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11 a

b

z

1+

1−

ωkz,ωa b

− +− −+ ++ − 1

1. For each configuration of resources [ω = {a+, b−}]find the focal processes. If possible, conclude. [kz,{a+,b−} = 1]

Inconclusive cases:

– Behavior cannot be represented as a BRN– Lack of cooperation (no focal processes)

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 57 / 62

Page 158: Computational approaches to analyze complex dynamic

Information inference Parametrization Inference

Inferring Parameters[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11 a

b

z

1+

1−

ωkz,ωa b

− +− −+ ++ − 1

1. For each configuration of resources [ω = {a+, b−}]find the focal processes. If possible, conclude. [kz,{a+,b−} = 1]

Inconclusive cases:

– Behavior cannot be represented as a BRN– Lack of cooperation (no focal processes)

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 57 / 62

Page 159: Computational approaches to analyze complex dynamic

Information inference Parametrization Inference

Inferring Parameters[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11 a

b

z

1+

1−

ωkz,ωa b

− +− −+ ++ − 1

1. For each configuration of resources [ω = {a+, b−}]find the focal processes. If possible, conclude. [kz,{a+,b−} = 1]

Inconclusive cases:

– Behavior cannot be represented as a BRN– Lack of cooperation (no focal processes)

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 57 / 62

Page 160: Computational approaches to analyze complex dynamic

Information inference Parametrization Inference

Inferring Parameters[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11 a

b

z

1+

1−

ωkz,ωa b

− +− −+ ++ − 1

1. For each configuration of resources [ω = {a+, b−}]find the focal processes. If possible, conclude. [kz,{a+,b−} = 1]

Inconclusive cases:

– Behavior cannot be represented as a BRN– Lack of cooperation (no focal processes)

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 57 / 62

Page 161: Computational approaches to analyze complex dynamic

Information inference Parametrization Inference

Inferring Parameters[FPI+12]

a

0

1

b

0

1

z

0

1

2

ab

00

01

10

11 a

b

z

1+

1−

ωkz,ωa b

− +− −+ ++ − 1

1. For each configuration of resources [ω = {a+, b−}]find the focal processes. If possible, conclude. [kz,{a+,b−} = 1]

Inconclusive cases:

– Behavior cannot be represented as a BRN– Lack of cooperation (no focal processes)

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 57 / 62

Page 162: Computational approaches to analyze complex dynamic

Information inference Parametrization Inference

Inferring Parametersa

0

1

b

0

1

z

0

1

2

a

b

z

1+

1−

ωkz,ωa b

− + ?− − 0+ + 2+ − ?

1. For each configuration of resources [ω = {a+, b−}]find the focal processes. If possible, conclude. [kz,{a+,b−} = 1]

Inconclusive cases:– Behavior cannot be represented as a BRN– Lack of cooperation (no focal processes)

2. If some parameters could not be inferred, enumerate all admissibleparametrizations, regarding biological constraints and the dynamicsof the Process Hitting ⇒ kz,{a+,b−} ∈ {0; 1; 2}; kz,{a−,b+} ∈ {0; 1; 2}

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 58 / 62

Page 163: Computational approaches to analyze complex dynamic

Summary & Conclusion

Overview

1 Introduction

2 Modeling biological regulatory networksThomas’ frameworkFrom Thomas’ framework to discrete-event systemsFrom Thomas’ framework to timed systemsCommon limits of current models for biological analyses

3 The Process Hitting: a framework well suited to concurrent systemsDefinitionFrom biological models to Process Hitting and refiningTool for analyzing Process Hitting: pint

4 Inferring information on the biological model thanks to the ProcessHitting

Interaction Graph InferenceParametrization Inference

5 Summary & Conclusion

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 59 / 62

Page 164: Computational approaches to analyze complex dynamic

Summary & Conclusion

Implementation

Workflow:

Read and translate the models with OCaml→ Uses the existing free library Pint→ Documentation + examples:

http://processhitting.wordpress.com/

Express the problem in ASP (logic programming)→ Solve with Clingo (Gringo + Clasp)

Model specifications IG inference Parameters inferenceName S+CS P A ∆t Edges ∆t Parameters

[EGFR20] 20+22 152 399 1s 50 1s 191[TCRSIG40] 40+14 156 301 1s 54 1s 143[TCRSIG94] 94+39 448 1124 13s 169 ∞ 2.109

[EGFR104] 104+89 748 2356 4min 241 1min 30s 1.106/2.106

S = Sorts CS = Cooperative sorts P = Processes A = Actions

[EGFR20]: Epidermal Growth Factor Receptor, by Ozgur Sahin et al.[EGFR104]: Epidermal Growth Factor Receptor, by Regina Samaga et al.[TCRSIG40]: T-Cell Receptor Signaling, by Steffen Klamt et al.[TCRSIG94]: T-Cell Receptor Signaling, by Julio Saez-Rodriguez et al.

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 60 / 62

Page 165: Computational approaches to analyze complex dynamic

Summary & Conclusion

Implementation

Workflow:

Read and translate the models with OCaml→ Uses the existing free library Pint→ Documentation + examples:

http://processhitting.wordpress.com/

Express the problem in ASP (logic programming)→ Solve with Clingo (Gringo + Clasp)

Model specifications IG inference Parameters inferenceName S+CS P A ∆t Edges ∆t Parameters

[EGFR20] 20+22 152 399 1s 50 1s 191[TCRSIG40] 40+14 156 301 1s 54 1s 143[TCRSIG94] 94+39 448 1124 13s 169 ∞ 2.109

[EGFR104] 104+89 748 2356 4min 241 1min 30s 1.106/2.106

S = Sorts CS = Cooperative sorts P = Processes A = Actions

[EGFR20]: Epidermal Growth Factor Receptor, by Ozgur Sahin et al.[EGFR104]: Epidermal Growth Factor Receptor, by Regina Samaga et al.[TCRSIG40]: T-Cell Receptor Signaling, by Steffen Klamt et al.[TCRSIG94]: T-Cell Receptor Signaling, by Julio Saez-Rodriguez et al.

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 60 / 62

Page 166: Computational approaches to analyze complex dynamic

Summary & Conclusion

Summary

Process Hitting and ASP

Inference of the complete Interaction Graph

Inference of the possibly partial Parametrization

Enumerate all full & admissible Parametrizations

→ Exhaustive approaches

Complexity: linear in the number of genes, exponential in the number ofregulators of one gene

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 61 / 62

Page 167: Computational approaches to analyze complex dynamic

Summary & Conclusion

Summary

Contribution: new translation Process Hitting Rene Thomas

→ New formal link between the two models

→ More visibility to the Process Hitting

→ Inference approach that takes benefit from both the Process Hittingcompact structure and the power of ASP

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 61 / 62

Page 168: Computational approaches to analyze complex dynamic

Summary & Conclusion

Further work

Models and algorithms

Add priorities in the Process Hitting framework and adapt the staticanalyses approaches for this enriched model (⇒ paper currentlysubmitted at CS2Bio’13)

From priorities to quantitative timing information

Connect Process Hitting compact structure with decompositiontechniques in continuous approaches [ACC12] (⇒ paper currentlysubmitted at CMSB’13)

Application

Use the approach for the analysis of larger biological networks

Contribute to the discovery of biological regulatory networks basedon biological data

Study key properties (e.g. concept of resilience)

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 62 / 62

Page 169: Computational approaches to analyze complex dynamic

Amine Ammar, Elias Cueto, and Francisco Chinesta.Reduction of the chemical master equation for gene regulatorynetworks using proper generalized decompositions.International Journal for Numerical Methods in BiomedicalEngineering, 28(9):960–973, 2012.

Laurence Calzone, Francois Fages, and Sylvain Soliman.Biocham: an environment for modeling biological systems andformalizing experimental knowledge.Bioinformatics, 22(14):1805–1807, 2006.

Claudine Chaouiya, Aurelien Naldi, and Denis Thieffry.Logical Modelling of Gene Regulatory Networks with GINsim., volume804, pages 463–79.2012 2012.

Maxime Folschette, Loıc Pauleve, Katsumi Inoue, Morgan Magnin,and Olivier Roux.Concretizing the process hitting into biological regulatory networks.

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 62 / 62

Page 170: Computational approaches to analyze complex dynamic

In Proceedings of the 10th international conference on ComputationalMethods in Systems Biology, CMSB’12, pages 166–186, Berlin,Heidelberg, 2012. Springer-Verlag.

Z. Khalis, J.-P. Comet, A. Richard, and G. Bernot.The SMBioNet method for discovering models of gene regulatorynetworks.Genes, Genomes and Genomics, 3(special issue 1):15–22, 2009.

Loıc Pauleve, Morgan Magnin, and Olivier Roux.Refining dynamics of gene regulatory networks in a stochasticπ-calculus framework.In Transactions on Computational Systems Biology XIII, volume 6575of Lecture Notes in Comp Sci, pages 171–191. Springer, 2011.

Loıc Pauleve, Morgan Magnin, and Olivier Roux.Tuning Temporal Features within the Stochastic π-Calculus.IEEE Transactions on Software Engineering, 37(6):858–871, 2011.

Loıc Pauleve, Morgan Magnin, and Olivier Roux.

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 62 / 62

Page 171: Computational approaches to analyze complex dynamic

Static analysis of biological regulatory networks dynamics usingabstract interpretation.Mathematical Structures in Computer Science, 22(04):651–685, 2012.

Loıc Pauleve and Adrien Richard.Topological Fixed Points in Boolean Networks.Comptes Rendus de l’Academie des Sciences - Series I - Mathematics,348(15-16):825 – 828, 2010.

Adrien Richard, Jean-Paul Comet, and Gilles Bernot.R. thomas’ modeling of biological regulatory networks: Introduction ofsingular states in the qualitative dynamics.Fundam. Inform., 65(4):373–392, 2005.

R. Thomas, A.M. Gathoye, and L. Lambert.A complex control circuit. regulation of immunity in temperatebacteriophages.Eur J Biochem, 71(1):211–27, 1976.

Louis-Marie Traonouez, Didier Lime, and Olivier (H.) Roux.

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 62 / 62

Page 172: Computational approaches to analyze complex dynamic

Parametric model-checking of stopwatch petri nets.Journal of Universal Computer Science, 15(17):3273–3304, December2009.

D. A. Ouattara W. Abou-jaoude and M. Kaufman.From structure to dynamics : Frequency tuning in the p53-mdm2network. i. logical approach.Journal of Theoretical Biology, 258:561–577, 2009.

M. Magnin (IRCCyN-NII) Lecture Series - Lecture 4 / NII 2013/04/17 62 / 62