20 research outputs found

    What Algebraic Graph Transformations Can Do For Model Transformations

    Get PDF
    Model transformations are key activities in model-driven development (MDD). A number of model transformation approaches have emerged for different purposes and with different backgrounds. This paper focusses on the use of algebraic graph transformation concepts to specify and verify model transformations in MDD

    Using Graph Transformations and Graph Abstractions for Software Verification

    Get PDF
    In this paper we describe our intended approach for the verification of software written in imperative programming languages. We base our approach on model checking of graph transition systems, where each state is a graph and the transitions are specified by graph transformation rules. We believe that graph transformation is a very suitable technique to model the execution semantics of languages with dynamic memory allocation. Furthermore, such representation allows us to investigate the use of graph abstractions, which can mitigate the combinatorial explosion inherent to model checking. In addition to presenting our planned approach, we reason about its feasibility, and, by providing a brief comparison to other existing methods, we highlight the benefits and drawbacks that are expected

    Using Graph Transformations and Graph Abstractions for Software Verification

    Get PDF
    In this paper we describe our intended approach for the verification of software written in imperative programming languages. We base our approach on model checking of graph transition systems, where each state is a graph and the transitions are specified by graph transformation rules. We believe that graph transformation is a very suitable technique to model the execution semantics of languages with dynamic memory allocation. Furthermore, such representation allows us to investigate the use of graph abstractions, which can mitigate the combinatorial explosion inherent to model checking. In addition to presenting our planned approach, we reason about its feasibility, and, by providing a brief comparison to other existing methods, we highlight the benefits and drawbacks that are expected

    Pattern graph rewrite systems

    Full text link
    String diagrams are a powerful tool for reasoning about physical processes, logic circuits, tensor networks, and many other compositional structures. Dixon, Duncan and Kissinger introduced string graphs, which are a combinatoric representations of string diagrams, amenable to automated reasoning about diagrammatic theories via graph rewrite systems. In this extended abstract, we show how the power of such rewrite systems can be greatly extended by introducing pattern graphs, which provide a means of expressing infinite families of rewrite rules where certain marked subgraphs, called !-boxes ("bang boxes"), on both sides of a rule can be copied any number of times or removed. After reviewing the string graph formalism, we show how string graphs can be extended to pattern graphs and how pattern graphs and pattern rewrite rules can be instantiated to concrete string graphs and rewrite rules. We then provide examples demonstrating the expressive power of pattern graphs and how they can be applied to study interacting algebraic structures that are central to categorical quantum mechanics.Comment: In Proceedings DCM 2012, arXiv:1403.757

    Model view management with triple graph transformation systems

    Full text link
    The final publication is available at Springer via http://dx.doi.org/10.1007/11841883_25Proceedings of Third International Conference, ICGT 2006 Natal, Rio Grande do Norte, Brazil, September 17-23, 2006In this paper, we present our approach for model view management in the context of Multi-View Visual Languages (MVVLs). These are made of a number of diagram types (or viewpoints) that can be used for the specification of the different aspects of a system. Therefore, the user can build different system views conform to the viewpoints, which are merged in a repository in order to perform consistency checking. In addition, the user can define derived views by means of graph query patterns in order to extract information from a base model (a system view or the repository). We have provided automatic mechanisms to keep synchronized the base model and the derived view when the former changes. Predefined queries by the MVVL designer result in so-called audience-oriented views. Finally, semantic views are used for analysing the system by its translation into a semantic domain. Our approach is based on meta-modelling to describe the syntax of the MVVL and each viewpoint, and on triple graph transformation systems to synchronize and maintain correspondences between the system views and the repository, as well as between the derived, audience-oriented and semantic views and the base models. We illustrate these concepts by means of an example in the domain of security for web systems.This work has been sponsored by the Spanish Ministry of Science and Education, projects TSI2005-08225-C07-06 and TSI2004-03394

    Structural Decomposition of Reactions of Graph-Like Objects

    Get PDF
    Inspired by decomposition problems in rule-based formalisms in Computational Systems Biology and recent work on compositionality in graph transformation, this paper proposes to use arbitrary colimits to "deconstruct" models of reactions in which states are represented as objects of adhesive categories. The fundamental problem is the decomposition of complex reactions of large states into simpler reactions of smaller states. The paper defines the local decomposition problem for transformations. To solve this problem means to "reconstruct" a given transformation as the colimit of "smaller" ones where the shape of the colimit and the decomposition of the source object of the transformation are fixed in advance. The first result is the soundness of colimit decomposition for arbitrary double pushout transformations in any category, which roughly means that several "local" transformations can be combined into a single "global" one. Moreover, a solution for a certain class of local decomposition problems is given, which generalizes and clarifies recent work on compositionality in graph transformation. Introduction Compositional methods for the synthesis and analysis of computational systems remain a fruitful research topic with potential applications in practice. Though compositionality is most clearly exhibited in semantics for process calculi where structural operational semantics (SOS) can be found in its "pure" form, a slightly broader perspective is appropriate to make use of the fundamental ideas of SOS in interdisciplinary research. The first source of inspiration of the present paper is the Îș-calculus [6], which is an influential modelling framework in Computational Systems Biology. The Îș-calculus allows to give abstract, formal descriptions of biological systems that can be used to explain the reaction (rate) of complex systems, so-called complexes, in terms of the reaction (rate) of each of its subsystems, which are called partial complexes. Leaving quantitative aspects as a topic for future research, we concentrate on a specific sub-problem, namely the "purely structural" decomposition of reactions. In the Îș-calculus, system states are composed of partial complexes and they have an intuitive, graphical representation. Hence, it is natural to investigate the decomposition of (reactions of) system states using concepts from graph transformation. In its simplest form, the idea of composition of graph transformations is by means of coproducts. Intuitively, the coproduct of two graphs models the assembly of two states put side by side and the two (sub-)states react independently of each other. A well-known, related theorem about graph transformations is the so-called Parallelism Theorem (see e.g. [5, Theorem 17]). A more general formalism of compositionality that is based on pushouts has been (re-)considered in In this paper, we shall remove the restriction to pushouts as a composition mechanism and generalize the results of [18] from pushouts to (pullback stable) colimits of arbitrary shape. This considerably enlarges the set of available gluing patterns. As a simple example, we can now equip each sub-state with several interfaces; this would be appropriate for the model of a cell in an organism that is in direct contact with each of its neighbouring cells with some part of its membrane; each area of contact would be modelled by a different interface. Content of the paper After reviewing some basic category theoretical concepts and the definition of adhesive categories in Section 1, we begin Section 2 with the "deconstruction" of models of system states; more precisely, we explain in Section 2.1 how suitably finite objects in adhesive categories arise as the colimit of a diagram of "atomic" objects, namely irreducible objects in the sense of The main problem, which is concerned with the decomposition of a "global" transformation into a family of "local" ones, is addressed in Section 3. We give a formal description of local decomposition problems, which consist of a given decomposition of a state (as a colimit of a certain shape) and a rule that describes a possible reaction of the state; to solve such a problem means to extend the decomposition of the state to a decomposition of the whole reaction (using colimits of the same shape). Section 3.1 presents a "global" solution, which first constructs the whole transformation "globally"; a "more local" solution of the problem is possible if we are given extra information that involve a generalization of the accommodations o

    Formal Foundations for Information-Preserving Model Synchronization Processes Based on Triple Graph Grammars

    Get PDF
    Zwischen verschiedenen Artefakten, die Informationen teilen, wieder Konsistenz herzustellen, nachdem eines von ihnen geĂ€ndert wurde, ist ein wichtiges Problem, das in verschiedenen Bereichen der Informatik auftaucht. Mit dieser Dissertation legen wir eine Lösung fĂŒr das grundlegende Modellsynchronisationsproblem vor. Bei diesem Problem ist ein Paar solcher Artefakte (Modelle) gegeben, von denen eines geĂ€ndert wurde; Aufgabe ist die Wiederherstellung der Konsistenz. Tripelgraphgrammatiken (TGGs) sind ein etablierter und geeigneter Formalismus, um dieses und verwandte Probleme anzugehen. Da sie auf der algebraischen Theorie der Graphtransformation und dem (Double-)Pushout Zugang zu Ersetzungssystemen basieren, sind sie besonders geeignet, um Lösungen zu entwickeln, deren Eigenschaften formal bewiesen werden können. Doch obwohl TGG-basierte AnsĂ€tze etabliert sind, leiden viele von ihnen unter dem Problem des Informationsverlustes. Wenn ein Modell geĂ€ndert wurde, können wĂ€hrend eines Synchronisationsprozesses Informationen verloren gehen, die nur im zweiten Modell vorliegen. Das liegt daran, dass solche Synchronisationsprozesse darauf zurĂŒckfallen Konsistenz dadurch wiederherzustellen, dass sie das geĂ€nderte Modell (bzw. große Teile von ihm) neu ĂŒbersetzen. Wir schlagen einen TGG-basierten Ansatz vor, der fortgeschrittene Features von TGGs unterstĂŒtzt (Attribute und negative Constraints), durchgĂ€ngig formalisiert ist, implementiert und inkrementell in dem Sinne ist, dass er den Informationsverlust im Vergleich mit vorherigen AnsĂ€tzen drastisch reduziert. Bisher gibt es keinen TGG-basierten Ansatz mit vergleichbaren Eigenschaften. Zentraler Beitrag dieser Dissertation ist es, diesen Ansatz formal auszuarbeiten und seine wesentlichen Eigenschaften, nĂ€mlich Korrektheit, VollstĂ€ndigkeit und Termination, zu beweisen. Die entscheidende neue Idee unseres Ansatzes ist es, Reparaturregeln anzuwenden. Dies sind spezielle Regeln, die es erlauben, Änderungen an einem Modell direkt zu propagieren anstatt auf NeuĂŒbersetzung zurĂŒckzugreifen. Um diese Reparaturregeln erstellen und anwenden zu können, entwickeln wir grundlegende BeitrĂ€ge zur Theorie der algebraischen Graphtransformation. ZunĂ€chst entwickeln wir eine neue Art der sequentiellen Komposition von Regeln. Im Gegensatz zur gewöhnlichen Komposition, die zu Regeln fĂŒhrt, die Elemente löschen und dann wieder neu erzeugen, können wir Regeln herleiten, die solche Elemente stattdessen bewahren. Technisch gesehen findet der Synchronisationsprozess, den wir entwickeln, außerdem in der Kategorie der partiellen Tripelgraphen statt und nicht in der der normalen Tripelgraphen. Daher mĂŒssen wir sicherstellen, dass die fĂŒr Double-Pushout-Ersetzungssysteme ausgearbeitete Theorie immer noch gĂŒltig ist. Dazu entwickeln wir eine (kategorientheoretische) Konstruktion neuer Kategorien aus gegebenen und zeigen, dass (i) diese Konstruktion die Axiome erhĂ€lt, die nötig sind, um die Theorie fĂŒr Double-Pushout-Ersetzungssysteme zu entwickeln, und (ii) partielle Tripelgraphen als eine solche Kategorie konstruiert werden können. Zusammen ermöglichen diese beiden grundsĂ€tzlichen BeitrĂ€ge es uns, unsere Lösung fĂŒr das grundlegende Modellsynchronisationsproblem vollstĂ€ndig formal auszuarbeiten und ihre zentralen Eigenschaften zu beweisen.Restoring consistency between different information-sharing artifacts after one of them has been changed is an important problem that arises in several areas of computer science. In this thesis, we provide a solution to the basic model synchronization problem. There, a pair of such artifacts (models), one of which has been changed, is given and consistency shall be restored. Triple graph grammars (TGGs) are an established and suitable formalism to address this and related problems. Being based on the algebraic theory of graph transformation and (double-)pushout rewriting, they are especially suited to develop solutions whose properties can be formally proven. Despite being established, many TGG-based solutions do not satisfactorily deal with the problem of information loss. When one model is changed, in the process of restoring consistency such solutions may lose information that is only present in the second model because the synchronization process resorts to restoring consistency by re-translating (large parts of) the updated model. We introduce a TGG-based approach that supports advanced features of TGGs (attributes and negative constraints), is comprehensively formalized, implemented, and is incremental in the sense that it drastically reduces the amount of information loss compared to former approaches. Up to now, a TGG-based approach with these characteristics is not available. The central contribution of this thesis is to formally develop that approach and to prove its essential properties, namely correctness, completeness, and termination. The crucial new idea in our approach is the use of repair rules, which are special rules that allow one to directly propagate changes from one model to the other instead of resorting to re-translation. To be able to construct and apply these repair rules, we contribute more fundamentally to the theory of algebraic graph transformation. First, we develop a new kind of sequential rule composition. Whereas the conventional composition of rules leads to rules that delete and re-create elements, we can compute rules that preserve such elements instead. Furthermore, technically the setting in which the synchronization process we develop takes place is the category of partial triple graphs and not the one of ordinary triple graphs. Hence, we have to ensure that the elaborate theory of double-pushout rewriting still applies. Therefore, we develop a (category-theoretic) construction of new categories from given ones and show that (i) this construction preserves the axioms that are necessary to develop the theory of double-pushout rewriting and (ii) partial triple graphs can be constructed as such a category. Together, those two more fundamental contributions enable us to develop our solution to the basic model synchronization problem in a fully formal manner and to prove its central properties
    corecore