From 1746bf86c898101f24177edfd89b928e11e665fc Mon Sep 17 00:00:00 2001 From: Artur Meski Date: Wed, 2 Mar 2016 22:12:50 +0100 Subject: [PATCH] still trying with glucose assimilation... --- rs_examples.py | 16 +++++++++++----- smtcheckerrsc.py | 2 +- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/rs_examples.py b/rs_examples.py index b3a77bf..6c7948e 100755 --- a/rs_examples.py +++ b/rs_examples.py @@ -412,12 +412,16 @@ def blood_glucose_regulation(print_system=True): # inc/dec: r.add_reaction_inc("glycemia", "inc_glycemia", [],[("glycemia",3),("dec_glycemia",1)]) - r.add_reaction_inc("glycemia", "dec_glycemia", [],[("glycemia",1),("inc_glycemia",1)]) + r.add_reaction_dec("glycemia", "dec_glycemia", [],[("glycemia",1),("inc_glycemia",1)]) + r.add_reaction_inc("insulin", "inc_insulin", [],[("insulin",2),("dec_insulin",1)]) + r.add_reaction_dec("insulin", "dec_insulin", [],[("insulin",1),("inc_insulin",1)]) # potrzebne sa reakcje, ktore utrzymaja okresolna molekule na tym samym poziomie # -> przed podtrzymaniem trzeba sie upewnic, ze jednak jakas reakcja nie chce zmienic tego poziomu r.add_permanency("sugar",[("expire_sugar",1)]) + r.add_permanency("glycemia",[]) + # moje: r.add_reaction([("sugar",1)],[],[("sugar",1)]) @@ -427,6 +431,7 @@ def blood_glucose_regulation(print_system=True): c.add_state("1") c.add_transition("0", [("sugar",1)], "1") c.add_transition("1", [], "1") + c.add_transition("1", [("sugar",1)], "1") c.add_transition("1", [("expire_sugar",1)], "1") # c.add_transition("1", [("sugar",1)], "1") @@ -436,7 +441,8 @@ def blood_glucose_regulation(print_system=True): rc.show() # if verify_rsc: - # smt_rsc = SmtCheckerRSC(rc) - # prop = [('e_'+str(chainLen),maxConc)] - # smt_rsc.check_reachability(prop,max_level=maxConc*chainLen+10) - # # smt_rsc.show_encoding(prop,print_time=True,max_level=maxConc*chainLen+10) + smt_rsc = SmtCheckerRSC(rc) + prop = [('glycemia',1)] + smt_rsc.check_reachability(prop,max_level=10) + # smt_rsc.show_encoding(prop,print_time=True,max_level=maxConc*chainLen+10) + diff --git a/smtcheckerrsc.py b/smtcheckerrsc.py index 6b4e332..b692ecd 100644 --- a/smtcheckerrsc.py +++ b/smtcheckerrsc.py @@ -190,7 +190,7 @@ class SmtCheckerRSC(object): enc_products = simplify(self.v[level+1][prod_entity] == \ If(self.v[level][prod_entity] > self.v_ctx[level][prod_entity],self.v[level][prod_entity],self.v_ctx[level][prod_entity])) - enc_enabledness = simplify(Or(enc_enabledness), And(enc_reactants, enc_inhibitors)) + enc_enabledness = simplify(Or(enc_enabledness, And(enc_reactants, enc_inhibitors))) enc_rct_prod = simplify(Or(enc_rct_prod, And(enc_reactants, enc_inhibitors, enc_products))) # -----------------------------------------------------------------------------