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 - Orejas, Fernando T1 - Transformation rules with nested application conditions BT - critical pairs, initial conflicts & minimality JF - Theoretical computer science N2 - Recently, initial conflicts were introduced in the framework of M-adhesive categories as an important optimization of critical pairs. In particular, they represent a proper subset such that each conflict is represented in a minimal context by a unique initial one. The theory of critical pairs has been extended in the framework of M-adhesive categories to rules with nested application conditions (ACs), restricting the applicability of a rule and generalizing the well-known negative application conditions. A notion of initial conflicts for rules with ACs does not exist yet. In this paper, on the one hand, we extend the theory of initial conflicts in the framework of M-adhesive categories to transformation rules with ACs. They represent a proper subset again of critical pairs for rules with ACs, and represent each conflict in a minimal context uniquely. They are moreover symbolic because we can show that in general no finite and complete set of conflicts for rules with ACs exists. On the other hand, we show that critical pairs are minimally M-complete, whereas initial conflicts are minimally complete. Finally, we introduce important special cases of rules with ACs for which we can obtain finite, minimally (M-)complete sets of conflicts. KW - Graph transformation KW - Critical pairs KW - Initial conflicts KW - Application KW - conditions Y1 - 2021 U6 - https://doi.org/10.1016/j.tcs.2021.07.023 SN - 0304-3975 SN - 1879-2294 VL - 884 SP - 44 EP - 67 PB - Elsevier CY - Amsterdam ER - TY - JOUR A1 - Schneider, Sven A1 - Lambers, Leen A1 - Orejas, Fernando T1 - A logic-based incremental approach to graph repair featuring delta preservation JF - International journal on software tools for technology transfer : STTT N2 - We introduce a logic-based incremental approach to graph repair, generating a sound and complete (upon termination) overview of least-changing graph repairs from which a user may select a graph repair based on non-formalized further requirements. This incremental approach features delta preservation as it allows to restrict the generation of graph repairs to delta-preserving graph repairs, which do not revert the additions and deletions of the most recent consistency-violating graph update. We specify consistency of graphs using the logic of nested graph conditions, which is equivalent to first-order logic on graphs. Technically, the incremental approach encodes if and how the graph under repair satisfies a graph condition using the novel data structure of satisfaction trees, which are adapted incrementally according to the graph updates applied. In addition to the incremental approach, we also present two state-based graph repair algorithms, which restore consistency of a graph independent of the most recent graph update and which generate additional graph repairs using a global perspective on the graph under repair. We evaluate the developed algorithms using our prototypical implementation in the tool AutoGraph and illustrate our incremental approach using a case study from the graph database domain. KW - Nested graph conditions KW - Graph repair KW - Model repair KW - Consistency KW - restoration KW - Delta preservation KW - Graph databases KW - Model-driven KW - engineering Y1 - 2021 U6 - https://doi.org/10.1007/s10009-020-00584-x SN - 1433-2779 SN - 1433-2787 VL - 23 IS - 3 SP - 369 EP - 410 PB - Springer CY - Berlin ; Heidelberg 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 - Schneider, Sven A1 - Lambers, Leen A1 - Orejas, Fernando T1 - Automated reasoning for attributed graph properties JF - International Journal on Software Tools for Technology Transfer N2 - Graphs are ubiquitous in computer science. Moreover, in various application fields, graphs are equipped with attributes to express additional information such as names of entities or weights of relationships. Due to the pervasiveness of attributed graphs, it is highly important to have the means to express properties on attributed graphs to strengthen modeling capabilities and to enable analysis. Firstly, we introduce a new logic of attributed graph properties, where the graph part and attribution part are neatly separated. The graph part is equivalent to first-order logic on graphs as introduced by Courcelle. It employs graph morphisms to allow the specification of complex graph patterns. The attribution part is added to this graph part by reverting to the symbolic approach to graph attribution, where attributes are represented symbolically by variables whose possible values are specified by a set of constraints making use of algebraic specifications. Secondly, we extend our refutationally complete tableau-based reasoning method as well as our symbolic model generation approach for graph properties to attributed graph properties. Due to the new logic mentioned above, neatly separating the graph and attribution parts, and the categorical constructions employed only on a more abstract level, we can leave the graph part of the algorithms seemingly unchanged. For the integration of the attribution part into the algorithms, we use an oracle, allowing for flexible adoption of different available SMT solvers in the actual implementation. Finally, our automated reasoning approach for attributed graph properties is implemented in the tool AutoGraph integrating in particular the SMT solver Z3 for the attribute part of the properties. We motivate and illustrate our work with a particular application scenario on graph database query validation. KW - Attributed graphs KW - Nested graph conditions KW - Model generation KW - Tableau method KW - Graph queries Y1 - 2018 U6 - https://doi.org/10.1007/s10009-018-0496-3 SN - 1433-2779 SN - 1433-2787 VL - 20 IS - 6 SP - 705 EP - 737 PB - Springer CY - Heidelberg 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 - 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 - BOOK A1 - Schneider, Sven A1 - Lambers, Leen A1 - Orejas, Fernando T1 - Symbolic model generation for graph properties N2 - Graphs are ubiquitous in Computer Science. For this reason, in many areas, it is very important to have the means to express and reason about graph properties. In particular, we want to be able to check automatically if a given graph property is satisfiable. Actually, in most application scenarios it is desirable to be able to explore graphs satisfying the graph property if they exist or even to get a complete and compact overview of the graphs satisfying the graph property. We show that the tableau-based reasoning method for graph properties as introduced by Lambers and Orejas paves the way for a symbolic model generation algorithm for graph properties. Graph properties are formulated in a dedicated logic making use of graphs and graph morphisms, which is equivalent to firstorder logic on graphs as introduced by Courcelle. Our parallelizable algorithm gradually generates a finite set of so-called symbolic models, where each symbolic model describes a set of finite graphs (i.e., finite models) satisfying the graph property. The set of symbolic models jointly describes all finite models for the graph property (complete) and does not describe any finite graph violating the graph property (sound). Moreover, no symbolic model is already covered by another one (compact). Finally, the algorithm is able to generate from each symbolic model a minimal finite model immediately and allows for an exploration of further finite models. The algorithm is implemented in the new tool AutoGraph. N2 - Graphen sind allgegenwärtig in der Informatik. Daher ist die Verfügbarkeit von Methoden zur Darstellung und Untersuchung von Grapheigenschaften in vielen Gebieten von großer Wichtigkeit. Insbesondere ist die vollautomatische Überprüfung von Grapheigenschaften auf Erfüllbarkeit von zentraler Bedeutung. Darüberhinaus ist es in vielen Anwendungsszenarien wünschenswert diejenigen Graphen geeignet aufzuzählen, die eine Grapheigenschaft erfüllen. Im Falle einer unendlich großen Anzahl von solchen Graphen ist ein kompletter und gleichzeitig kompakter Überblick über diese Graphen anzustreben. Wir zeigen, dass die Tableau-Methode für Grapheigenschaften von Lambers und Orejas den Weg für einen Algorithmus zur Generierung von symbolischen Modellen frei gemacht hat. Wir formulieren Grapheigenschaften hierbei in einer dedizierten Logik basierend auf Graphen und Graphmorphismen. Diese Logik ist äquivalent zu der First-Order Logic auf Graphen, wie sie von Courcelle eingeführt wurde. Unser parallelisierbarer Algorithmus bestimmt graduell eine endliche Menge von sogenannten symbolischen Modellen. Hierbei beschreibt jedes symbolische Modell eine Menge von endlichen Graphen, die die Grapheigenschaft erfüllen. Die symbolischen Modelle decken so gemeinsam alle endlichen Modelle ab, die die Grapheigenschaft erfüllen (Vollständigkeit) und beschreiben keine endlichen Graphen, die die Grapheigenschaft verletzen (Korrektheit). Außerdem wird kein symbolisches Modell von einem anderen abgedeckt (Kompaktheit). Letztlich ist der Algorithmus in der Lage aus jedem symbolischen Modell ein minimales endliches Modell zu extrahieren und weitere endliche Modelle abzuleiten. Der Algorithmus ist in dem neuen Werkzeug AutoGraph implementiert. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 115 KW - model generation KW - nested graph conditions KW - tableau method KW - graph transformation KW - satisfiabilitiy solving KW - Modellerzeugung KW - verschachtelte Graphbedingungen KW - Tableaumethode KW - Graphtransformation KW - Erfüllbarkeitsanalyse Y1 - 2017 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-103171 SN - 978-3-86956-396-1 SN - 1613-5652 SN - 2191-1665 IS - 115 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - JOUR A1 - Ehrig, Hartmut A1 - Golas, Ulrike A1 - Habel, Annegret A1 - Lambers, Leen A1 - Orejas, Fernando T1 - M-adhesive transformation systems with nested application conditions. Part 1: parallelism, concurrency and amalgamation JF - Mathematical structures in computer science : a journal in the applications of categorical, algebraic and geometric methods in computer science 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. Y1 - 2014 U6 - https://doi.org/10.1017/S0960129512000357 SN - 0960-1295 SN - 1469-8072 VL - 24 IS - 4 PB - Cambridge Univ. Press CY - New York ER - TY - JOUR A1 - Orejas, Fernando A1 - Lambers, Leen T1 - Lazy graph transformation JF - Fundamenta informaticae N2 - Applying an attributed graph transformation rule to a given object graph always implies some kind of constraint solving. In many cases, the given constraints are almost trivial to solve. For instance, this is the case when a rule describes a transformation G double right arrow H, where the attributes of H are obtained by some simple computation from the attributes of G. However there are many other cases where the constraints to solve may be not so trivial and, moreover, may have several answers. This is the case, for instance, when the transformation process includes some kind of searching. In the current approaches to attributed graph transformation these constraints must be completely solved when defining the matching of the given transformation rule. This kind of early binding is well-known from other areas of Computer Science to be inadequate. For instance, the solution chosen for the constraints associated to a given transformation step may be not fully adequate, meaning that later, in the search for a better solution, we may need to backtrack this transformation step. In this paper, based on our previous work on the use of symbolic graphs to deal with different aspects related with attributed graphs, including attributed graph transformation, we present a new approach that, based on the new notion of narrowing graph transformation rule, allows us to delay constraint solving when doing attributed graph transformation, in a way that resembles lazy computation. For this reason, we have called lazy this new kind of transformation. Moreover, we show that the approach is sound and complete with respect to standard attributed graph transformation. A running example, where a graph transformation system describes some basic operations of a travel agency, shows the practical interest of the approach. KW - Attributed graph transformation KW - symbolic graph transformation KW - lazy transformation Y1 - 2012 U6 - https://doi.org/10.3233/FI-2012-706 SN - 0169-2968 VL - 118 IS - 1-2 SP - 65 EP - 96 PB - IOS Press CY - Amsterdam ER -