Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported license
Polynomial interpretations and their generalizations like quasi-interpretations have been used in the setting of first-order functional languages to design criteria ensuring statically some complexity bounds on programs. This fits in the area of implicit computational complexity, which aims at giving machine-free characterizations of complexity classes. In this paper, we extend this approach to the higher-order setting. For that we consider the notion of simply-typed term rewriting systems, we define higher-order polynomial interpretations for them and give a criterion ensuring that a program can be executed in polynomial time. In order to obtain a criterion flexible enough to validate interesting programs using higher-order primitives, we introduce a notion of polynomial quasi-interpretations, coupled with a simple termination criterion based on linear types and path-like orders.
@InProceedings{baillot_et_al:LIPIcs.CSL.2012.62,
author = {Baillot, Patrick and Dal Lago, Ugo},
title = {{Higher-Order Interpretations and Program Complexity}},
booktitle = {Computer Science Logic (CSL'12) - 26th International Workshop/21st Annual Conference of the EACSL},
pages = {62--76},
series = {Leibniz International Proceedings in Informatics (LIPIcs)},
ISBN = {978-3-939897-42-2},
ISSN = {1868-8969},
year = {2012},
volume = {16},
editor = {C\'{e}gielski, Patrick and Durand, Arnaud},
publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
address = {Dagstuhl, Germany},
URL = {https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.CSL.2012.62},
URN = {urn:nbn:de:0030-drops-36641},
doi = {10.4230/LIPIcs.CSL.2012.62},
annote = {Keywords: implicit complexity, higher-order rewriting, quasi-interpretations}
}