module Probe:sig
..end
Probes
Probes are used to inspect a goal (aka problem) and collect information that may be used to decide
which solver and/or preprocessing step will be used.
The complete list of probes may be obtained using the procedures Context.NumProbes
and Context.ProbeNames
.
It may also be obtained using the command (help-tactic)
in the SMT 2.0 front-end.
type
probe
val apply : probe -> Goal.goal -> float
Execute the probe over the goal.
val get_num_probes : context -> int
The number of supported Probes.
val get_probe_names : context -> string list
The names of all supported Probes.
val get_probe_description : context -> string -> string
Returns a string containing a description of the probe with the given name.
val mk_probe : context -> string -> probe
Creates a new Probe.
val const : context -> float -> probe
Create a probe that always evaluates to a float value.
val lt : context -> probe -> probe -> probe
Create a probe that evaluates to "true" when the value returned by the first argument is less than the value returned by second argument
val gt : context -> probe -> probe -> probe
Create a probe that evaluates to "true" when the value returned by the first argument is greater than the value returned by second argument
val le : context -> probe -> probe -> probe
Create a probe that evaluates to "true" when the value returned by the first argument is less than or equal the value returned by second argument
val ge : context -> probe -> probe -> probe
Create a probe that evaluates to "true" when the value returned by the first argument is greater than or equal the value returned by second argument
val eq : context -> probe -> probe -> probe
Create a probe that evaluates to "true" when the value returned by the first argument is equal the value returned by second argument
val and_ : context -> probe -> probe -> probe
Create a probe that evaluates to "true" when both of two probes evaluate to "true".
val or_ : context -> probe -> probe -> probe
Create a probe that evaluates to "true" when either of two probes evaluates to "true".
val not_ : context -> probe -> probe
Create a probe that evaluates to "true" when another probe does not evaluate to "true".