mirror of
https://github.com/Z3Prover/z3
synced 2025-04-12 12:08:18 +00:00
fix nightly regression from solve-eqs context solver addition
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
2d0ff7d68a
commit
f99384c6a3
|
@ -18,6 +18,7 @@ Revision History:
|
||||||
--*/
|
--*/
|
||||||
#include "math/grobner/grobner.h"
|
#include "math/grobner/grobner.h"
|
||||||
#include "ast/ast_pp.h"
|
#include "ast/ast_pp.h"
|
||||||
|
#include "ast/ast_ll_pp.h"
|
||||||
#include "util/ref_util.h"
|
#include "util/ref_util.h"
|
||||||
|
|
||||||
// #define PROFILE_GB
|
// #define PROFILE_GB
|
||||||
|
@ -121,7 +122,7 @@ void grobner::reset() {
|
||||||
|
|
||||||
void grobner::display_var(std::ostream & out, expr * var) const {
|
void grobner::display_var(std::ostream & out, expr * var) const {
|
||||||
if (is_app(var) && to_app(var)->get_num_args() > 0)
|
if (is_app(var) && to_app(var)->get_num_args() > 0)
|
||||||
out << "#" << var->get_id();
|
out << mk_bounded_pp(var, m_manager);
|
||||||
else
|
else
|
||||||
out << mk_pp(var, m_manager);
|
out << mk_pp(var, m_manager);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1931,7 +1931,7 @@ namespace smt {
|
||||||
derived_bound b(null_theory_var, inf_numeral(0), B_LOWER);
|
derived_bound b(null_theory_var, inf_numeral(0), B_LOWER);
|
||||||
dependency2new_bound(d, b);
|
dependency2new_bound(d, b);
|
||||||
set_conflict(b, ante, "arith_nl");
|
set_conflict(b, ante, "arith_nl");
|
||||||
TRACE("non_linear", for (literal lit : b.m_lits) tout << lit << " "; tout << "\n";);
|
TRACE("non_linear", for (literal lit : b.m_lits) get_context().display_literal_verbose(tout, lit) << "\n"; tout << "\n";);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -436,7 +436,7 @@ namespace smt {
|
||||||
{
|
{
|
||||||
context& ctx = th.get_context();
|
context& ctx = th.get_context();
|
||||||
m_arith_value.init(&ctx);
|
m_arith_value.init(&ctx);
|
||||||
m_max_set_enumeration = 100;
|
m_max_set_enumeration = 4;
|
||||||
}
|
}
|
||||||
|
|
||||||
~imp() {
|
~imp() {
|
||||||
|
|
|
@ -599,11 +599,14 @@ class solve_eqs_tactic : public tactic {
|
||||||
hoist_rewriter_star rw(m());
|
hoist_rewriter_star rw(m());
|
||||||
th_rewriter thrw(m());
|
th_rewriter thrw(m());
|
||||||
expr_ref tmp(m()), tmp2(m());
|
expr_ref tmp(m()), tmp2(m());
|
||||||
|
TRACE("solve_eqs", g.display(tout););
|
||||||
for (unsigned idx = 0; idx < size; idx++) {
|
for (unsigned idx = 0; idx < size; idx++) {
|
||||||
checkpoint();
|
checkpoint();
|
||||||
|
if (g.is_decided_unsat()) break;
|
||||||
expr* f = g.form(idx);
|
expr* f = g.form(idx);
|
||||||
thrw(f, tmp);
|
thrw(f, tmp);
|
||||||
rw(tmp, tmp2);
|
rw(tmp, tmp2);
|
||||||
|
TRACE("solve_eqs", tout << mk_pp(f, m()) << " " << tmp2 << "\n";);
|
||||||
g.update(idx, tmp2, g.pr(idx), g.dep(idx));
|
g.update(idx, tmp2, g.pr(idx), g.dep(idx));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue