example: Update the section on Boolean networks.
This commit is contained in:
parent
8f9740d2d7
commit
dae4f6570f
1 changed files with 57 additions and 23 deletions
|
@ -436,7 +436,12 @@ tab
|
||||||
Here's the unsigned syntactic interaction graph of this network:
|
Here's the unsigned syntactic interaction graph of this network:
|
||||||
#+NAME: simple-bn-syig
|
#+NAME: simple-bn-syig
|
||||||
#+BEGIN_SRC racket :results silent :var simple-bn=munch-sexp(simple-bn)
|
#+BEGIN_SRC racket :results silent :var simple-bn=munch-sexp(simple-bn)
|
||||||
(dotit (build-syntactic-interaction-graph (unorgv simple-bn)))
|
((compose
|
||||||
|
dotit
|
||||||
|
build-syntactic-interaction-graph
|
||||||
|
make-boolean-network-form
|
||||||
|
unorgv)
|
||||||
|
simple-bn)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
#+BEGIN_SRC dot :file dots/examplejTo8XT.svg :results raw drawer :cmd sfdp :noweb yes
|
#+BEGIN_SRC dot :file dots/examplejTo8XT.svg :results raw drawer :cmd sfdp :noweb yes
|
||||||
|
@ -461,7 +466,12 @@ tab
|
||||||
time constructed according to the canonical definition:
|
time constructed according to the canonical definition:
|
||||||
#+NAME: simple-bn-ig
|
#+NAME: simple-bn-ig
|
||||||
#+BEGIN_SRC racket :results silent :var simple-bn=munch-sexp(simple-bn)
|
#+BEGIN_SRC racket :results silent :var simple-bn=munch-sexp(simple-bn)
|
||||||
(dotit (build-interaction-graph/form (unorgv simple-bn) (make-boolean-domains '(a b c))))
|
((compose
|
||||||
|
dotit
|
||||||
|
build-interaction-graph/form
|
||||||
|
make-boolean-network-form
|
||||||
|
unorgv)
|
||||||
|
simple-bn)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
#+BEGIN_SRC dot :file dots/example1FH1rZ.svg :results raw drawer :cmd sfdp :noweb yes
|
#+BEGIN_SRC dot :file dots/example1FH1rZ.svg :results raw drawer :cmd sfdp :noweb yes
|
||||||
|
@ -486,7 +496,12 @@ tab
|
||||||
|
|
||||||
#+NAME: simple-bn-sig
|
#+NAME: simple-bn-sig
|
||||||
#+BEGIN_SRC racket :results silent :var simple-bn=munch-sexp(simple-bn)
|
#+BEGIN_SRC racket :results silent :var simple-bn=munch-sexp(simple-bn)
|
||||||
(dotit (build-signed-interaction-graph/form (unorgv simple-bn) (make-boolean-domains '(a b c))))
|
((compose
|
||||||
|
dotit
|
||||||
|
build-signed-interaction-graph/form
|
||||||
|
make-boolean-network-form
|
||||||
|
unorgv)
|
||||||
|
simple-bn)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
#+BEGIN_SRC dot :file dots/exampledpQygl.svg :results raw drawer :cmd sfdp :noweb yes
|
#+BEGIN_SRC dot :file dots/exampledpQygl.svg :results raw drawer :cmd sfdp :noweb yes
|
||||||
|
@ -502,28 +517,37 @@ tab
|
||||||
dynamics:
|
dynamics:
|
||||||
#+NAME: simple-bn-sg
|
#+NAME: simple-bn-sg
|
||||||
#+BEGIN_SRC racket :results silent :var simple-bn=munch-sexp(simple-bn)
|
#+BEGIN_SRC racket :results silent :var simple-bn=munch-sexp(simple-bn)
|
||||||
(let* ([bn (network-form->network (unorgv simple-bn))]
|
((compose
|
||||||
[bn-asyn (make-asyn-dynamics bn)])
|
dotit
|
||||||
(dotit (pretty-print-state-graph (build-full-boolean-state-graph bn-asyn))))
|
pretty-print-state-graph
|
||||||
|
build-full-state-graph
|
||||||
|
make-asyn-dynamics
|
||||||
|
forms->boolean-network
|
||||||
|
unorgv)
|
||||||
|
simple-bn)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
|
|
||||||
#+BEGIN_SRC dot :file dots/examplem7LpTs.svg :results raw drawer :cmd sfdp :noweb yes
|
#+BEGIN_SRC dot :file dots/examplem7LpTs.svg :results raw drawer :cmd sfdp :noweb yes
|
||||||
<<simple-bn-sg()>>
|
<<simple-bn-sg()>>
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
#+RESULTS:
|
#+RESULTS:
|
||||||
:RESULTS:
|
:results:
|
||||||
[[file:dots/examplem7LpTs.svg]]
|
[[file:dots/examplem7LpTs.svg]]
|
||||||
:END:
|
:end:
|
||||||
|
|
||||||
Alternatively, you may prefer a slighty more compact representation
|
Alternatively, you may prefer a slighty more compact representation
|
||||||
of Boolean values as 0 and 1:
|
of Boolean values as 0 and 1:
|
||||||
#+NAME: simple-bn-sg-bool
|
#+NAME: simple-bn-sg-bool
|
||||||
#+BEGIN_SRC racket :results silent :var simple-bn=munch-sexp(simple-bn)
|
#+BEGIN_SRC racket :results silent :var simple-bn=munch-sexp(simple-bn)
|
||||||
(let* ([bn (network-form->network (unorgv simple-bn))]
|
((compose
|
||||||
[bn-asyn (make-asyn-dynamics bn)])
|
dotit
|
||||||
(dotit (pretty-print-boolean-state-graph (build-full-boolean-state-graph bn-asyn))))
|
pretty-print-boolean-state-graph
|
||||||
|
build-full-state-graph
|
||||||
|
make-asyn-dynamics
|
||||||
|
forms->boolean-network
|
||||||
|
unorgv)
|
||||||
|
simple-bn)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
#+BEGIN_SRC dot :file dots/examplex1Irnk.svg :results raw drawer :cmd sfdp :noweb yes
|
#+BEGIN_SRC dot :file dots/examplex1Irnk.svg :results raw drawer :cmd sfdp :noweb yes
|
||||||
|
@ -531,9 +555,9 @@ tab
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
#+RESULTS:
|
#+RESULTS:
|
||||||
:RESULTS:
|
:results:
|
||||||
[[file:dots/examplex1Irnk.svg]]
|
[[file:dots/examplex1Irnk.svg]]
|
||||||
:END:
|
:end:
|
||||||
|
|
||||||
Consider the following state (appearing in the upper left corner of
|
Consider the following state (appearing in the upper left corner of
|
||||||
the state graph):
|
the state graph):
|
||||||
|
@ -549,7 +573,7 @@ tab
|
||||||
#+HEADER: :var simple-bn=munch-sexp(simple-bn)
|
#+HEADER: :var simple-bn=munch-sexp(simple-bn)
|
||||||
#+HEADER: :var some-state=munch-sexp(some-state)
|
#+HEADER: :var some-state=munch-sexp(some-state)
|
||||||
#+BEGIN_SRC racket :results silent
|
#+BEGIN_SRC racket :results silent
|
||||||
(let* ([bn (network-form->network (unorgv simple-bn))]
|
(let* ([bn (forms->boolean-network (unorgv simple-bn))]
|
||||||
[bn-asyn (make-asyn-dynamics bn)]
|
[bn-asyn (make-asyn-dynamics bn)]
|
||||||
[s0 (booleanize-state (unorgv some-state))])
|
[s0 (booleanize-state (unorgv some-state))])
|
||||||
(dotit (pretty-print-boolean-state-graph (dds-build-n-step-state-graph bn-asyn (set s0) 2))))
|
(dotit (pretty-print-boolean-state-graph (dds-build-n-step-state-graph bn-asyn (set s0) 2))))
|
||||||
|
@ -560,17 +584,22 @@ tab
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
#+RESULTS:
|
#+RESULTS:
|
||||||
:RESULTS:
|
:results:
|
||||||
[[file:dots/examplecHA6gL.svg]]
|
[[file:dots/examplecHA6gL.svg]]
|
||||||
:END:
|
:end:
|
||||||
|
|
||||||
Here is the complete state graph with edges annotated with the
|
Here is the complete state graph with edges annotated with the
|
||||||
modality leading to the update.
|
modality leading to the update.
|
||||||
#+NAME: simple-bn-sg-bool-ann
|
#+NAME: simple-bn-sg-bool-ann
|
||||||
#+BEGIN_SRC racket :results silent :var simple-bn=munch-sexp(simple-bn)
|
#+BEGIN_SRC racket :results silent :var simple-bn=munch-sexp(simple-bn)
|
||||||
(let* ([bn (network-form->network (unorgv simple-bn))]
|
((compose
|
||||||
[bn-asyn (make-asyn-dynamics bn)])
|
dotit
|
||||||
(dotit (pretty-print-boolean-state-graph (build-full-boolean-state-graph-annotated bn-asyn))))
|
pretty-print-boolean-state-graph
|
||||||
|
build-full-state-graph-annotated
|
||||||
|
make-asyn-dynamics
|
||||||
|
forms->boolean-network
|
||||||
|
unorgv)
|
||||||
|
simple-bn)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
#+BEGIN_SRC dot :file dots/examplei4we6j.svg :results raw drawer :cmd sfdp :noweb yes
|
#+BEGIN_SRC dot :file dots/examplei4we6j.svg :results raw drawer :cmd sfdp :noweb yes
|
||||||
|
@ -590,9 +619,14 @@ tab
|
||||||
|
|
||||||
#+NAME: bn2-sgr
|
#+NAME: bn2-sgr
|
||||||
#+BEGIN_SRC racket :results silent :var input-bn=munch-sexp(bn2)
|
#+BEGIN_SRC racket :results silent :var input-bn=munch-sexp(bn2)
|
||||||
(let* ([bn (network-form->network (unorgv input-bn))]
|
((compose
|
||||||
[bn-asyn (make-asyn-dynamics bn)])
|
dotit
|
||||||
(dotit (pretty-print-boolean-state-graph (build-full-boolean-state-graph-annotated bn-asyn))))
|
pretty-print-boolean-state-graph
|
||||||
|
build-full-state-graph-annotated
|
||||||
|
make-asyn-dynamics
|
||||||
|
forms->boolean-network
|
||||||
|
unorgv)
|
||||||
|
input-bn)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
#+BEGIN_SRC dot :file dots/examplehsuRqc.svg :results raw drawer :cmd dot :noweb yes
|
#+BEGIN_SRC dot :file dots/examplehsuRqc.svg :results raw drawer :cmd dot :noweb yes
|
||||||
|
|
Loading…
Reference in a new issue