Attention une mise à jour du service Gitlab va être effectuée le mardi 30 novembre entre 17h30 et 18h00. Cette mise à jour va générer une interruption du service dont nous ne maîtrisons pas complètement la durée mais qui ne devrait pas excéder quelques minutes. Cette mise à jour intermédiaire en version 14.0.12 nous permettra de rapidement pouvoir mettre à votre disposition une version plus récente.

Commit f7d14e0a authored by FAGES Francois's avatar FAGES Francois
Browse files

list reactions with catalyst strict_catalyst and autocatalyst

parent 599e459b
......@@ -132,11 +132,13 @@ commands = [
"list_options",
"list_parameters",
"list_reactions",
"list_reactions_with_autocatalyst",
"list_reactions_with_catalyst",
"list_reactions_with_inhibitor",
"list_reactions_with_product",
"list_reactions_with_reactant",
"list_reactions_with_species",
"list_reactions_with_strict_catalyst",
"list_rows",
"list_rules",
"list_sink_species",
......
......@@ -9,6 +9,8 @@ clear_model.
c+d=>e.
e=>c+f.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("The model is rate independent: composite loop with and-fork")').
......@@ -18,6 +20,8 @@ clear_model.
c+d=>e.
e=>c+f+d.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided since no: second loop creates synthesis ")').
......@@ -29,6 +33,8 @@ c+d=>e.
e=>c.
e=>f.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided, since no: composite loop with or-fork ")').
......@@ -41,6 +47,8 @@ c+d=>a+b.
c+d=>e.
e=>c+f.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("The model is rate independent: composite loop with and-fork")').
......@@ -53,6 +61,8 @@ c+d=>e.
e=>c.
e=>f.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided, since no: composite loop with or-fork ")').
......@@ -63,6 +73,8 @@ a+b=>c+d.
c+d=>a+b.
c+d=>e.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("The model is rate independent: composite loop leakage with or-fork")').
......@@ -76,6 +88,8 @@ c+d=>e.
e=>c+d.
e=>f+g.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("The model is rate independent: composite double loop leakage with composite or-fork")').
......@@ -85,6 +99,8 @@ clear_model.
MA(k1) for a+b => b.
MA(k2) for b+c=>d.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence({b,c}, {d}). % no
prolog('writeln("The model is rate independent: without input a")').
......@@ -99,6 +115,8 @@ c+d=>e.
e=>c.
e=>f.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided since no: composite loop leakage with or-fork")').
......@@ -111,6 +129,8 @@ c+d=>e.
e=>c.
e=>f.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided since no: composite loop leakage with or-fork")').
......@@ -122,6 +142,8 @@ MA(2) for B=>C.
MA(5) for B=>D.
MA(6) for D=>B.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks. % no
prolog('writeln("The model is rate independent: trivial loop leakage")').
......@@ -133,6 +155,8 @@ c+d=>a+b.
c+d=>e.
e=>c+d+f.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided since no: DIV double loop (not by single loop)")').
......@@ -146,6 +170,8 @@ MA(k2) for b => a.
MA(k3) for b => c.
MA(k4) for c => b.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence(input, c). % no
prolog('writeln("Undecided since no: output in loop equilibrium")').
......@@ -160,6 +186,8 @@ a=>b.
b=>2*d.
a=>c.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided since no: DIV")').
......@@ -171,6 +199,8 @@ a=>b.
b=>2*d.
d=>a.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided since no: DIV ")').
......@@ -180,6 +210,8 @@ clear_model.
a=>b.
b=> a+c.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided since no: DIV ")').
......@@ -190,6 +222,8 @@ a=>b.
b=> a+c.
d=> a.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided since no: DIV ")').
......@@ -201,6 +235,8 @@ a=>c.
a=>b.
b=>2*a.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided since no: DIV ")').
......@@ -212,6 +248,8 @@ a=>b.
b=>2*d.
d=>a.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided since no: DIV ")').
......@@ -224,6 +262,8 @@ b => y+c.
x+y => z.
c+z => r.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("The model is rate independent: MAX = sum-min")').
......@@ -235,6 +275,8 @@ clear_model.
a+b => 2*a.
a+b => 2*b.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided since no: subtle multiple steady states ")').
......@@ -249,6 +291,8 @@ a => b.
b => c.
c => b + d.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided since no: DIV")').
......@@ -260,6 +304,8 @@ a => b.
b => c.
c => a + d.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided since no: DIV")').
......@@ -272,6 +318,8 @@ b => d.
c => a.
c => e.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided since no: loop double leakage with or-forks")').
......@@ -283,6 +331,8 @@ a => b.
b => c+d.
c => a+e.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided since no: loop double leakage with and-fork")').
......@@ -294,6 +344,8 @@ b => c+d.
c => a.
c => e.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("Undecided since no: loop double leakage with and-or-fork")').
......@@ -304,6 +356,8 @@ a => b.
b => a.
b => c.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("The model is rate independent: short loop leakage with or-fork")').
......@@ -315,6 +369,8 @@ b => c.
c => a.
c => d.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks.
prolog('writeln("The model is rate independent: loop leakage with or-fork")').
......@@ -328,6 +384,8 @@ a=>b+c.
b=>d.
c=>d.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks. % yes
prolog('writeln("The model is rate independent: closing and-fork with or-join")').
......@@ -338,6 +396,8 @@ clear_model.
a=>b+c.
b+c=>d.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks. % yes
prolog('writeln("The model is rate independent: closing and-fork with and-join")').
......@@ -349,6 +409,8 @@ a=>c.
b=>d.
c=>d.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks. % yes
prolog('writeln("The model is rate independent: closing or-fork with or-join")').
......@@ -359,6 +421,8 @@ a=>b.
a=>c.
b+c=>d.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks. % yes
prolog('writeln("Undecided since no: closing or-fork with and-join")').
......@@ -368,6 +432,8 @@ clear_model.
MA(k1) for A => B.
MA(k2) for A + B => C.
search_conservations.
test_rate_independence_invariants.
prolog('writeln(rewriting)').
test_rate_independence_inputs_sinks. % no
prolog('writeln("Undecided since no: closing or-fork with and-join")').
......@@ -8,6 +8,8 @@
list_reactions_with_reactant/1,
list_reactions_with_product/1,
list_reactions_with_catalyst/1,
list_reactions_with_strict_catalyst/1,
list_reactions_with_autocatalyst/1,
list_reactions_with_inhibitor/1,
list_rules/0,
delete_reaction/1,
......@@ -21,6 +23,8 @@
reactions_with_reactant/2,
reactions_with_product/2,
reactions_with_catalyst/2,
reactions_with_strict_catalyst/2,
reactions_with_catalyst/2,
reactions_with_inhibitor/2,
is_reactant/2,
is_product/2,
......@@ -28,6 +32,7 @@
is_strict_product/2,
is_catalyst/2,
is_strict_catalyst/2,
is_autocatalyst/2,
is_inhibitor/2,
find_reaction_prefixed/2,
is_reaction_model/0,
......@@ -172,7 +177,7 @@ reactions_with_species(ObjectSet, Reactions):-
species(ObjectSet, Reaction):-
member(M,ObjectSet),
(is_reactant(M, Reaction); is_product(M, Reaction); is_catalyst(M, Reaction); is_inhibitor(M, Reaction)).
(is_reactant(M, Reaction); is_product(M, Reaction); is_inhibitor(M, Reaction)).
......@@ -211,17 +216,48 @@ product(ObjectSet, Reaction):-
list_reactions_with_catalyst(ObjectSet):-
biocham_command,
type(ObjectSet, {object}),
doc('Lists reactions with a catalyst in the set of molecular species \\argument{Objectset}.'),
doc('Lists reactions with a catalyst (i.e. both reactant and product) in the set of molecular species \\argument{Objectset}.'),
reactions_with_catalyst(ObjectSet, Reactions),
forall(member(R,Reactions), writeln(R)).
list_reactions_with_strict_catalyst(ObjectSet):-
biocham_command,
type(ObjectSet, {object}),
doc('Lists reactions with a strict catalyst (i.e. same stoichiometry as reactant and product) in the set of molecular species \\argument{Objectset}.'),
reactions_with_strict_catalyst(ObjectSet, Reactions),
forall(member(R,Reactions), writeln(R)).
list_reactions_with_autocatalyst(ObjectSet):-
biocham_command,
type(ObjectSet, {object}),
doc('Lists reactions with an autocatalyst (i.e. different stoichiometry as reactant and product) in the set of molecular species \\argument{Objectset}.'),
reactions_with_autocatalyst(ObjectSet, Reactions),
forall(member(R,Reactions), writeln(R)).
reactions_with_catalyst(ObjectSet, Reactions):-
realsetof(Reaction, reaction_editor:catalyst(ObjectSet, Reaction), Reactions).
reactions_with_strict_catalyst(ObjectSet, Reactions):-
realsetof(Reaction, reaction_editor:strict_catalyst(ObjectSet, Reaction), Reactions).
reactions_with_autocatalyst(ObjectSet, Reactions):-
realsetof(Reaction, reaction_editor:autocatalyst(ObjectSet, Reaction), Reactions).
catalyst(ObjectSet, Reaction):-
member(M,ObjectSet),
is_catalyst(M, Reaction).
strict_catalyst(ObjectSet, Reaction):-
member(M,ObjectSet),
is_strict_catalyst(M, Reaction).
autocatalyst(ObjectSet, Reaction):-
member(M,ObjectSet),
is_autocatalyst(M, Reaction).
list_reactions_with_inhibitor(ObjectSet):-
biocham_command,
......@@ -279,6 +315,13 @@ is_strict_catalyst(S, Reaction):-
member((C*S), Reactants),
member((C*S), Products).
is_autocatalyst(S, Reaction):-
item([kind: reaction, item: Reaction]),
reaction(Reaction, [kinetics: _,reactants: Reactants,inhibitors: _, products: Products]),
member((C*S), Reactants),
member((D*S), Products),
C\=D.
is_inhibitor(S, Reaction):-
item([kind: reaction, item: Reaction]),
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment