Amortised Resource Analysis and Typed Polynomial Interpretations

We introduce a novel resource analysis for typed term rewrite systems based on a potential-based type system. This type system gives rise to polynomial bounds on the innermost runtime complexity. We relate the thus obtained amortised resource analysis to polynomial interpretations and obtain the perhaps surprising result that whenever a rewrite system \(\mathcal R\) can be well-typed, then there exists a polynomial interpretation that orients \(\mathcal R\). For this we adequately adapt the standard notion of polynomial interpretations to the typed setting.

[1]  Jürgen Giesl,et al.  Analyzing Innermost Runtime Complexity of Term Rewriting by Dependency Pairs , 2013, Journal of Automated Reasoning.

[2]  Albert Rubio,et al.  The higher-order recursive path ordering , 1999, Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158).

[3]  Martin Hofmann,et al.  Multivariate amortized resource analysis , 2012, TOPL.

[4]  A. M. Turing,et al.  Checking a large routine , 1989 .

[5]  Chris Okasaki,et al.  Purely functional data structures , 1998 .

[6]  Martin Hofmann,et al.  Amortized Resource Analysis with Polynomial Potential , 2010, ESOP.

[7]  Martin Hofmann,et al.  Amortised Resource Analysis and Typed Polynomial Interpretations (extended version) , 2014, ArXiv.

[8]  Guillaume Bonfante,et al.  Algorithms with polynomial interpretation termination proof , 2001, Journal of Functional Programming.

[9]  Jan Hoffmann,et al.  Types with potential: polynomial resource bounds via automatic amortized analysis , 2011 .

[10]  Terese Term rewriting systems , 2003, Cambridge tracts in theoretical computer science.

[11]  Martin Hofmann,et al.  Static prediction of heap space usage for first-order functional programs , 2003, POPL '03.

[12]  Chang Liu,et al.  Term rewriting and all that , 2000, SOEN.

[13]  Sumit Gulwani,et al.  Bound Analysis of Imperative Programs with the Size-Change Abstraction , 2011, SAS.

[14]  HofmannMartin,et al.  Static prediction of heap space usage for first-order functional programs , 2003 .

[15]  Elvira Albert,et al.  Closed-Form Upper Bounds in Static Cost Analysis , 2011, Journal of Automated Reasoning.

[16]  Ana Cavalcanti,et al.  FM 2009: Formal Methods, Second World Congress, Eindhoven, The Netherlands, November 2-6, 2009. Proceedings , 2009, FM.

[17]  Martin Hofmann,et al.  "Carbon Credits" for Resource-Bounded Computations Using Amortised Analysis , 2009, FM.

[18]  R. Tarjan Amortized Computational Complexity , 1985 .

[19]  Martin Hofmann,et al.  Resource Aware ML , 2012, CAV.

[20]  Martin Hofmann,et al.  Amortized Resource Analysis with Polymorphic Recursion and Partial Big-Step Operational Semantics , 2010, APLAS.

[21]  Georg Moser,et al.  Tyrolean Complexity Tool: Features and Usage , 2013, RTA.

[22]  Guillaume Bonfante,et al.  Quasi-interpretations a way to control resources , 2011, Theor. Comput. Sci..

[23]  Paul Feautrier,et al.  Multi-dimensional Rankings, Program Termination, and Complexity Bounds of Flowchart Programs , 2010, SAS.

[24]  Brian Campbell,et al.  Amortised Memory Analysis Using the Depth of Data Structures , 2009, ESOP.

[25]  Claude Marché,et al.  Mechanically Proving Termination Using Polynomial Interpretations , 2005, Journal of Automated Reasoning.