Table of Contents
Fetching ...

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.

tinygarden -- A java package for testing properties of spanning trees

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.
Paper Structure (4 sections, 5 figures, 1 table)

This paper contains 4 sections, 5 figures, 1 table.

Figures (5)

  • Figure 1: Example of a Graph
  • Figure 2: Example of a Path
  • Figure 3: Example of a Cycle
  • Figure 4: Example of a Spanning Tree
  • Figure 5: Distribution of the Min FCB of the graphs of 8 nodes (left). Aggregated relation of the Min FCB with respect to the number of edges (right)