TcT: Tyrolean Complexity Tool

In this paper we present [InlineEquation not available: see fulltext.] v3.0, the latest version of our fully automated complexity analyser. [InlineEquation not available: see fulltext.] implements our framework for automated complexity analysis and focuses on extensibility and automation. [InlineEquation not available: see fulltext.] is open with respect to the input problem under investigation and the resource metric in question. It is the most powerful tool in the realm of automated complexity analysis of term rewrite systems. Moreover it provides an expressive problem-independent strategy language that facilitates proof search. We give insights about design choices, the implementation of the framework and report different case studies where we have applied [InlineEquation not available: see fulltext.] successfully.

[1]  John C. Reynolds,et al.  Definitional Interpreters for Higher-Order Programming Languages , 1972, ACM '72.

[2]  Richard S. Bird,et al.  Introduction to functional programming , 1988, Prentice Hall International series in computer science.

[3]  Jennifer Paykin,et al.  A static cost analysis for a higher-order language , 2012, PLPV.

[4]  Robert Atkey,et al.  Amortised Resource Analysis with Separation Logic , 2010, ESOP.

[5]  Martin Hofmann,et al.  Static determination of quantitative resource usage for higher-order programs , 2010, POPL '10.

[6]  Helmut Veith,et al.  A simple and scalable static analysis for bound analysis and amortized complexity analysis , 2014, Software Engineering.

[7]  Robert Atkey Amortised Resource Analysis with Separation Logic , 2010, ESOP.

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

[9]  John C. Reynolds Definitional Interpreters for Higher-Order Programming Languages , 1998, High. Order Symb. Comput..

[10]  Nick Bezhanishvili,et al.  Finitely generated free Heyting algebras via Birkhoff duality and coalgebra , 2011, Log. Methods Comput. Sci..

[11]  Richard S. Bird,et al.  Introduction to functional programming using haskeu , 1998 .

[12]  Étienne Payet,et al.  Path-Length Analysis for Object-Oriented Programs , 2006 .

[13]  Jürgen Giesl,et al.  Alternating Runtime and Size Complexity Analysis of Integer Programs , 2014, TACAS.

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

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

[16]  Ugo Dal Lago,et al.  Analysing the complexity of functional programs: higher-order meets first-order , 2015, ICFP.

[17]  Martin Hofmann,et al.  Multivariate Amortised Resource Analysis for Term Rewrite Systems , 2015, TLCA.

[18]  Martin Hofmann,et al.  A program logic for resources , 2007, Theor. Comput. Sci..

[19]  Jakob Engblom,et al.  The worst-case execution-time problem—overview of methods and survey of tools , 2008, TECS.

[20]  René Thiemann,et al.  Certification of Complexity Proofs using CeTA , 2015, RTA.

[21]  Georg Moser,et al.  The complexity of interaction , 2016, POPL.

[22]  Elvira Albert,et al.  Conditional termination of loops over heap-allocated data , 2014, Sci. Comput. Program..

[23]  Georg Moser,et al.  A combination framework for complexity , 2013, Inf. Comput..

[24]  Georg Moser,et al.  A Complexity Preserving Transformation from Jinja Bytecode to Rewrite Systems , 2012, ArXiv.

[25]  G.D. Plotkin,et al.  LCF Considered as a Programming Language , 1977, Theor. Comput. Sci..

[26]  Tobias Nipkow,et al.  A machine-checked model for a Java-like language, virtual machine, and compiler , 2006, TOPL.

[27]  Flemming Nielson,et al.  Principles of Program Analysis , 1999, Springer Berlin Heidelberg.

[28]  Alan D. George,et al.  RapidIO for radar processing in advanced space systems , 2007, TECS.

[29]  Enno Ohlebusch,et al.  Term Rewriting Systems , 2002 .

[30]  Georg Moser,et al.  The Complexity of Interaction (Long Version) , 2015, ArXiv.

[31]  R. Bird Introduction to functional programming using Haskell, Second Edition , 1998 .

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

[33]  Georg Moser,et al.  Automated Complexity Analysis Based on the Dependency Pair Method , 2008, IJCAR.

[34]  Georg Moser,et al.  Proof Theory at Work: Complexity Analysis of Term Rewrite Systems , 2009, ArXiv.