3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-05-17 15:39:27 +00:00

fix issues 1-10: add missing API bindings across Go, Julia, TypeScript, OCaml, and Java (#9432)

Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/b89f3b76-dfd7-47ec-97dd-8ae5e8e88a4a

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
This commit is contained in:
Copilot 2026-05-04 09:29:47 -07:00 committed by GitHub
parent eefb644c93
commit 1c6943c2cb
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 356 additions and 0 deletions

View file

@ -1350,6 +1350,15 @@ struct
let mk_range = Z3native.mk_finite_set_range
end
module SpecialRelation =
struct
let mk_linear_order = Z3native.mk_linear_order
let mk_partial_order = Z3native.mk_partial_order
let mk_piecewise_linear_order = Z3native.mk_piecewise_linear_order
let mk_tree_order = Z3native.mk_tree_order
let mk_transitive_closure = Z3native.mk_transitive_closure
end
module FloatingPoint =
struct
module RoundingMode =

View file

@ -2140,6 +2140,31 @@ sig
end
(** Special relation constructors *)
module SpecialRelation :
sig
(** Create a linear (total) order relation over the given sort.
The [id] parameter distinguishes multiple linear orders over the same sort. *)
val mk_linear_order : context -> Sort.sort -> int -> FuncDecl.func_decl
(** Create a partial order relation over the given sort.
The [id] parameter distinguishes multiple partial orders over the same sort. *)
val mk_partial_order : context -> Sort.sort -> int -> FuncDecl.func_decl
(** Create a piecewise linear order relation over the given sort.
The [id] parameter distinguishes multiple piecewise linear orders over the same sort. *)
val mk_piecewise_linear_order : context -> Sort.sort -> int -> FuncDecl.func_decl
(** Create a tree order relation over the given sort.
The [id] parameter distinguishes multiple tree orders over the same sort. *)
val mk_tree_order : context -> Sort.sort -> int -> FuncDecl.func_decl
(** Create the transitive closure of a binary relation.
The resulting relation is recursive. *)
val mk_transitive_closure : context -> FuncDecl.func_decl -> FuncDecl.func_decl
end
(** Floating-Point Arithmetic *)
module FloatingPoint :
sig