summaryrefslogtreecommitdiff
path: root/src/smt/smt_engine.h
diff options
context:
space:
mode:
authorDejan Jovanović <dejan.jovanovic@gmail.com>2010-11-09 21:57:06 +0000
committerDejan Jovanović <dejan.jovanovic@gmail.com>2010-11-09 21:57:06 +0000
commitdf5f7fe03fda041429548bcb39abb8916ca2e291 (patch)
tree46b08f3e35ee9c3d4c551d82f3e7e36582383f39 /src/smt/smt_engine.h
parent1f07775e9205b3f9e172a1ad218a9015b7265b58 (diff)
Lemmas on demand work, push-pop, some cleanup.
Diffstat (limited to 'src/smt/smt_engine.h')
-rw-r--r--src/smt/smt_engine.h17
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:
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback