Results 1 
4 of
4
Multivariate Amortized Resource Analysis
, 2010
"... We study the problem of automatically analyzing the worstcase resource usage of procedures with several arguments. Existing automatic analyses based on amortization, or sized types bound the resource usage or result size of such a procedure by a sum of unary functions of the sizes of the arguments. ..."
Abstract

Cited by 47 (8 self)
 Add to MetaCart
We study the problem of automatically analyzing the worstcase resource usage of procedures with several arguments. Existing automatic analyses based on amortization, or sized types bound the resource usage or result size of such a procedure by a sum of unary functions of the sizes of the arguments. In this paper we generalize this to arbitrary multivariate polynomial functions thus allowing bounds of the form mn which had to be grossly overestimated by m 2 + n 2 before. Our framework even encompasses bounds like ∑ i,j≤n mimj where the mi are the sizes of the entries of a list of length n. This allows us for the first time to derive useful resource bounds for operations on matrices that are represented as lists of lists and to considerably improve bounds on other superlinear operations on lists such as longest common subsequence and removal of duplicates from lists of lists. Furthermore, resource bounds are now closed under composition which improves accuracy of the analysis of composed programs when some or all of the components exhibit superlinear resource or size behavior. The analysis is based on a novel multivariate amortized resource analysis. We present it in form of a type system for a simple firstorder functional language with lists and trees, prove soundness, and describe automatic type inference based on linear programming. We have experimentally validated the automatic analysis on a wide range of examples from functional programming with lists and trees. The obtained bounds were compared with actual resource consumption. All bounds were asymptotically tight, and the constants were close or even identical to the optimal ones.
Automatic Inference of Bounds on Resource Consumption
, 2013
"... In this tutorial paper, we overview the techniques that underlie the automatic inference of resource consumption bounds. We first explain the basic techniques on a Javalike sequential language. Then, we describe the extensions that are required to apply our method on concurrent ABS programs. Finall ..."
Abstract
 Add to MetaCart
(Show Context)
In this tutorial paper, we overview the techniques that underlie the automatic inference of resource consumption bounds. We first explain the basic techniques on a Javalike sequential language. Then, we describe the extensions that are required to apply our method on concurrent ABS programs. Finally, we discuss some advanced issues in resource analysis, including the inference of noncumulative resources and the treatment of shared mutable data.
Preface
, 2014
"... Memoria de Tesis Doctoral presentada para obtener el grado de Doctor en Ingeniería Informática por ..."
Abstract
 Add to MetaCart
(Show Context)
Memoria de Tesis Doctoral presentada para obtener el grado de Doctor en Ingeniería Informática por
Precise Cost Analysis via Local Reasoning
"... Abstract. The classical approach to static cost analysis is based on first transforming a given program into a set of cost relations, and then solving them into closedform upperbounds. The quality of the upperbounds and the scalability of such cost analysis highly depend on the precision and effi ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. The classical approach to static cost analysis is based on first transforming a given program into a set of cost relations, and then solving them into closedform upperbounds. The quality of the upperbounds and the scalability of such cost analysis highly depend on the precision and efficiency of the solving phase. Several techniques for solving cost relations exist, some are efficient but not precise enough, and some are very precise but do not scale to large cost relations. In this paper we explore the gap between these techniques, seeking for ones that are both precise and efficient. In particular, we propose a novel technique that first splits the cost relation into several atomic ones, and then uses precise local reasoning for some and less precise but efficient reasoning for others. For the precise local reasoning, we propose several methods that define the cost as a solution of a universally quantified formula. Preliminary experiments demonstrate the effectiveness of our approach. 1