CBMC
qbf_squolem.h
Go to the documentation of this file.
1 /*******************************************************************\
2 
3 Module: Squolem Backend
4 
5 Author: CM Wintersteiger
6 
7 \*******************************************************************/
8 
11 
12 #ifndef CPROVER_SOLVERS_QBF_QBF_SQUOLEM_H
13 #define CPROVER_SOLVERS_QBF_QBF_SQUOLEM_H
14 
15 #include <quannon/squolem2/squolem2.h>
16 
17 #include "qdimacs_cnf.h"
18 
20 {
21 protected:
22  Squolem2 squolem;
24 
25 public:
26  qbf_squolemt();
27  ~qbf_squolemt() override;
28 
29  std::string solver_text() const override;
30  resultt prop_solve() override;
31  tvt l_get(literalt a) const override;
32 
33  void lcnf(const bvt &bv) override;
34  void add_quantifier(const quantifiert &quantifier) override;
35  void set_quantifier(const quantifiert::typet type, const literalt l) override;
36  void set_no_variables(size_t no) override;
37  virtual size_t no_clauses() const { return squolem.clauses(); }
38 };
39 
40 #endif // CPROVER_SOLVERS_QBF_QBF_SQUOLEM_H
resultt
Definition: prop.h:101
resultt prop_solve() override
Definition: qbf_squolem.cpp:34
std::string solver_text() const override
Definition: qbf_squolem.cpp:29
Squolem2 squolem
Definition: qbf_squolem.h:22
bool early_decision
Definition: qbf_squolem.h:23
~qbf_squolemt() override
Definition: qbf_squolem.cpp:19
tvt l_get(literalt a) const override
Definition: qbf_squolem.cpp:24
void set_no_variables(size_t no) override
void set_quantifier(const quantifiert::typet type, const literalt l) override
virtual size_t no_clauses() const
Definition: qbf_squolem.h:37
void add_quantifier(const quantifiert &quantifier) override
void lcnf(const bvt &bv) override
Definition: qbf_squolem.cpp:71
Definition: threeval.h:20
std::vector< literalt > bvt
Definition: literal.h:201