Automating Algebraic Specifications of Non-freely Generated Data Types

  • Authors:
  • Andriy Dunets;Gerhard Schellhorn;Wolfgang Reif

  • Affiliations:
  • Lehrstuhl für Softwaretechnik und Programmiersprachen Institut für Informatik, Universität Augsburg, Augsburg, Germany 86135;Lehrstuhl für Softwaretechnik und Programmiersprachen Institut für Informatik, Universität Augsburg, Augsburg, Germany 86135;Lehrstuhl für Softwaretechnik und Programmiersprachen Institut für Informatik, Universität Augsburg, Augsburg, Germany 86135

  • Venue:
  • ATVA '08 Proceedings of the 6th International Symposium on Automated Technology for Verification and Analysis
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Non-freely generated data types are widely used in case studies carried out in the theorem prover KIV. The most common examples are stores, sets and arrays. We present an automatic method that generates finite counterexamples for wrong conjectures and therewith offers a valuable support for proof engineers saving their time otherwise spent on unsuccessful proof attempts. The approach is based on the finite model finding and uses Alloy Analyzer [1] to generate finite instances of theories in KIV [6]. Most definitions of functions or predicates on infinite structures do not preserve the semantics if a transition to arbitrary finite substructures is made. We propose the constraints which should be satisfied by the finite substructures, identify a class of amenable definitions and present a practical realization using Alloy. The technique is evaluated on the library of basic data types as well as on some examples from case studies in KIV.