biobalm.symbolic_utils#
Utility operations for creating and manipulating symbolic functions.
Functions#
  | 
Convert a   | 
  | 
Convert a list of state dictionaries to a BDD representation.  | 
  | 
Evaluate a BDD Boolean function in the given state.  | 
  | 
  | 
  | 
Extract network state from a   | 
Module Contents#
- biobalm.symbolic_utils.state_to_bdd(bdd_context: biodivine_aeon.SymbolicContext | biodivine_aeon.BddVariableSet, state: biobalm.types.BooleanSpace) biodivine_aeon.Bdd[source]#
 Convert a
BooleanSpaceto a BDD encoding the state singleton.- Parameters:
 bdd_context (SymbolicContext | BddVariableSet) – The BDD context in which the state is represented. This is a a
biodivine_aeon.BddVariableSetorbiodivine_aeon.SymbolicContext(which is automatically converted tobiodivine_aeon.BddVariableSet). The context object ensures compatibility between BDDs by maintaining a shared collection of variable names and their ordering.state (BooleanSpace) – The state to convert to a BDD.
- Returns:
 The BDD encoding the given state.
- Return type:
 Bdd
- biobalm.symbolic_utils.state_list_to_bdd(bdd_context: biodivine_aeon.SymbolicContext | biodivine_aeon.BddVariableSet, states: list[biobalm.types.BooleanSpace]) biodivine_aeon.Bdd[source]#
 Convert a list of state dictionaries to a BDD representation.
The BDD will be satisfied in any state in the list and in no others.
- Parameters:
 bdd_context (SymbolicContext | BddVariableSet) – The BDD context in which the state is represented. This is a a
biodivine_aeon.BddVariableSetorbiodivine_aeon.SymbolicContext(which is automatically converted tobiodivine_aeon.BddVariableSet). The context object ensures compatibility between BDDs by maintaining a shared collection of variable names and their ordering.states (list[BooleanSpace]) – The list of states to convert to a BDD.
- Returns:
 The BDD encoding the given list of states.
- Return type:
 Bdd
- biobalm.symbolic_utils.function_eval(f: biodivine_aeon.Bdd, state: biobalm.types.BooleanSpace) Literal[0, 1] | None[source]#
 Evaluate a BDD Boolean function in the given state.
If the state is incomplete (i.e. it is a space), the function value can be undetermined. In such case,
Noneis returned.- Parameters:
 f (Bdd) – The function to evaluate.
state (BooleanSpace) – The state in which the function is evaluated.
- Returns:
 The function value in the given state, or
Noneif the function is undetermined.- Return type:
 Literal[0, 1] | None
- biobalm.symbolic_utils.function_is_true(f: biodivine_aeon.Bdd, state: biobalm.types.BooleanSpace) bool[source]#
 Trueif the BDD function evaluates to1for the given state (or space).- Parameters:
 f (Bdd) – The function to evaluate.
state (BooleanSpace) – The state in which the function is evaluated.
- Returns:
 Trueif the function evaluates to1in the given state.- Return type:
 
- biobalm.symbolic_utils.valuation_to_state(ctx: biodivine_aeon.SymbolicContext, valuation: biodivine_aeon.BddValuation) biobalm.types.BooleanSpace[source]#
 Extract network state from a
BddValuationinto aBooleanSpace.- Parameters:
 f (SymbolicContext) – A context which maps between network variables and their symbolic counterparts.
state (BddValuation) – A valuation of the network’s symbolic encoding.
- Returns:
 A
BooleanSpaceencoding the state data from the given valuation.- Return type:
 BooleanSpace