3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-23 19:47:52 +00:00

debug simplify_clause

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2022-10-14 12:12:21 +02:00
parent e711808d3e
commit eca72ffda1
3 changed files with 43 additions and 1 deletions

View file

@ -354,6 +354,27 @@ namespace polysat {
s.expect_sat();
}
//
// -43 \/ 3 \/ 4
// -43: v3 + -1 != 0
// 3: v3 == 0
// 4: v3 <= v5
static void test_clause_simplify1() {
scoped_solver s(__func__);
simplify_clause simp(s);
clause_builder cb(s);
auto u = s.var(s.add_var(4));
auto v = s.var(s.add_var(4));
cb.push(s.eq(u));
cb.push(~s.eq(u - 1));
cb.push(s.ule(u, v));
auto cl = cb.build();
simp.apply(*cl);
std::cout << *cl << "\n";
SASSERT(cl->size() == 2);
}
/**
* Check unsat of:
@ -1409,6 +1430,8 @@ namespace polysat {
void tst_polysat() {
using namespace polysat;
test_polysat::test_clause_simplify1();
// test_polysat::test_add_conflicts(); // ok
// test_polysat::test_wlist(); // ok
// test_polysat::test_cjust(); // uses viable_fallback; weak lemmas