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

remove disjunctive lemma feature

This commit is contained in:
Nikolaj Bjorner 2021-09-19 07:33:20 -04:00
parent fa3886136b
commit 02a38009b9
4 changed files with 2 additions and 36 deletions

View file

@ -16,31 +16,6 @@ namespace polysat {
std::string m_name;
lbool m_last_result = l_undef;
lbool check_rec() {
lbool result = check_sat();
if (result != l_undef)
return result;
auto const new_lemma = get_lemma();
// Empty lemma => check_sat() terminated for another reason, e.g., resource limits
if (new_lemma.empty())
return l_undef;
for (auto lit : new_lemma) {
push();
assign_eh(lit, true);
result = check_rec();
pop();
// Found a model => done
if (result == l_true)
return l_true;
if (result == l_undef)
return l_undef;
// Unsat => try next literal
SASSERT(result == l_false);
}
// No literal worked? unsat
return l_false;
}
public:
scoped_solver(std::string name): solver(lim), m_name(name) {
std::cout << "\n\n\n" << std::string(78, '#') << "\n";
@ -48,7 +23,7 @@ namespace polysat {
}
void check() {
m_last_result = check_rec();
m_last_result = check_sat();
std::cout << m_name << ": " << m_last_result << "\n";
statistics st;
collect_statistics(st);