## Interprocedurally analyzing polynomial identities (2006)

### Cached

### Download Links

- [cs.uni-muenster.de]
- [cs.uni-muenster.de]
- DBLP

### Other Repositories/Bibliography

Venue: | IN PROC. OF STACS 2006 |

Citations: | 9 - 1 self |

### BibTeX

@INPROCEEDINGS{Müller-Olm06interprocedurallyanalyzing,

author = {Markus Müller-Olm and Michael Petter and Helmut Seidl},

title = {Interprocedurally analyzing polynomial identities},

booktitle = {IN PROC. OF STACS 2006},

year = {2006},

pages = {50--67},

publisher = {Springer}

}

### OpenURL

### Abstract

Since programming languages are Turing complete, it is impossible to decide for all programs whether a given non-trivial semantic property is valid or not. The way-out chosen by abstract interpretation is to provide approximate methods which may fail to certify a program property on some programs. Precision of the analysis can be measured by providing classes of programs for which the analysis is complete, i.e., decides the property in question. Here, we consider analyses of polynomial identities between integer variables such as x1 · x2 − 2x3 = 0. We describe current approaches and clarify their completeness properties. We also present an extension of our approach based on weakest precondition computations to programs with procedures and equality guards.

### Citations

284 |
Data Flow Analysis of Computer Programs
- HECHT
(Show Context)
Citation Context ...e ring of all polynomials with coefficients from Q and variables from X. Note that this restriction does not come by 9s4 Markus Müller-Olm, Michael Petter, and Helmut Seidl accident. It is well-known =-=[9, 19]-=- that it is undecidable for non-deterministic flow graphs to determine whether a given variable holds a constant value at a given program point in all executions if the full standard signature of arit... |

162 |
Affine relationships among variables of a proram
- Karr
- 1976
(Show Context)
Citation Context ...ams will be called polynomial in the sequel. Much research has been devoted to polynomial programs without procedure calls, i.e., intraprocedural analyses. Karr was the first who studied this problem =-=[11]-=-. He considers polynomials of degree at most 1 (affine expressions) both in assignments and in assertions and presents an algorithm which, in absence of guards, determines all valid affine identities.... |

144 | Gröbner bases
- Becker, Weispfenning
- 1993
(Show Context)
Citation Context ...} for suitable p1, . . . , pm ∈ Q[X]. The set {p1, . . . , pm} is also said to generate the ideal I. Based on such representations, algorithms have been developed for fundamental operations on ideals =-=[1]-=-. In particular, membership is decidable for ideals as well as containment and equality. Moreover, the set of all ideals I ⊆ Q[X] forms a complete lattice w.r.t. set inclusion “⊆” where the least and ... |

126 | Global data flow analysis and iterative algorithms
- Kam, Ullman
- 1976
(Show Context)
Citation Context ...e of ideals of Q[X]. By definition, the operations commute with arbitrary intersections. Therefore, using standard coincidence theorems for completely distributive intraprocedural dataflow frameworks =-=[10]-=-, we conclude:sInterprocedurally Analyzing Polynomial Identities 7 Theorem 1. Assume p is a program without procedures. The greatest solution of the constraint system F for p precisely characterizes a... |

94 |
Static determination of dynamic properties of recursive procedures
- Cousot, Cousot
- 1977
(Show Context)
Citation Context ...ore general classes of programs. Based on constraint system F, we nonetheless obtain an effective analysis which infers some valid polynomial identities by applying widening for fixpoint acceleration =-=[6]-=-. This idea has been proposed, e.g., by Rodriguez-Carbonell and Kapur [20] and Colon [4]. We will not pursue this idea here. Instead, we propose a different approach. 4 Intraprocedural Analysis: Backw... |

90 | Powerful techniques for the automatic generation of invariants
- Bensalem, Lakhnech, et al.
- 1996
(Show Context)
Citation Context ...e assertions are the key to deductive verification of programs. Correspondingly, techniques for automatically checking and finding invariants and intermediate assertions have been studied (cf., e.g., =-=[3, 2, 22]-=-). In this paper we present analyses that check and find valid polynomial identities in programs. A polynomial identity is a formula p(x1, . . . , xk) = 0 where p(x1, . . . , xk) is a multi-variate po... |

65 | Proving program invariance and termination by parametric abstraction, lagrangian relaxation and semide programming
- Cousot
(Show Context)
Citation Context ...: (p = 0) ⇒ (q = 0) which, for every λ, is implied by: q + λ · p = 0 The value λ is called a Lagrange-multiplier and can be arbitrarily chosen. We remark that a related technique has been proposed in =-=[5]-=- for inferring parametric program invariants. Thus, we define: [p = 0] T (q) = 〈q + p · λ〉 (2) where a different formal multiplier λ is chosen for every occurrence of an equality guard. Similar to the... |

61 | Precise interprocedural analysis through linear algebra
- Müller-Olm, Seidl
- 2004
(Show Context)
Citation Context ...if in the polynomials occurring during the analysis at procedure exits the degrees of the variables are bounded. Note that this approach can be considered as a smooth generalization of the methods in =-=[15]-=- for affine programs where all occurring polynomials are known to have bounded degree. It still remains open whether precise techniques can be found for lifting the degree bound in the general intrapr... |

55 | Analysis of modular arithmetic
- Müller-Olm, Seidl
- 2007
(Show Context)
Citation Context ...ection 7 then indicates how equality guards can be added to the analyses. Finally, Section 8 summarizes and gives further directions of research. 2 The General Set-up We use similar conventions as in =-=[15, 17, 16]-=- which we recall here in order to be selfcontained. Thus, programs are modeled by systems of non-deterministic flow graphs that can recursively call each other as in Fig. 1. Let X = {x1, . . . , xk} b... |

49 | Automatic generation of invariants and intermediate assertions
- Bjørner, Browne, et al.
- 1997
(Show Context)
Citation Context ...e assertions are the key to deductive verification of programs. Correspondingly, techniques for automatically checking and finding invariants and intermediate assertions have been studied (cf., e.g., =-=[3, 2, 22]-=-). In this paper we present analyses that check and find valid polynomial identities in programs. A polynomial identity is a formula p(x1, . . . , xk) = 0 where p(x1, . . . , xk) is a multi-variate po... |

42 | Non-linear loop invariant generation using Grobner bases
- Sankaranarayanan, Sipma, et al.
(Show Context)
Citation Context ...e assertions are the key to deductive verification of programs. Correspondingly, techniques for automatically checking and finding invariants and intermediate assertions have been studied (cf., e.g., =-=[3, 2, 22]-=-). In this paper we present analyses that check and find valid polynomial identities in programs. A polynomial identity is a formula p(x1, . . . , xk) = 0 where p(x1, . . . , xk) is a multi-variate po... |

38 |
Symbolic evaluation and the global value graph
- Reif, Lewis
- 1977
(Show Context)
Citation Context ...e ring of all polynomials with coefficients from Q and variables from X. Note that this restriction does not come by 9s4 Markus Müller-Olm, Michael Petter, and Helmut Seidl accident. It is well-known =-=[9, 19]-=- that it is undecidable for non-deterministic flow graphs to determine whether a given variable holds a constant value at a given program point in all executions if the full standard signature of arit... |

34 | Discovering affine equalities using random interpretation
- Gulwani, Necula
- 2003
(Show Context)
Citation Context ...ne identities. This algorithm has been improved by the authors and extended to deal with polynomial identities up to a fixed degree [13]. Gulwani and Necula also re-considered Karr’s analysis problem =-=[7]-=- recently. They use randomization in order to improve the complexity of the analysis at the price of a small probability of finding invalid identities. The first attempt to generalize Karr’s method to... |

29 | Automatic generation of polynomial loop invariants: Algebraic foundations
- Rodriguez-Carbonell, Kapur
- 2004
(Show Context)
Citation Context ...with this approach is that descending chains of polynomial ideals may be infinite implying that no effective algorithm can be derived from this characterization. Therefore, they provide special cases =-=[21]-=- or approximations that allow to infer some valid identities. Opposed to that, our approach is based on effective weakest precondition computations [12, 14]. We consider assertions to be checked for v... |

23 | Polynomial Constants are Decidable
- Müller-Olm, Seidl
- 2002
(Show Context)
Citation Context ...ept for guards of the form p �= 0 for polynomials p, conditional choice is generally approximated by non-deterministic choice. These assumptions are crucial for the design of effective exact analyses =-=[12, 13]-=-. Such programs will be called polynomial in the sequel. Much research has been devoted to polynomial programs without procedure calls, i.e., intraprocedural analyses. Karr was the first who studied t... |

22 | A note on Karr's algorithm
- Muller-Olm, Seidl
(Show Context)
Citation Context ...ept for guards of the form p �= 0 for polynomials p, conditional choice is generally approximated by non-deterministic choice. These assumptions are crucial for the design of effective exact analyses =-=[12, 13]-=-. Such programs will be called polynomial in the sequel. Much research has been devoted to polynomial programs without procedure calls, i.e., intraprocedural analyses. Karr was the first who studied t... |

16 | An abstract interpretation approach for automatic generation of polynomial invariants
- Rodrguez-Carbonell, Kapur
(Show Context)
Citation Context ...olynomial programs. Later, Rodriguez-Carbonell et al. propose an analysis based on the observation that the set of identities which are valid at a program point can be described by a polynomial ideal =-=[20]-=-. Their analysis is based on a constraint system over polynomial ideals whose greatest solution precisely characterizes the set of all valid identities. The problem, however, with this approach is tha... |

15 | Precise interprocedural analysis using random interpretation
- Gulwani, Necula
- 2005
(Show Context)
Citation Context ...alizes to inferring also all polynomial identities up to a fixed degree in these programs. A generalization of the intraprocedural randomized algorithm to programs with procedures is possible as well =-=[8]-=-. A first attempt to infer polynomial identities in presence of polynomial assignments and procedure calls is provided by Colon [4]. His approach is based on ideals of polynomial transition invariants... |

8 |
Approximating the algebraic relational semantics of imperative programs
- Colon
(Show Context)
Citation Context ...randomized algorithm to programs with procedures is possible as well [8]. A first attempt to infer polynomial identities in presence of polynomial assignments and procedure calls is provided by Colon =-=[4]-=-. His approach is based on ideals of polynomial transition invariants. We illustrate, though, the pitfalls of this approach and instead show how the idea of precondition computations can be extended t... |

6 | A generic framework for interprocedural analysis of numerical properties
- Müller-Olm, Seidl
(Show Context)
Citation Context ...ection 7 then indicates how equality guards can be added to the analyses. Finally, Section 8 summarizes and gives further directions of research. 2 The General Set-up We use similar conventions as in =-=[15, 17, 16]-=- which we recall here in order to be selfcontained. Thus, programs are modeled by systems of non-deterministic flow graphs that can recursively call each other as in Fig. 1. Let X = {x1, . . . , xk} b... |

6 |
Berechnung von polynomiellen invarianten (German
- Petter
- 2004
(Show Context)
Citation Context ...f vectors of polynomials whose entries are indexed with σ ∈ D. The operations on modules turn out to be practically much faster than corresponding operations on the larger polynomial ring itself, see =-=[18]-=- for a practical implementation and preliminary experimental results. 5 Interprocedural Analysis: Transition Invariants The main question of precise interprocedural analysis is this: how can the effec... |