From 0f2fe6031a3bd7fafb1cb8e605d978e2ea678805 Mon Sep 17 00:00:00 2001 From: Nikolaj Bjorner Date: Tue, 25 Jul 2023 11:32:20 -0700 Subject: [PATCH] patching up trim Signed-off-by: Nikolaj Bjorner --- src/sat/sat_proof_trim.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/sat/sat_proof_trim.cpp b/src/sat/sat_proof_trim.cpp index 51fc44cd7..7531da99f 100644 --- a/src/sat/sat_proof_trim.cpp +++ b/src/sat/sat_proof_trim.cpp @@ -177,7 +177,8 @@ namespace sat { IF_VERBOSE(3, verbose_stream() << "core " << cl << "\n"); unsigned trail_size0 = s.m_trail.size(); - if (!cl.empty()) { + bool probe = !cl.empty() && !s.inconsistent(); + if (probe) { SASSERT(!s.inconsistent()); s.push(); unsigned lvl = s.scope_lvl(); @@ -214,7 +215,7 @@ namespace sat { s.reset_mark(v); add_dependency(s.get_justification(v)); } - if (!cl.empty()) + if (probe) s.pop(1); } @@ -384,7 +385,7 @@ namespace sat { }; if (all_of(m_clause, [&](sat::literal lit) { return s.value(lit) == l_false; })) { - IF_VERBOSE(3, verbose_stream() << "conflict " << m_clause << "\n"); + IF_VERBOSE(3, verbose_stream() << "false clause " << m_clause << "\n"); set_conflict(m_clause, cl); return; }