Precise interprocedural dataflow analysis via graph reachability
POPL '95 Proceedings of the 22nd 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
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
LICS '04 Proceedings of the 19th Annual IEEE Symposium on Logic in Computer Science
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
A buffer overflow benchmark for software model checkers
Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering
Loop Summarization Using Abstract Transformers
ATVA '08 Proceedings of the 6th International Symposium on Automated Technology for Verification and Analysis
Summarization for termination: no return!
Formal Methods in System Design
Loopfrog: A Static Analyzer for ANSI-C Programs
ASE '09 Proceedings of the 2009 IEEE/ACM International Conference on Automated Software Engineering
ESOP'08/ETAPS'08 Proceedings of the Theory and practice of software, 17th European conference on Programming languages and systems
Size-change termination and transition invariants
SAS'10 Proceedings of the 17th international conference on Static analysis
SATABS: SAT-Based predicate abstraction for ANSI-C
TACAS'05 Proceedings of the 11th international conference on Tools and Algorithms for the Construction and Analysis of Systems
Termination analysis with compositional transition invariants
CAV'10 Proceedings of the 22nd international conference on Computer Aided Verification
Ranking abstraction of recursive programs
VMCAI'06 Proceedings of the 7th international conference on Verification, Model Checking, and Abstract Interpretation
Abstraction refinement for termination
SAS'05 Proceedings of the 12th international conference on Static Analysis
ARMC: the logical choice for software model checking with abstraction refinement
PADL'07 Proceedings of the 9th international conference on Practical Aspects of Declarative Languages
Ranking function synthesis for bit-vector relations
TACAS'10 Proceedings of the 16th international conference on Tools and Algorithms for the Construction and Analysis of Systems
Automatic partial loop summarization in dynamic test generation
Proceedings of the 2011 International Symposium on Software Testing and Analysis
Bound analysis of imperative programs with the size-change abstraction
SAS'11 Proceedings of the 18th international conference on Static analysis
Termination analysis of imperative programs using bitvector arithmetic
VSTTE'12 Proceedings of the 4th international conference on Verified Software: theories, tools, experiments
Using invariant relations in the termination analysis of while loops
Proceedings of the 34th International Conference on Software Engineering
Termination analysis with algorithmic learning
CAV'12 Proceedings of the 24th international conference on Computer Aided Verification
Automated termination proofs for Java programs with cyclic data
CAV'12 Proceedings of the 24th international conference on Computer Aided Verification
SAS'12 Proceedings of the 19th international conference on Static Analysis
Predicate analysis with block-abstraction memoization
ICFEM'12 Proceedings of the 14th international conference on Formal Engineering Methods: formal methods and software engineering
Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
Better termination proving through cooperation
CAV'13 Proceedings of the 25th international conference on Computer Aided Verification
Verifying while loops with invariant relations
International Journal of Critical Computer-Based Systems
Hi-index | 0.00 |
We present a technique for program termination analysis based on loop summarization. The algorithm relies on a library of abstract domains to discover well-founded transition invariants. In contrast to state-of-the-art methods it aims to construct a complete ranking argument for all paths through a loop at once, thus avoiding expensive enumeration of individual paths. Compositionality is used as a completeness criterion for the discovered transition invariants. The practical efficiency of the approach is evaluated using a set of Windows device drivers.