return metakind::getUpperBoundForKind(kind);
}
+bool ExprManager::isNAryKind(Kind fun)
+{
+ return ExprManager::maxArity(fun) == expr::NodeValue::MAX_CHILDREN;
+}
+
NodeManager* ExprManager::getNodeManager() const {
return d_nodeManager;
}
/** Returns the maximum arity of the given kind. */
static unsigned maxArity(Kind kind);
+ /** Whether a kind is n-ary. The test is based on n-ary kinds having their
+ * maximal arity as the maximal possible number of children of a node.
+ **/
+ static bool isNAryKind(Kind fun);
+
/**
* Return the datatype at the given index owned by this class. Type nodes are
* associated with datatypes through the DatatypeIndexConstant class. The