Optimal Enumeration of Eulerian Trails in Directed Graphs

Abstract

The BEST theorem, due to de Bruijn, van Aardenne-Ehrenfest, Smith, and Tutte, is a classical tool from graph theory that links the Eulerian trails in a directed graph G=(V,E) with the arborescences in G. In particular, one can use the BEST theorem to count the Eulerian trails in G in polynomial time. For enumerating the Eulerian trails in G, one could naturally resort to first enumerating the arborescences in G and then exploiting the insight of the BEST theorem to enumerate the Eulerian trails in G: every arborescence in G corresponds to at least one Eulerian trail in G. For over two decades, the fastest algorithm for enumerating arborescences in G took O(m n + n + zA 2 n) time, where n=|V|, m=|E|, and zA is the number of arborescences in G [Uno, ISAAC 1998]. Since Uno's algorithm does not lead to an optimal enumeration of Eulerian trails in directed graphs, we were motivated to develop a direct algorithm for this problem. Our central contribution is a remarkably simple algorithm to directly enumerate the zT Eulerian trails in G in the optimal O(m + zT) time. As a consequence, our result improves on an implementation of the BEST theorem for counting Eulerian trails in G when zT=o(n2), and also unconditionally improves the combinatorial O(m· zT)-time algorithm of Conte et al. [FCT 2021] for the same task. Moreover, we show that, with some care, our algorithm can be extended to enumerate Eulerian trails in directed multigraphs in optimal time, enabling applications in bioinformatics and data privacy.

0

Turn this paper into a full lesson

ArcXiv compiles a staged curriculum from this paper: 8-12 lessons across beginner → advanced, synthesised section guides, visuals, flashcards, a quiz, exercises, and on-demand deep dives per section. Grounded in the abstract, never invented.

Discussion (0)

Sign in to join the discussion.

Loading comments…