mirror of
https://github.com/Z3Prover/z3
synced 2025-06-27 00:18:45 +00:00
simplify note, and no need to be exclusive
This commit is contained in:
parent
5f2fd039ba
commit
5bd63ab7c5
1 changed files with 19 additions and 3 deletions
|
@ -11,6 +11,21 @@ Author:
|
||||||
|
|
||||||
Notes:
|
Notes:
|
||||||
|
|
||||||
|
TODO: inspired from bench23, trying to strength weak FI lemma.
|
||||||
|
|
||||||
|
If we have both:
|
||||||
|
p <= q
|
||||||
|
p - q == 0
|
||||||
|
|
||||||
|
Then remove the equality.
|
||||||
|
|
||||||
|
If we have both:
|
||||||
|
p < q
|
||||||
|
p - q == 0
|
||||||
|
|
||||||
|
Then merge into p <= q.
|
||||||
|
|
||||||
|
|
||||||
TODO: from test_ineq_basic5: (mod 2^4)
|
TODO: from test_ineq_basic5: (mod 2^4)
|
||||||
Lemma: -0 \/ -1 \/ 2 \/ 3
|
Lemma: -0 \/ -1 \/ 2 \/ 3
|
||||||
-0: -4 > v1 + v0 [ bvalue=l_false @0 pwatched=1 ]
|
-0: -4 > v1 + v0 [ bvalue=l_false @0 pwatched=1 ]
|
||||||
|
@ -77,13 +92,14 @@ namespace polysat {
|
||||||
|
|
||||||
bool simplify_clause::apply(clause& cl) {
|
bool simplify_clause::apply(clause& cl) {
|
||||||
LOG_H1("Simplifying clause: " << cl);
|
LOG_H1("Simplifying clause: " << cl);
|
||||||
|
bool simplified = false;
|
||||||
#if 0
|
#if 0
|
||||||
if (try_recognize_bailout(cl))
|
if (try_recognize_bailout(cl))
|
||||||
return true;
|
simplified = true;
|
||||||
#endif
|
#endif
|
||||||
if (try_equal_body_subsumptions(cl))
|
if (try_equal_body_subsumptions(cl))
|
||||||
return true;
|
simplified = true;
|
||||||
return false;
|
return simplified;
|
||||||
}
|
}
|
||||||
|
|
||||||
// If x != k appears among the new literals, all others are superfluous.
|
// If x != k appears among the new literals, all others are superfluous.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue