ACE: an automatic complexity evaluator
ACM Transactions on Programming Languages and Systems (TOPLAS)
Task granularity analysis in logic programs
PLDI '90 Proceedings of the ACM SIGPLAN 1990 conference on Programming language design and implementation
FPCA '89 Proceedings of the fourth international conference on Functional programming languages and computer architecture
Cost analysis of logic programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Lower bound cost estimation for logic programs
ILPS '97 Proceedings of the 1997 international symposium on Logic programming
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Cost recurrences for DML programs
Proceedings of the sixth ACM SIGPLAN international conference on Functional programming
ESOP '02 Proceedings of the 11th European Symposium on Programming Languages and Systems
Complexity Analysis Based on Ordered Resolution
LICS '96 Proceedings of the 11th Annual IEEE Symposium on Logic in Computer Science
Java Virtual-Machine Support for Portable Worst-Case Execution-Time Analysis
ISORC '02 Proceedings of the Fifth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing
Self-tuning resource aware specialisation for prolog
PPDP '05 Proceedings of the 7th ACM SIGPLAN international conference on Principles and practice of declarative programming
Science of Computer Programming - Special issue: Static analysis symposium (SAS 2003)
Poly-controlled partial evaluation
Proceedings of the 8th ACM SIGPLAN international conference on Principles and practice of declarative programming
Automatic Identification of Timing Anomalies for Cycle-Accurate Worst-Case Execution Time Analysis
DDECS '06 Proceedings of the 2006 IEEE Design and Diagnostics of Electronic Circuits and systems
Enforcing resource bounds via static verification of dynamic checks
ESOP'05 Proceedings of the 14th European conference on Programming Languages and Systems
Inferring cost equations for recursive, polymorphic and higher-order functional programs
IFL'03 Proceedings of the 15th international conference on Implementation of Functional Languages
Pentagons: a weakly relational abstract domain for the efficient validation of array accesses
Proceedings of the 2008 ACM symposium on Applied computing
Removing useless variables in cost analysis of Java bytecode
Proceedings of the 2008 ACM symposium on Applied computing
Towards execution time estimation in abstract machine-based languages
Proceedings of the 10th international ACM SIGPLAN conference on Principles and practice of declarative programming
Concurrency, Graphs and Models
Automatic Inference of Upper Bounds for Recurrence Relations in Cost Analysis
SAS '08 Proceedings of the 15th international symposium on Static Analysis
SPEED: precise and efficient static estimation of program computational complexity
Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
SPEED: Symbolic Complexity Bound Analysis
CAV '09 Proceedings of the 21st International Conference on Computer Aided Verification
Cost Relation Systems: A Language-Independent Target Language for Cost Analysis
Electronic Notes in Theoretical Computer Science (ENTCS)
Pentagons: A weakly relational abstract domain for the efficient validation of array accesses
Science of Computer Programming
ICSOC/ServiceWave'09 Proceedings of the 2009 international conference on Service-oriented computing
Closed-Form Upper Bounds in Static Cost Analysis
Journal of Automated Reasoning
ABC: algebraic bound computation for loops
LPAR'10 Proceedings of the 16th international conference on Logic for programming, artificial intelligence, and reasoning
PADL'11 Proceedings of the 13th international conference on Practical aspects of declarative languages
CLP projection for constraint handling rules
Proceedings of the 13th international ACM SIGPLAN symposium on Principles and practices of declarative programming
Cost analysis of object-oriented bytecode programs
Theoretical Computer Science
An overview of ciao and its design philosophy
Theory and Practice of Logic Programming - Prolog Systems
Interval-Based resource usage verification: formalization and prototype
FOPARA'11 Proceedings of the Second international conference on Foundational and Practical Aspects of Resource Analysis
Symbolic evaluation graphs and term rewriting: a general methodology for analyzing logic programs
Proceedings of the 14th symposium on Principles and practice of declarative programming
On the Inference of Resource Usage Upper and Lower Bounds
ACM Transactions on Computational Logic (TOCL)
Hi-index | 0.00 |
We present a static analysis that infers both upper and lower bounds on the usage that a logic program makes of a set of user-definable resources. The inferred bounds will in general be functions of input data sizes. A resource in our approach is a quite general, user-defined notion which associates a basic cost function with elementary operations. The analysis then derives the related (upper- and lower-bound) resource usage functions for all predicates in the program. We also present an assertion language which is used to define both such resources and resourcerelated properties that the system can then check based on the results of the analysis. We have performed some preliminary experiments with some concrete resources such as execution steps, bytes sent or received by an application, number of files left open, number of accesses to a database, number of calls to a procedure, number of asserts/retracts, etc. Applications of our analysis include resource consumption verification and debugging (including for mobile code), resource control in parallel/distributed computing, and resource-oriented specialization.