Improving strategies via SMT solving
From MaRDI portal
Publication:3000582
Abstract: 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, 2007]. 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 Pi-p-2-complete.
Recommendations
Cites work
- scientific article; zbMATH DE number 1670778 (Why is no real title available?)
- scientific article; zbMATH DE number 3148886 (Why is no real title available?)
- scientific article; zbMATH DE number 4089320 (Why is no real title available?)
- scientific article; zbMATH DE number 19091 (Why is no real title available?)
- scientific article; zbMATH DE number 3610766 (Why is no real title available?)
- scientific article; zbMATH DE number 700091 (Why is no real title available?)
- scientific article; zbMATH DE number 1953274 (Why is no real title available?)
- scientific article; zbMATH DE number 1738295 (Why is no real title available?)
- A Quantifier Elimination Algorithm for Linear Real Arithmetic
- A constructive fixed point theorem for min-max functions
- Accelerated Data-Flow Analysis
- Automatic modular abstractions for linear constraints
- Classes of Recursively Enumerable Sets and Their Decision Problems
- Combining Widening and Acceleration in Linear Relation Analysis
- Complete sets and the polynomial-time hierarchy
- Computer Aided Verification
- Computer Aided Verification
- Computer aided verification. 18th international conference, CAV 2006, Seattle, WA, USA, August 17--20, 2006. Proceedings.
- Computing relaxed abstract semantics w.r.t. quadratic zones precisely
- Computing the smallest fixed point of order-preserving nonexpansive mappings arising in positive stochastic games and static analysis of programs
- Coupling policy iteration with semi-definite relaxation to compute accurate numerical invariants in static analysis
- Games through Nested Fixpoints
- Grammar Analysis and Parsing by Abstract Interpretation
- On Nonterminating Stochastic Games
- Perspectives of System Informatics
- Polynomial Precise Interval Analysis Revisited
- Precise Fixpoint Computation Through Strategy Iteration
- Precise Relational Invariants Through Strategy Iteration
- Static Analysis
- Static Analysis by Policy Iteration on Relational Domains
- Static analysis by abstract interpretation: a mathematical programming approach
- The octagon abstract domain
- The polynomial-time hierarchy
- Verification, Model Checking, and Abstract Interpretation
- Verification, Model Checking, and Abstract Interpretation
Cited in
(7)- Logico-numerical max-strategy iteration
- Block-wise abstract interpretation by combining abstract domains with SMT
- Template-based unbounded time verification of affine hybrid automata
- Abstract interpretation meets convex optimization
- Invariant generation through strategy iteration in succinctly represented control flow graphs
- Validating numerical semidefinite programming solvers for polynomial invariants
- Precise Relational Invariants Through Strategy Iteration
This page was built for publication: Improving strategies via SMT solving
Report a bug (only for logged in users!)Click here to report a bug for this page (MaRDI item Q3000582)