A Calculus for (Meta)Models and Transformations
Laurent Thiry, Michel Hassenforder · International Journal of Software Engineering and Knowledge Engineering · 2014
This paper proposes a formal representation of modeling languages based on category theory. These languages are generally described by "metamodels", i.e. structures composed by classes and relations, and related by "transformations". Thus, this paper studies how the key categorical concepts such as functors and relations between functors (called natural transformations) can be used for equational reasoning about modeling artifacts (models, metamodels, transformations). As a result, this paper proposes a formal point of view of models usable to specify/prove equivalence between models or transformations (with an application to refactoring).