# Tree-depth

In graph theory, the tree-depth of a connected undirected graph G is a numerical invariant of G, the minimum height of a Trémaux tree for a supergraph of G. This invariant and its close relatives have gone under many different names in the literature, including vertex ranking number, ordered chromatic number, and minimum elimination tree height; it is also closely related to the cycle rank of directed graphs and the star height of regular languages. Intuitively, where the treewidth graph width parameter measures how far a graph is from being a tree, this parameter measures how far a graph is from being a star.

## Definitions

The tree-depth of a graph G may be defined as the minimum height of a forest F with the property that every edge of G connects a pair of nodes that have an ancestor-descendant relationship to each other in F. If G is connected, this forest must be a single tree; it need not be a subgraph of G, but if it is, it is a Trémaux tree for G.

The set of ancestor-descendant pairs in F forms a trivially perfect graph, and the height of F is the size of the largest clique in this graph. Thus, the tree-depth may alternatively be defined as the size of the largest clique in a trivially perfect supergraph of G, mirroring the definition of treewidth as one less than the size of the largest clique in a chordal supergraph of G.

Another definition is the following:

$td(G)={\begin{cases}1,&{\text{if }}|G|=1;\\1+\min _{v\in V}td(G-v),&{\text{if }}G{\text{ is connected and }}|G|>1;\\\max _{i}td(G_{i}),&{\text{otherwise}};\end{cases}}$ where V is the set of vertices of G and the $G_{i}$ are the connected components of G. This definition mirrors the definition of cycle rank of directed graphs, which uses strong connectivity and strongly connected components in place of undirected connectivity and connected components.

Tree-depth may also be defined using a form of graph coloring. A centered coloring of a graph is a coloring of its vertices with the property that every connected induced subgraph has a color that appears exactly once. Then, the tree-depth is the minimum number of colors in a centered coloring of the given graph. If F is a forest of height d with the property that every edge of G connects an ancestor and a descendant in the tree, then a centered coloring of G using d colors may be obtained by coloring each vertex by its distance from the root of its tree in F.

Finally, one can define this in terms of a pebble game, or more precisely as a cops and robber game. Consider the following game, played on an undirected graph. There are two players, a robber and a cop. The robber has one pebble he can move along the edges of the given graph. The cop has an unlimited number of pebbles, but she wants to minimize the amount of pebbles she uses. The cop cannot move a pebble after it has been placed on the graph. The game proceeds as follows. The robber places his pebble. The cop then announces where she wants to place a new cop pebble. The robber can then move his pebble along edges, but not through occupied vertices. The game is over when the cop player places a pebble on top of the robber pebble. The tree-depth of the given graph is the minimum number of pebbles needed by the cop to guarantee a win. For a star graph, two pebbles suffice: the strategy is to place a pebble at the center vertex, forcing the robber to one arm, and then to place the remaining pebble on the robber. For a path with $n$ vertices, the cop uses a binary search strategy, which guarantees that at most $\lceil \log _{2}(n+1)\rceil$ pebbles are needed.

## Examples

The tree-depth of a complete graph equals its number of vertices. For, in this case, the only possible forest F for which every pair of vertices are in an ancestor-descendant relationship is a single path. Similarly, the tree-depth of a complete bipartite graph Kx,y is min(x,y) + 1. For, the nodes that are placed at the leaves of the forest F must have at least min(x,y) ancestors in F. A forest achieving this min(x,y) + 1 bound may be constructed by forming a path for the smaller side of the bipartition, with each vertex on the larger side of the bipartition forming a leaf in F connected to the bottom vertex of this path.

The tree-depth of a path with n vertices is exactly $\lceil \log _{2}(n+1)\rceil$ . A forest F representing this path with this depth may be formed by placing the midpoint of the path as the root of F and recursing within the two smaller paths on either side of it.

## Depth of trees and relation to treewidth

Any n-vertex forest has tree-depth O(log n). For, in a forest, one can always find a constant number of vertices the removal of which leaves a forest that can be partitioned into two smaller subforests with at most 2n/3 vertices each. By recursively partitioning each of these two subforests, we can easily derive a logarithmic upper bound on the tree-depth. The same technique, applied to a tree decomposition of a graph, shows that, if the treewidth of an n-vertex graph G is t, then the tree-depth of G is O(t log n). Since outerplanar graphs, series-parallel graphs, and Halin graphs all have bounded treewidth, they all also have at most logarithmic tree-depth.

In the other direction, the treewidth of a graph is at most equal to its tree-depth. More precisely, the treewidth is at most the pathwidth, which is at most one less than the tree-depth.

## Graph minors

A minor of a graph G is another graph formed from a subgraph of G by contracting some of its edges. Tree-depth is monotonic under minors: every minor of a graph G has tree-depth at most equal to the tree-depth of G itself. Thus, by the Robertson–Seymour theorem, for every fixed d the set of graphs with tree-depth at most d has a finite set of forbidden minors.

If C is a class of graphs closed under taking graph minors, then the graphs in C have tree-depth $O(1)$ if and only if C does not include all the path graphs.

## Induced subgraphs

As well as behaving well under graph minors, tree-depth has close connections to the theory of induced subgraphs of a graph. Within the class of graphs that have tree-depth at most d (for any fixed integer d), the relation of being an induced subgraph forms a well-quasi-ordering. The basic idea of the proof that this relation is a well-quasi-ordering is to use induction on d; the forests of height d may be interpreted as sequences of forests of height d − 1 (formed by deleting the roots of the trees in the height-d forest) and Higman's lemma can be used together with the induction hypothesis to show that these sequences are well-quasi-ordered.

Well-quasi-ordering implies that any property of graphs that is monotonic with respect to induced subgraphs has finitely many forbidden induced subgraphs, and therefore may be tested in polynomial time on graphs of bounded tree-depth. The graphs with tree-depth at most d themselves also have a finite set of forbidden induced subgraphs.

If C is a class of graphs with bounded degeneracy, the graphs in C have bounded tree-depth if and only if there is a path graph that cannot occur as an induced subgraph of a graph in C.

## Complexity

Computing tree-depth is computationally hard: the corresponding decision problem is NP-complete. The problem remains NP-complete for bipartite graphs (Bodlaender et al. 1998), as well as for chordal graphs.

On the positive side, tree-depth can be computed in polynomial time on interval graphs, as well as on permutation, trapezoid, circular-arc, circular permutation graphs, and cocomparability graphs of bounded dimension. For undirected trees, tree-depth can be computed in linear time.

Bodlaender et al. (1995) give an approximation algorithm for tree-depth with an approximation ratio of $O((\log n)^{2})$ , based on the fact that tree-depth is always within a logarithmic factor of the treewidth of a graph.

Because tree-depth is monotonic under graph minors, it is fixed-parameter tractable: there is an algorithm for computing tree-depth running in time $f(d)n^{O(1)}$ , where d is the depth of the given graph and n is its number of vertices. Thus, for every fixed value of d, the problem of testing whether the tree-depth is at most d can be solved in polynomial time. More specifically, the dependence on n in this algorithm can be made linear, by the following method: compute a depth first search tree, and test whether this tree's depth is greater than 2d. If so, the tree-depth of the graph is greater than d and the problem is solved. If not, the shallow depth first search tree can be used to construct a tree decomposition with bounded width, and standard dynamic programming techniques for graphs of bounded treewidth can be used to compute the depth in linear time.

It is also possible to compute the tree-depth exactly, for graphs whose tree-depth may be large, in time O(cn) for a constant c slightly smaller than 2.