tinygarden -- A java package for testing properties of spanning trees
Manuel Dubinsky, César Massri, Gabriel Taubin
TL;DR
tinygarden addresses the combinatorial explosion in spanning-tree sets by enumerating all spanning trees of small graphs with Matsui's algorithm within a Java package. The software architecture separates global analysis (Collectors) from local tasks (Processors) and interoperates with incidence-matrix representations and established graph tooling to enable hypothesis validation and pattern discovery. The paper documents current limitations to small graphs (up to 9 nodes) and outlines future improvements such as distributed Matsui implementations and Kirchhoff-based sizing, while highlighting applications to problems like the Minimum Fundamental Cycle Basis and spanning-tree diameter optimization. The work offers a practical platform for statistical analysis and heuristic development in graph design and optimization with real-world relevance to network design and related fields.
Abstract
Spanning trees are fundamental objects in graph theory. The spanning tree set size of an arbitrary graph can be very large. This limitation discourages its analysis. However interesting patterns can emerge in small cases. In this article we introduce \emph{tinygarden}, a java package for validating hypothesis, testing properties and discovering patterns from the spanning tree set of an arbitrary graph.
