POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The size-change principle for program termination
POPL '01 Proceedings of the 28th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
LLVM: A Compilation Framework for Lifelong Program Analysis & Transformation
Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization
LICS '04 Proceedings of the 19th Annual IEEE Symposium on Logic in Computer Science
Transition predicate abstraction and fair termination
Proceedings of the 32nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Transition predicate abstraction and fair termination
Proceedings of the 32nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Termination proofs for systems code
Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation
Variance analyses from invariance analyses
Proceedings of the 34th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Measuring empirical computational complexity
Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
Certified Size-Change Termination
CADE-21 Proceedings of the 21st international conference on Automated Deduction: Automated Deduction
CAV '08 Proceedings of the 20th international conference on Computer Aided Verification
SPEED: precise and efficient static estimation of program computational complexity
Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Automatic modular abstractions for linear constraints
Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Control-flow refinement and progress invariants for bound analysis
Proceedings of the 2009 ACM SIGPLAN conference on Programming language design and implementation
SPEED: Symbolic Complexity Bound Analysis
CAV '09 Proceedings of the 21st International Conference on Computer Aided Verification
Inferring disjunctive postconditions
ASIAN'06 Proceedings of the 11th Asian computing science conference on Advances in computer science: secure software and related issues
The reachability-bound problem
PLDI '10 Proceedings of the 2010 ACM SIGPLAN conference on Programming language design and implementation
Size-change termination and transition invariants
SAS'10 Proceedings of the 17th international conference on Static analysis
Loop summarization and termination analysis
TACAS'11/ETAPS'11 Proceedings of the 17th international conference on Tools and algorithms for the construction and analysis of systems: part of the joint European conferences on theory and practice of software
Termination analysis with calling context graphs
CAV'06 Proceedings of the 18th international conference on Computer Aided Verification
CAV'06 Proceedings of the 18th international conference on Computer Aided Verification
Termination analysis with compositional transition invariants
CAV'10 Proceedings of the 22nd international conference on Computer Aided Verification
CAV'12 Proceedings of the 24th international conference on Computer Aided Verification
On the limits of the classical approach to cost analysis
SAS'12 Proceedings of the 19th international conference on Static Analysis
Combined WCET analysis of bitcode and machine code using control-flow relation graphs
Proceedings of the 14th ACM SIGPLAN/SIGBED conference on Languages, compilers and tools for embedded systems
Under-Approximating loops in c programs for fast counterexample detection
CAV'13 Proceedings of the 25th international conference on Computer Aided Verification
Hi-index | 0.00 |
The size-change abstraction (SCA) is an important program abstraction for termination analysis, which has been successfully implemented in many tools for functional and logic programs. In this paper, we demonstrate that SCA is also a highly effective abstract domain for the bound analysis of imperative programs. We have implemented a bound analysis tool based on SCA for imperative programs. We abstract programs in a pathwise and context dependent manner, which enables our tool to analyze real-world programs effectively. Our work shows that SCA captures many of the essential ideas of previous termination and bound analysis and goes beyond in a conceptually simpler framework.