Proceedings of the 27th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Communications of the ACM
Automatic discovery of linear restraints among variables of a program
POPL '78 Proceedings of the 5th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
SPEED: precise and efficient static estimation of program computational complexity
Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Size-Change Termination, Monotonicity Constraints and Ranking Functions
CAV '09 Proceedings of the 21st International Conference on Computer Aided Verification
Cost analysis of java bytecode
ESOP'07 Proceedings of the 16th European conference on Programming
Multi-dimensional rankings, program termination, and complexity bounds of flowchart programs
SAS'10 Proceedings of the 17th international conference on Static analysis
Comparing cost functions in resource analysis
FOPARA'09 Proceedings of the First international conference on Foundational and practical aspects of resource analysis
Closed-Form Upper Bounds in Static Cost Analysis
Journal of Automated Reasoning
ESOP'10 Proceedings of the 19th European conference on Programming Languages and Systems
Cost analysis of object-oriented bytecode programs
Theoretical Computer Science
Automatic inference of resource consumption bounds
LPAR'12 Proceedings of the 18th international conference on Logic for Programming, Artificial Intelligence, and Reasoning
Multivariate amortized resource analysis
ACM Transactions on Programming Languages and Systems (TOPLAS)
Interpolation-Based height analysis for improving a recurrence solver
FOPARA'11 Proceedings of the Second international conference on Foundational and Practical Aspects of Resource Analysis
Making resource analysis practical for real-time Java
Proceedings of the 10th International Workshop on Java Technologies for Real-time and Embedded Systems
On the limits of the classical approach to cost analysis
SAS'12 Proceedings of the 19th international conference on Static Analysis
On the Inference of Resource Usage Upper and Lower Bounds
ACM Transactions on Computational Logic (TOCL)
Hi-index | 0.01 |
Cost analysis aims at determining the amount of resources required to run a program in terms of its input data sizes. Automatically inferring precise bounds, while at the same time being able to handle a wide class of programs, is a main challenge in cost analysis. (1) Existing methods which rely on computer algebra systems (CAS) to solve the obtained cost recurrence equations (CR) are very precise when applicable, but handle a very restricted class of CR. (2) Specific solvers developed for CR tend to sacrifice accuracy for wider applicability. In this paper, we present a novel approach to inferring precise upper and lower bounds on CR which, when compared to (1), is strictly more widely applicable while precision is kept and when compared to (2), is in practice more precise (obtaining even tighter complexity orders), keeps wide applicability and, besides, can be applied to obtain useful lower bounds as well. The main novelty is that we are able to accurately bound the worst-case/best-case cost of each iteration of the program loops and, then, by summing the resulting sequences, we achieve very precise upper/lower bounds.