mirror of
https://github.com/Z3Prover/z3
synced 2025-04-12 04:03:39 +00:00
fix bug in unsat core finding
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
78c03ed835
commit
8822bc1755
|
@ -50,14 +50,16 @@ namespace sat {
|
||||||
literal_vector& mus = m_mus;
|
literal_vector& mus = m_mus;
|
||||||
core.append(s.get_core());
|
core.append(s.get_core());
|
||||||
for (unsigned i = 0; i < core.size(); ++i) {
|
for (unsigned i = 0; i < core.size(); ++i) {
|
||||||
s.m_user_scope_literals.contains(core[i]);
|
if (s.m_user_scope_literals.contains(core[i])) {
|
||||||
mus.push_back(core[i]);
|
mus.push_back(core[i]);
|
||||||
core[i] = core.back();
|
core[i] = core.back();
|
||||||
core.pop_back();
|
core.pop_back();
|
||||||
--i;
|
--i;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
while (!core.empty()) {
|
while (!core.empty()) {
|
||||||
|
IF_VERBOSE(2, verbose_stream() << "(opt.mus reducing core: " << core.size() << " new core: " << mus.size() << ")\n";);
|
||||||
TRACE("sat",
|
TRACE("sat",
|
||||||
tout << "core: " << core << "\n";
|
tout << "core: " << core << "\n";
|
||||||
tout << "mus: " << mus << "\n";);
|
tout << "mus: " << mus << "\n";);
|
||||||
|
|
Loading…
Reference in a new issue