Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Martin Avanzini is active.

Publication


Featured researches published by Martin Avanzini.


international symposium on functional and logic programming | 2008

Complexity analysis by rewriting

Martin Avanzini; Georg Moser

In this paper we introduce a restrictive version of the multiset path order, called polynomial path order. This recursive path order induces polynomial bounds on the maximal number of innermost rewrite steps. This result opens the way to automatically verify for a given program, written in an eager functional programming language, that the maximal number of evaluation steps starting from any function call is polynomial in the input size. To test the feasibility of our approach we have implemented this technique and compare its applicability to existing methods.


rewriting techniques and applications | 2010

Closing the Gap Between Runtime Complexity and Polytime Computability.

Martin Avanzini; Georg Moser

In earlier work, we have shown that for confluent TRSs, innermost polynomial runtime complexity induces polytime computability of the functions defined. In this paper, we generalise this result to full rewriting, for that we exploit graph rewriting. We give a new proof of the adequacy of graph rewriting for full rewriting that allows for a precise control of the resources copied. In sum we completely describe an implementation of rewriting on a Turing machine (TM for short). We show that the runtime complexity of the TRS and the runtime complexity of the TM is polynomially related. Our result strengthens the evidence that the complexity of a rewrite system is truthfully represented through the length of derivations. Moreover our result allows the classification of nondeterministic polytime-computation based on runtime complexity analysis of rewrite systems.


international conference on functional programming | 2015

Analysing the complexity of functional programs: higher-order meets first-order

Martin Avanzini; Ugo Dal Lago; Georg Moser

We show how the complexity of higher-order functional programs can be analysed automatically by applying program transformations to a defunctionalised versions of them, and feeding the result to existing tools for the complexity analysis of first-order term rewrite systems. This is done while carefully analysing complexity preservation and reflection of the employed transformations such that the complexity of the obtained term rewrite system reflects on the complexity of the initial program. Further, we describe suitable strategies for the application of the studied transformations and provide ample experimental data for assessing the viability of our method.


rewriting techniques and applications | 2009

Dependency Pairs and Polynomial Path Orders

Martin Avanzini; Georg Moser

We show how polynomial path orders can be employed efficiently in conjunction with weak innermost dependency pairs to automatically certify polynomial runtime complexity of term rewrite systems and the polytime computability of the functions computed. The established techniques have been implemented and we provide ample experimental data to assess the new method.


Information & Computation | 2016

A combination framework for complexity

Martin Avanzini; Georg Moser

In this paper we present a combination framework for the automated polynomial complexity analysis of term rewrite systems. The framework covers both derivational and runtime complexity analysis, and is employed as theoretical foundation in the automated complexity tool ?. We present generalisations of powerful complexity techniques, notably a generalisation of complexity pairs and (weak) dependency pairs. Finally, we also present a novel technique, called dependency graph decomposition, that in the dependency pair setting greatly increases modularity.


rewriting techniques and applications | 2013

Tyrolean Complexity Tool: Features and Usage

Martin Avanzini; Georg Moser

The Tyrolean Complexity Tool, TCT for short, is an open source complexity analyser for term rewrite systems. Our tool TCT features a majority of the known techniques for the automated characterisation of polynomial complexity of rewrite systems and can investigate derivational and runtime complexity, for full and innermost rewriting. This system description outlines features and provides a short introduction to the usage of TCT.


international symposium on functional and logic programming | 2010

Complexity analysis by graph rewriting

Martin Avanzini; Georg Moser

Recently, many techniques have been introduced that allow the (automated) classification of the runtime complexity of term rewrite systems (TRSs for short). In this paper we show that polynomial (innermost) runtime complexity of TRSs induces polytime computability of the functions defined. In this way we show a tight correspondence between the number of steps performed in a given rewrite system and the computational complexity of an implementation of rewriting. The result uses graph rewriting as a first step towards the implementation of term rewriting. In particular, we prove the adequacy of (innermost) graph rewriting for (innermost) term rewriting.


asian symposium on programming languages and systems | 2012

A New Order-Theoretic Characterisation of the Polytime Computable Functions

Martin Avanzini; Naohi Eguchi; Georg Moser

We propose a new order-theoretic characterisation of the class of polytime computable functions. To this avail we define the small polynomial path order (sPOP * for short). This termination order entails a new syntactic method to analyse the innermost runtime complexity of term rewrite systems fully automatically: for any rewrite system compatible with sPOP* that employs recursion upto depth d, the (innermost) runtime complexity is polynomially bounded of degree d. This bound is tight.


rewriting techniques and applications | 2011

A Path Order for Rewrite Systems that Compute Exponential Time Functions

Martin Avanzini; Naohi Eguchi; Georg Moser

In this paper we present a new path order for rewrite systems, the exponential path order EPOSTAR. Suppose a term rewrite system is compatible with EPOSTAR, then the runtime complexity of this rewrite system is bounded from above by an exponential function. Furthermore, the class of function computed by a rewrite system compatible with EPOSTAR equals the class of functions computable in exponential time on a Turing maschine.


tools and algorithms for construction and analysis of systems | 2016

TcT: Tyrolean Complexity Tool

Martin Avanzini; Georg Moser; Michael Schaper

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.

Collaboration


Dive into the Martin Avanzini's collaboration.

Top Co-Authors

Avatar

Georg Moser

University of Innsbruck

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Naohi Eguchi

University of Innsbruck

View shared research outputs
Top Co-Authors

Avatar

Georg Moser

University of Innsbruck

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge