Detlef Plump

dblp:31/6990 · DBLP profile ↗
← Back
37ranked-venue papers
6as first author
9since 2021 · last 2026
0000-0002-1148-822XORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Theory of computation · 31 · 6 first-author · 6 since 2021Databases, data management, data science and information retrieval · 13 · 2 first-author · 3 since 2021Software engineering, systems software and programming languages · 5 · 2 since 2021Artificial intelligence and machine learning · 3 · 1 since 2021
YearPublicationVenuePosition
2026 Rule-Based Graph Programs Matching the Time Complexity of Imperative Algorithms
abstract
We report on recent advances in rule-based graph programming, which allow us to match the time complexity of some fundamental imperative graph algorithms. In general, achieving the time complexity of graph algorithms implemented in conventional languages using a rule-based graph-transformation language is challenging due to the cost of graph matching. Previous work demonstrated that with rooted rules, certain algorithms can be implemented in the graph programming language GP 2 such that their runtime matches the time complexity of imperative implementations. However, this required input graphs to have a bounded node degree and (for some algorithms) to be connected. In this paper, we overcome these limitations by enhancing the graph data structure generated by the GP 2 compiler and exploiting the new structure in programs. We present three case studies: the first program checks whether input graphs are connected, the second program checks whether input graphs are acyclic, and the third program solves the single-source shortest-paths problem for graphs with integer edge-weights. The first two programs run in linear time on (possibly disconnected) input graphs with arbitrary node degrees. The third program runs in time $O(nm)$ on arbitrary input graphs, matching the time complexity of imperative implementations of the Bellman-Ford algorithm. For each program, we formally prove its correctness and time complexity, and provide runtime experiments on various graph classes.
Ziad Ismaili Alaoui, Detlef Plump
Log. Methods Comput. Sci.2
2024 Linear-Time Graph Programs for Unbounded-Degree Graphs
Ziad Ismaili Alaoui, Detlef Plump
ICGT2
2024 Formalising the Double-Pushout Approach to Graph Transformation
abstract
In this paper, we utilize Isabelle/HOL to develop a formal framework for the basic theory of double-pushout graph transformation. Our work includes defining essential concepts like graphs, morphisms, pushouts, and pullbacks, and demonstrating their properties. We establish the uniqueness of derivations, drawing upon Rosens 1975 research, and verify the Church-Rosser theorem using Ehrigs and Kreowskis 1976 proof, thereby demonstrating the effectiveness of our formalisation approach. The paper details our methodology in employing Isabelle/HOL, including key design decisions that shaped the current iteration. We explore the technical complexities involved in applying higher-order logic, aiming to give readers an insightful perspective into the engaging aspects of working with an Interactive Theorem Prover. This work emphasizes the increasing importance of formal verification tools in clarifying complex mathematical concepts.
Robert Söldner, Detlef Plump
Log. Methods Comput. Sci.2
2023 Mechanised DPO Theory: Uniqueness of Derivations and Church-Rosser Theorem
Robert Söldner, Detlef Plump
ICGT2
2023 Monadic second-order incorrectness logic for GP 2
Christopher M. Poskitt, Detlef Plump
J. Log. Algebraic Methods Program.2
2022 Fast rule-based graph programs
abstract
Implementing graph algorithms efficiently in a rule-based language is challenging because graph pattern matching is expensive. In this paper, we present a number of linear-time implementations of graph algorithms in GP 2, an experimental programming language based on graph transformation rules which aims to facilitate program analysis and verification. We focus on two classes of rule-based graph programs: graph reduction programs which check some graph property, and programs using a depth-first search to test some property or perform an operation such as producing a 2-colouring or a topological sorting. Programs of the first type run in linear time without any constraints on input graphs while programs of the second type require input graphs of bounded degree to run in linear time. Essential for achieving the linear time complexity are so-called rooted rules in GP 2, which, in many situations, can be matched in constant time. For each of our programs, we prove both correctness and complexity, and also give empirical evidence for their runtime.
Graham Campbell 0001, Brian Courtehoute, Detlef Plump
Sci. Comput. Program.3
2021 Verifying Graph Programs with Monadic Second-Order Logic
Gia Septiana Wulandari, Detlef Plump
ICGT2
2021 Evolving graphs with semantic neutral drift
abstract
Abstract We introduce the concept of Semantic Neutral Drift (SND) for genetic programming (GP), where we exploit equivalence laws to design semantics preserving mutations guaranteed to preserve individuals’ fitness scores. A number of digital circuit benchmark problems have been implemented with rule-based graph programs and empirically evaluated, demonstrating quantitative improvements in evolutionary performance. Analysis reveals that the benefits of the designed SND reside in more complex processes than simple growth of individuals, and that there are circumstances where it is beneficial to choose otherwise detrimental parameters for a GP system if that facilitates the inclusion of SND.
Timothy Atkinson 0001, Detlef Plump, Susan Stepney
Nat. Comput.2
2021 Confluence up to garbage in graph transformation
abstract
The transformation of graphs and graph-like structures is ubiquitous in computer science. When a system is described by graph-transformation rules, it is often desirable that the rules are both terminating and confluent so that rule applications in an arbitrary order produce unique resulting graphs. However, there are application scenarios where the rules are not globally confluent but confluent on a subclass of graphs that are of interest. In other words, non-resolvable conflicts can only occur on graphs that are considered as “garbage”. In this paper, we introduce the notion of confluence up to garbage and generalise Plump's critical pair lemma for double-pushout graph transformation, providing a sufficient condition for confluence up to garbage by non-garbage critical pair analysis. We apply our results in two case studies about efficient language recognition: we present backtracking-free graph reduction systems which recognise a class of flow diagrams and a class of labelled series-parallel graphs, respectively. Both systems are non-confluent but confluent up to garbage. We also give a critical pair condition for subcommutativity up to garbage which, together with closedness, implies confluence up to garbage even in non-terminating systems.
Graham Campbell 0001, Detlef Plump
Theor. Comput. Sci.2
2020 Confluence up to Garbage
Graham Campbell 0001, Detlef Plump
ICGT2
2019 Linear-Time Graph Algorithms in GP 2
abstract
GP 2 is an experimental programming language based on graph transformation rules which aims to facilitate program analysis and verification. However, implementing graph algorithms efficiently in a rule-based language is challenging because graph pattern matching is expensive. GP 2 mitigates this problem by providing rooted rules which, under mild conditions, can be matched in constant time. In this paper, we present linear-time GP 2 programs for three problems: tree recognition, binary directed acyclic graph (DAG) recognition, and topological sorting. In each case, we show the correctness of the program, prove its linear time complexity, and also give empirical evidence for the linear run time. For DAG recognition and topological sorting, the linear behaviour is achieved by implementing depth-first search strategies based on an encoding of stacks in graphs.
Graham Campbell 0001, Brian Courtehoute, Detlef Plump
CALCO3
2019 Evolving graphs with horizontal gene transfer
abstract
We introduce a form of neutral Horizontal Gene Transfer (HGT) to Evolving Graphs by Graph Programming (EGGP). We introduce the µ × λ evolutionary algorithm, where µ parents each produce λ children who compete with only their parents. HGT events then copy the entire active component of one surviving parent into the inactive component of another parent, exchanging genetic information without reproduction. Experimental results from 14 symbolic regression benchmark problems show that the introduction of the µ × λ EA and HGT events improve the performance of EGGP. Comparisons with Genetic Programming and Cartesian Genetic Programming strongly favour our proposed approach.
Timothy Atkinson 0001, Detlef Plump, Susan Stepney
GECCO2
2018 Evolving Graphs by Graph Programming
Timothy Atkinson 0001, Detlef Plump, Susan Stepney
EuroGP2
2018 Probabilistic Graph Programs for Randomised and Evolutionary Algorithms
Timothy Atkinson 0001, Detlef Plump, Susan Stepney
ICGT2
2016 Compiling Graph Programs to C
Christopher Bak, Detlef Plump
ICGT2
2014 Verifying Monadic Second-Order Properties of Graph Programs
Christopher M. Poskitt, Detlef Plump
ICGT2
2012 $\mathcal M, \mathcal N$ -Adhesive Transformation Systems
Annegret Habel, Detlef Plump
ICGT2
2012 Hoare-Style Verification of Graph Programs
abstract
GP (for Graph Programs) is an experimental nondeterministic programming language for solving problems on graphs and graph-like structures. The language is based on graph transformation rules, allowing visual programming at a high level of abstraction
Christopher M. Poskitt, Detlef Plump
Fundam. Informaticae2
2010 A Hoare Calculus for Graph Programs
Christopher M. Poskitt, Detlef Plump
ICGT2
2007 Theory and applications of term graph rewriting: introduction
abstract
Term graph rewriting is concerned with the representation of functional expressions as graphs and the evaluation of these expressions by rule-based graph transformation. The advantage of computing with graphs rather than terms is that common subexpressions can be shared, improving the efficiency of computations in space and time. Sharing is ubiquitous in implementations of programming languages: many functional, logic, object-oriented and concurrent calculi are implemented using term graphs.
Ian Mackie, Detlef Plump
Math. Struct. Comput. Sci.2
2006 Graph Transformation in Constant Time
Mike Dodds, Detlef Plump
ICGT2
2004 Towards Graph Programs for Graph Algorithms
Detlef Plump, Sandra Steinert
ICGT1
2003 Diagrams for Meaning Preservation
Joe B. Wells, Detlef Plump, Fairouz Kamareddine
RTA2
2002 Relabelling in Graph Transformation
Annegret Habel, Detlef Plump
ICGT2
2002 TERMGRAPH 2002 - Workshop Survey
Detlef Plump
ICGT1
2002 Hierarchical Graph Transformation
Frank Drewes, Berthold Hoffmann, Detlef Plump
J. Comput. Syst. Sci.3
2001 Computational Completeness of Programming Languages Based on Graph Transformation
Annegret Habel, Detlef Plump
FoSSaCS2
2001 Double-pushout graph transformation revisited
abstract
In this paper we investigate and compare four variants of the double-pushout approach to graph transformation. As well as the traditional approach with arbitrary matching and injective right-hand morphisms, we consider three variations by employing injective matching and/or arbitrary right-hand morphisms in rules. We show that injective matching provides additional expressiveness in two respects: for generating graph languages by grammars without non-terminals and for computing graph functions by convergent graph transformation systems. Then we clarify for each of the three variations whether the well-known commutativity, parallelism and concurrency theorems are still valid and – where this is not the case – give modified results. In particular, for the most general approach with injective matching and arbitrary right-hand morphisms, we establish sequential and parallel commutativity by appropriately strengthening sequential and parallel independence.
Annegret Habel, Detlef Plump
Math. Struct. Comput. Sci.3
2000 Hierarchical Graph Transformation
Frank Drewes, Berthold Hoffmann, Detlef Plump
FoSSaCS3
2000 Bisimilarity in Term Graph Rewriting
Zena M. Ariola, Jan Willem Klop, Detlef Plump
Inf. Comput.3
1999 Graph Transformation for Specification and Programming
Marc Andries, Gregor Engels, Annegret Habel, Berthold Hoffmann, Hans-Jörg Kreowski, Sabine Kuske, Detlef Plump, Andy Schürr, Gabriele Taentzer
Sci. Comput. Program.7
1998 Termination of Graph Rewriting is Undecidable
abstract
It is shown that it is undecidable in general whether a graph rewriting system (in the “double pushout approach”) is terminating. The proof is by a reduction of the Post Correspondence Problem. It is also argued that there is no straightforward reduction of the halting problem for Turing machines or of the termination problem for string rewriting systems to the present problem.
Detlef Plump
Fundam. Informaticae1
1997 Simplification Orders for Term Graph Rewriting
Detlef Plump
MFCS1
1996 Term Graph Narrowing
abstract
We introduce term graph narrowing as an approach for solving equations by transformations on term graphs. Term graph narrowing combines term graph rewriting with first-order term unification. Our main result is that this mechanism is complete for all term rewriting systems over which term graph rewriting is normalizing and confluent. This includes, in particular, all convergent term rewriting systems. Completeness means that for every solution of a given equation, term graph narrowing can find a more general solution. The general motivation for using term graphs instead of terms is to improve efficiency: sharing common subterms saves space and avoids the repetition of computations.
Annegret Habel, Detlef Plump
Math. Struct. Comput. Sci.2
1995 On Termination of Graph Rewriting
Detlef Plump
WG1
1994 Critical Pairs in Term Graph Rewriting
Detlef Plump
MFCS1
1991 Jungle evaluation
Annegret Habel, Hans-Jörg Kreowski, Detlef Plump
Fundam. Informaticae3