electrod

Formal analysis for the Electrod formal pivot language
IN THIS PACKAGE

Parameters

module Ltl : Solver.LTL

Signature

type atomic = Ltl.Atomic.t
val single_state_sym_to_ltl : int -> Elo.t -> Symmetry.t -> Ltl.t

Computes the LTL (the only temporal connective is "next") formula encoding the symmetry in a single state only (int the initial state if symmetry_offset = 0)

val temporal_sym_to_ltl : Elo.t -> Symmetry.t -> Ltl.t

Computes the full LTL formula encoding the symmetry in a temporal context

val syms_to_ltl : bool -> int -> Elo.t -> Ltl.t Containers.List.t
val add_sym_comment_to_ltl_fml_list : 'a list -> (string * 'b) S.t
val split_invar_noninvar_fmls : Elo.t -> Elo.fml list -> Elo.fml list * Elo.fml list * Elo.fml list * Elo.fml list
val dualise_fmls : Elo.fml list -> Elo.fml
val run : (Elo.t * bool * int) -> Model.t