diff options
author | Dejan Jovanović <dejan.jovanovic@gmail.com> | 2010-11-09 21:57:06 +0000 |
---|---|---|
committer | Dejan Jovanović <dejan.jovanovic@gmail.com> | 2010-11-09 21:57:06 +0000 |
commit | df5f7fe03fda041429548bcb39abb8916ca2e291 (patch) | |
tree | 46b08f3e35ee9c3d4c551d82f3e7e36582383f39 /src/smt/smt_engine.h | |
parent | 1f07775e9205b3f9e172a1ad218a9015b7265b58 (diff) |
Lemmas on demand work, push-pop, some cleanup.
Diffstat (limited to 'src/smt/smt_engine.h')
-rw-r--r-- | src/smt/smt_engine.h | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/src/smt/smt_engine.h b/src/smt/smt_engine.h index 854399bd7..d8d9f4b54 100644 --- a/src/smt/smt_engine.h +++ b/src/smt/smt_engine.h @@ -48,7 +48,6 @@ typedef NodeTemplate<false> TNode; class NodeHashFunction; class TheoryEngine; -class DecisionEngine; namespace context { class Context; @@ -91,16 +90,18 @@ class CVC4_PUBLIC SmtEngine { /** The type of our internal assignment set */ typedef context::CDSet<Node, NodeHashFunction> AssignmentSet; - /** Our Context */ + /** Expr manager context */ context::Context* d_context; + + /** The context levels of user pushes */ + std::vector<int> d_userLevels; + /** User level context */ + context::Context* d_userContext; + /** Our expression manager */ ExprManager* d_exprManager; /** Out internal expression/node manager */ NodeManager* d_nodeManager; - /** User-level options */ - //const Options d_options; - /** The decision engine */ - DecisionEngine* d_decisionEngine; /** The decision engine */ TheoryEngine* d_theoryEngine; /** The propositional engine */ @@ -190,6 +191,10 @@ class CVC4_PUBLIC SmtEngine { */ void ensureBoolean(const BoolExpr& e); + void internalPush(); + + void internalPop(); + friend class ::CVC4::smt::SmtEnginePrivate; public: |