Article ID | Journal | Published Year | Pages | File Type |
---|---|---|---|---|
433214 | Science of Computer Programming | 2015 | 17 Pages |
•We propose a new graph transformation approach to inheritance and abstraction.•Inheritance is modelled by a type graph that comes equipped with a partial order.•Morphisms between typed graphs are “down typing” graph morphisms.•Abstraction is modelled by a subset of vertices of the type graph.•We prove that this structure is an adhesive HLR category.
In this paper, we propose a new approach to inheritance and abstraction in the context of algebraic graph transformation by providing a suitable categorial framework which reflects the semantics of class-based inheritance in software engineering. Inheritance is modelled by a type graph T that comes equipped with a partial order. Typed graphs are arrows with codomain T which preserve graph structures up to inheritance. Morphisms between typed graphs are “down typing” graph morphisms: An object of class t can be mapped to an object of a subclass of t. Abstract classes are modelled by a subset of vertices of the type graph. We prove that this structure is an adhesive HLR category, i.e. pushouts along extremal monomorphisms are “well-behaved”. This infers validity of classical results such as the Local Church–Rosser Theorem, the Parallelism Theorem, and the Concurrency Theorem.