mirror of
https://github.com/Z3Prover/z3
synced 2025-08-15 15:25:26 +00:00
fix sign bug in internalization of literals
This commit is contained in:
parent
0ef8ebe89f
commit
692bed7991
5 changed files with 30 additions and 17 deletions
|
@ -309,7 +309,9 @@ namespace euf {
|
|||
expr_ref mk_eq(expr* e1, expr* e2);
|
||||
expr_ref mk_eq(euf::enode* n1, euf::enode* n2) { return mk_eq(n1->get_expr(), n2->get_expr()); }
|
||||
euf::enode* mk_enode(expr* e, unsigned n, enode* const* args) { return m_egraph.mk(e, n, args); }
|
||||
expr* bool_var2expr(sat::bool_var v) { return m_bool_var2expr.get(v, nullptr); }
|
||||
expr* bool_var2expr(sat::bool_var v) const { return m_bool_var2expr.get(v, nullptr); }
|
||||
expr_ref literal2expr(sat::literal lit) const { expr* e = bool_var2expr(lit.var()); return lit.sign() ? expr_ref(m.mk_not(e), m) : expr_ref(e, m); }
|
||||
|
||||
sat::literal attach_lit(sat::literal lit, expr* e);
|
||||
void unhandled_function(func_decl* f);
|
||||
th_rewriter& get_rewriter() { return m_rewriter; }
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue