Commit b14ad6b
committed
Only check top-level symbol when deciding to skip sort predicate rules
The previous fix checked `isEvaluated` on the term in a sort predicate
before applying rules. This is correct but leads to too many
fall-backs which slow down symbolic execution when sort predicates are
used in rewrite side conditions. The only case that matters is when an
_unevaluated function_ is at the _head_ of the term in the sort
predicate. This is now matched directly.1 parent b88b8b6 commit b14ad6b
1 file changed
+11
-9
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
873 | 873 | | |
874 | 874 | | |
875 | 875 | | |
876 | | - | |
| 876 | + | |
877 | 877 | | |
878 | | - | |
| 878 | + | |
879 | 879 | | |
880 | 880 | | |
881 | | - | |
882 | | - | |
883 | | - | |
884 | | - | |
885 | | - | |
886 | | - | |
887 | | - | |
| 881 | + | |
| 882 | + | |
| 883 | + | |
| 884 | + | |
| 885 | + | |
| 886 | + | |
| 887 | + | |
| 888 | + | |
| 889 | + | |
888 | 890 | | |
889 | 891 | | |
890 | 892 | | |
| |||
0 commit comments