Structure mlibMeson


Source File Identifier index Theory binding index

(* ========================================================================= *)
(* THE MESON PROOF PROCEDURE                                                 *)
(* Copyright (c) 2001-2004 Joe Hurd.                                         *)
(* ========================================================================= *)

signature mlibMeson =
sig

type solver_node = mlibSolver.solver_node

(* Tuning parameters *)
type parameters =
  {ancestor_pruning : bool,
   ancestor_cutting : bool,
   state_simplify   : bool,
   cache_cutting    : bool,
   divide_conquer   : bool,
   unit_lemmaizing  : bool,
   sort_literals    : int,                        (* In the range [0..2] *)
   sort_rules       : bool}

type 'a Parmupdate = ('a -> 'a) -> parameters -> parameters
val defaults                : parameters
val update_ancestor_pruning : bool Parmupdate
val update_ancestor_cutting : bool Parmupdate
val update_state_simplify   : bool Parmupdate
val update_cache_cutting    : bool Parmupdate
val update_divide_conquer   : bool Parmupdate
val update_unit_lemmaizing  : bool Parmupdate
val update_sort_literals    : int Parmupdate
val update_sort_rules       : bool Parmupdate

(* The meson solver *)
val meson' : string * parameters -> solver_node
val meson  : solver_node                          (* Uses defaults *)

(* The delta preprocessor as a solver *)
val delta' : string * parameters -> solver_node
val delta  : solver_node                          (* Uses defaults *)

(* The prolog solver *)
val prolog' : string * parameters -> solver_node
val prolog  : solver_node                         (* Uses defaults *)

end


Source File Identifier index Theory binding index

HOL 4, Kananaskis-14