3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-02-28 10:51:28 +00:00

fix lookahead with ba extension

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2017-10-11 17:30:21 -07:00
parent 81ad69214c
commit 99b232a4c5
5 changed files with 26 additions and 4 deletions

View file

@ -1564,7 +1564,7 @@ namespace sat {
init_watch(*c, true);
}
else {
s().set_external(lit.var());
if (m_solver) m_solver->set_external(lit.var());
watch_literal(lit, *c);
watch_literal(~lit, *c);
}
@ -3243,6 +3243,18 @@ namespace sat {
extension* ba_solver::copy(solver* s) {
ba_solver* result = alloc(ba_solver);
result->set_solver(s);
copy_core(result);
return result;
}
extension* ba_solver::copy(lookahead* s) {
ba_solver* result = alloc(ba_solver);
result->set_lookahead(s);
copy_core(result);
return result;
}
void ba_solver::copy_core(ba_solver* result) {
literal_vector lits;
svector<wliteral> wlits;
for (constraint* cp : m_constraints) {
@ -3274,8 +3286,6 @@ namespace sat {
UNREACHABLE();
}
}
return result;
}
void ba_solver::init_use_list(ext_use_list& ul) {