3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-02-20 15:34:41 +00:00

bug fixes

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2025-10-27 05:51:42 +01:00
parent c832802183
commit d847a28589
10 changed files with 118 additions and 76 deletions

View file

@ -47,7 +47,7 @@ enum finite_set_op_kind {
OP_FINITE_SET_MAP,
OP_FINITE_SET_FILTER,
OP_FINITE_SET_RANGE,
OP_FINITE_SET_DIFF,
OP_FINITE_SET_EXT,
OP_FINITE_SET_MAP_INVERSE,
LAST_FINITE_SET_OP
};
@ -154,6 +154,11 @@ public:
ast_manager& get_manager() const { return m_manager; }
sort *mk_finite_set_sort(sort *elem_sort) {
parameter param(elem_sort);
return m_manager.mk_sort(m_fid, FINITE_SET_SORT, 1, &param);
}
app * mk_empty(sort* set_sort) {
parameter param(set_sort);
return m_manager.mk_app(m_fid, OP_FINITE_SET_EMPTY, 1, &param, 0, nullptr);
@ -175,6 +180,10 @@ public:
return m_manager.mk_app(m_fid, OP_FINITE_SET_DIFFERENCE, s1, s2);
}
app *mk_ext(expr *s1, expr *s2) {
return m_manager.mk_app(m_fid, OP_FINITE_SET_EXT, s1, s2);
}
app * mk_in(expr* elem, expr* set) {
return m_manager.mk_app(m_fid, OP_FINITE_SET_IN, elem, set);
}