package mc2

  1. Overview
  2. Docs

Main interface for plugins. Each plugin must abide by this interface.

val id : int
val name : string

Descriptive name

val provided_services : Service.any list

List of provided services, to be registered for other plugins to use

val check_if_sat : Mc2_core__.Solver_types.actions -> Mc2_core__.Solver_types.check_res

Last call before answering "sat". If the current trail is not theory-satisfiable, the plugin MUST give a conflict here.

val iter_terms : Mc2_core__.Solver_types.term Iter.t

Iterate on all terms known to the plugin. Used for checking all variables to assign, and for garbage collection.

val gc_all : unit -> int

Garbage collect all unmarked terms

  • returns

    the number of collected (deleted) terms