3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-03-09 23:00:30 +00:00

Add missing API methods: dimacs, translate, proof, addSimplifier, getLower/getUpper, etc.

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot] 2026-02-24 17:22:17 +00:00
parent 08addfa654
commit 9802b32a3e
9 changed files with 280 additions and 6 deletions

View file

@ -1955,6 +1955,7 @@ struct
let add_simplifier = Z3native.solver_add_simplifier
let translate x = Z3native.solver_translate (gc x) x
let to_string x = Z3native.solver_to_string (gc x) x
let to_dimacs x include_names = Z3native.solver_to_dimacs_string (gc x) x include_names
let interrupt (ctx:context) (s:solver) =
Z3native.solver_interrupt ctx s
@ -2145,6 +2146,7 @@ struct
let from_string (x:optimize) (s:string) = Z3native.optimize_from_string (gc x) x s
let get_assertions (x:optimize) = AST.ASTVector.to_expr_list (Z3native.optimize_get_assertions (gc x) x)
let get_objectives (x:optimize) = AST.ASTVector.to_expr_list (Z3native.optimize_get_objectives (gc x) x)
let translate (x:optimize) (to_ctx:context) = Z3native.optimize_translate (gc x) x to_ctx
end

View file

@ -3428,6 +3428,10 @@ sig
(** A string representation of the solver. *)
val to_string : solver -> string
(** Convert the solver's Boolean formula to DIMACS CNF format.
@param include_names If true, include variable names in the output. *)
val to_dimacs : solver -> bool -> string
(** Solver local interrupt.
Normally you should use Z3_interrupt to cancel solvers because only
@ -3665,6 +3669,9 @@ sig
corresponding minimization objective. In this way the resulting
objective function is always returned as a minimization objective. *)
val get_objectives : optimize -> Expr.expr list
(** Translate the optimize context to a different context. *)
val translate : optimize -> context -> optimize
end