31 return "QuBE w/ toplevel assignments";
44 std::string result_tmp_file=
"qube.out";
58 "QuBE "+options+
" "+
qbf_tmp_file+
" > "+result_tmp_file).c_str());
65 std::ifstream in(result_tmp_file.c_str());
67 bool result_found=
false;
72 std::getline(in, line);
74 if(!line.empty() && line[line.size() - 1] ==
'\r')
75 line.resize(line.size()-1);
81 assignment[numeric_cast_v<std::size_t>(b.negate())] =
false;
83 assignment[numeric_cast_v<std::size_t>(b)] =
true;
85 else if(line==
"s cnf 1")
91 else if(line==
"s cnf 0")
106 int remove_result=remove(result_tmp_file.c_str());
size_t no_clauses() const override
virtual size_t no_variables() const override
mstreamt & status() const
std::string solver_text() const override
qbf_qube_coret(message_handlert &message_handler)
virtual resultt prop_solve()
~qbf_qube_coret() override
modeltypet m_get(literalt a) const override
bool is_in_core(literalt l) const override
virtual void write_qdimacs_cnf(std::ostream &out)
#define CHECK_RETURN(CONDITION)
char * strerror(int errnum)