3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-23 17:15:31 +00:00

adding level2var

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2019-12-22 11:51:04 -08:00
parent 58be42d2a9
commit 25b98f497a
4 changed files with 50 additions and 14 deletions

View file

@ -36,6 +36,7 @@ namespace dd {
print_eqs(gb.equations());
gb.reset();
// stop early on contradiction
gb.add(v1*v3*v3 + v3*v1 + 2);
gb.add(v1*v3*v3 + v3*v1);
gb.add(v3*v1 + v1*v2 + v2*v3);
@ -45,6 +46,24 @@ namespace dd {
print_eqs(gb.equations());
gb.reset();
// result is v1 = 0, v2 = 0.
gb.add(v1*v3*v3 + v3*v1);
gb.add(v3*v1 + v1*v2 + v2*v3);
gb.add(v3*v1 + v1*v2 + v2*v3 + v1);
gb.add(v3*v1 + v1*v2 + v2*v3 + v2);
gb.saturate();
print_eqs(gb.equations());
gb.reset();
// everything rewrites to a multiple of v0
gb.add(v3 - 2*v2);
gb.add(v2 - 2*v1);
gb.add(v1 - 2*v0);
gb.saturate();
print_eqs(gb.equations());
gb.reset();
//
}
}