Program verification using automatic generation of invariants

  • Authors:
  • Enric Rodríguez-Carbonell;Deepak Kapur

  • Affiliations:
  • LSI Department, Technical University of Catalonia, Barcelona, Spain;Department of Computer Science, University of New Mexico, Albuquerque, NM

  • Venue:
  • ICTAC'04 Proceedings of the First international conference on Theoretical Aspects of Computing
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

In an earlier paper, an algorithm based on algebraic geometry was developed for discovering polynomial invariants in loops without nesting, not requiring any a priori bound on the degree of the invariants. Polynomial invariants were shown to form an ideal, a basis of which could be computed using Gröbner bases methods. In this paper, an abstract logical framework is presented for automating the discovery of invariants for loops without nesting, of which the algorithm based on algebraic geometry and Gröbner bases is one particular instance. The approach based on this logical abstract framework is proved to be correct and complete. The techniques have been used with a verifier to automatically check properties of many non-trivial programs with considerable success. Some of these programs are discussed in the paper to illustrate the effectiveness of the method.