summaryrefslogtreecommitdiff
path: root/src/theory/quantifiers/term_util.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/theory/quantifiers/term_util.h')
-rw-r--r--src/theory/quantifiers/term_util.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/theory/quantifiers/term_util.h b/src/theory/quantifiers/term_util.h
index 8ec2fc8e2..97f4edcd5 100644
--- a/src/theory/quantifiers/term_util.h
+++ b/src/theory/quantifiers/term_util.h
@@ -289,6 +289,11 @@ public:
static int getTermDepth( Node n );
/** simple negate */
static Node simpleNegate( Node n );
+ /**
+ * Make negated term, returns the negation of n wrt Kind notk, eliminating
+ * double negation if applicable, e.g. mkNegate( ~, ~x ) ---> x.
+ */
+ static Node mkNegate(Kind notk, Node n);
/** is assoc */
static bool isAssoc( Kind k );
/** is k commutative? */
@@ -364,6 +369,13 @@ public:
static Node mkTypeValueOffset(TypeNode tn, Node val, int offset, int& status);
/** make max value, static version of get max value */
static Node mkTypeMaxValue(TypeNode tn);
+ /**
+ * Make const, returns pol ? mkTypeValue(tn,0) : mkTypeMaxValue(tn).
+ * In other words, this returns either the minimum element of tn if pol is
+ * true, and the maximum element in pol is false. The type tn should have
+ * minimum and maximum elements, for example tn is Bool or BitVector.
+ */
+ static Node mkTypeConst(TypeNode tn, bool pol);
// for higher-order
private:
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback