TY - BOOK A1 - Schneider, Sven A1 - Lambers, Leen A1 - Orejas, Fernando T1 - A logic-based incremental approach to graph repair T1 - Ein logikbasierter inkrementeller Ansatz für Graphreparatur N2 - Graph repair, restoring consistency of a graph, plays a prominent role in several areas of computer science and beyond: For example, in model-driven engineering, the abstract syntax of models is usually encoded using graphs. Flexible edit operations temporarily create inconsistent graphs not representing a valid model, thus requiring graph repair. Similarly, in graph databases—managing the storage and manipulation of graph data—updates may cause that a given database does not satisfy some integrity constraints, requiring also graph repair. We present a logic-based incremental approach to graph repair, generating a sound and complete (upon termination) overview of least-changing repairs. In our context, we formalize consistency by so-called graph conditions being equivalent to first-order logic on graphs. We present two kind of repair algorithms: State-based repair restores consistency independent of the graph update history, whereas deltabased (or incremental) repair takes this history explicitly into account. Technically, our algorithms rely on an existing model generation algorithm for graph conditions implemented in AutoGraph. Moreover, the delta-based approach uses the new concept of satisfaction (ST) trees for encoding if and how a graph satisfies a graph condition. We then demonstrate how to manipulate these STs incrementally with respect to a graph update. N2 - Die Reparatur von Graphen, die Wiederherstellung der Konsistenz eines Graphen, spielt in mehreren Bereichen der Informatik und darüber hinaus eine herausragende Rolle: Beispielsweise wird in der modellgetriebenen Konstruktion die abstrakte Syntax von Modellen in der Regel mithilfe von Graphen kodiert. Flexible Bearbeitungsvorgänge erstellen vorübergehend inkonsistente Diagramme, die kein gültiges Modell darstellen, und erfordern daher eine Reparatur des Diagramms. Auf ähnliche Weise können Aktualisierungen in Graphendatenbanken - die das Speichern und Bearbeiten von Graphendaten verwalten - dazu führen, dass eine bestimmte Datenbank einige Integritätsbeschränkungen nicht erfüllt und auch eine Graphreparatur erforderlich macht. Wir präsentieren einen logikbasierten inkrementellen Ansatz für die Graphreparatur, der eine solide und vollständige (nach Beendigung) Übersicht über die am wenigsten verändernden Reparaturen erstellt. In unserem Kontext formalisieren wir die Konsistenz mittels sogenannten Graphbedingungen die der Logik erster Ordnung in Graphen entsprechen. Wir stellen zwei Arten von Reparaturalgorithmen vor: Die zustandsbasierte Reparatur stellt die Konsistenz unabhängig vom Verlauf der Graphänderung wieder her, während die deltabasierte (oder inkrementelle) Reparatur diesen Verlauf explizit berücksichtigt. Technisch stützen sich unsere Algorithmen auf einen vorhandenen Modellgenerierungsalgorithmus für in AutoGraph implementierte Graphbedingungen. Darüber hinaus verwendet der deltabasierte Ansatz das neue Konzept der Erfüllungsbäume (STs) zum Kodieren, ob und wie ein Graph eine Graphbedingung erfüllt. Wir zeigen dann, wie diese STs in Bezug auf eine Graphaktualisierung inkrementell manipuliert werden. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 126 KW - nested graph conditions KW - graph repair KW - model repair KW - consistency restoration KW - verschachtelte Graphbedingungen KW - Graphreparatur KW - Modellreparatur KW - Konsistenzrestauration Y1 - 2019 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-427517 SN - 978-3-86956-462-3 SN - 1613-5652 SN - 2191-1665 IS - 126 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - JOUR A1 - Orejas, Fernando A1 - Pino, Elvira A1 - Navarro, Marisa A1 - Lambers, Leen T1 - Institutions for navigational logics for graphical structures JF - Theoretical computer science N2 - We show that a Navigational Logic, i.e., a logic to express properties about graphs and about paths in graphs is a semi-exact institution. In this way, we can use a number of operations to structure and modularize our specifications. Moreover, using the properties of our institution, we also show how to structure single formulas, which in our formalism could be quite complex. KW - Institutions KW - Graph logics KW - Navigational logics Y1 - 2018 U6 - https://doi.org/10.1016/j.tcs.2018.02.031 SN - 0304-3975 SN - 1879-2294 VL - 741 SP - 19 EP - 24 PB - Elsevier CY - Amsterdam ER - TY - JOUR A1 - Navarro, Marisa A1 - Orejas, Fernando A1 - Pino, Elvira A1 - Lambers, Leen T1 - A navigational logic for reasoning about graph properties JF - Journal of logical and algebraic methods in programming N2 - Graphs play an important role in many areas of Computer Science. In particular, our work is motivated by model-driven software development and by graph databases. For this reason, it is very important to have the means to express and to reason about the properties that a given graph may satisfy. With this aim, in this paper we present a visual logic that allows us to describe graph properties, including navigational properties, i.e., properties about the paths in a graph. The logic is equipped with a deductive tableau method that we have proved to be sound and complete. KW - Graph logic KW - Algebraic methods KW - Formal modelling KW - Specification Y1 - 2021 U6 - https://doi.org/10.1016/j.jlamp.2020.100616 SN - 2352-2208 SN - 2352-2216 VL - 118 PB - Elsevier Science CY - Amsterdam [u.a.] ER - TY - JOUR A1 - Lambers, Leen A1 - Born, Kristopher A1 - Kosiol, Jens A1 - Strüber, Daniel A1 - Taentzer, Gabriele T1 - Granularity of conflicts and dependencies in graph transformation systems BT - a two-dimensional approach JF - Journal of Logical and Algebraic Methods in Programming N2 - Conflict and dependency analysis (CDA) is a static analysis for the detection of conflicting and dependent rule applications in a graph transformation system. The state-of-the-art CDA technique, critical pair analysis, provides all potential conflicts and dependencies in minimal context as critical pairs, for each pair of rules. Yet, critical pairs can be hard to understand; users are mainly interested in core information about conflicts and dependencies occurring in various combinations. In this paper, we present an approach to conflicts and dependencies in graph transformation systems based on two dimensions of granularity. The first dimension refers to the overlap considered between the rules of a given rule pair; the second one refers to the represented amount of context information about transformations in which the conflicts occur. We introduce a variety of new conflict notions, in particular, conflict atoms, conflict reasons, and minimal conflict reasons, relate them to the existing conflict notions of critical pairs and initial conflicts, and position all of these notions within our granularity approach. Finally, we introduce dual concepts for dependency analysis. As we discuss in a running example, our approach paves the way for an improved CDA technique. (C) 2018 Elsevier Inc. All rights reserved. KW - Graph transformation (double pushout approach) KW - Parallel independence KW - Critical pair analysis (CPA) Y1 - 2018 U6 - https://doi.org/10.1016/j.jlamp.2018.11.004 SN - 2352-2208 VL - 103 SP - 105 EP - 129 PB - Elsevier CY - New York ER - TY - GEN A1 - Ehrig, Hartmut A1 - Golas, Ulrike A1 - Habel, Annegret A1 - Lambers, Leen A1 - Orejas, Fernando T1 - M-adhesive transformation systems with nested application conditions BT - Part 1: parallelism, concurrency and amalgamation T2 - Postprints der Universität Potsdam : Digital Engineering Reihe N2 - Nested application conditions generalise the well-known negative application conditions and are important for several application domains. In this paper, we present Local Church-Rosser, Parallelism, Concurrency and Amalgamation Theorems for rules with nested application conditions in the framework of M-adhesive categories, where M-adhesive categories are slightly more general than weak adhesive high-level replacement categories. Most of the proofs are based on the corresponding statements for rules without application conditions and two shift lemmas stating that nested application conditions can be shifted over morphisms and rules. T3 - Zweitveröffentlichungen der Universität Potsdam : Reihe der Digital Engineering Fakultät - 1 KW - level-replacement systems KW - graph-transformations KW - distributed systems KW - synchronization KW - confluence KW - categories KW - programs KW - grammars KW - model Y1 - 2020 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-415651 IS - 001 ER - TY - JOUR A1 - Dyck, Johannes A1 - Giese, Holger A1 - Lambers, Leen T1 - Automatic verification of behavior preservation at the transformation level for relational model transformation JF - Software and systems modeling N2 - The correctness of model transformations is a crucial element for model-driven engineering of high-quality software. In particular, behavior preservation is an important correctness property avoiding the introduction of semantic errors during the model-driven engineering process. Behavior preservation verification techniques show some kind of behavioral equivalence or refinement between source and target model of the transformation. Automatic tool support is available for verifying behavior preservation at the instance level, i.e., for a given source and target model specified by the model transformation. However, until now there is no sound and automatic verification approach available at the transformation level, i.e., for all source and target models. In this article, we extend our results presented in earlier work (Giese and Lambers, in: Ehrig et al (eds) Graph transformations, Springer, Berlin, 2012) and outline a new transformation-level approach for the sound and automatic verification of behavior preservation captured by bisimulation resp.simulation for outplace model transformations specified by triple graph grammars and semantic definitions given by graph transformation rules. In particular, we first show how behavior preservation can be modeled in a symbolic manner at the transformation level and then describe that transformation-level verification of behavior preservation can be reduced to invariant checking of suitable conditions for graph transformations. We demonstrate that the resulting checking problem can be addressed by our own invariant checker for an example of a transformation between sequence charts and communicating automata. KW - Relational model transformation KW - Formal verification of behavior preservation KW - Behavioral equivalence and refinement KW - Bisimulation and simulation KW - Graph transformation KW - Triple graph grammars KW - Invariant checking Y1 - 2018 U6 - https://doi.org/10.1007/s10270-018-00706-9 SN - 1619-1366 SN - 1619-1374 VL - 18 IS - 5 SP - 2937 EP - 2972 PB - Springer CY - Heidelberg ER -