import boolsim
from colomoto_jupyter import tabulate # for display
import ginsim
lrg = ginsim.load("http://ginsim.org/sites/default/files/drosophilaCellCycleVariants.zginml")
init = {str(n): 0 for n in lrg.getNodes()}
init
{'CycD': 0, 'Rb': 0, 'E2F': 0, 'CycE': 0, 'CycA': 0, 'Rux': 0, 'Fzy': 0, 'Fzr': 0, 'CycB': 0, 'Wee1': 0, 'Stg': 0, 'Notch': 0, 'Dap': 0, 'Ago': 0}
The asynchronous mode is used by default.
r = boolsim.reachable(lrg, init)
tabulate(r)
Ago | CycA | CycB | CycD | CycE | Dap | E2F | Fzr | Fzy | Notch | Rb | Rux | Stg | Wee1 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | 0 | 0 | 0 | 0 | 0 | * | * | * | * | 0 | 0 | 1 | * | * |
12 | 0 | 0 | 0 | 0 | 0 | * | * | * | * | 0 | 1 | 1 | * | * |
6 | 0 | 0 | 0 | 0 | 1 | * | * | * | * | 0 | 0 | 1 | * | * |
2 | 0 | 0 | 1 | 0 | 0 | * | * | * | 0 | 0 | 0 | 1 | * | * |
13 | 0 | 0 | 1 | 0 | 0 | * | * | * | 0 | 0 | 1 | 1 | * | * |
7 | 0 | 0 | 1 | 0 | 1 | * | 0 | 0 | 0 | 0 | 0 | 1 | * | * |
8 | 0 | 0 | 1 | 0 | 1 | * | 1 | * | 0 | 0 | 0 | 1 | * | * |
0 | 0 | 0 | * | 0 | 0 | * | * | * | * | 0 | 0 | 0 | * | * |
11 | 0 | 0 | * | 0 | 0 | * | * | * | * | 0 | 1 | 0 | * | * |
5 | 0 | 0 | * | 0 | 1 | * | * | * | * | 0 | 0 | 0 | * | * |
4 | 0 | 1 | * | 0 | 0 | * | 1 | * | 0 | 0 | 0 | 1 | * | * |
15 | 0 | 1 | * | 0 | 0 | * | * | * | 0 | 0 | 1 | 1 | * | * |
3 | 0 | 1 | * | 0 | 0 | * | * | * | * | 0 | 0 | 0 | * | * |
14 | 0 | 1 | * | 0 | 0 | * | * | * | * | 0 | 1 | 0 | * | * |
10 | 0 | 1 | * | 0 | 1 | * | 1 | * | 0 | 0 | 0 | 1 | * | * |
9 | 0 | 1 | * | 0 | 1 | * | * | * | * | 0 | 0 | 0 | * | * |
r.count()
1176
r = boolsim.reachable(lrg, init, "synchronous")
r.count()
3