Base class for preprocessors working on clauses only. More...
#include <shared_context.h>

| Classes | |
| class | Clause | 
| A clause class optimized for preprocessing.  More... | |
| struct | Stats | 
| Public Types | |
| typedef SatPreParams | Options | 
| Public Member Functions | |
| bool | addClause (const LitVec &cl) | 
| Adds a clause to the preprocessor. | |
| bool | addClause (const Literal *clause, uint32 size) | 
| void | cleanUp (bool discardEliminated=false) | 
| Force removal of state & clauses. | |
| virtual SatPreprocessor * | clone ()=0 | 
| Creates a clone of this preprocessor. | |
| void | extendModel (ValueVec &m, LitVec &open) | 
| Extends the model in m with values for any eliminated variables. | |
| uint32 | numClauses () const | 
| bool | preprocess (SharedContext &ctx, SatPreParams &opts) | 
| Runs the preprocessor on all clauses that were previously added. | |
| bool | preprocess (SharedContext &ctx) | 
| SatPreprocessor () | |
| virtual | ~SatPreprocessor () | 
| Public Attributes | |
| struct Clasp::SatPreprocessor::Stats | stats | 
| Protected Types | |
| typedef PodVector< Clause * >::type | ClauseList | 
| Protected Member Functions | |
| Clause * | clause (uint32 clId) | 
| const Clause * | clause (uint32 clId) const | 
| void | destroyClause (uint32 clId) | 
| void | discardClauses (bool discardEliminated) | 
| virtual void | doCleanUp ()=0 | 
| virtual void | doExtendModel (ValueVec &m, LitVec &open)=0 | 
| virtual bool | doPreprocess ()=0 | 
| void | eliminateClause (uint32 id) | 
| void | freezeSeen () | 
| virtual bool | initPreprocess (SatPreParams &opts)=0 | 
| void | setClause (uint32 clId, const LitVec &cl) | 
| Protected Attributes | |
| SharedContext * | ctx_ | 
| Clause * | elimTop_ | 
| Private Member Functions | |
| SatPreprocessor & | operator= (const SatPreprocessor &) | 
| SatPreprocessor (const SatPreprocessor &) | |
| Private Attributes | |
| ClauseList | clauses_ | 
| Range32 | seen_ | 
| LitVec | units_ | 
Base class for preprocessors working on clauses only.
Definition at line 51 of file shared_context.h.
| typedef PodVector<Clause*>::type Clasp::SatPreprocessor::ClauseList  [protected] | 
Definition at line 122 of file shared_context.h.
Definition at line 120 of file shared_context.h.
| Clasp::SatPreprocessor::SatPreprocessor | ( | ) |  [inline] | 
Definition at line 84 of file shared_context.h.
| Clasp::SatPreprocessor::~SatPreprocessor | ( | ) |  [virtual] | 
Definition at line 311 of file shared_context.cpp.
| Clasp::SatPreprocessor::SatPreprocessor | ( | const SatPreprocessor & | ) |  [private] | 
| bool Clasp::SatPreprocessor::addClause | ( | const LitVec & | cl | ) |  [inline] | 
Adds a clause to the preprocessor.
Definition at line 100 of file shared_context.h.
| bool Clasp::SatPreprocessor::addClause | ( | const Literal * | clause, | 
| uint32 | size | ||
| ) | 
Definition at line 335 of file shared_context.cpp.
| Clause* Clasp::SatPreprocessor::clause | ( | uint32 | clId | ) |  [inline, protected] | 
Definition at line 127 of file shared_context.h.
| const Clause* Clasp::SatPreprocessor::clause | ( | uint32 | clId | ) | const  [inline, protected] | 
Definition at line 128 of file shared_context.h.
| void Clasp::SatPreprocessor::cleanUp | ( | bool | discardEliminated = false | ) | 
Force removal of state & clauses.
Definition at line 329 of file shared_context.cpp.
| virtual SatPreprocessor* Clasp::SatPreprocessor::clone | ( | ) |  [pure virtual] | 
Creates a clone of this preprocessor.
Implemented in Clasp::SatElite::SatElite.
| void Clasp::SatPreprocessor::destroyClause | ( | uint32 | clId | ) |  [inline, protected] | 
Definition at line 134 of file shared_context.h.
| void Clasp::SatPreprocessor::discardClauses | ( | bool | discardEliminated | ) |  [protected] | 
Definition at line 314 of file shared_context.cpp.
| virtual void Clasp::SatPreprocessor::doCleanUp | ( | ) |  [protected, pure virtual] | 
Implemented in Clasp::SatElite::SatElite.
| virtual void Clasp::SatPreprocessor::doExtendModel | ( | ValueVec & | m, | 
| LitVec & | open | ||
| ) |  [protected, pure virtual] | 
Implemented in Clasp::SatElite::SatElite.
| virtual bool Clasp::SatPreprocessor::doPreprocess | ( | ) |  [protected, pure virtual] | 
Implemented in Clasp::SatElite::SatElite.
| void Clasp::SatPreprocessor::eliminateClause | ( | uint32 | id | ) |  [inline, protected] | 
Definition at line 139 of file shared_context.h.
| void Clasp::SatPreprocessor::extendModel | ( | ValueVec & | m, | 
| LitVec & | open | ||
| ) | 
Extends the model in m with values for any eliminated variables.
Definition at line 433 of file shared_context.cpp.
| void Clasp::SatPreprocessor::freezeSeen | ( | ) |  [protected] | 
Definition at line 348 of file shared_context.cpp.
| virtual bool Clasp::SatPreprocessor::initPreprocess | ( | SatPreParams & | opts | ) |  [protected, pure virtual] | 
Implemented in Clasp::SatElite::SatElite.
| uint32 Clasp::SatPreprocessor::numClauses | ( | ) | const  [inline] | 
Definition at line 93 of file shared_context.h.
| SatPreprocessor& Clasp::SatPreprocessor::operator= | ( | const SatPreprocessor & | ) |  [private] | 
| bool Clasp::SatPreprocessor::preprocess | ( | SharedContext & | ctx, | 
| SatPreParams & | opts | ||
| ) | 
Runs the preprocessor on all clauses that were previously added.
Definition at line 357 of file shared_context.cpp.
| bool Clasp::SatPreprocessor::preprocess | ( | SharedContext & | ctx | ) | 
Definition at line 429 of file shared_context.cpp.
| void Clasp::SatPreprocessor::setClause | ( | uint32 | clId, | 
| const LitVec & | cl | ||
| ) |  [inline, protected] | 
Definition at line 131 of file shared_context.h.
| ClauseList Clasp::SatPreprocessor::clauses_  [private] | 
Definition at line 149 of file shared_context.h.
| SharedContext* Clasp::SatPreprocessor::ctx_  [protected] | 
Definition at line 144 of file shared_context.h.
| Clause* Clasp::SatPreprocessor::elimTop_  [protected] | 
Definition at line 145 of file shared_context.h.
| Range32 Clasp::SatPreprocessor::seen_  [private] | 
Definition at line 151 of file shared_context.h.
| LitVec Clasp::SatPreprocessor::units_  [private] | 
Definition at line 150 of file shared_context.h.