module Goal:sig..end
Goals
A goal (aka problem). A goal is essentially a of formulas, that can be solved and/or transformed using tactics and solvers.
type goal
val get_precision : goal -> Z3enums.goal_precThe precision of the goal.
Goals can be transformed using over and under approximations. An under approximation is applied when the objective is to find a model for a given goal. An over approximation is applied when the objective is to find a proof for a given goal.
val is_precise : goal -> boolIndicates whether the goal is precise.
val is_underapproximation : goal -> boolIndicates whether the goal is an under-approximation.
val is_overapproximation : goal -> boolIndicates whether the goal is an over-approximation.
val is_garbage : goal -> boolIndicates whether the goal is garbage (i.e., the product of over- and under-approximations).
val add : goal -> Expr.expr list -> unitAdds the constraints to the given goal.
val is_inconsistent : goal -> boolIndicates whether the goal contains `false'.
val get_depth : goal -> intThe depth of the goal. This tracks how many transformations were applied to it.
val reset : goal -> unitErases all formulas from the given goal.
val get_size : goal -> intThe number of formulas in the goal.
val get_formulas : goal -> Expr.expr listThe formulas in the goal.
val get_num_exprs : goal -> intThe number of formulas, subformulas and terms in the goal.
val is_decided_sat : goal -> boolIndicates whether the goal is empty, and it is precise or the product of an under approximation.
val is_decided_unsat : goal -> boolIndicates whether the goal contains `false', and it is precise or the product of an over approximation.
val translate : goal -> context -> goalTranslates (copies) the Goal to another context..
val simplify : goal -> Params.params option -> goalSimplifies the goal. Essentially invokes the `simplify' tactic on the goal.
val mk_goal : context -> bool -> bool -> bool -> goalCreates a new Goal.
Note that the Context must have been created with proof generation support if the fourth argument is set to true here.
val to_string : goal -> stringA string representation of the Goal.
val as_expr : goal -> Expr.exprGoal to BoolExpr conversion.