Ziad Ismaili Alaoui ; Detlef Plump - Rule-Based Graph Programs Matching the Time Complexity of Imperative Algorithms

lmcs:15098 - Logical Methods in Computer Science, May 20, 2026, Volume 22, Issue 2 - https://doi.org/10.46298/lmcs-22(2:20)2026
Rule-Based Graph Programs Matching the Time Complexity of Imperative AlgorithmsArticle

Authors: Ziad Ismaili Alaoui ; Detlef Plump

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.


Volume: Volume 22, Issue 2
Secondary volumes: Selected Papers of the 17th International Conference on Graph Transformation (ICGT 2024)
Published on: May 20, 2026
Accepted on: December 12, 2025
Submitted on: January 17, 2025
Keywords: Programming Languages, Performance

Consultation statistics

This page has been seen 1 times.