Skip to content

Commit e950453

Browse files
force propagation for smt cubing
Signed-off-by: Nikolaj Bjorner <[email protected]>
1 parent bbfac99 commit e950453

File tree

3 files changed

+6
-1
lines changed

3 files changed

+6
-1
lines changed

src/smt/smt_solver.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -281,6 +281,9 @@ namespace smt {
281281
ast_manager& m = get_manager();
282282
if (!m_cuber) {
283283
m_cuber = alloc(cuber, *this);
284+
// force propagation
285+
push_core();
286+
pop_core(1);
284287
}
285288
expr_ref result = m_cuber->cube();
286289
expr_ref_vector lits(m);

src/solver/combined_solver.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -264,7 +264,8 @@ class combined_solver : public solver {
264264
}
265265

266266
expr_ref_vector cube(expr_ref_vector& vars, unsigned backtrack_level) override {
267-
return m_solver1->cube(vars, backtrack_level);
267+
switch_inc_mode();
268+
return m_solver2->cube(vars, backtrack_level);
268269
}
269270

270271
expr * get_assumption(unsigned idx) const override {

src/solver/tactic2solver.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ class tactic2solver : public solver_na2as {
8080

8181
expr_ref_vector cube(expr_ref_vector& vars, unsigned ) override {
8282
set_reason_unknown("cubing is not supported on tactics");
83+
IF_VERBOSE(1, verbose_stream() << "cubing is not supported on tactics\n");
8384
return expr_ref_vector(get_manager());
8485
}
8586

0 commit comments

Comments
 (0)