summaryrefslogtreecommitdiff
path: root/src/theory/sort_inference.h
diff options
context:
space:
mode:
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>2020-03-22 09:23:57 -0500
committerGitHub <noreply@github.com>2020-03-22 09:23:57 -0500
commitc98ba7775ecb8a192e2a93735885163234546be3 (patch)
treefbfef218b03aeb1aa762da05785fe1d59ef43625 /src/theory/sort_inference.h
parent37107284adaad3d24da0ad15cac8c88af444aeef (diff)
Sort inference does not handle APPLY_UF when higher-order is enabled (#4138)
Fixes #4092 and fixes #4134. Typically, APPLY_UF has special treatment in sort inference. It is significantly more complicated when higher-order logic is enabled. This disables special handling when ufHo() is enabled.
Diffstat (limited to 'src/theory/sort_inference.h')
-rw-r--r--src/theory/sort_inference.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/theory/sort_inference.h b/src/theory/sort_inference.h
index 5b28f669d..ecf86376c 100644
--- a/src/theory/sort_inference.h
+++ b/src/theory/sort_inference.h
@@ -154,11 +154,15 @@ public:
//is well sorted
bool isWellSortedFormula( Node n );
bool isWellSorted( Node n );
- //get constraints for being well-typed according to computed sub-types
- void getSortConstraints( Node n, SortInference::UnionFind& uf );
private:
// store monotonicity for original sorts as well
std::map<TypeNode, bool> d_non_monotonic_sorts_orig;
+ /**
+ * Returns true if k is the APPLY_UF kind and we are not using higher-order
+ * techniques. This is called in places where we want to know whether to
+ * treat a term as uninterpreted function.
+ */
+ bool isHandledApplyUf(Kind k) const;
};
}
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback