Module Kappa_terms.Primitives
module Transformation : sig ... endElementary rule transformations
type alg_expr= (Pattern.id array list, int) Alg_expr.etype elementary_rule={rate : alg_expr Kappa_generic_toolset.Locality.annot;unary_rate : (alg_expr Kappa_generic_toolset.Locality.annot * alg_expr option) option;connected_components : Pattern.id array;removed : Instantiation.abstract Transformation.t list;inserted : Instantiation.abstract Transformation.t list;delta_tokens : (alg_expr Kappa_generic_toolset.Locality.annot * int) list;syntactic_rule : int;0means generated for perturbation.instantiations : Instantiation.abstract Instantiation.event;In the reverse order on purpose so that we rev_map when we concretize
}If
unary_rateisSome _,ratemeans binary rate. Elserateis the rate independently of the connectivity
val extract_cc_ids : elementary_rule -> Pattern.id arrayval extract_abstract_event : elementary_rule -> Instantiation.abstract Instantiation.eventval rule_to_yojson : filenames:int Kappa_generic_toolset.Mods.StringMap.t -> elementary_rule -> Yojson.Basic.tval rule_of_yojson : filenames:string array -> Yojson.Basic.t -> elementary_ruleval fully_specified_pattern_to_positive_transformations : Pattern.cc -> Instantiation.concrete Transformation.t list
type 'alg_expr print_expr=|Str_pexpr of string Kappa_generic_toolset.Locality.annot|Alg_pexpr of 'alg_expr Kappa_generic_toolset.Locality.annot
val print_expr_to_yojson : filenames:int Kappa_generic_toolset.Mods.StringMap.t -> ('a -> Yojson.Basic.t) -> ('b -> Yojson.Basic.t) -> ('a, 'b) Alg_expr.e print_expr -> Yojson.Basic.tval print_expr_of_yojson : filenames:string array -> (Yojson.Basic.t -> 'a) -> (Yojson.Basic.t -> 'b) -> Yojson.Basic.t -> ('a, 'b) Alg_expr.e print_expr
val din_kind_to_yojson : din_kind -> Yojson.Basic.tval din_kind_of_yojson : Yojson.Basic.t -> din_kindval write_din_kind : Bi_outbuf.t -> din_kind -> unitOutput a JSON value of type
din_kind.
val string_of_din_kind : ?len:int -> din_kind -> stringSerialize a value of type
din_kindinto a JSON string.- parameter len
specifies the initial length of the buffer used internally. Default: 1024.
val read_din_kind : Yojson.Safe.lexer_state -> Lexing.lexbuf -> din_kindInput JSON data of type
din_kind.
type modification=|ITER_RULE of alg_expr Kappa_generic_toolset.Locality.annot * elementary_rule|UPDATE of int * alg_expr Kappa_generic_toolset.Locality.annot|SNAPSHOT of bool * alg_expr print_expr list|STOP of alg_expr print_expr list|CFLOW of string option * Pattern.id array * Instantiation.abstract Instantiation.test list listFirst string is the named used by the user
|DIN of din_kind * alg_expr print_expr list|DINOFF of alg_expr print_expr list|CFLOWOFF of string option * Pattern.id array|PLOTENTRY|PRINT of alg_expr print_expr list * alg_expr print_expr list|SPECIES of alg_expr print_expr list * Pattern.id array * Instantiation.abstract Instantiation.test list list|SPECIES_OFF of alg_expr print_expr listtype perturbation={alarm : Kappa_generic_toolset.Nbr.t option;precondition : (Pattern.id array list, int) Alg_expr.bool Kappa_generic_toolset.Locality.annot;effect : modification list;repeat : (Pattern.id array list, int) Alg_expr.bool Kappa_generic_toolset.Locality.annot;needs_backtrack : bool;}
val perturbation_to_yojson : filenames:int Kappa_generic_toolset.Mods.StringMap.t -> perturbation -> Yojson.Basic.tval perturbation_of_yojson : filenames:string array -> Yojson.Basic.t -> perturbationval exists_modification : (modification -> bool) -> perturbation array -> boolval extract_connected_components_modifications : modification list -> Pattern.id listval extract_connected_components_bool : (Pattern.id array list, int) Alg_expr.bool Kappa_generic_toolset.Locality.annot -> Pattern.id listval map_expr_rule : (alg_expr Kappa_generic_toolset.Locality.annot -> alg_expr Kappa_generic_toolset.Locality.annot) -> elementary_rule -> elementary_ruleval map_expr_perturbation : (alg_expr Kappa_generic_toolset.Locality.annot -> alg_expr Kappa_generic_toolset.Locality.annot) -> ((Pattern.id array list, int) Alg_expr.bool Kappa_generic_toolset.Locality.annot -> (Pattern.id array list, int) Alg_expr.bool Kappa_generic_toolset.Locality.annot) -> perturbation -> perturbationval fold_expr_rule : ('a -> alg_expr Kappa_generic_toolset.Locality.annot -> 'a) -> 'a -> elementary_rule -> 'aval fold_expr_perturbation : ('a -> alg_expr Kappa_generic_toolset.Locality.annot -> 'a) -> ('a -> (Pattern.id array list, int) Alg_expr.bool Kappa_generic_toolset.Locality.annot -> 'a) -> 'a -> perturbation -> 'a