CBMC
|
TO_BE_DOCUMENTED. More...
#include <prop.h>
Public Types | |
enum class | resultt { P_SATISFIABLE , P_UNSATISFIABLE , P_ERROR } |
Public Member Functions | |
propt (message_handlert &message_handler) | |
virtual | ~propt () |
virtual literalt | land (literalt a, literalt b)=0 |
virtual literalt | lor (literalt a, literalt b)=0 |
virtual literalt | land (const bvt &bv)=0 |
virtual literalt | lor (const bvt &bv)=0 |
virtual literalt | lxor (literalt a, literalt b)=0 |
virtual literalt | lxor (const bvt &bv)=0 |
virtual literalt | lnand (literalt a, literalt b)=0 |
virtual literalt | lnor (literalt a, literalt b)=0 |
virtual literalt | lequal (literalt a, literalt b)=0 |
virtual literalt | limplies (literalt a, literalt b)=0 |
virtual literalt | lselect (literalt a, literalt b, literalt c)=0 |
virtual void | set_equal (literalt a, literalt b) |
asserts a==b in the propositional formula More... | |
virtual void | l_set_to (literalt a, bool value) |
void | l_set_to_true (literalt a) |
void | l_set_to_false (literalt a) |
void | lcnf (literalt l0, literalt l1) |
void | lcnf (literalt l0, literalt l1, literalt l2) |
void | lcnf (literalt l0, literalt l1, literalt l2, literalt l3) |
virtual void | lcnf (const bvt &bv)=0 |
virtual bool | has_set_to () const |
virtual bool | cnf_handled_well () const |
virtual bool | has_assumptions () const |
virtual literalt | new_variable ()=0 |
virtual void | set_variable_name (literalt, const irep_idt &) |
virtual size_t | no_variables () const =0 |
virtual bvt | new_variables (std::size_t width) |
generates a bitvector of given width with new variables More... | |
virtual std::string | solver_text () const =0 |
resultt | prop_solve () |
resultt | prop_solve (const bvt &assumptions) |
virtual tvt | l_get (literalt a) const =0 |
virtual void | set_assignment (literalt a, bool value)=0 |
virtual bool | is_in_conflict (literalt l) const =0 |
Returns true if an assumption is in the final conflict. More... | |
virtual bool | has_is_in_conflict () const |
virtual void | set_frozen (literalt) |
virtual void | set_time_limit_seconds (uint32_t) |
std::size_t | get_number_of_solver_calls () const |
Protected Member Functions | |
virtual resultt | do_prop_solve (const bvt &assumptions)=0 |
Protected Attributes | |
bvt | lcnf_bv |
messaget | log |
std::size_t | number_of_solver_calls = 0 |
|
strong |
|
inlineexplicit |
Implemented in satcheck_zcoret, satcheck_zchaff_baset, satcheck_picosatt, satcheck_minisat1_coret, satcheck_minisat1_baset, satcheck_lingelingt, satcheck_ipasirt, satcheck_glucose_baset< T >, satcheck_glucose_baset< Glucose::Solver >, satcheck_glucose_baset< Glucose::SimpSolver >, satcheck_cadicalt, satcheck_booleforce_baset, pbs_dimacs_cnft, external_satt, satcheck_minisat2_baset< T >, satcheck_minisat2_baset< Minisat::SimpSolver >, satcheck_minisat2_baset< Minisat::Solver >, dimacs_cnf_dumpt, and cnf_clause_listt.
|
inlinevirtual |
Reimplemented in satcheck_minisat2_baset< T >, satcheck_minisat2_baset< Minisat::SimpSolver >, satcheck_minisat2_baset< Minisat::Solver >, satcheck_ipasirt, external_satt, satcheck_picosatt, satcheck_minisat1_baset, satcheck_lingelingt, satcheck_glucose_baset< T >, satcheck_glucose_baset< Glucose::Solver >, satcheck_glucose_baset< Glucose::SimpSolver >, and satcheck_cadicalt.
|
inlinevirtual |
Reimplemented in satcheck_minisat2_baset< T >, satcheck_minisat2_baset< Minisat::SimpSolver >, satcheck_minisat2_baset< Minisat::Solver >, satcheck_ipasirt, external_satt, satcheck_picosatt, satcheck_minisat1_baset, satcheck_lingelingt, satcheck_glucose_baset< T >, satcheck_glucose_baset< Glucose::Solver >, satcheck_glucose_baset< Glucose::SimpSolver >, and satcheck_cadicalt.
|
pure virtual |
Returns true if an assumption is in the final conflict.
Note that only literals that are assumptions (see set_assumptions) may be queried.
Implemented in external_satt, satcheck_minisat1_baset, dimacs_cnft, satcheck_picosatt, satcheck_minisat2_baset< T >, satcheck_minisat2_baset< Minisat::SimpSolver >, satcheck_minisat2_baset< Minisat::Solver >, satcheck_lingelingt, satcheck_ipasirt, satcheck_glucose_baset< T >, satcheck_glucose_baset< Glucose::Solver >, satcheck_glucose_baset< Glucose::SimpSolver >, and satcheck_cadicalt.
Implemented in dimacs_cnf_dumpt, cnf_clause_listt, cnf_clause_list_assignmentt, satcheck_minisat2_baset< T >, satcheck_minisat2_baset< Minisat::SimpSolver >, satcheck_minisat2_baset< Minisat::Solver >, satcheck_ipasirt, satcheck_zcoret, satcheck_zchaff_baset, satcheck_picosatt, satcheck_minisat1_baset, satcheck_lingelingt, satcheck_glucose_baset< T >, satcheck_glucose_baset< Glucose::Solver >, satcheck_glucose_baset< Glucose::SimpSolver >, satcheck_cadicalt, satcheck_booleforce_baset, pbs_dimacs_cnft, qbf_squolem_coret, qbf_squolemt, qbf_skizzot, qbf_qube_coret, qbf_qubet, qbf_quantort, qbf_bdd_coret, qbf_bdd_certificatet, and qdimacs_coret.
|
inlinevirtual |
|
pure virtual |
Implemented in satcheck_minisat2_baset< T >, satcheck_minisat2_baset< Minisat::SimpSolver >, satcheck_minisat2_baset< Minisat::Solver >, satcheck_ipasirt, satcheck_picosatt, satcheck_lingelingt, satcheck_glucose_baset< T >, satcheck_glucose_baset< Glucose::Solver >, satcheck_glucose_baset< Glucose::SimpSolver >, satcheck_cadicalt, satcheck_booleforce_baset, dimacs_cnf_dumpt, cnf_clause_listt, qbf_squolem_coret, qbf_squolemt, qbf_bdd_coret, and satcheck_minisat1_baset.
Implemented in cnft, and qbf_bdd_coret.
Implemented in cnft, and qbf_bdd_coret.
Implemented in cnft.
|
pure virtual |
Implemented in qbf_bdd_certificatet, cnft, and qbf_bdd_coret.
|
virtual |
|
pure virtual |
Implemented in cnft.
propt::resultt propt::prop_solve | ( | ) |
propt::resultt propt::prop_solve | ( | const bvt & | assumptions | ) |
|
pure virtual |
Implemented in external_satt, satcheck_zchaff_baset, satcheck_picosatt, satcheck_minisat2_baset< T >, satcheck_minisat2_baset< Minisat::SimpSolver >, satcheck_minisat2_baset< Minisat::Solver >, satcheck_minisat1_baset, satcheck_lingelingt, satcheck_ipasirt, satcheck_glucose_baset< T >, satcheck_glucose_baset< Glucose::Solver >, satcheck_glucose_baset< Glucose::SimpSolver >, satcheck_cadicalt, and dimacs_cnft.
|
inlinevirtual |
Reimplemented in satcheck_minisat_simplifiert, satcheck_lingelingt, and satcheck_glucose_simplifiert.
|
inlinevirtual |
|
pure virtual |
Implemented in satcheck_minisat_simplifiert, satcheck_zcoret, satcheck_zchaff_baset, satcheck_picosatt, satcheck_minisat_no_simplifiert, satcheck_minisat1_coret, satcheck_minisat1_prooft, satcheck_minisat1_baset, satcheck_lingelingt, satcheck_ipasirt, satcheck_glucose_simplifiert, satcheck_glucose_no_simplifiert, satcheck_cadicalt, satcheck_booleforce_baset, pbs_dimacs_cnft, external_satt, dimacs_cnf_dumpt, dimacs_cnft, cnf_clause_listt, qdimacs_cnft, qbf_squolem_coret, qbf_squolemt, qbf_skizzo_coret, qbf_skizzot, qbf_qube_coret, qbf_qubet, qbf_quantort, and qbf_bdd_coret.