summaryrefslogtreecommitdiff
path: root/src/theory/strings/inference_manager.h
diff options
context:
space:
mode:
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>2020-01-29 19:42:50 -0600
committerGitHub <noreply@github.com>2020-01-29 19:42:50 -0600
commit8e15d120579b791af0999d07d847620037366978 (patch)
tree22e79c5cc4111c019828a5a3d3ec846ea8890261 /src/theory/strings/inference_manager.h
parent7849f09ece473f9822f91572115e50af7eae9564 (diff)
Minor updates to string utilities (#3675)
Diffstat (limited to 'src/theory/strings/inference_manager.h')
-rw-r--r--src/theory/strings/inference_manager.h16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/theory/strings/inference_manager.h b/src/theory/strings/inference_manager.h
index e052889f6..819e4b98f 100644
--- a/src/theory/strings/inference_manager.h
+++ b/src/theory/strings/inference_manager.h
@@ -61,7 +61,8 @@ class TheoryStrings;
* to doPendingLemmas.
*
* It also manages other kinds of interaction with the output channel of the
- * theory of strings, e.g. sendPhaseRequirement.
+ * theory of strings, e.g. sendPhaseRequirement, setIncomplete, and
+ * with the extended theory object e.g. markCongruent.
*/
class InferenceManager
{
@@ -249,6 +250,19 @@ class InferenceManager
* the node corresponding to their conjunction.
*/
void explain(TNode literal, std::vector<TNode>& assumptions) const;
+ /**
+ * Set that we are incomplete for the current set of assertions (in other
+ * words, we must answer "unknown" instead of "sat"); this calls the output
+ * channel's setIncomplete method.
+ */
+ void setIncomplete();
+ /**
+ * Mark that terms a and b are congruent in the current context.
+ * This makes a call to markCongruent in the extended theory object of
+ * the parent theory if the kind of a (and b) is owned by the extended
+ * theory.
+ */
+ void markCongruent(Node a, Node b);
private:
/**
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback