diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2020-12-16 09:03:45 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-16 09:03:45 -0600 |
commit | 3a3735d58ddac7ecfac80dad35da963901f15f55 (patch) | |
tree | 1aa213359a6637f571f22f3db7434bb75a8fc93e /src/smt/preprocessor.h | |
parent | 5b90fdad09209da667cc281f5425300a4b2bb9c9 (diff) |
Move ownership of term formula removal to theory preprocessor (#5670)
This is work towards refactoring ITE removal (more generally, term formula removal) so that it happens at a configurable time, preferably post-CNF conversion.
This moves the TermFormulaRemover to the TheoryPreprocessor and changes several interfaces as a consequence of this move.
The next step will move the TheoryPreprocessor inside prop::TheoryProxy.
There are no behavior changes to solving in this PR. One aspect of CheckModels is simplified.
Diffstat (limited to 'src/smt/preprocessor.h')
-rw-r--r-- | src/smt/preprocessor.h | 14 |
1 files changed, 1 insertions, 13 deletions
diff --git a/src/smt/preprocessor.h b/src/smt/preprocessor.h index 220a433fe..367490306 100644 --- a/src/smt/preprocessor.h +++ b/src/smt/preprocessor.h @@ -22,7 +22,6 @@ #include "preprocessing/preprocessing_pass_context.h" #include "smt/expand_definitions.h" #include "smt/process_assertions.h" -#include "smt/term_formula_removal.h" #include "theory/booleans/circuit_propagator.h" namespace CVC4 { @@ -79,11 +78,9 @@ class Preprocessor * has been constructed. It also involves theory normalization. * * @param n The node to simplify - * @param removeItes Whether to remove ITE (and other terms with formulas in - * term positions) from the result. * @return The simplified term. */ - Node simplify(const Node& n, bool removeItes = false); + Node simplify(const Node& n); /** * Expand the definitions in a term or formula n. No other * simplification or normalization is done. @@ -99,10 +96,6 @@ class Preprocessor const Node& n, std::unordered_map<Node, Node, NodeHashFunction>& cache, bool expandOnly = false); - /** - * Get the underlying term formula remover utility. - */ - RemoveTermFormulas& getTermFormulaRemover(); /** * Set proof node manager. Enables proofs in this preprocessor. @@ -133,11 +126,6 @@ class Preprocessor * passes. */ ProcessAssertions d_processor; - /** - * The term formula remover, responsible for eliminating formulas that occur - * in term contexts. - */ - RemoveTermFormulas d_rtf; /** Proof node manager */ ProofNodeManager* d_pnm; }; |