Symbolic Reachability Computation for Families of Linear Vector Fields
Journal of Symbolic Computation
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
How to Compose Presburger-Accelerations: Applications to Broadcast Protocols
FST TCS '02 Proceedings of the 22nd Conference Kanpur on Foundations of Software Technology and Theoretical Computer Science
CAV '96 Proceedings of the 8th International Conference on Computer Aided Verification
A static analyzer for large safety-critical software
PLDI '03 Proceedings of the ACM SIGPLAN 2003 conference on Programming language design and implementation
WCRE '01 Proceedings of the Eighth Working Conference on Reverse Engineering (WCRE'01)
FAST: acceleration from theory to practice
International Journal on Software Tools for Technology Transfer (STTT)
Automatic modular abstractions for linear constraints
Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
InvGen: An Efficient Invariant Generator
CAV '09 Proceedings of the 21st International Conference on Computer Aided Verification
Apron: A Library of Numerical Abstract Domains for Static Analysis
CAV '09 Proceedings of the 21st International Conference on Computer Aided Verification
Logahedra: A New Weakly Relational Domain
ATVA '09 Proceedings of the 7th International Symposium on Automated Technology for Verification and Analysis
Formal Methods in System Design
Static analysis by policy iteration on relational domains
ESOP'07 Proceedings of the 16th European conference on Programming
Approximate reachability for linear systems
HSCC'03 Proceedings of the 6th international conference on Hybrid systems: computation and control
Invariant generation for P-solvable loops with assignments
CSR'08 Proceedings of the 3rd international conference on Computer science: theory and applications
Accelerated Invariant Generation for C Programs with Aspic and C2fsm
Electronic Notes in Theoretical Computer Science (ENTCS)
A Modular Static Analysis Approach to Affine Loop Invariants Detection
Electronic Notes in Theoretical Computer Science (ENTCS)
Multi-dimensional rankings, program termination, and complexity bounds of flowchart programs
SAS'10 Proceedings of the 17th international conference on Static analysis
Relational abstractions for continuous and hybrid systems
CAV'11 Proceedings of the 23rd international conference on Computer aided verification
Logico-numerical abstract acceleration and application to the verification of data-flow programs
SAS'11 Proceedings of the 18th international conference on Static analysis
Combining widening and acceleration in linear relation analysis
SAS'06 Proceedings of the 13th international conference on Static Analysis
An abstract domain to discover interval linear equalities
VMCAI'10 Proceedings of the 11th international conference on Verification, Model Checking, and Abstract Interpretation
Scalable analysis of linear systems using mathematical programming
VMCAI'05 Proceedings of the 6th international conference on Verification, Model Checking, and Abstract Interpretation
Symbolic methods to enhance the precision of numerical abstract domains
VMCAI'06 Proceedings of the 7th international conference on Verification, Model Checking, and Abstract Interpretation
Compositional analysis of floating-point linear numerical filters
CAV'05 Proceedings of the 17th international conference on Computer Aided Verification
Widening polyhedra with landmarks
APLAS'06 Proceedings of the 4th Asian conference on Programming Languages and Systems
A generic ellipsoid abstract domain for linear time invariant systems
Proceedings of the 15th ACM international conference on Hybrid Systems: Computation and Control
Abstract interpretation meets convex optimization
Journal of Symbolic Computation
Applying abstract acceleration to (co-)reachability analysis of reactive programs
Journal of Symbolic Computation
Symbolic loop bound computation for WCET analysis
PSI'11 Proceedings of the 8th international conference on Perspectives of System Informatics
Precise relational invariants through strategy iteration
CSL'07/EACSL'07 Proceedings of the 21st international conference, and Proceedings of the 16th annuall conference on Computer Science Logic
Abstract acceleration of general linear loops
Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
Abstract acceleration of general linear loops
Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
Hi-index | 0.00 |
We present abstract acceleration techniques for computing loop invariants for numerical programs with linear assignments and conditionals. Whereas abstract interpretation techniques typically over-approximate the set of reachable states iteratively, abstract acceleration captures the effect of the loop with a single, non-iterative transfer function applied to the initial states at the loop head. In contrast to previous acceleration techniques, our approach applies to any linear loop without restrictions. Its novelty lies in the use of the Jordan normal form decomposition of the loop body to derive symbolic expressions for the entries of the matrix modeling the effect of η ≥ Ο iterations of the loop. The entries of such a matrix depend on η through complex polynomial, exponential and trigonometric functions. Therefore, we introduces an abstract domain for matrices that captures the linear inequality relations between these complex expressions. This results in an abstract matrix for describing the fixpoint semantics of the loop. Our approach integrates smoothly into standard abstract interpreters and can handle programs with nested loops and loops containing conditional branches. We evaluate it over small but complex loops that are commonly found in control software, comparing it with other tools for computing linear loop invariants. The loops in our benchmarks typically exhibit polynomial, exponential and oscillatory behaviors that present challenges to existing approaches. Our approach finds non-trivial invariants to prove useful bounds on the values of variables for such loops, clearly outperforming the existing approaches in terms of precision while exhibiting good performance.