{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
""
],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import boolsim\n",
"from colomoto_jupyter import tabulate # for display"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Input from a GINsim model"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"import ginsim"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/markdown": [
"Downloading http://ginsim.org/sites/default/files/drosophilaCellCycleVariants.zginml"
],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"lrg = ginsim.load(\"http://ginsim.org/sites/default/files/drosophilaCellCycleVariants.zginml\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Initial state"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'CycD': 0,\n",
" 'Rb': 0,\n",
" 'E2F': 0,\n",
" 'CycE': 0,\n",
" 'CycA': 0,\n",
" 'Rux': 0,\n",
" 'Fzy': 0,\n",
" 'Fzr': 0,\n",
" 'CycB': 0,\n",
" 'Wee1': 0,\n",
" 'Stg': 0,\n",
" 'Notch': 0,\n",
" 'Dap': 0,\n",
" 'Ago': 0}"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"init = {str(n): 0 for n in lrg.getNodes()}\n",
"init"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Computation of reachable states\n",
"\n",
"The *asynchronous* mode is used by default."
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" Ago | \n",
" CycA | \n",
" CycB | \n",
" CycD | \n",
" CycE | \n",
" Dap | \n",
" E2F | \n",
" Fzr | \n",
" Fzy | \n",
" Notch | \n",
" Rb | \n",
" Rux | \n",
" Stg | \n",
" Wee1 | \n",
"
\n",
" \n",
" \n",
" \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" * | \n",
" * | \n",
" * | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" * | \n",
"
\n",
" \n",
" 12 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" * | \n",
" * | \n",
" * | \n",
" * | \n",
" 0 | \n",
" 1 | \n",
" 1 | \n",
" * | \n",
" * | \n",
"
\n",
" \n",
" 6 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" * | \n",
" * | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" * | \n",
"
\n",
" \n",
" 2 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" * | \n",
" * | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" * | \n",
"
\n",
" \n",
" 13 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" * | \n",
" * | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 1 | \n",
" * | \n",
" * | \n",
"
\n",
" \n",
" 7 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" * | \n",
"
\n",
" \n",
" 8 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" 1 | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" * | \n",
"
\n",
" \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" * | \n",
" * | \n",
" * | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" * | \n",
" * | \n",
"
\n",
" \n",
" 11 | \n",
" 0 | \n",
" 0 | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" * | \n",
" * | \n",
" * | \n",
" * | \n",
" 0 | \n",
" 1 | \n",
" 0 | \n",
" * | \n",
" * | \n",
"
\n",
" \n",
" 5 | \n",
" 0 | \n",
" 0 | \n",
" * | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" * | \n",
" * | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" * | \n",
" * | \n",
"
\n",
" \n",
" 4 | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" * | \n",
" 1 | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" * | \n",
"
\n",
" \n",
" 15 | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" * | \n",
" * | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 1 | \n",
" * | \n",
" * | \n",
"
\n",
" \n",
" 3 | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" * | \n",
" * | \n",
" * | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" * | \n",
" * | \n",
"
\n",
" \n",
" 14 | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" * | \n",
" * | \n",
" * | \n",
" * | \n",
" 0 | \n",
" 1 | \n",
" 0 | \n",
" * | \n",
" * | \n",
"
\n",
" \n",
" 10 | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" 1 | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" * | \n",
"
\n",
" \n",
" 9 | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" 0 | \n",
" 1 | \n",
" * | \n",
" * | \n",
" * | \n",
" * | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" * | \n",
" * | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" Ago CycA CycB CycD CycE Dap E2F Fzr Fzy Notch Rb Rux Stg Wee1\n",
"1 0 0 0 0 0 * * * * 0 0 1 * *\n",
"12 0 0 0 0 0 * * * * 0 1 1 * *\n",
"6 0 0 0 0 1 * * * * 0 0 1 * *\n",
"2 0 0 1 0 0 * * * 0 0 0 1 * *\n",
"13 0 0 1 0 0 * * * 0 0 1 1 * *\n",
"7 0 0 1 0 1 * 0 0 0 0 0 1 * *\n",
"8 0 0 1 0 1 * 1 * 0 0 0 1 * *\n",
"0 0 0 * 0 0 * * * * 0 0 0 * *\n",
"11 0 0 * 0 0 * * * * 0 1 0 * *\n",
"5 0 0 * 0 1 * * * * 0 0 0 * *\n",
"4 0 1 * 0 0 * 1 * 0 0 0 1 * *\n",
"15 0 1 * 0 0 * * * 0 0 1 1 * *\n",
"3 0 1 * 0 0 * * * * 0 0 0 * *\n",
"14 0 1 * 0 0 * * * * 0 1 0 * *\n",
"10 0 1 * 0 1 * 1 * 0 0 0 1 * *\n",
"9 0 1 * 0 1 * * * * 0 0 0 * *"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r = boolsim.reachable(lrg, init)\n",
"tabulate(r)"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"1176"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.count()"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"3"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r = boolsim.reachable(lrg, init, \"synchronous\")\n",
"r.count()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.3"
}
},
"nbformat": 4,
"nbformat_minor": 4
}