Boolean Compilation of Relational Specifications

  • Authors:
  • D. Jackson

  • Affiliations:
  • -

  • Venue:
  • Boolean Compilation of Relational Specifications
  • Year:
  • 1998

Quantified Score

Hi-index 0.00

Visualization

Abstract

A new method for analyzing relational specifications is described. A property to be checked is cast as a relational formula, which, if the property holds, has no finite models. The relational formula is translated into a boolean formula that has a model for every model of the relational formula within some finite scope. Errors in specifications can usually be demon-strated with small counterexamples, so a small scope often suffices. The boolean formula is solved by an off-the-shelf satisfier. The satisfier requires that the boolean formula be in conjunctive normal form (CNF). A naive translation to CNF fails (by exhausting memory) for realistic specifications. This paper presents a preliminary design of a compiler that overcomes this problem, by exploiting typical features of the relational formulae that arise in practice. Initial experiments suggest that this method scales more readily than existing approaches and will be able to find more errors, in larger specifications.