TY - BOOK A1 - Dyck, Johannes A1 - Giese, Holger A1 - Lambers, Leen T1 - Automatic verification of behavior preservation at the transformation level for relational model transformation N2 - The correctness of model transformations is a crucial element for model-driven engineering of high quality software. In particular, behavior preservation is the most important correctness property avoiding the introduction of semantic errors during the model-driven engineering process. Behavior preservation verification techniques either show that specific properties are preserved, or more generally and complex, they show some kind of behavioral equivalence or refinement between source and target model of the transformation. Both kinds of behavior preservation verification goals have been presented with automatic tool support for the instance level, i.e. for a given source and target model specified by the model transformation. However, up until now there is no automatic verification approach available at the transformation level, i.e. for all source and target models specified by the model transformation. In this report, we extend our results presented in [27] and outline a new sophisticated approach for the automatic verification of behavior preservation captured by bisimulation resp. simulation for model transformations specified by triple graph grammars and semantic definitions given by graph transformation rules. In particular, we show that the behavior preservation problem can be reduced to invariant checking for graph transformation and that the resulting checking problem can be addressed by our own invariant checker even for a complex example where a sequence chart is transformed into communicating automata. We further discuss today's limitations of invariant checking for graph transformation and motivate further lines of future work in this direction. N2 - Die Korrektheit von Modelltransformationen ist von zentraler Wichtigkeit bei der Anwendung modellgetriebener Softwareentwicklung für die Entwicklung hochqualitativer Software. Insbesondere verhindert Verhaltensbewahrung als wichtigste Korrektheitseigenschaft die Entstehung semantischer Fehler während des modellgetriebenen Entwicklungsprozesses. Techniken zur Verifikation von Verhaltensbewahrung zeigen, dass bestimmte spezifische Eigenschaften bewahrt bleiben oder, im allgemeineren und komplexeren Fall, dass eine Form von Verhaltensäquivalenz oder Verhaltensverfeinerung zwischen Quell- und Zielmodell der Transformation besteht. Für beide Ansätze existieren automatisierte Werkzeuge für die Verifikation auf der Instanzebene, also zur Überprüfung konkreter Paare aus Quell- und Zielmodellen der Transformation. Allerdings existiert kein automatischer Verifikationsansatz, der auf der Transformationsebene arbeitet, also Aussagen zu allen Quell- und Zielmodellen einer Modelltransformation treffen kann. Dieser Bericht erweitert unsere Vorarbeit und Ergebnisse aus [27] und stellt einen neuen Ansatz zur automatischen Verifikation von Verhaltensbewahrung vor, der auf Bisimulation bzw. Simulation basiert. Dabei werden Modelltransformationen durch Triple-Graph-Grammatiken und Verhaltensdefinitionen mittels Graphtransformationsregeln beschrieben. Insbesondere weisen wir nach, dass das Problem der Verhaltensbewahrung durch Bisimulation auf Invariant-Checking für Graphtransformationssysteme reduziert werden kann und dass das entstehende Invariant-Checking-Problem für ein komplexes Beispiel durch unser Werkzeug zur Verifikation induktiver Invarianten gelöst werden kann. Das Beispiel beschreibt die Transformation von Sequenzdiagrammen in Systeme kommunizierender Automaten. Darüber hinaus diskutieren wir bestehende Einschränkungen von Invariant-Checking für Graphtransformationssysteme und Ansätze für zukünftige Arbeiten in diesem Bereich. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 112 KW - model transformation KW - behavior preservation KW - semantics preservation KW - relational model transformation KW - bisimulation KW - simulation KW - invariant checking KW - transformation level KW - behavioral equivalenc KW - behavioral refinement KW - behavioral abstraction KW - graph transformation systems KW - graph constraints KW - triple graph grammars KW - Modelltransformationen KW - Verhaltensbewahrung KW - relationale Modelltransformationen KW - Bisimulation KW - Simulation KW - Invariant-Checking KW - Transformationsebene KW - Verhaltensäquivalenz KW - Verhaltensverfeinerung KW - Verhaltensabstraktion KW - Graphtransformationssysteme KW - Graph-Constraints KW - Triple-Graph-Grammatiken Y1 - 2017 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-100279 SN - 978-3-86956-391-6 SN - 1613-5652 SN - 2191-1665 IS - 112 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Beyhl, Thomas A1 - Blouin, Dominique A1 - Giese, Holger A1 - Lambers, Leen T1 - On the operationalization of graph queries with generalized discrimination networks N2 - Graph queries have lately gained increased interest due to application areas such as social networks, biological networks, or model queries. For the relational database case the relational algebra and generalized discrimination networks have been studied to find appropriate decompositions into subqueries and ordering of these subqueries for query evaluation or incremental updates of query results. For graph database queries however there is no formal underpinning yet that allows us to find such suitable operationalizations. Consequently, we suggest a simple operational concept for the decomposition of arbitrary complex queries into simpler subqueries and the ordering of these subqueries in form of generalized discrimination networks for graph queries inspired by the relational case. The approach employs graph transformation rules for the nodes of the network and thus we can employ the underlying theory. We further show that the proposed generalized discrimination networks have the same expressive power as nested graph conditions. N2 - Graph-basierte Suchanfragen erfahren in jüngster Zeit ein zunehmendes Interesse durch Anwendungsdomänen wie zum Beispiel Soziale Netzwerke, biologische Netzwerke und Softwaremodelle. Für relationale Datenbanken wurden die relationale Algebra und sogenannte generalisierte Discrimination Networks bereits studiert um Suchanfragen angemessen in kleinere Suchanfragen für die inkrementelle Auswertung zu zerlegen und zu ordnen. Allerdings gibt es für Graphdatenbanken derzeit keine formale Grundlage, die es erlaubt solche Zerlegungen zu finden. Daher schlagen wir ein Konzept für die Zerlegung und Ordnung von komplexen Suchanfragen vor. Das Konzept basiert auf generalisierten Discrimination Networks, die aus relationalen Datenbanken bekannt sind. Der Ansatz verwendet Graphtransformationsregeln für Knoten in diesen Netzwerken, sodass die Theorie von Graphen und Graphtransformationen angewendet werden kann. Darüber hinaus zeigen wir auf, dass diese Discrimination Networks die gleiche Ausdrucksstärke besitzen wie Nested Graph Conditions. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 106 KW - graph queries KW - discrimination networks KW - incremental graph pattern matching KW - nested graph conditions KW - Graph-basierte Suche KW - Discrimination Networks KW - Inkrementelle Graphmustersuche KW - Nested Graph Conditions Y1 - 2016 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-96279 SN - 978-3-86956-372-5 SN - 1613-5652 SN - 2191-1665 IS - 106 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 - BOOK A1 - Giese, Holger A1 - Hildebrandt, Stephan A1 - Lambers, Leen T1 - Toward bridging the gap between formal semantics and implementation of triple graph grammars N2 - The correctness of model transformations is a crucial element for the model-driven engineering of high quality software. A prerequisite to verify model transformations at the level of the model transformation specification is that an unambiguous formal semantics exists and that the employed implementation of the model transformation language adheres to this semantics. However, for existing relational model transformation approaches it is usually not really clear under which constraints particular implementations are really conform to the formal semantics. In this paper, we will bridge this gap for the formal semantics of triple graph grammars (TGG) and an existing efficient implementation. Whereas the formal semantics assumes backtracking and ignores non-determinism, practical implementations do not support backtracking, require rule sets that ensure determinism, and include further optimizations. Therefore, we capture how the considered TGG implementation realizes the transformation by means of operational rules, define required criteria and show conformance to the formal semantics if these criteria are fulfilled. We further outline how static analysis can be employed to guarantee these criteria. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 37 Y1 - 2010 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-45219 SN - 978-3-86956-078-6 PB - Universitätsverlag Potsdam CY - Potsdam ER -