Automating Size Type Inference and Complexity Analysis

Automating Size Type Inference and Complexity Analysis
M. Avanzini and U. Dal Lago
proceedings of 8th workshop on developments in implicit computational complexity and 5th workshop on foundational and practical aspects of resource analysis, 2017.

Abstract

This paper introduces a new methodology for the complexity analysis of higher-order functional programs, which is based on three ingredients: a powerful type system for size analysis and a sound type inference procedure for it, a ticking monadic transformation and constraint solving. Noticeably, the presented methodology can be fully automated, and is able to analyse a series of examples which cannot be handled by most competitor methodologies. This is possible due to various key ingredients, and in particular an abstract index language and index polymorphism at higher ranks. A prototype implementation is available.

Categories

Complexity Analysis, Higher-Order, Automation, Sized-Types