diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2021-05-10 09:29:09 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-05-10 16:29:09 +0200 |
commit | ac8cf53b07eb29687850f2ae64007f9f2688c9ad (patch) | |
tree | f62bad43ed45557a88f3d81df3d76536ee69cc38 /src/theory/combination_engine.h | |
parent | ce1acb3e31769e1ccb66075fe3b2151acae58ce6 (diff) |
Unify top-level substitutions and model substitutions (#6499)
This unifies top-level substitutions and theory model substitutions. Env is now passed to the TheoryModel, which has access to top-level substitutions.
The former was used for simplfying assertions in the preprocessor, the latter was used for evaluating terms in the model.
There is no reason to have these two things be separate.
Diffstat (limited to 'src/theory/combination_engine.h')
-rw-r--r-- | src/theory/combination_engine.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/theory/combination_engine.h b/src/theory/combination_engine.h index 6430e2325..063cefd49 100644 --- a/src/theory/combination_engine.h +++ b/src/theory/combination_engine.h @@ -27,6 +27,7 @@ namespace cvc5 { class TheoryEngine; +class Env; namespace theory { @@ -45,6 +46,7 @@ class CombinationEngine { public: CombinationEngine(TheoryEngine& te, + Env& env, const std::vector<Theory*>& paraTheories, ProofNodeManager* pnm); virtual ~CombinationEngine(); @@ -107,6 +109,8 @@ class CombinationEngine void sendLemma(TrustNode trn, TheoryId atomsTo); /** Reference to the theory engine */ TheoryEngine& d_te; + /** Reference to the environment */ + Env& d_env; /** Valuation for the engine */ Valuation d_valuation; /** The proof node manager */ |