Detecting Isomorphisms of Modular Specifications with Diagrams

We propose to detect isomorphisms of algebraic modular specifications, by representing specifications as diagrams over a category Co of base specifications and specification morphisms. We start with a formulation of modular specifications as terms, which are interpreted as diagrams. This representation has the advantage of being more abstract, i.e. less dependent of one specific construction than terms. For that, we define a category diagr (Co) of diagrams, which is a completion of Co with finite colimits. The category diagr (Co) is finitely cocomplete, even if C o is not finitely cocomplete. We define a functor : Term (Co) → diagr (Co) which maps specifications to diagrams, and specification morphisms to diagram morphisms. This interpretation is sound in that the colimit of a diagram representing a specification is isomorphic to this specification. The problem of isomorphisms of modular specifications is solved by detecting isomorphisms of diagrams.