Snapshot Generation in a Constructive Object-Oriented Modeling Language

  • Authors:
  • Mauro Ferrari;Camillo Fiorentini;Alberto Momigliano;Mario Ornaghi

  • Affiliations:
  • Dipartimento di Informatica e Comunicazione, Università degli Studi dell'Insubria, Italy;Dipartimento di Scienze dell'Informazione, Università degli Studi di Milano, Italy;Dipartimento di Scienze dell'Informazione, Università degli Studi di Milano, Italy;Dipartimento di Scienze dell'Informazione, Università degli Studi di Milano, Italy

  • Venue:
  • Logic-Based Program Synthesis and Transformation
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

CooML is an object-oriented modeling language where specifications are theories in a constructive logic designed to handle incomplete information. In this logic we view snapshots as a formal counterpart of object populations, which are associated with specifications via the constructive interpretation of logical connectives. In this paper, we introduce the "snapshot semantics" of CooML and we describe a snapshot generation (SG) algorithm, which can be applied to validate specifications in the spirit of OCL-like constraints over UML models. Differently from the latter and from the standard BHK semantics, the logic allows us to exploit a notion of partial validation that is appropriate to encodings characterised by incomplete information. SG is akin to model generation in answer set programming. We show that the algorithm is sound and complete so that its successful termination implies consistency of the system.