Abstract Graph Transformation – Theory and Practice

Eduardo Zambon

Promotor: prof.dr.ir. A. Rensink
Faculty of Electrical Engineering, Mathematics & Computer Science, UT
Universiteit Twente
Date: 24 January, 2013. 

Summary

The verification of systems with respect to a desired set of behavioural properties is a crucial step in increasing our confidence that these systems will correctly function under all circumstances. Although it would be desirable to verify all (computer) systems that we use in our daily life, the sheer complexity of the verification tasks often limit their application to critical systems. A system is considered critical when its incorrect behaviour can cause severe damage, such as loss of lives or the destruction of valuable equipment.

In this thesis, we use graph transformation as our modelling formalism for system specification. Graph transformation (GT) is a Turing-powerful, declarative rule-based formalism, with a mature theoretical foundation and a thriving tool environment. Our work focus on the behavioural analysis of GT systems, where a GT system semantics is represented by a labelled transition system, that can then be analysed by well-established verification methods, such as model checking. A key requirement in this approach is the capability to handle GT systems with (possibly) infinite state spaces.

This thesis presents two abstraction techniques that yield a finite over-approximation of the behaviour of infinite-state GT systems, thus enabling verification on the abstract level. The two techniques, called neighbourhood abstraction and pattern abstraction, are discussed under both a theoretical and a practical focus; the former concerning the formal definition and correctness of the abstraction methods, and the latter discussing their implementation in GROOVE, our GT tool set. Experimental results are also given in order to assess the performance of the developed tools.