65 for(
size_t j=0; j<clause.size(); j++)
67 out << clause[j].dimacs() <<
" ";
69 if((j&15)==0 && j!=0 && break_lines)
78 std::size_t count = 0;
79 std::stringstream output_block;
80 for(clausest::const_iterator it=
clauses.begin();
88 out << output_block.str();
94 out << output_block.str();
Magic numbers used throughout the codebase.
void write_clauses(std::ostream &out)
virtual void write_dimacs_cnf(std::ostream &out)
const std::size_t CNF_DUMP_BLOCK_SIZE
static void write_dimacs_clause(const bvt &clause, std::ostream &out, bool break_lines)
virtual void lcnf(const bvt &bv)
#define UNREACHABLE
This should be used to mark dead code.
void write_problem_line(std::ostream &out)
virtual size_t no_variables() const override
bool is_in_conflict(literalt l) const override
Returns true if an assumption is in the final conflict.
dimacs_cnf_dumpt(std::ostream &_out)
std::vector< literalt > bvt
void set_assignment(literalt a, bool value) override