Constructive techniques for meta- and model-level reasoning

  • Authors:
  • Ethan K. Jackson;Janos Sztipanovits

  • Affiliations:
  • Institute for Software Integrated Systems, Vanderbilt University, Nashville, TN;Institute for Software Integrated Systems, Vanderbilt University, Nashville, TN

  • Venue:
  • MODELS'07 Proceedings of the 10th international conference on Model Driven Engineering Languages and Systems
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

The structural semantics of UML-based metamodeling were recently explored[1], providing a characterization of the models adhering to a metamodel. In particular, metamodels can be converted to a set of constraints expressed in a decidable subset of first-order logic, an extended Horn logic. We augment the constructive techniques found in logic programming, which are also based on an extended Horn logic, to produce constructive techniques for reasoning about models and meta-models. These methods have a number of practical applications: At the meta-level, it can be decided if a (composite) metamodel characterizes a non-empty set of models, and a member can be automatically constructed. At the model-level, it can be decided if a submodel has an embedding in a well-formed model, and the larger model can be constructed. This amounts to automatic model construction from an incomplete model. We describe the concrete algorithms for constructively solving these problems, and provide concrete examples.