mirror of
https://github.com/Z3Prover/z3
synced 2025-04-23 17:15:31 +00:00
Add notes from discussion
This commit is contained in:
parent
34631d972d
commit
4b3af1d0a4
1 changed files with 11 additions and 0 deletions
|
@ -706,6 +706,17 @@ namespace polysat {
|
|||
*
|
||||
* The original version had signed comparisons but that doesn't matter for the UNSAT result.
|
||||
* UNSAT can be seen easily by substituting the equality.
|
||||
*
|
||||
* Possible ways to solve:
|
||||
* - Integrate AC congruence closure
|
||||
* See: Deepak Kapur. A Modular Associative Commutative (AC) Congruence Closure Algorithm, FSCD 2021. https://doi.org/10.4230/LIPIcs.FSCD.2021.15
|
||||
* - Propagate equalities as substitutions
|
||||
* x=t /\ p(x) ==> p(t)
|
||||
* Ackermann-like reduction
|
||||
* (index, watch lists over boolean literals)
|
||||
* - Augment explain:
|
||||
* conflict: y=x+1 /\ y^2 > z
|
||||
* explain could then derive (x+1)^2 > z
|
||||
*/
|
||||
static void test_subst(unsigned bw = 32) {
|
||||
scoped_solver s(__func__);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue