A cost recurrence describes an upper bound for the running time of a program in terms of the size of its input. Finding cost recurrences is a frequent intermediate step in complexity analysis, and this step requires an abstraction from data to data size. In this article, we use information contained in dependent types to achieve such an abstraction: Dependent ML (DML), a conservative extension of ML, provides dependent types that can be used to associate data with size information, thus describing a possible abstraction. We systematically extract cost recurrences from first-order DML programs, guiding the abstraction from data to data size with information contained in DML type derivations
International audienceWe show that time complexity analysis of higher-order functional programs can ...
This paper presents a novel type-and-effect analysis for pre-dicting upper-bounds on memory allocati...
International audienceLinear dependent types were introduced recently as a formal system that allows...
cost recurrence describes an upper bound for the running time of a program in terms of the size of i...
A standard informal method for analyzing the asymptotic complexity of a program is to extract a recu...
The classical approach to automatic cost analysis consists of two phases. Given a program and some m...
Automatic static cost analysis infers information about the resources used by programs without actua...
This paper considers the use of dependent types to capture information about dynamic resource usage ...
International audienceLinear dependent types allow to precisely capture both the extensional behavio...
Cost analysis aims at statically inferring the amount of resources, such as time or memory, needed t...
This paper presents a type-based analysis for inferring size-and cost-equations for recursive, highe...
Controlling the resource consumption of programs is crucial: besides performance reasons, it has man...
This article introduces a technique to accurately perform static prediction of resource usage for ML...
We present a modular approach to automatic complexity analysis of integer programs. Based on a novel...
We present a novel static analysis for inferring precise complexity bounds of imperative and recursi...
International audienceWe show that time complexity analysis of higher-order functional programs can ...
This paper presents a novel type-and-effect analysis for pre-dicting upper-bounds on memory allocati...
International audienceLinear dependent types were introduced recently as a formal system that allows...
cost recurrence describes an upper bound for the running time of a program in terms of the size of i...
A standard informal method for analyzing the asymptotic complexity of a program is to extract a recu...
The classical approach to automatic cost analysis consists of two phases. Given a program and some m...
Automatic static cost analysis infers information about the resources used by programs without actua...
This paper considers the use of dependent types to capture information about dynamic resource usage ...
International audienceLinear dependent types allow to precisely capture both the extensional behavio...
Cost analysis aims at statically inferring the amount of resources, such as time or memory, needed t...
This paper presents a type-based analysis for inferring size-and cost-equations for recursive, highe...
Controlling the resource consumption of programs is crucial: besides performance reasons, it has man...
This article introduces a technique to accurately perform static prediction of resource usage for ML...
We present a modular approach to automatic complexity analysis of integer programs. Based on a novel...
We present a novel static analysis for inferring precise complexity bounds of imperative and recursi...
International audienceWe show that time complexity analysis of higher-order functional programs can ...
This paper presents a novel type-and-effect analysis for pre-dicting upper-bounds on memory allocati...
International audienceLinear dependent types were introduced recently as a formal system that allows...