mirror of
https://github.com/Z3Prover/z3
synced 2025-04-29 20:05:51 +00:00
fix unsoundness in quantifier propagation #6116 and add initial lemma logging
This commit is contained in:
parent
912b284602
commit
ce1f3987d9
15 changed files with 78 additions and 13 deletions
|
@ -47,21 +47,21 @@ namespace q {
|
|||
unsigned lim = m_indirect_nodes.size();
|
||||
lit l = c[i];
|
||||
lbool cmp = compare(n, binding, l.lhs, l.rhs, evidence);
|
||||
TRACE("q", tout << l.lhs << " ~~ " << l.rhs << " is " << cmp << "\n";);
|
||||
switch (cmp) {
|
||||
case l_false:
|
||||
case l_false:
|
||||
m_indirect_nodes.shrink(lim);
|
||||
if (!l.sign)
|
||||
break;
|
||||
c.m_watch = i;
|
||||
return l_true;
|
||||
case l_true:
|
||||
case l_true:
|
||||
m_indirect_nodes.shrink(lim);
|
||||
if (l.sign)
|
||||
break;
|
||||
break;
|
||||
c.m_watch = i;
|
||||
return l_true;
|
||||
case l_undef:
|
||||
TRACE("q", tout << l.lhs << " ~~ " << l.rhs << " is undef\n";);
|
||||
if (idx != UINT_MAX) {
|
||||
idx = UINT_MAX;
|
||||
return l_undef;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue