Automatically reasoning about metamodeling

Metamodeling is foundational to many modeling frameworks, and so it is important to formalize and reason about it. Ideally, correctness proofs and test-case generation on the metamodeling framework should be automatic. However, it has yet to be shown that extensive automated reasoning on metamodeling frameworks can be achieved. In this paper, we present one approach to this problem: metamodeling frameworks are specified modularly using algebraic data types and constraint logic programming (CLP). Proofs and test-case generation are encoded as open world query operations and automatically solved.

[1]  Jordi Cabot,et al.  On verifying ATL transformations using 'off-the-shelf' SMT solvers , 2012, MODELS'12.

[2]  Yuri Gurevich,et al.  DKAL: Distributed-Knowledge Authorization Language , 2008, 2008 21st IEEE Computer Security Foundations Symposium.

[3]  Ivan Porres,et al.  A metamodeling language supporting subset and union properties , 2007, Software & Systems Modeling.

[4]  Jean Bézivin,et al.  KM3: A DSL for Metamodel Specification , 2006, FMOODS.

[5]  Martin Gogolla,et al.  Verification of ATL Transformations Using Transformation Models and Model Finders , 2012, ICFEM.

[6]  Michael Kifer,et al.  Logic-based model-level software development with F-OML , 2011, MODELS'11.

[7]  Ethan K. Jackson,et al.  Components, platforms and possibilities: towards generic automation for MDA , 2010, EMSOFT '10.

[8]  Mary Sheeran,et al.  Checking Safety Properties Using Induction and a SAT-Solver , 2000, FMCAD.

[9]  Michael J. Maher,et al.  The Semantics of Constraint Logic Programs , 1998, J. Log. Program..

[10]  Georg Gottlob,et al.  Complexity and expressive power of logic programming , 1997, Proceedings of Computational Complexity. Twelfth Annual IEEE Conference.

[11]  Juan de Lara,et al.  Verification and validation of declarative model-to-model transformations through invariants , 2010, J. Syst. Softw..

[12]  Nikolaj Bjørner,et al.  Beyond First-Order Satisfaction: Fixed Points, Interpolants, Automata and Polynomials , 2012, SPIN.

[13]  Janos Sztipanovits,et al.  Constructive techniques for meta- and model-level reasoning , 2007, MODELS'07.

[14]  Narciso Martí-Oliet,et al.  Maude: specification and programming in rewriting logic , 2002, Theor. Comput. Sci..

[15]  Nikolaj Bjørner,et al.  Canonical Regular Types , 2011, ICLP.

[16]  Gabriele Taentzer,et al.  Generating Instance Models from Meta Models , 2006, FMOODS.

[17]  Artur Boronat,et al.  An Algebraic Semantics for MOF , 2008, FASE.

[18]  Krzysztof Czarnecki,et al.  SAT-based analysis of feature models is easy , 2009, SPLC.

[19]  Daniel Balasubramanian,et al.  Reasoning about metamodeling with formal specifications and automatic proofs , 2011, MODELS'11.

[20]  Joseph M. Hellerstein,et al.  Boom analytics: exploring data-centric, declarative programming for the cloud , 2010, EuroSys '10.

[21]  Colin Atkinson,et al.  The Essence of Multilevel Metamodeling , 2001, UML.

[22]  Nikolaj Bjørner,et al.  Z3: An Efficient SMT Solver , 2008, TACAS.

[23]  Nikolaj Bjørner,et al.  Generalized Property Directed Reachability , 2012, SAT.

[24]  Emina Torlak,et al.  Kodkod: A Relational Model Finder , 2007, TACAS.

[25]  Indrakshi Ray,et al.  UML2Alloy: a challenging model transformation , 2007, MODELS'07.

[26]  Martin Gogolla,et al.  Strengthening SAT-Based Validation of UML/OCL Models by Representing Collections as Relations , 2012, ECMFA.

[27]  Dániel Varró,et al.  VPM: A visual, precise and multilevel metamodeling framework for describing mathematical domains and UML (The Mathematics of Metamodeling is Metamodeling Mathematics) , 2003, Software & Systems Modeling.

[28]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Graph Transformation (Monographs in Theoretical Computer Science. An EATCS Series) , 1992 .

[29]  Bernhard Rumpe,et al.  System Model-Based Definition of Modeling Language Semantics , 2009, FMOODS/FORTE.

[30]  Andy Evans,et al.  The Metamodelling Language Calculus: Foundation Semantics for UML , 2001, FASE.

[31]  Vladimir Lifschitz,et al.  Twelve Definitions of a Stable Model , 2008, ICLP.

[32]  Dániel Varró,et al.  Automated formal verification of visual modeling languages by model checking , 2004, Software & Systems Modeling.

[33]  Martin Gogolla,et al.  From UML and OCL to relational logic and back , 2012, MODELS'12.