Theory of linear and integer programming
Theory of linear and integer programming
Theory of hybrid systems and discrete event systems
Theory of hybrid systems and discrete event systems
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
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Markov Decision Processes: Discrete Stochastic Dynamic Programming
Markov Decision Processes: Discrete Stochastic Dynamic Programming
A New Numerical Abstract Domain Based on Difference-Bound Matrices
PADO '01 Proceedings of the Second Symposium on Programs as Data Objects
A Discrete Strategy Improvement Algorithm for Solving Parity Games
CAV '00 Proceedings of the 12th International Conference on Computer Aided Verification
Delay Analysis in Synchronous Programs
CAV '93 Proceedings of the 5th 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
Precise Interval Analysis vs. Parity Games
FM '08 Proceedings of the 15th international symposium on Formal Methods
Automatic modular abstractions for linear constraints
Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A Quantifier Elimination Algorithm for Linear Real Arithmetic
LPAR '08 Proceedings of the 15th International Conference on Logic for Programming, Artificial Intelligence, and Reasoning
Polynomial Precise Interval Analysis Revisited
Efficient Algorithms
Proceedings of the 16th European conference on Programming
ESOP'07 Proceedings of the 16th European conference on Programming
Static analysis by policy iteration on relational domains
ESOP'07 Proceedings of the 16th European conference on Programming
Proceedings of the 16th European conference on Programming
ESOP'07 Proceedings of the 16th European conference on Programming
Precise fixpoint computation through strategy iteration
ESOP'07 Proceedings of the 16th European conference on Programming
Computing relaxed abstract semantics w.r.t. quadratic zones precisely
SAS'10 Proceedings of the 17th international conference on Static analysis
Combining widening and acceleration in linear relation analysis
SAS'06 Proceedings of the 13th international conference on Static Analysis
VMCAI'05 Proceedings of the 6th 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
A fast linear-arithmetic solver for DPLL(T)
CAV'06 Proceedings of the 18th international conference on Computer Aided Verification
CAV'06 Proceedings of the 18th international conference on Computer Aided Verification
A policy iteration algorithm for computing fixed points in static analysis of programs
CAV'05 Proceedings of the 17th international conference on Computer Aided Verification
ESOP'10 Proceedings of the 19th European conference on Programming Languages and Systems
Accelerated data-flow analysis
SAS'07 Proceedings of the 14th international conference on Static Analysis
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
Using bounded model checking to focus fixpoint iterations
SAS'11 Proceedings of the 18th international conference on Static analysis
Modular abstractions of reactive nodes using disjunctive invariants
APLAS'11 Proceedings of the 9th Asian conference on Programming Languages and Systems
Template-Based unbounded time verification of affine hybrid automata
APLAS'11 Proceedings of the 9th Asian conference on Programming Languages and Systems
SAS'12 Proceedings of the 19th international conference on Static Analysis
Hi-index | 0.00 |
We consider the problem of computing numerical invariants of programs by abstract interpretation. Our method eschews two traditional sources of imprecision: (i) the use of widening operators for enforcing convergence within a finite number of iterations (ii) the use of merge operations (often, convex hulls) at the merge points of the control flow graph. It instead computes the least inductive invariant expressible in the domain at a restricted set of program points, and analyzes the rest of the code en bloc. We emphasize that we compute this inductive invariant precisely. For that we extend the strategy improvement algorithm of Gawlitza and Seidl [17]. If we applied their method directly, we would have to solve an exponentially sized system of abstract semantic equations, resulting in memory exhaustion. Instead, we keep the system implicit and discover strategy improvements using SAT modulo real linear arithmetic (SMT). For evaluating strategies we use linear programming. Our algorithm has low polynomial space complexity and performs for contrived examples in the worst case exponentially many strategy improvement steps; this is unsurprising, since we show that the associated abstract reachability problem is II2p-complete.