diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2021-02-23 19:12:32 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-23 19:12:32 -0600 |
commit | 854ab7e1adce90ebd822cc29ffabf5546d13f5cc (patch) | |
tree | 96bcb318ada0448c73d293c0b99db7b98eb1e4c4 /src/theory/theory_state.cpp | |
parent | 4c0dbb8ec7871ff114a9e66233cd8c8dd853f0b4 (diff) |
Add interface to TheoryState for sort inference and facts (#5967)
This eliminates the need for direct references to TheoryEngine from quantifiers and UF+cardinality.
This PR also eliminates an unnecessary reference to TheoryEngine in TheoryModelBuilder and breaks a few more dependencies in quantifiers modules.
Diffstat (limited to 'src/theory/theory_state.cpp')
-rw-r--r-- | src/theory/theory_state.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/theory/theory_state.cpp b/src/theory/theory_state.cpp index e145baa6a..2d6c713de 100644 --- a/src/theory/theory_state.cpp +++ b/src/theory/theory_state.cpp @@ -152,11 +152,25 @@ bool TheoryState::isSatLiteral(TNode lit) const TheoryModel* TheoryState::getModel() { return d_valuation.getModel(); } +SortInference* TheoryState::getSortInference() +{ + return d_valuation.getSortInference(); +} + bool TheoryState::hasSatValue(TNode n, bool& value) const { return d_valuation.hasSatValue(n, value); } +context::CDList<Assertion>::const_iterator TheoryState::factsBegin(TheoryId tid) +{ + return d_valuation.factsBegin(tid); +} +context::CDList<Assertion>::const_iterator TheoryState::factsEnd(TheoryId tid) +{ + return d_valuation.factsEnd(tid); +} + Valuation& TheoryState::getValuation() { return d_valuation; } } // namespace theory |