# Bramble (graph theory)

In graph theory, a **bramble** for an undirected graph *G* is a family of connected subgraphs of *G* that all touch each other: for every pair of disjoint subgraphs, there must exist an edge in *G* that has one endpoint in each subgraph. The *order* of a bramble is the smallest size of a hitting set, a set of vertices of *G* that has a nonempty intersection with each of the subgraphs. Brambles may be used to characterize the treewidth of *G*.^{[1]}

## Treewidth and havens

A haven of order *k* in a graph *G* is a function *β* that maps each set *X* of fewer than *k* vertices to a connected component of *G* − *X*, in such a way that every two subsets *β*(*X*) and *β*(*Y*) touch each other. Thus, the set of images of *β* forms a bramble in *G*, with order *k*. Conversely, every bramble may be used to determine a haven: for each set *X* of size smaller than the order of the bramble, there is a unique connected component *β*(*X*) that contains all of the subgraphs in the bramble that are disjoint from *X*.

As Seymour and Thomas showed, the order of a bramble (or equivalently, of a haven) characterizes treewidth: a graph has a bramble of order *k* if and only if it has treewidth at least *k* − 1.^{[1]}

## Size of brambles

As Grohe and Marx observed, expander graphs of bounded degree have treewidth proportional to their number of vertices, and in order to include a subgraph disjoint from every set of vertices of this size, a bramble for such a graph must include an exponential number of different subgraphs. More strongly, for these graphs, even brambles whose order is slightly larger than the square root of the treewidth must have exponential size. However, Grohe and Marx also showed that every graph of treewidth *k* has a bramble of polynomial size and of order .^{[2]}

## Computational complexity

Because brambles may have exponential size, it is not always possible to construct them in polynomial time for graphs of unbounded treewidth. However, when the treewidth is bounded, a polynomial time construction is possible: it is possible to find a bramble of order *k*, when one exists, in time O(*n*^{k + 2}) where *n* is the number of vertices in the given graph. Even faster algorithms are possible for graphs with few minimal separators.^{[3]}

Bodlaender, Grigoriev, and Koster^{[4]} studied heuristics for finding brambles of high order. Their methods do not always generate brambles of order close to the treewidth of the input graph, but for planar graphs they give a constant approximation ratio. Kreutzer and Tazari^{[5]} provide randomized algorithms that, on graphs of treewidth *k*, find brambles of polynomial size and of order within polynomial time, coming within a logarithmic factor of the order shown by Template:Harvtxt to exist for polynomial size brambles.

## References

- ↑
^{1.0}^{1.1}{{#invoke:citation/CS1|citation |CitationClass=citation }}. In this reference, brambles are called "screens" and their order is called "thickness". - ↑ {{#invoke:citation/CS1|citation |CitationClass=citation }}.
- ↑ {{#invoke:citation/CS1|citation |CitationClass=citation }}.
- ↑ {{#invoke:citation/CS1|citation |CitationClass=citation }}.
- ↑ {{#invoke:citation/CS1|citation |CitationClass=citation }}.