mirror of
https://github.com/Z3Prover/z3
synced 2025-11-14 01:51:16 +00:00
support other ops
This commit is contained in:
parent
3b7b7a6867
commit
47d6663c67
2 changed files with 47 additions and 14 deletions
|
|
@ -35,9 +35,19 @@ namespace polysat {
|
|||
|
||||
expr* mk_fresh_bool_const(char const* prefix);
|
||||
|
||||
expr* mk_ule(pdd const& p, pdd const& q);
|
||||
|
||||
// expression for "parity of p"
|
||||
expr* mk_parity(pdd const& p);
|
||||
|
||||
// p_inv = pseudo-inverse(p)
|
||||
expr* mk_inv(pdd const& p, pdd const& p_inv);
|
||||
|
||||
expr* mk_op(op_constraint const& op);
|
||||
|
||||
template <typename Fn>
|
||||
expr* mk_bin(char const* name, pdd const& p, pdd const& q, pdd const& r, Fn mk_bin_expr);
|
||||
|
||||
public:
|
||||
polysat_ast(solver&);
|
||||
~polysat_ast();
|
||||
|
|
@ -52,7 +62,6 @@ namespace polysat {
|
|||
expr* mk_poly(pdd const& p);
|
||||
|
||||
// p <= q
|
||||
expr* mk_ule(pdd const& p, pdd const& q);
|
||||
expr* mk_ule(pdd const& p, pdd const& q, bool sign);
|
||||
// p >= q
|
||||
expr* mk_uge(pdd const& p, pdd const& q, bool sign) { return mk_ule(q, p, sign); }
|
||||
|
|
@ -64,9 +73,6 @@ namespace polysat {
|
|||
// ovfl*(p, q)
|
||||
expr* mk_umul_ovfl(pdd const& p, pdd const& q, bool sign);
|
||||
|
||||
// p_inv = pseudo-inverse(p)
|
||||
expr* mk_inv(pdd const& p, pdd const& p_inv);
|
||||
|
||||
expr* mk_op(op_constraint const& op, bool sign);
|
||||
|
||||
expr* mk_not(expr* e);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue