diff options
Diffstat (limited to 'src/theory/uf/theory_uf.h')
-rw-r--r-- | src/theory/uf/theory_uf.h | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/src/theory/uf/theory_uf.h b/src/theory/uf/theory_uf.h index 916c6ef6b..2bfd7e16c 100644 --- a/src/theory/uf/theory_uf.h +++ b/src/theory/uf/theory_uf.h @@ -103,13 +103,6 @@ private: /** the higher-order solver extension (or nullptr if it does not exist) */ std::unique_ptr<HoExtension> d_ho; - /** Are we in conflict */ - context::CDO<bool> d_conflict; - - /** The conflict node */ - Node d_conflictNode; - - /** node for true */ Node d_true; @@ -174,17 +167,31 @@ private: void finishInit() override; //--------------------------------- end initialization - void check(Effort) override; + //--------------------------------- standard check + /** Post-check, called after the fact queue of the theory is processed. */ + void postCheck(Effort level) override; + /** Pre-notify fact, return true if processed. */ + bool preNotifyFact(TNode atom, + bool pol, + TNode fact, + bool isPrereg, + bool isInternal) override; + /** Notify fact */ + void notifyFact(TNode atom, bool pol, TNode fact, bool isInternal) override; + //--------------------------------- end standard check + + /** Collect model values in m based on the relevant terms given by termSet */ + bool collectModelValues(TheoryModel* m, + const std::set<Node>& termSet) override; + TrustNode expandDefinition(Node node) override; void preRegisterTerm(TNode term) override; TrustNode explain(TNode n) override; - bool collectModelInfo(TheoryModel* m) override; void ppStaticLearn(TNode in, NodeBuilder<>& learned) override; void presolve() override; - void notifySharedTerm(TNode n) override; void computeCareGraph() override; EqualityStatus getEqualityStatus(TNode a, TNode b) override; @@ -193,8 +200,6 @@ private: /** get a pointer to the uf with cardinality */ CardinalityExtension* getCardinalityExtension() const { return d_thss.get(); } - /** are we in conflict? */ - bool inConflict() const { return d_conflict; } private: bool areCareDisequal(TNode x, TNode y); |