An Abstract Interpretation Approach for Automatic Generation of Polynomial Invariants

  • Enric Rodríguez-Carbonell
  • Deepak Kapur
Conference paper

DOI: 10.1007/978-3-540-27864-1_21

Part of the Lecture Notes in Computer Science book series (LNCS, volume 3148)
Cite this paper as:
Rodríguez-Carbonell E., Kapur D. (2004) An Abstract Interpretation Approach for Automatic Generation of Polynomial Invariants. In: Giacobazzi R. (eds) Static Analysis. SAS 2004. Lecture Notes in Computer Science, vol 3148. Springer, Berlin, Heidelberg

Abstract

A method for generating polynomial invariants of imperative programs is presented using the abstract interpretation framework. It is shown that for programs with polynomial assignments, an invariant consisting of a conjunction of polynomial equalities can be automatically generated for each program point. The proposed approach takes into account tests in conditional statements as well as in loops, insofar as they can be abstracted to be polynomial equalities and disequalities. The semantics of each statement is given as a transformation on polynomial ideals. Merging of paths in a program is defined as the intersection of the polynomial ideals associated with each path. For a loop junction, a widening operator based on selecting polynomials up to a certain degree is proposed. The algorithm for finding invariants using this widening operator is shown to terminate in finitely many steps. The proposed approach has been implemented and successfully tried on many programs. A table providing details about the programs is given.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Enric Rodríguez-Carbonell
    • 1
  • Deepak Kapur
    • 2
  1. 1.Technical University of CataloniaBarcelona
  2. 2.University of New MexicoAlbuquerque

Personalised recommendations