mirror of
https://github.com/Z3Prover/z3
synced 2025-06-21 05:13:39 +00:00
another bug fix
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
caef8d026f
commit
adf41c5d02
2 changed files with 7 additions and 6 deletions
|
@ -153,14 +153,13 @@ namespace polysat {
|
||||||
if (last->interval.lo_val() < last->interval.hi_val())
|
if (last->interval.lo_val() < last->interval.hi_val())
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
auto const& max_value = s.var2pdd(v).max_value();
|
|
||||||
do {
|
do {
|
||||||
if (e->interval.is_full())
|
if (e->interval.is_full())
|
||||||
return false;
|
return false;
|
||||||
entry* n = e->next();
|
entry* n = e->next();
|
||||||
if (n == e)
|
if (n == e)
|
||||||
return true;
|
return true;
|
||||||
if (e->interval.hi_val() < n->interval.lo_val())
|
if (!n->interval.currently_contains(e->interval.hi_val()))
|
||||||
return true;
|
return true;
|
||||||
if (n == first)
|
if (n == first)
|
||||||
return e->interval.lo_val() <= e->interval.hi_val();
|
return e->interval.lo_val() <= e->interval.hi_val();
|
||||||
|
@ -276,6 +275,7 @@ namespace polysat {
|
||||||
}
|
}
|
||||||
|
|
||||||
bool viable::resolve(pvar v, conflict& core) {
|
bool viable::resolve(pvar v, conflict& core) {
|
||||||
|
std::cout << "resolve " << v << "\n";
|
||||||
if (has_viable(v))
|
if (has_viable(v))
|
||||||
return false;
|
return false;
|
||||||
auto* e = m_viable[v];
|
auto* e = m_viable[v];
|
||||||
|
|
|
@ -1068,6 +1068,7 @@ namespace polysat {
|
||||||
void tst_polysat() {
|
void tst_polysat() {
|
||||||
|
|
||||||
|
|
||||||
|
polysat::test_ineq_basic6();
|
||||||
|
|
||||||
// polysat::test_monot_bounds(8);
|
// polysat::test_monot_bounds(8);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue