package KaSim

  1. Overview
  2. Docs
type state = {
  1. graph : Edges.t;
  2. time : float;
  3. event : int;
  4. connected_components : Agent.SetMap.Set.t Mods.IntMap.t option;
}
type summary = {
  1. unary_distances : (int * int) option;
}
val init_state : with_connected_components:bool -> state
val do_step : Signature.s -> state -> Trace.step -> state * summary
val is_step_triggerable : state -> Trace.step -> bool
val is_step_triggerable_on_edges : Edges.t -> Trace.step -> bool
val tests_pass_on : Edges.t -> Instantiation.concrete Instantiation.test list list -> bool
val cc_of_state : state -> Pattern.PreEnv.t -> Pattern.PreEnv.t * ((int * int) list * Pattern.cc * Pattern.id) list