std::string boolbv_mapt::map_entryt::get_value(const propt &prop) const { std::string result; result.reserve(literal_map.size()); for(unsigned i=0; i<literal_map.size(); i++) { char ch='*'; if(literal_map[i].is_set) { tvt value=prop.l_get(literal_map[i].l); if(value.is_true()) ch='1'; else if(value.is_false()) ch='0'; else ch='?'; } result=result+ch; } return result; }
void cnf_clause_list_assignmentt::copy_assignment_from(const propt &prop) { assignment.resize(no_variables()); // we don't use index 0, start with 1 for(unsigned v=1; v<assignment.size(); v++) { literalt l; l.set(v, false); assignment[v]=prop.l_get(l); } }