3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-24 01:25:31 +00:00

more readable intervals

This commit is contained in:
Jakob Rath 2022-12-12 16:41:18 +01:00
parent 9f1f949d9d
commit eda6534453
3 changed files with 4 additions and 8 deletions

View file

@ -1335,12 +1335,7 @@ namespace polysat {
}
std::ostream& num_pp::display(std::ostream& out) const {
rational const& p = rational::power_of_two(s.size(var));
if (val > mod(-val, p))
out << -mod(-val, p);
else
out << val;
return out;
return out << dd::val_pp(s.var2pdd(var), val, require_parens);
}
void solver::collect_statistics(statistics& st) const {

View file

@ -542,8 +542,9 @@ namespace polysat {
solver const& s;
pvar var;
rational const& val;
bool require_parens;
public:
num_pp(solver const& s, pvar var, rational const& val): s(s), var(var), val(val) {}
num_pp(solver const& s, pvar var, rational const& val, bool require_parens = false): s(s), var(var), val(val), require_parens(require_parens) {}
std::ostream& display(std::ostream& out) const;
};

View file

@ -376,7 +376,7 @@ namespace polysat {
lo = val - lambda_l;
increase_hi(hi);
}
LOG("forbidden interval v" << v << " " << val << " " << e->coeff << " * " << e->interval << " [" << lo << ", " << hi << "[");
LOG("forbidden interval v" << v << " " << num_pp(s, v, val) << " " << num_pp(s, v, e->coeff, true) << " * " << e->interval << " [" << num_pp(s, v, lo) << ", " << num_pp(s, v, hi) << "[");
SASSERT(hi <= mod_value);
bool full = (lo == 0 && hi == mod_value);
if (hi == mod_value)