mirror of
https://github.com/Z3Prover/z3
synced 2025-04-29 20:05:51 +00:00
* fixing #4670 Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * init Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * arrays Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * arrays Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * arrays Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * na Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
ee00542e76
commit
cfa7c733db
48 changed files with 1591 additions and 359 deletions
|
@ -139,4 +139,23 @@ namespace euf {
|
|||
ctx.s().add_clause(4, lits, sat::status::th(m_is_redundant, get_id()));
|
||||
}
|
||||
|
||||
euf::enode* th_euf_solver::mk_enode(expr* e, bool suppress_args) {
|
||||
m_args.reset();
|
||||
if (!suppress_args)
|
||||
for (expr* arg : *to_app(e))
|
||||
m_args.push_back(expr2enode(arg));
|
||||
euf::enode* n = ctx.mk_enode(e, m_args.size(), m_args.c_ptr());
|
||||
ctx.attach_node(n);
|
||||
if (m.is_bool(e)) {
|
||||
sat::bool_var v = ctx.get_si().add_bool_var(e);
|
||||
NOT_IMPLEMENTED_YET();
|
||||
// TODO: ctx.attach_lit(literal(v, false), e);
|
||||
}
|
||||
return n;
|
||||
}
|
||||
|
||||
|
||||
void th_euf_solver::rewrite(expr_ref& a) {
|
||||
ctx.get_rewriter()(a);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue