a tool for automated inference of executable rule based
play

A Tool for Automated Inference of Executable Rule- Based Biological - PowerPoint PPT Presentation

A Tool for Automated Inference of Executable Rule- Based Biological Models Chelsea Voss, Jean Yang, Walter Fontana Static Analysis in Systems Biology, 2017 The need for biological models executable models for in silico experimentation


  1. A Tool for Automated Inference of Executable Rule- Based Biological Models Chelsea Voss, Jean Yang, Walter Fontana Static Analysis in Systems Biology, 2017

  2. The need for biological models executable models for “in silico” experimentation

  3. programming is hard

  4. The need for computer-generated models NLP

  5. Some NLP output requires logical inference

  6. Some NLP output requires logical inference Executable model needs: Mechanistic rules

  7. Some NLP output requires logical inference NLP produces: Executable model needs: Mechanistic rules Mechanistic rules § Non-mechanistic rules § § Domain knowledge § § §

  8. Some NLP output requires logical inference NLP produces: Executable model needs: ??? Mechanistic rules Mechanistic rules § Non-mechanistic rules § § Domain knowledge § § §

  9. Some NLP output requires logical inference NLP produces: Executable model needs: ??? Mechanistic rules Mechanistic rules § MEK phosphorylates ERK1 Non-mechanistic rules § § Domain knowledge § § §

  10. Some NLP output requires logical inference NLP produces: Executable model needs: ??? Mechanistic rules Mechanistic rules § MEK phosphorylates ERK1 Non-mechanistic rules § MEK phosphorylates the ERK protein family § Active ERK phosphorylates RSK Domain knowledge § § §

  11. Some NLP output requires logical inference NLP produces: Executable model needs: ??? Mechanistic rules Mechanistic rules § MEK phosphorylates ERK1 Non-mechanistic rules § MEK phosphorylates the ERK protein family § Active ERK phosphorylates RSK Domain knowledge § When ERK1 is phosphorylated, it is active § S151D-mutated ERK1 behaves as if always phosphorylated § ERK1 and ERK2 are in the ERK protein family

  12. Some NLP output requires logical inference Executable model needs: NLP produces: ??? Mechanistic rules Mechanistic rules • MEK phosphorylates ERK1 § MEK phosphorylates ERK1 • MEK phosphorylates ERK2 Non-mechanistic rules • Phosphorylated ERK1 § MEK phosphorylates the ERK protein phosphorylates RSK family • Phosphorylated ERK2 § Active ERK phosphorylates RSK phosphorylates RSK Domain knowledge • S151D-mutated ERK1 § When ERK1 is phosphorylated, it is phosphorylates RSK active § S151D-mutated ERK1 behaves as if always phosphorylated § ERK1 and ERK2 are in the ERK protein family

  13. Mechanistic rules Non-mechanistic rules Domain knowledge

  14. Mechanistic rules Models Non-mechanistic rules Domain knowledge

  15. Mechanistic rules Space of possible Non-mechanistic rules models Domain knowledge

  16. Our contribution Mechanistic rules Space of possible Non-mechanistic rules models Domain knowledge

  17. Our contribution: how it works Mechanistic rules 1: Predicates Space of possible Non-mechanistic rules over models models Domain knowledge

  18. Our contribution: how it works 2: Implement Mechanistic rules interpretation 1: Predicates Space of possible Non-mechanistic rules over models models Domain knowledge

  19. Our contribution: how it works 3: Create 2: Implement Mechanistic rules predicates interpretation 1: Predicates Space of possible Non-mechanistic rules over models models Domain knowledge

  20. 3: Create 2: Implement Mechanistic rules predicates interpretation 1: Predicates Space of possible Non-mechanistic rules over models models Domain knowledge

  21. 1: Predicates over models, in a logic First, choose a modeling language.

  22. 1: Predicates over models, in a logic First, choose a modeling language: Kappa.

  23. 1: Predicates over models, in a logic First, choose a modeling language: Kappa.

  24. 1: Predicates over models, in a logic First, choose a modeling language: Kappa. Why Kappa?

  25. 1: Predicates over models, in a logic First, choose a modeling language: Kappa. Why Kappa? Well-defined operational semantics allow us to reason precisely. [Figure due to Danos et al. 2009: Abstracting the ODE Semantics of Rule-Based Models: Exact and Automatic Model Reduction. ]

  26. 1: Predicates over models, in a logic First, choose a modeling language: Kappa. Second, devise a logic for quantifying over models.

  27. 1: Predicates over models, in a logic First, choose a modeling language: Kappa. Second, devise a logic for quantifying over models. Datatypes: • Graphs represent the state of a Kappa system • Rules are sets of <graph, action> pairs action rewrites graph, creates new graph • • Models are sets of rules [Conversations with Husson & Krivine, 2015-2016]

  28. 1: Predicates over models, in a logic First, choose a modeling language: Kappa. Second, devise a logic for quantifying over models. Datatypes: • Graphs represent the state of a Kappa system • Rules are sets of <graph, action> pairs action rewrites graph, creates new graph • • Models are sets of rules Predicates: • Atomic predicates specify a set of rules • Predicates specify a set of models [Conversations with Husson & Krivine, 2015-2016]

  29. Atomic predicates class AtomicPredicate: Top Bottom Equal PreLabeled, PostLabeled PreUnlabeled, PostUnlabeled PreParent, PostParent PreLink, PostLink PreHas, PostHas Add, Rem DoLink, DoUnlink DoParent, DoUnparent Named

  30. Atomic predicates Predicates class AtomicPredicate: class Predicate: Top And Bottom Not Equal Or PreLabeled, PostLabeled Implies PreUnlabeled, PostUnlabeled ModelHasRule PreParent, PostParent ForAllRules PreLink, PostLink Top PreHas, PostHas Bottom Add, Rem DoLink, DoUnlink DoParent, DoUnparent Named

  31. Example predicate syntax tree a = Agent(‘a’) b = Agent(‘b’) p = And( ModelHasRule(lambda r: PregraphHas(r, a.bound(b))), ModelHasRule(lambda r: PostgraphHas(r, a.unbound(b))))

  32. 3: Create 2: Implement Mechanistic rules predicates interpretation 1: Predicates Space of possible Non-mechanistic rules over models models Domain knowledge

  33. 2: Implement interpretation of predicates • Solving predicates in this logic is reducible to first-order logic

  34. 2: Implement interpretation of predicates • Solving predicates in this logic is reducible to first-order logic • Workhorse: Z3 Theorem Prover

  35. 2: Implement interpretation of predicates • Solving predicates in this logic is reducible to first-order logic • Workhorse: Z3 Theorem Prover

  36. 2: Implement interpretation of predicates • Solving predicates in this logic is reducible to first-order logic • Workhorse: Z3 Theorem Prover • Demo at http://rise4fun.com/z3

  37. 2: Implement interpretation of predicates • Solving predicates in this logic is reducible to first-order logic • Workhorse: Z3 Theorem Prover • Demo at http://rise4fun.com/z3 • High-performance satisfiability solver

  38. 2: Implement interpretation of predicates • Solving predicates in this logic is reducible to first-order logic • Workhorse: Z3 Theorem Prover • Demo at http://rise4fun.com/z3 • High-performance satisfiability solver • Wide variety of datatypes supported: arithmetic, fixed-size bit-vectors, extensional arrays, datatypes, uninterpreted functions, and quantifiers

  39. 2: Implement interpretation of predicates • Solving predicates in this logic is reducible to first-order logic • Workhorse: Z3 Theorem Prover • Demo at http://rise4fun.com/z3 • High-performance satisfiability solver • Wide variety of datatypes supported: arithmetic, fixed-size bit-vectors, extensional arrays, datatypes, uninterpreted functions, and quantifiers

  40. 2: Implement interpretation of predicates • Solving predicates in this logic is reducible to first-order logic • Workhorse: Z3 Theorem Prover • Demo at http://rise4fun.com/z3 • High-performance satisfiability solver • Wide variety of datatypes supported: arithmetic, fixed-size bit-vectors, extensional arrays, datatypes, uninterpreted functions, and quantifiers

  41. 2: Implement interpretation of predicates • Solving predicates in this logic is reducible to first-order logic • Workhorse: Z3 Theorem Prover • Demo at http://rise4fun.com/z3 • High-performance satisfiability solver • Wide variety of datatypes supported: arithmetic, fixed-size bit-vectors, extensional arrays, datatypes, uninterpreted functions, and quantifiers

  42. 2: Implement interpretation of predicates • Solving predicates in this logic is reducible to first-order logic • Workhorse: Z3 Theorem Prover • Demo at http://rise4fun.com/z3 • High-performance satisfiability solver • Wide variety of datatypes supported: arithmetic, fixed-size bit-vectors, extensional arrays, datatypes, uninterpreted functions, and quantifiers

  43. 2: Implement interpretation of predicates • Solving predicates in this logic is reducible to first-order logic • Workhorse: Z3 Theorem Prover • Using Z3 to interpret our predicates • Declare Z3 datatypes to represent • Recursively build Z3 predicates from our predicate classes • Use (check-sat) and (get-model)

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend