3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-06-20 21:03:39 +00:00

Added Z3_solver_translate to ML API.

This commit is contained in:
Christoph M. Wintersteiger 2015-11-09 13:19:10 +00:00
parent 4e05e93ecb
commit 6625f7a749
2 changed files with 8 additions and 2 deletions

View file

@ -2740,10 +2740,13 @@ struct
mk_solver ctx (Some (Symbol.mk_string ctx logic)) mk_solver ctx (Some (Symbol.mk_string ctx logic))
let mk_simple_solver ( ctx : context ) = let mk_simple_solver ( ctx : context ) =
(create ctx (Z3native.mk_simple_solver (context_gno ctx))) create ctx (Z3native.mk_simple_solver (context_gno ctx))
let mk_solver_t ( ctx : context ) ( t : Tactic.tactic ) = let mk_solver_t ( ctx : context ) ( t : Tactic.tactic ) =
(create ctx (Z3native.mk_solver_from_tactic (context_gno ctx) (z3obj_gno t))) create ctx (Z3native.mk_solver_from_tactic (context_gno ctx) (z3obj_gno t))
let translate ( x : solver ) ( to_ctx : context ) =
create to_ctx (Z3native.solver_translate (z3obj_gnc x) (z3obj_gno x) (context_gno to_ctx))
let to_string ( x : solver ) = Z3native.solver_to_string (z3obj_gnc x) (z3obj_gno x) let to_string ( x : solver ) = Z3native.solver_to_string (z3obj_gnc x) (z3obj_gno x)
end end

View file

@ -3122,6 +3122,9 @@ sig
The solver supports the commands [Push] and [Pop], but it The solver supports the commands [Push] and [Pop], but it
will always solve each check from scratch. *) will always solve each check from scratch. *)
val mk_solver_t : context -> Tactic.tactic -> solver val mk_solver_t : context -> Tactic.tactic -> solver
(** Create a clone of the current solver with respect to a context. *)
val translate : solver -> context -> solver
(** A string representation of the solver. *) (** A string representation of the solver. *)
val to_string : solver -> string val to_string : solver -> string