TY - BOOK A1 - Dyck, Johannes A1 - Giese, Holger T1 - k-Inductive invariant checking for graph transformation systems N2 - While offering significant expressive power, graph transformation systems often come with rather limited capabilities for automated analysis, particularly if systems with many possible initial graphs and large or infinite state spaces are concerned. One approach that tries to overcome these limitations is inductive invariant checking. However, the verification of inductive invariants often requires extensive knowledge about the system in question and faces the approach-inherent challenges of locality and lack of context. To address that, this report discusses k-inductive invariant checking for graph transformation systems as a generalization of inductive invariants. The additional context acquired by taking multiple (k) steps into account is the key difference to inductive invariant checking and is often enough to establish the desired invariants without requiring the iterative development of additional properties. To analyze possibly infinite systems in a finite fashion, we introduce a symbolic encoding for transformation traces using a restricted form of nested application conditions. As its central contribution, this report then presents a formal approach and algorithm to verify graph constraints as k-inductive invariants. We prove the approach's correctness and demonstrate its applicability by means of several examples evaluated with a prototypical implementation of our algorithm. N2 - Während Graphtransformationssysteme einerseits einen ausdrucksstarken Formalismus bereitstellen, existieren andererseits nur eingeschränkte Möglichkeiten für die automatische Analyse. Dies gilt insbesondere für die Analyse von Systemen mit einer Vielzahl an initialen Graphen oder mit großen oder unendlichen Zustandsräumen. Ein möglicher Ansatz, um diese Einschränkungen zu umgehen, sind induktive Invarianten. Allerdings erfordert die Verifkation induktiver Invarianten oft erweitertes Wissen über das zu verifizierende System; weiterhin muss diese Verifikationstechnik mit den spezifischen Problemen der Lokalität und des Mangels an Kontextwissen umgehen. Dieser Bericht betrachtet k-induktive Invarianten - eine Verallgemeinerung induktiver Invarienten - für Graphtransformationssysteme als einen möglichen Ansatz, um diese Probleme anzugehen. Zusätzliches Kontextwissen, das durch die Analyse mehrerer (k) Schritte gewonnen werden kann, macht den entscheidenden Unterschied zu induktiven Invarianten aus und genügt oft, um die gewünschten Invarianten ohne die iterative Entwicklung zusätzlicher Eigenschaften zu verifizieren. Um unendliche Systeme in endlicher Zeit zu analysieren, führen wir eine symbolische Kodierung von Transformationssequenzen ein, die auf verschachtelten Anwendungsbedingungen basiert. Unser zentraler Beitrag ist dann ein formaler Ansatz und Algorithmus zur Verifikation von Graphbedingungen als k-induktive Invarianten. Wir führen einen formalen Beweis, um die Korrektheit unseres Verfahrens nachzuweisen, und demonstrieren die Anwendbarkeit des Verfahrens an mehreren Beispielen, die mit einer prototypischen Implementierung verifiziert wurden. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 119 KW - formal verification KW - static analysis KW - graph transformation KW - typed graph transformation systems KW - graph constraints KW - nested application conditions KW - k-inductive invariants KW - k-induction KW - k-inductive invariant checking KW - transformation sequences KW - s/t-pattern sequences KW - formale Verifikation KW - statische Analyse KW - Graphtransformationen KW - Graphtransformationssysteme KW - Graphbedingungen KW - verschachtelte Anwednungsbedingungen KW - k-induktive Invarianten KW - k-Induktion KW - k-induktives Invariant-Checking KW - Transformationssequenzen KW - Sequenzen von s/t-Pattern Y1 - 2017 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-397044 SN - 978-3-86956-406-7 SN - 1613-5652 SN - 2191-1665 IS - 119 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 -