55
Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

  • View
    219

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Modelling And Observing BiologyModelling And Observing Biology

Matteo Cavaliere and Sean Sedwards

Microsoft Research – University of TrentoCentre for Computational and Systems Biology

Matteo Cavaliere and Sean Sedwards

Microsoft Research – University of TrentoCentre for Computational and Systems Biology

Page 2: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Microsoft Research – University of TrentoCentre for Computational and Systems BiologyMicrosoft Research – University of TrentoCentre for Computational and Systems Biology

Computational biology Using biology to compute, e.g. DNA computing Modelling biology as a computational paradigm

Systems biology Modelling biological systems Specifically concerned with interactions

Computational biology Using biology to compute, e.g. DNA computing Modelling biology as a computational paradigm

Systems biology Modelling biological systems Specifically concerned with interactions

Page 3: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Microsoft Research – University of TrentoCentre for Computational And Systems BiologyMicrosoft Research – University of TrentoCentre for Computational And Systems Biology

Biological experiments are time consuming

Goal to provide ‘in-silico’ experimentation

Current tools based on process calculi, e.g. π-calculus formal language, e.g. P-systems model checking

Develop new tools with better abstractions

Biological experiments are time consuming

Goal to provide ‘in-silico’ experimentation

Current tools based on process calculi, e.g. π-calculus formal language, e.g. P-systems model checking

Develop new tools with better abstractions

Page 4: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Our Inspiration And ChallengeOur Inspiration And Challenge

““Quegli che pigliavano Quegli che pigliavano per altore altro che la per altore altro che la natura maestra de‘ natura maestra de‘ maestri s'affaticavano maestri s'affaticavano invano”invano”

Leonardo Da VinciLeonardo Da Vinci

“Those who took other Those who took other inspiration than from inspiration than from nature, master of nature, master of masters, were labouring masters, were labouring in vain.”in vain.”

Page 5: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Membrane Systems (P-systems)Membrane Systems (P-systems)

Originally a computational paradigm introduced in 1998*

Inspired by the structure and functionof biological cells

Based on formal language theory, using concurrent multiset rewriting

Very adaptable: now many variants

Originally a computational paradigm introduced in 1998*

Inspired by the structure and functionof biological cells

Based on formal language theory, using concurrent multiset rewriting

Very adaptable: now many variants

*Gh. Păun. Computoing with Membranes, Journal of Computer and System Science, Vol. 61, No. 1, August 2000, pp. 108-143.*Gh. Păun. Computoing with Membranes, Journal of Computer and System Science, Vol. 61, No. 1, August 2000, pp. 108-143.

Page 6: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

A Membrane SystemA Membrane System

a a b

c c a

b

a a b + a a + ca b

a + b c

b + c b + a

hierarchical system of compartments with membranes

multisets of floating objects local to regions

local evolution rules based on formal language rewriting

system environment

a a b

multisets of objects attached to membranes

a + b c

Page 7: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Our ModelOur Model

Over one third of the human genome codes for membrane proteins

Our model is an hierarchy of compartments enclosed by membranes having three layers:

We explicitly model peripheral and integral membrane proteins

Over one third of the human genome codes for membrane proteins

Our model is an hierarchy of compartments enclosed by membranes having three layers:

We explicitly model peripheral and integral membrane proteins

outer surfaceproteins

integralproteins

inner surfaceproteins

Page 8: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Our ModelOur Model

To model biology we require rules for:

Rewriting of objects to model chemical reactions

Attachment of objects to membrane to alter membrane configuration

Movement of objects conditional on membrane configuration to model e.g. endo- and exocytosis

To model biology we require rules for:

Rewriting of objects to model chemical reactions

Attachment of objects to membrane to alter membrane configuration

Movement of objects conditional on membrane configuration to model e.g. endo- and exocytosis

Page 9: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

RewritingRewriting

Rules used to generate languages:

[ u v ] tuv tvv

[ a ab ] a ab abb abbb ….

[ xy xx ] xyyy xxyy xxxy xxxx

Behave like chemical reactions:

x + y 2 x

Rules used to generate languages:

[ u v ] tuv tvv

[ a ab ] a ab abb abbb ….

[ xy xx ] xyyy xxyy xxxy xxxx

Behave like chemical reactions:

x + y 2 x

Page 10: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

MultisetsMultisets

A multiset is a set where each element may have a multiplicity

{a, a, a, b, b, c, c, c, c} = {(a,3), (b,2), (c,4)}

A multiset can be represented by a string

{(a,3), (b,2), (c,4)} = aaabbcccc

A chemical solution can be considered a multiset of molecules

A multiset is a set where each element may have a multiplicity

{a, a, a, b, b, c, c, c, c} = {(a,3), (b,2), (c,4)}

A multiset can be represented by a string

{(a,3), (b,2), (c,4)} = aaabbcccc

A chemical solution can be considered a multiset of molecules

Page 11: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Evolution RulesEvolution Rules

[ a b ][ a b ] 1

a aa

u vb

12

u v

Page 12: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Evolution RulesEvolution Rules

[ a b ][ a b ] 1

b ba

u vb

12

a aa

u vb

12

u v

Page 13: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Membrane RulesMembrane Rules

General membrane rule:

[ w ]u|v|x + z [ w′ ]u′|v′|x′ + z′ w,u,v,x,z,w′,u′,v′,x′,z′ V*

w = prior multiset of floating objects

u = prior multiset attached to inner surface of membrane

v = prior multiset integral to membrane

x = prior multiset attached to external surface

z = prior multiset of external floating objects

w′ = posterior multiset of floating objects

u′ = posterior multiset attached to inner surface

v′ = posterior multiset integral to membrane

x′ = posterior multiset attached to external surface

z′ = posterior multiset of external floating objects

General membrane rule:

[ w ]u|v|x + z [ w′ ]u′|v′|x′ + z′ w,u,v,x,z,w′,u′,v′,x′,z′ V*

w = prior multiset of floating objects

u = prior multiset attached to inner surface of membrane

v = prior multiset integral to membrane

x = prior multiset attached to external surface

z = prior multiset of external floating objects

w′ = posterior multiset of floating objects

u′ = posterior multiset attached to inner surface

v′ = posterior multiset integral to membrane

x′ = posterior multiset attached to external surface

z′ = posterior multiset of external floating objects

Page 14: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Attachment RulesAttachment Rules

[ a ]u|v| [ ]a'u'|v'|

[ ] |v|x a [ ] |v‘|x'a'

[ a ]u|v| [ ]a'u'|v'|

[ ] |v|x a [ ] |v‘|x'a'

1

2 2

1

a a

b

1

a

2

v x

u v

Page 15: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Attachment RulesAttachment Rules

[ a ]u|v| [ ]a'u'|v'|

[ ] |v|x a [ ] |v‘|x'a'

[ a ]u|v| [ ]a'u'|v'|

[ ] |v|x a [ ] |v‘|x'a'

1

2 2

1

attachment dependent on membrane markings

a

b

1

a

2

a'u' v'

v x

a a

b

1

a

2

v x

u v

Page 16: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Attachment RulesAttachment Rules

[ a ]u|v| [ ]a'u'|v'|

[ ] |v|x a [ ] |v‘|x'a'

[ a ]u|v| [ ]a'u'|v'|

[ ] |v|x a [ ] |v‘|x'a'

1

2 2

1

a

b

1

v' x'a'

2

a'u' v'

a a

b

1

a

2

v x

a

b

1

a

2

a'u' v'

v x

u v

Page 17: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Movement RulesMovement Rules

[ a ]u|v| [ ]u'|v'| + a'

[ ] |v|x a [ a' ] |v‘|x'

[ a ]u|v| [ ]u'|v'| + a'

[ ] |v|x a [ a' ] |v‘|x'

1

2 2

1

a a

b

1

a

2

v x

u v

Page 18: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Movement RulesMovement Rules

[ a ]u|v| [ ]u'|v'| + a'

[ ] |v|x a [ a' ] |v‘|x'

[ a ]u|v| [ ]u'|v'| + a'

[ ] |v|x a [ a' ] |v‘|x'

movement dependent on membrane markings

1

2 2

1

a a

b

1

a

2

v x

u v

a a

b

12

au' v'

v x

Page 19: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Movement RulesMovement Rules

[ a ]u|v| [ ]u'|v'| + a'

[ ] |v|x a [ a' ] |v‘|x'

[ a ]u|v| [ ]u'|v'| + a'

[ ] |v|x a [ a' ] |v‘|x'

1

2 2

1

a a

b

1

a

2

v x

u v

a a

b

12

a

v x

a'u' v'a

b a

12

v' x'

a'u' v'

Page 20: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Evolution SemanticsEvolution Semantics

Maximal parallelall possible rules applied at the same time

universal power but properties undecidable

no apparent biological relevance

Free parallelan arbitrary number of rules applied

power equivalent to matrix grammar w/o a/c

reachability of configurations / markings is decidable

chemical semantics are sequential (specific case)

Maximal parallelall possible rules applied at the same time

universal power but properties undecidable

no apparent biological relevance

Free parallelan arbitrary number of rules applied

power equivalent to matrix grammar w/o a/c

reachability of configurations / markings is decidable

chemical semantics are sequential (specific case)

Page 21: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Stochastically select rule r to occur next with delay dt, else quit if no rule can be applied.

Execute rule r, t := t + dt.

Stochastically select rule r to occur next with delay dt, else quit if no rule can be applied.

Execute rule r, t := t + dt.

Discrete Stochastic EvolutionDiscrete Stochastic Evolution

Associate a reaction rate to each rule

Use Gillespie algorithm to select: which rule occurs next when it occurs

Time t=0

Associate a reaction rate to each rule

Use Gillespie algorithm to select: which rule occurs next when it occurs

Time t=0

Page 22: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Conceptually…

Every object in the system is mapped to a new floating object in a new system with a single compartment.

Each new object has a subscript which uniquely defines its previous containment and attachment.

Conceptually…

Every object in the system is mapped to a new floating object in a new system with a single compartment.

Each new object has a subscript which uniquely defines its previous containment and attachment.

a a

b

1

a

u x

2

u x

b2 u2,inner x2,outer

a1a1a1 u1,inner x1,outer

Algorithm Applied To MembranesAlgorithm Applied To Membranes

Page 23: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

[ a ]u|v| [ ]au|v|

[ ] |v|x a [ a ] |v|x

Algorithm Applied To MembranesAlgorithm Applied To Membranes

Every rule in the system is mapped to a new evolve rule, using the same mappings as the objects

The stochastic algorithm is then applied to the new system comprising the mapped rules and objects in a single compartment

Every rule in the system is mapped to a new evolve rule, using the same mappings as the objects

The stochastic algorithm is then applied to the new system comprising the mapped rules and objects in a single compartment

1

2 2

1 [ a1u1,innerv1,integral a1,inneru1,innerv1,integral ]

[ a1v2,integralx2,outer a2v2,integralx2,outer ]

Page 24: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Simulator Rule SyntaxSimulator Rule Syntax

Standard evolution rule:

[ a b ] a,b V*

a={a1,a2,a3}, b={b1,b2}

Simulator evolution rule:

a1 + a2 + a3 -> b1 + b2

Standard evolution rule:

[ a b ] a,b V*

a={a1,a2,a3}, b={b1,b2}

Simulator evolution rule:

a1 + a2 + a3 -> b1 + b2

Page 25: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

objectobject gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR

rulerule circadian_clock circadian_clock {{

gene_A 50-> MA + gene_Agene_A 50-> MA + gene_AA+gene_A 1-> A_gene_AA+gene_A 1-> A_gene_AA_gene_A 500-> MA + A_gene_AA_gene_A 500-> MA + A_gene_Agene_R 0.01-> MR + gene_Rgene_R 0.01-> MR + gene_RA_gene_R 50-> MR + A_gene_RA_gene_R 50-> MR + A_gene_RMA 50-> AMA 50-> AMR 5-> RMR 5-> RA+R 2-> ARA+R 2-> AR AR 1-> RAR 1-> RA 1-> 0A A 1-> 0A R 0.2-> 0RR 0.2-> 0RMA 10-> 0MAMA 10-> 0MAMR 0.5-> 0MRMR 0.5-> 0MR A_gene_R 100-> A+gene_RA_gene_R 100-> A+gene_RA+gene_R 1-> A_gene_RA+gene_R 1-> A_gene_RA_gene_A 50-> A+gene_AA_gene_A 50-> A+gene_A

}}systemsystem 1 gene_A, 1 gene_R, circadian_clock 1 gene_A, 1 gene_R, circadian_clockevolveevolve 0-150000 0-150000plotplot A, R A, R

objectobject gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR

rulerule circadian_clock circadian_clock {{

gene_A 50-> MA + gene_Agene_A 50-> MA + gene_AA+gene_A 1-> A_gene_AA+gene_A 1-> A_gene_AA_gene_A 500-> MA + A_gene_AA_gene_A 500-> MA + A_gene_Agene_R 0.01-> MR + gene_Rgene_R 0.01-> MR + gene_RA_gene_R 50-> MR + A_gene_RA_gene_R 50-> MR + A_gene_RMA 50-> AMA 50-> AMR 5-> RMR 5-> RA+R 2-> ARA+R 2-> AR AR 1-> RAR 1-> RA 1-> 0A A 1-> 0A R 0.2-> 0RR 0.2-> 0RMA 10-> 0MAMA 10-> 0MAMR 0.5-> 0MRMR 0.5-> 0MR A_gene_R 100-> A+gene_RA_gene_R 100-> A+gene_RA+gene_R 1-> A_gene_RA+gene_R 1-> A_gene_RA_gene_A 50-> A+gene_AA_gene_A 50-> A+gene_A

}}systemsystem 1 gene_A, 1 gene_R, circadian_clock 1 gene_A, 1 gene_R, circadian_clockevolveevolve 0-150000 0-150000plotplot A, R A, R

Circadian ClockCircadian ClockCircadian ClockCircadian Clock

Vilar, Kueh, Barkai, Leibler, PNAS, 99, 9, 2002 Vilar, Kueh, Barkai, Leibler, PNAS, 99, 9, 2002

5050

11

5050

500500

10 5010 50

MAMA

0.01 500.01 50

AA RR

AA

AA AA

ARAR

AA

++

++ ++

gene_Agene_A

MRMR

55 0.50.5

22 11 0.20.2

11

11

100100

gene_Rgene_RA_gene_AA_gene_A A_gene_RA_gene_R

alphabet definitionalphabet definition

rule definitionsrule definitions

average reaction rateaverage reaction rate

initial system configurationinitial system configuration

observation periodobservation periodobjects to observeobjects to observe

Page 26: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

objectobject gene_A,A_gene_A,gene_R,A_gene_R,MA,MR, gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,AA,R,AR,R,AR

rulerule circadian_clock circadian_clock {{

gene_A 50-> MA + gene_Agene_A 50-> MA + gene_AA+gene_A 1-> A_gene_AA+gene_A 1-> A_gene_AA_gene_A 500-> MA + A_gene_AA_gene_A 500-> MA + A_gene_Agene_R 0.01-> MR + gene_Rgene_R 0.01-> MR + gene_RA_gene_R 50-> MR + A_gene_RA_gene_R 50-> MR + A_gene_RMA 50-> AMA 50-> AMR 5-> RMR 5-> RA+R 2-> ARA+R 2-> AR AR 1-> RAR 1-> RA 1-> 0A A 1-> 0A R 0.2-> 0RR 0.2-> 0RMA 10-> 0MAMA 10-> 0MAMR 0.5-> 0MRMR 0.5-> 0MR A_gene_R 100-> A+gene_RA_gene_R 100-> A+gene_RA+gene_R 1-> A_gene_RA+gene_R 1-> A_gene_RA_gene_A 50-> A+gene_AA_gene_A 50-> A+gene_A

}}systemsystem 1 gene_A, 1 gene_R, circadian_clock 1 gene_A, 1 gene_R, circadian_clockevolveevolve 0-150000 0-150000plotplot A, R A, R

objectobject gene_A,A_gene_A,gene_R,A_gene_R,MA,MR, gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,AA,R,AR,R,AR

rulerule circadian_clock circadian_clock {{

gene_A 50-> MA + gene_Agene_A 50-> MA + gene_AA+gene_A 1-> A_gene_AA+gene_A 1-> A_gene_AA_gene_A 500-> MA + A_gene_AA_gene_A 500-> MA + A_gene_Agene_R 0.01-> MR + gene_Rgene_R 0.01-> MR + gene_RA_gene_R 50-> MR + A_gene_RA_gene_R 50-> MR + A_gene_RMA 50-> AMA 50-> AMR 5-> RMR 5-> RA+R 2-> ARA+R 2-> AR AR 1-> RAR 1-> RA 1-> 0A A 1-> 0A R 0.2-> 0RR 0.2-> 0RMA 10-> 0MAMA 10-> 0MAMR 0.5-> 0MRMR 0.5-> 0MR A_gene_R 100-> A+gene_RA_gene_R 100-> A+gene_RA+gene_R 1-> A_gene_RA+gene_R 1-> A_gene_RA_gene_A 50-> A+gene_AA_gene_A 50-> A+gene_A

}}systemsystem 1 gene_A, 1 gene_R, circadian_clock 1 gene_A, 1 gene_R, circadian_clockevolveevolve 0-150000 0-150000plotplot A, R A, R

Circadian ClockCircadian ClockCircadian ClockCircadian Clock

Vilar, Kueh, Barkai, Leibler, PNAS, 99, 9, 2002 Vilar, Kueh, Barkai, Leibler, PNAS, 99, 9, 2002

5050

11

5050

500500

10 5010 50

MAMA

0.01 500.01 50

AA RR

AA

AA AA

ARAR

AA

++

++ ++

MRMR

55 0.50.5

22 11 0.20.2

11

11

100100

gene_Agene_A gene_Rgene_RA_gene_AA_gene_A A_gene_RA_gene_R

Page 27: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

objectobject gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR

rulerule circadian_clock circadian_clock {{

gene_A 50-> MA + gene_Agene_A 50-> MA + gene_AA+gene_A 1-> A_gene_AA+gene_A 1-> A_gene_AA_gene_A 500-> MA + A_gene_AA_gene_A 500-> MA + A_gene_Agene_R 0.01-> MR + gene_Rgene_R 0.01-> MR + gene_RA_gene_R 50-> MR + A_gene_RA_gene_R 50-> MR + A_gene_RMA 50-> AMA 50-> AMR 5-> RMR 5-> RA+R 2-> ARA+R 2-> AR AR 1-> RAR 1-> RA 1-> 0A A 1-> 0A R 0.2-> 0RR 0.2-> 0RMA 10-> 0MAMA 10-> 0MAMR 0.5-> 0MRMR 0.5-> 0MR A_gene_R 100-> A+gene_RA_gene_R 100-> A+gene_RA+gene_R 1-> A_gene_RA+gene_R 1-> A_gene_RA_gene_A 50-> A+gene_AA_gene_A 50-> A+gene_A

}}systemsystem 1 gene_A, 1 gene_R, circadian_clock 1 gene_A, 1 gene_R, circadian_clockevolveevolve 0-150000 0-150000plotplot A, R A, R

objectobject gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR

rulerule circadian_clock circadian_clock {{

gene_A 50-> MA + gene_Agene_A 50-> MA + gene_AA+gene_A 1-> A_gene_AA+gene_A 1-> A_gene_AA_gene_A 500-> MA + A_gene_AA_gene_A 500-> MA + A_gene_Agene_R 0.01-> MR + gene_Rgene_R 0.01-> MR + gene_RA_gene_R 50-> MR + A_gene_RA_gene_R 50-> MR + A_gene_RMA 50-> AMA 50-> AMR 5-> RMR 5-> RA+R 2-> ARA+R 2-> AR AR 1-> RAR 1-> RA 1-> 0A A 1-> 0A R 0.2-> 0RR 0.2-> 0RMA 10-> 0MAMA 10-> 0MAMR 0.5-> 0MRMR 0.5-> 0MR A_gene_R 100-> A+gene_RA_gene_R 100-> A+gene_RA+gene_R 1-> A_gene_RA+gene_R 1-> A_gene_RA_gene_A 50-> A+gene_AA_gene_A 50-> A+gene_A

}}systemsystem 1 gene_A, 1 gene_R, circadian_clock 1 gene_A, 1 gene_R, circadian_clockevolveevolve 0-150000 0-150000plotplot A, R A, R

Circadian ClockCircadian ClockCircadian ClockCircadian Clock

Vilar, Kueh, Barkai, Leibler, PNAS, 99, 9, 2002 Vilar, Kueh, Barkai, Leibler, PNAS, 99, 9, 2002

5050

11

5050

500500

10 5010 50

MAMA

0.01 500.01 50

AA RR

AA

AA AA

ARAR

AA

++

++ ++

MRMR

55 0.50.5

22 11 0.20.2

11

11

100100

gene_Agene_A gene_Rgene_RA_gene_AA_gene_A A_gene_RA_gene_R

Page 28: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

objectobject gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR

rulerule circadian_clock circadian_clock {{

gene_A 50-> MA + gene_Agene_A 50-> MA + gene_AA+gene_A 1-> A_gene_AA+gene_A 1-> A_gene_AA_gene_A 500-> MA + A_gene_AA_gene_A 500-> MA + A_gene_Agene_R 0.01-> MR + gene_Rgene_R 0.01-> MR + gene_RA_gene_R 50-> MR + A_gene_RA_gene_R 50-> MR + A_gene_RMA 50-> AMA 50-> AMR 5-> RMR 5-> RA+R 2-> ARA+R 2-> AR AR 1-> RAR 1-> RA 1-> 0A A 1-> 0A R 0.2-> 0RR 0.2-> 0RMA 10-> 0MAMA 10-> 0MAMR 0.5-> 0MRMR 0.5-> 0MR A_gene_R 100-> A+gene_RA_gene_R 100-> A+gene_RA+gene_R 1-> A_gene_RA+gene_R 1-> A_gene_RA_gene_A 50-> A+gene_AA_gene_A 50-> A+gene_A

}}systemsystem 1 gene_A, 1 gene_R, circadian_clock 1 gene_A, 1 gene_R, circadian_clockevolveevolve 0-150000 0-150000plotplot A, R A, R

objectobject gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR

rulerule circadian_clock circadian_clock {{

gene_A 50-> MA + gene_Agene_A 50-> MA + gene_AA+gene_A 1-> A_gene_AA+gene_A 1-> A_gene_AA_gene_A 500-> MA + A_gene_AA_gene_A 500-> MA + A_gene_Agene_R 0.01-> MR + gene_Rgene_R 0.01-> MR + gene_RA_gene_R 50-> MR + A_gene_RA_gene_R 50-> MR + A_gene_RMA 50-> AMA 50-> AMR 5-> RMR 5-> RA+R 2-> ARA+R 2-> AR AR 1-> RAR 1-> RA 1-> 0A A 1-> 0A R 0.2-> 0RR 0.2-> 0RMA 10-> 0MAMA 10-> 0MAMR 0.5-> 0MRMR 0.5-> 0MR A_gene_R 100-> A+gene_RA_gene_R 100-> A+gene_RA+gene_R 1-> A_gene_RA+gene_R 1-> A_gene_RA_gene_A 50-> A+gene_AA_gene_A 50-> A+gene_A

}}systemsystem 1 gene_A, 1 gene_R, circadian_clock 1 gene_A, 1 gene_R, circadian_clockevolveevolve 0-150000 0-150000plotplot A, R A, R

Circadian ClockCircadian ClockCircadian ClockCircadian Clock

Vilar, Kueh, Barkai, Leibler, PNAS, 99, 9, 2002 Vilar, Kueh, Barkai, Leibler, PNAS, 99, 9, 2002

5050

11

5050

500500

10 5010 50

MAMA

0.01 500.01 50

AA RR

AA

AA AA

ARAR

AA

++

++ ++

MRMR

55 0.50.5

22 11 0.20.2

11

11

100100

gene_Agene_A gene_Rgene_RA_gene_AA_gene_A A_gene_RA_gene_R

Page 29: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

objectobject gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR

rulerule circadian_clock circadian_clock {{

gene_A 50-> MA + gene_Agene_A 50-> MA + gene_AA+gene_A 1-> A_gene_AA+gene_A 1-> A_gene_AA_gene_A 500-> MA + A_gene_AA_gene_A 500-> MA + A_gene_Agene_R 0.01-> MR + gene_Rgene_R 0.01-> MR + gene_RA_gene_R 50-> MR + A_gene_RA_gene_R 50-> MR + A_gene_RMA 50-> AMA 50-> AMR 5-> RMR 5-> RA+R 2-> ARA+R 2-> AR AR 1-> RAR 1-> RA 1-> 0A A 1-> 0A R 0.2-> 0RR 0.2-> 0RMA 10-> 0MAMA 10-> 0MAMR 0.5-> 0MRMR 0.5-> 0MR A_gene_R 100-> A+gene_RA_gene_R 100-> A+gene_RA+gene_R 1-> A_gene_RA+gene_R 1-> A_gene_RA_gene_A 50-> A+gene_AA_gene_A 50-> A+gene_A

}}systemsystem 1 gene_A, 1 gene_R, circadian_clock 1 gene_A, 1 gene_R, circadian_clockevolveevolve 0-150000 0-150000plotplot A, R A, R

objectobject gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR

rulerule circadian_clock circadian_clock {{

gene_A 50-> MA + gene_Agene_A 50-> MA + gene_AA+gene_A 1-> A_gene_AA+gene_A 1-> A_gene_AA_gene_A 500-> MA + A_gene_AA_gene_A 500-> MA + A_gene_Agene_R 0.01-> MR + gene_Rgene_R 0.01-> MR + gene_RA_gene_R 50-> MR + A_gene_RA_gene_R 50-> MR + A_gene_RMA 50-> AMA 50-> AMR 5-> RMR 5-> RA+R 2-> ARA+R 2-> AR AR 1-> RAR 1-> RA 1-> 0A A 1-> 0A R 0.2-> 0RR 0.2-> 0RMA 10-> 0MAMA 10-> 0MAMR 0.5-> 0MRMR 0.5-> 0MR A_gene_R 100-> A+gene_RA_gene_R 100-> A+gene_RA+gene_R 1-> A_gene_RA+gene_R 1-> A_gene_RA_gene_A 50-> A+gene_AA_gene_A 50-> A+gene_A

}}systemsystem 1 gene_A, 1 gene_R, circadian_clock 1 gene_A, 1 gene_R, circadian_clockevolveevolve 0-150000 0-150000plotplot A, R A, R

Circadian ClockCircadian ClockCircadian ClockCircadian Clock

Vilar, Kueh, Barkai, Leibler, PNAS, 99, 9, 2002 Vilar, Kueh, Barkai, Leibler, PNAS, 99, 9, 2002

5050

11

5050

500500

10 5010 50

MAMA

0.01 500.01 50

AA RR

AA

AA AA

ARAR

AA

++

++ ++

gene_Agene_A

MRMR

55 0.50.5

22 11 0.20.2

11

11

100100

gene_Rgene_RA_gene_AA_gene_A A_gene_RA_gene_R

Page 30: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

objectobject gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR

rulerule circadian_clockcircadian_clock {{

gene_A 50-> MA + gene_Agene_A 50-> MA + gene_AA+gene_A 1-> A_gene_AA+gene_A 1-> A_gene_AA_gene_A 500-> MA + A_gene_AA_gene_A 500-> MA + A_gene_Agene_R 0.01-> MR + gene_Rgene_R 0.01-> MR + gene_RA_gene_R 50-> MR + A_gene_RA_gene_R 50-> MR + A_gene_RMA 50-> AMA 50-> AMR 5-> RMR 5-> RA+R 2-> ARA+R 2-> AR AR 1-> RAR 1-> RA 1-> 0A A 1-> 0A R 0.2-> 0RR 0.2-> 0RMA 10-> 0MAMA 10-> 0MAMR 0.5-> 0MRMR 0.5-> 0MR A_gene_R 100-> A+gene_RA_gene_R 100-> A+gene_RA+gene_R 1-> A_gene_RA+gene_R 1-> A_gene_RA_gene_A 50-> A+gene_AA_gene_A 50-> A+gene_A

}}systemsystem 1 gene_A, 1 gene_R, 1 gene_A, 1 gene_R, circadian_clockcircadian_clockevolveevolve 0-150000 0-150000plotplot A, R A, R

objectobject gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR

rulerule circadian_clockcircadian_clock {{

gene_A 50-> MA + gene_Agene_A 50-> MA + gene_AA+gene_A 1-> A_gene_AA+gene_A 1-> A_gene_AA_gene_A 500-> MA + A_gene_AA_gene_A 500-> MA + A_gene_Agene_R 0.01-> MR + gene_Rgene_R 0.01-> MR + gene_RA_gene_R 50-> MR + A_gene_RA_gene_R 50-> MR + A_gene_RMA 50-> AMA 50-> AMR 5-> RMR 5-> RA+R 2-> ARA+R 2-> AR AR 1-> RAR 1-> RA 1-> 0A A 1-> 0A R 0.2-> 0RR 0.2-> 0RMA 10-> 0MAMA 10-> 0MAMR 0.5-> 0MRMR 0.5-> 0MR A_gene_R 100-> A+gene_RA_gene_R 100-> A+gene_RA+gene_R 1-> A_gene_RA+gene_R 1-> A_gene_RA_gene_A 50-> A+gene_AA_gene_A 50-> A+gene_A

}}systemsystem 1 gene_A, 1 gene_R, 1 gene_A, 1 gene_R, circadian_clockcircadian_clockevolveevolve 0-150000 0-150000plotplot A, R A, R

Circadian ClockCircadian ClockCircadian ClockCircadian Clock

Vilar, Kueh, Barkai, Leibler, PNAS, 99, 9, 2002 Vilar, Kueh, Barkai, Leibler, PNAS, 99, 9, 2002

5050

11

5050

500500

10 5010 50

MAMA

0.01 500.01 50

AA RR

AA

AA AA

ARAR

AA

++

++ ++

gene_Agene_A

MRMR

55 0.50.5

22 11 0.20.2

11

11

100100

gene_Rgene_RA_gene_AA_gene_A A_gene_RA_gene_R

Page 31: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Circadian Clock SimulationCircadian Clock Simulation

0

50

100

150

200

250

0 50 100 150 200 250 0

50

100

150

200

250

0 50 100 150 200 250

A

R

Oscillations with period c24 hourshours

Page 32: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

In-silico Knockout ExperimentIn-silico Knockout ExperimentIn-silico Knockout ExperimentIn-silico Knockout Experiment

objectobject gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR

rulerule circadian_clock circadian_clock {{

gene_A 50-> MA + gene_Agene_A 50-> MA + gene_AA+gene_A 1-> A_gene_AA+gene_A 1-> A_gene_AA_gene_A 500-> MA + A_gene_AA_gene_A 500-> MA + A_gene_Agene_R 0.01-> MR + gene_Rgene_R 0.01-> MR + gene_RA_gene_R 50-> MR + A_gene_RA_gene_R 50-> MR + A_gene_RMA 50-> AMA 50-> AMR 5-> RMR 5-> RA+R 2-> ARA+R 2-> AR AR 1-> RAR 1-> RA 1-> 0A A 1-> 0A R 0.2-> 0RR 0.2-> 0RMA 10-> 0MAMA 10-> 0MAMR 0.5-> 0MRMR 0.5-> 0MR A_gene_R 100-> A+gene_RA_gene_R 100-> A+gene_RA+gene_R 1-> A_gene_RA+gene_R 1-> A_gene_RA_gene_A 50-> A+gene_AA_gene_A 50-> A+gene_A

}}systemsystem 1 gene_A, 1 gene_R, 1 gene_A, 1 gene_R, -1 gene_R@50000-1 gene_R@50000, , -1 A_gene_R@50000-1 A_gene_R@50000, circadian_clock, circadian_clockevolveevolve 0-150000 0-150000plotplot A, R A, R

objectobject gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR gene_A,A_gene_A,gene_R,A_gene_R,MA,MR,A,R,AR

rulerule circadian_clock circadian_clock {{

gene_A 50-> MA + gene_Agene_A 50-> MA + gene_AA+gene_A 1-> A_gene_AA+gene_A 1-> A_gene_AA_gene_A 500-> MA + A_gene_AA_gene_A 500-> MA + A_gene_Agene_R 0.01-> MR + gene_Rgene_R 0.01-> MR + gene_RA_gene_R 50-> MR + A_gene_RA_gene_R 50-> MR + A_gene_RMA 50-> AMA 50-> AMR 5-> RMR 5-> RA+R 2-> ARA+R 2-> AR AR 1-> RAR 1-> RA 1-> 0A A 1-> 0A R 0.2-> 0RR 0.2-> 0RMA 10-> 0MAMA 10-> 0MAMR 0.5-> 0MRMR 0.5-> 0MR A_gene_R 100-> A+gene_RA_gene_R 100-> A+gene_RA+gene_R 1-> A_gene_RA+gene_R 1-> A_gene_RA_gene_A 50-> A+gene_AA_gene_A 50-> A+gene_A

}}systemsystem 1 gene_A, 1 gene_R, 1 gene_A, 1 gene_R, -1 gene_R@50000-1 gene_R@50000, , -1 A_gene_R@50000-1 A_gene_R@50000, circadian_clock, circadian_clockevolveevolve 0-150000 0-150000plotplot A, R A, R

knockout gene for Rknockout gene for Rat step 50000at step 50000

Page 33: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Knockout Simulation ResultsKnockout Simulation Results

0

50

100

150

200

250

300

0 20 40 60 80 100 120 140 160 0

50

100

150

200

250

300

0 20 40 60 80 100 120 140 160

A

R

Switch off gene for Rhours

Page 34: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Hidden PathwayHidden Pathway

0

50

100

150

200

250

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 0

50

100

150

200

250

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 0

50

100

150

200

250

0 1000 2000 3000 4000 5000 6000 7000 8000 9000

R

AR

Residual R persists due to slow decay of ARhours

Page 35: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Model attach rules:

[ a ]u|v| [ ]a'u'|v'| a,u,v,x,a',u',v',x' V

[ ] |v|x a [ ] |v'|x'a'

Simulator attach rules:a1 + u1|v1| -> a2,u2|v2|

|v1|x1 + a1 -> |v2|x2,a2

Model attach rules:

[ a ]u|v| [ ]a'u'|v'| a,u,v,x,a',u',v',x' V

[ ] |v|x a [ ] |v'|x'a'

Simulator attach rules:a1 + u1|v1| -> a2,u2|v2|

|v1|x1 + a1 -> |v2|x2,a2

Membrane Rule SyntaxMembrane Rule Syntax

inside outside membrane

attached

Page 36: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Model move rules:

[ a ]u|v| [ ]u'|v'| a' a,u,v,x,a',u',v',x' V

[ ] |v|x a [ a ] |v'|x'

Simulator move rules:a1 + u1|v1| -> u2|v2| + a2

|v1|x1 + a1 -> a2 + |v2|x2

Model move rules:

[ a ]u|v| [ ]u'|v'| a' a,u,v,x,a',u',v',x' V

[ ] |v|x a [ a ] |v'|x'

Simulator move rules:a1 + u1|v1| -> u2|v2| + a2

|v1|x1 + a1 -> a2 + |v2|x2

Move Rule SyntaxMove Rule Syntax

inside outside outsideinside

Page 37: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Yeast G-protein CycleYeast G-protein Cycle

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

Yi, Kitano, Simon, PNAS, 100, 19, 2003

Page 38: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Yeast G-protein CycleYeast G-protein Cycle

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

Page 39: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Yeast G-protein CycleYeast G-protein Cycle

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

Page 40: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Yeast G-protein CycleYeast G-protein Cycle

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

Page 41: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Yeast G-protein CycleYeast G-protein Cycle

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

Page 42: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Yeast G-protein CycleYeast G-protein Cycle

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

Page 43: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Yeast G-protein CycleYeast G-protein Cycle

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

Page 44: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Yeast G-protein CycleYeast G-protein Cycle

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

Page 45: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Yeast G-protein CycleYeast G-protein Cycle

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

object L,R,RL,Gd,Gbg,Gabg,Ga

rule g_cycle {|| 4-> |R||R| + L 3.32e-18-> |RL||RL| 0.01-> |R| + L|RL| 0.004-> RL + |||R| 4.0e-4-> R + ||Gabg + |RL| 1.0e-5-> Ga, Gbg + |RL|Gd + Gbg 1-> GabgGa 0.11-> Gd

}rule vac_rule {

|| + R 4.0e-4-> R + |||| + RL 0.004-> RL + ||

}compartment vacuole [vac_rule]compartment cell [vacuole, 3000 Gd, 3000 Gbg, 7000 Gabg, g_cycle : |10000 R|]

system cell, 6.022e17 L

evolve 0-600000

plot cell[Gd,Gbg,Gabg,Ga:|R,RL|]

0

2000

4000

6000

8000

10000

0 100 200 300 400 500 600 0

2000

4000

6000

8000

10000

0 100 200 300 400 500 600 0

2000

4000

6000

8000

10000

0 100 200 300 400 500 600 0

2000

4000

6000

8000

10000

0 100 200 300 400 500 600 0

2000

4000

6000

8000

10000

0 100 200 300 400 500 600 0

2000

4000

6000

8000

10000

0 100 200 300 400 500 600

Gbg Ga

Gabg

R

RL

Gd

Page 46: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Composing SystemsComposing Systems

componentscomponents

Electronic components designed to be compositionalElectronic components designed to be compositional

sub-circuitssub-circuits electronic systemselectronic systemscircuitscircuitsfunctional blocksfunctional blocks

Page 47: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

We would like biology to be the same…

Biology is not designed to be decomposed

We would like biology to be the same…

Biology is not designed to be decomposed

Decomposing BiologyDecomposing Biology

BiologyBiology

Page 48: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Levels Of AbstractionLevels Of Abstraction

Problem:Biological systems are maximally complex

Impossible to know everything about structure

Difficult to model at a molecular level with partial information

Difficult to find perfect level of abstraction

Possible solution:model at an arbitrary level of abstraction using a formal observer

Problem:Biological systems are maximally complex

Impossible to know everything about structure

Difficult to model at a molecular level with partial information

Difficult to find perfect level of abstraction

Possible solution:model at an arbitrary level of abstraction using a formal observer

Page 49: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Computing By ObservingComputing By Observing

Possible to compute by simply observing the evolution of a system*

Universal power from a FSA observing a PDA get everything by just changing the observer

Possible to compute by simply observing the evolution of a system*

Universal power from a FSA observing a PDA get everything by just changing the observer

*M. Cavaliere, P. Frisco, H. Hoogeboom, Computing by Only Observing, Lecture Notes in Computer Science 4036, Springer-Verlag. *M. Cavaliere, P. Frisco, H. Hoogeboom, Computing by Only Observing, Lecture Notes in Computer Science 4036, Springer-Verlag.

Page 50: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Computing By ObservingComputing By Observing

Possible to compute by simply observing the evolution of a system*

Universal power from a FSA observing a PDA get everything by just changing the observer

Possible to compute by simply observing the evolution of a system*

Universal power from a FSA observing a PDA get everything by just changing the observer

*M. Cavaliere, P. Frisco, H. Hoogeboom, Computing by Only Observing, Lecture Notes in Computer Science 4036, Springer-Verlag. *M. Cavaliere, P. Frisco, H. Hoogeboom, Computing by Only Observing, Lecture Notes in Computer Science 4036, Springer-Verlag.

systemsystemevolutionevolution

observerobserver

B G

R

RBRGGBRB G observationobservation

Page 51: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

Observing BiologyObserving Biology

Biological systemBiological system Biological system modulo observerBiological system modulo observer

observerobserver

Reduce complexity by working modulo an observerReduce complexity by working modulo an observer

Page 52: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

ObjectivesObjectives

Further develop simulation language based on rewriting, compartments and membranes

Add features to enable deterministic and hybrid simulations generate information, e.g. model checking compose compartments,

e.g. fission and fusion work with non-atomic objects, e.g. complexes more accurately model membranes

Develop ideas of working modulo an observer

Further develop simulation language based on rewriting, compartments and membranes

Add features to enable deterministic and hybrid simulations generate information, e.g. model checking compose compartments,

e.g. fission and fusion work with non-atomic objects, e.g. complexes more accurately model membranes

Develop ideas of working modulo an observer

Page 53: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

AcknowledgementsAcknowledgements

Corrado Priami

Tommaso Mazza

www.msr-unitn.unitn.it/downloads.php

Corrado Priami

Tommaso Mazza

www.msr-unitn.unitn.it/downloads.php

Page 54: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology

© 2006 Microsoft Corporation. All rights reserved.Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation.Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft,and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Page 55: Modelling And Observing Biology Matteo Cavaliere and Sean Sedwards Microsoft Research – University of Trento Centre for Computational and Systems Biology