SMT-RAT  24.02
Toolbox for Strategic and Parallel Satisfiability-Modulo-Theories Solving
CNFerModule.h
Go to the documentation of this file.
1 /*
2  * File: CNFTransformerModule.h
3  * Author: Florian Corzilius
4  *
5  * Created on 02. May 2012, 20:53
6  */
7 
8 #pragma once
9 
10 #include <smtrat-solver/PModule.h>
11 #include "CNFerModuleStatistics.h"
12 
13 namespace smtrat
14 {
15  class CNFerModule:
16  public PModule
17  {
18  private:
19  #ifdef SMTRAT_DEVOPTION_Statistics
20  /// Stores all collected statistics during solving.
21  CNFerModuleStatistics& mStatistics = statistics_get<CNFerModuleStatistics>("CNFerModule");
22  #endif
23  public:
24 
25  struct SettingsType {
26  static constexpr auto moduleName = "CNFerModule";
27  };
28 
29  /**
30  * Constructs a CNFerModule.
31  */
32  CNFerModule( const ModuleInput*, Conditionals&, Manager* const = NULL );
33 
34  /**
35  * Destructs a CNFerModule.
36  */
38 
39  // Interfaces.
40 
41  /**
42  * Checks the received formula for consistency.
43  * @return SAT, if the received formula is satisfiable;
44  * UNSAT, if the received formula is not satisfiable;
45  * Unknown, otherwise.
46  */
48  };
49 
50 } // namespace smtrat
All preprocessing modules shall derive from this module, that is modules, which simplify their receiv...
CNFerModule(const ModuleInput *, Conditionals &, Manager *const =NULL)
Constructs a CNFerModule.
~CNFerModule()
Destructs a CNFerModule.
Answer checkCore()
Checks the received formula for consistency.
Base class for solvers.
Definition: Manager.h:34
The input formula a module has to consider for it's satisfiability check.
Definition: ModuleInput.h:131
ModuleStatistics & mStatistics
Definition: Module.h:192
Class to create the formulas for axioms.
Answer
An enum with the possible answers a Module can give.
Definition: types.h:57
std::vector< std::atomic_bool * > Conditionals
A vector of atomic bool pointers.
Definition: types.h:17
static constexpr auto moduleName
Definition: CNFerModule.h:26