SMT-RAT  24.02
Toolbox for Strategic and Parallel Satisfiability-Modulo-Theories Solving
EMModule.h
Go to the documentation of this file.
1 /**
2  * @file EMModule.h
3  * @author Gereon Kremer <gereon.kremer@cs.rwth-aachen.de>
4  * @author Florian Corzilius <corzilius@cs.rwth-aachen.de>
5  *
6  * Supports optimization.
7  *
8  * @version 2015-09-10
9  * Created on 2015-09-10.
10  */
11 
12 #pragma once
13 
14 #include <smtrat-solver/PModule.h>
15 #include "EMSettings.h"
16 
17 namespace smtrat
18 {
19  template<typename Settings>
20  class EMModule : public PModule
21  {
22  private:
23  // Members.
24  ///
25 
26  public:
28  EMModule( const ModuleInput* _formula, Conditionals& _conditionals, Manager* _manager = NULL );
29 
31 
32  // Main interfaces.
33 
34  /**
35  * Checks the received formula for consistency.
36  * @return SAT, if the received formula is satisfiable;
37  * UNSAT, if the received formula is not satisfiable;
38  * Unknown, otherwise.
39  */
41 
42  private:
43 
46 
47  };
48 }
All preprocessing modules shall derive from this module, that is modules, which simplify their receiv...
EMModule(const ModuleInput *_formula, Conditionals &_conditionals, Manager *_manager=NULL)
Settings SettingsType
Definition: EMModule.h:27
std::function< FormulaT(FormulaT)> eliminateEquationFunction
Definition: EMModule.h:45
FormulaT eliminateEquation(const FormulaT &formula)
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
Class to create the formulas for axioms.
carl::Formula< Poly > FormulaT
Definition: types.h:37
const settings::Settings & Settings()
Definition: Settings.h:96
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