We develop a class of algebraic interpretations for many-sorted and higher-order term rewriting systems that takes type information into account. Specifically, base-type terms are mapped to \emph{tuples} of natural numbers and higher-order terms to functions between those tuples. Tuples may carry information relevant to the type; for instance, a term of type $\mathsf{nat}$ may be associated to a pair $(\mathsf{cost}, \mathsf{size})$ representing its evaluation cost and size. This class of interpretations results in a more fine-grained notion of complexity than runtime or derivational complexity, which makes it particularly useful to obtain complexity bounds for higher-order rewriting systems. We show that rewriting systems compatible with tuple interpretations admit finite bounds on derivation height. Furthermore, we demonstrate how to mechanically construct tuple interpretations and how to orient $\beta$ and $\eta$ reductions within our technique. Finally, we relate our method to runtime complexity and prove that specific interpretation shapes imply certain runtime complexity bounds.
翻译:我们为多种分类和更高顺序的重写系统开发了一组代数解释, 以考虑到类型信息。 具体地说, 基型术语被映射为自然数字的\ emph{ tuples} 和这些图普尔之间功能的更高顺序的术语。 图普尔可能含有与类型相关的信息; 例如, $\ mathsf{f{nat} 这样的术语可能与一对美元( mathfsf{cost},\ mathsf{size}) 相关联, 代表其评估成本和大小。 类解释导致比运行时间或衍生复杂程度更精细的复杂概念, 这使得获得更高顺序重写系统的复杂性特别有用。 我们显示, 与图普尔解释相容的重写系统在衍生高度上可以有一定的界限。 此外, 我们演示如何机械地构建图解解释, 以及如何在技术范围内调整 $\beta$ 和 $\ eta$\ a$ 。 最后, 我们将我们的方法与运行时间复杂性联系起来, 证明特定解释形状意味着一定的复杂度绑。