CBMC
satcheck_lingeling.h
Go to the documentation of this file.
1 /*******************************************************************\
2 
3 Module:
4 
5 Author: Michael Tautschnig, michael.tautschnig@cs.ox.ac.uk
6 
7 \*******************************************************************/
8 
9 
10 #ifndef CPROVER_SOLVERS_SAT_SATCHECK_LINGELING_H
11 #define CPROVER_SOLVERS_SAT_SATCHECK_LINGELING_H
12 
13 #include "cnf.h"
14 
15 // NOLINTNEXTLINE(readability/identifiers)
16 struct LGL;
17 
19 {
20 public:
22  virtual ~satcheck_lingelingt();
23 
24  const std::string solver_text() override;
25  tvt l_get(literalt a) const override;
26 
27  void lcnf(const bvt &bv) override;
28  void set_assignment(literalt a, bool value) override;
29 
30  void set_assumptions(const bvt &_assumptions) override;
31  bool has_set_assumptions() const override
32  {
33  return true;
34  }
35  bool has_is_in_conflict() const override
36  {
37  return true;
38  }
39  bool is_in_conflict(literalt a) const override;
40  void set_frozen(literalt a) override;
41 
42 protected:
43  resultt do_prop_solve() override;
44 
45  // NOLINTNEXTLINE(readability/identifiers)
46  struct LGL * solver;
48 };
49 
50 #endif // CPROVER_SOLVERS_SAT_SATCHECK_LINGELING_H
resultt
resultt
The result of goto verifying.
Definition: properties.h:44
satcheck_lingelingt::solver_text
const std::string solver_text() override
Definition: satcheck_lingeling.cpp:46
bvt
std::vector< literalt > bvt
Definition: literal.h:201
satcheck_lingelingt::do_prop_solve
resultt do_prop_solve() override
Definition: satcheck_lingeling.cpp:66
satcheck_lingelingt::assumptions
bvt assumptions
Definition: satcheck_lingeling.h:47
satcheck_lingelingt::has_is_in_conflict
bool has_is_in_conflict() const override
Definition: satcheck_lingeling.h:35
satcheck_lingelingt::lcnf
void lcnf(const bvt &bv) override
Definition: satcheck_lingeling.cpp:51
satcheck_lingelingt::~satcheck_lingelingt
virtual ~satcheck_lingelingt()
Definition: satcheck_lingeling.cpp:114
satcheck_lingelingt::satcheck_lingelingt
satcheck_lingelingt()
Definition: satcheck_lingeling.cpp:109
cnf_solvert
Definition: cnf.h:72
satcheck_lingelingt::set_assumptions
void set_assumptions(const bvt &_assumptions) override
Definition: satcheck_lingeling.cpp:120
satcheck_lingelingt::is_in_conflict
bool is_in_conflict(literalt a) const override
Returns true if an assumed literal is in conflict if the formula is UNSAT.
Definition: satcheck_lingeling.cpp:142
satcheck_lingelingt::has_set_assumptions
bool has_set_assumptions() const override
Definition: satcheck_lingeling.h:31
tvt
Definition: threeval.h:19
literalt
Definition: literal.h:25
satcheck_lingelingt::solver
struct LGL * solver
Definition: satcheck_lingeling.h:46
satcheck_lingelingt
Definition: satcheck_lingeling.h:18
satcheck_lingelingt::set_assignment
void set_assignment(literalt a, bool value) override
Definition: satcheck_lingeling.cpp:104
cnf.h
satcheck_lingelingt::set_frozen
void set_frozen(literalt a) override
Definition: satcheck_lingeling.cpp:132
satcheck_lingelingt::l_get
tvt l_get(literalt a) const override
Definition: satcheck_lingeling.cpp:25