division into regions

a region of is an edge-induced subgraph of .
[cite:;taken from @graph_klein_2024 definition 5.9.1]
a division of is a collection of regions such that each edge is in atleast one region. a vertex is a boundary vertex of the division if it is in more than one region. a division is an \(r\)-division if there are regions, and each region has at most vertices and boundary vertices.
[cite:;taken from @graph_klein_2024 definition 5.9.2]
a natural face of a region is a face of that is also a face of . a hole of is a face of that is not natural.
[cite:;taken from @graph_klein_2024 definition 5.9.3]
an -division with few holes is an -division in which
  • any edge of two regions is on a hole of each of them, and
  • every region has holes.
[cite:;taken from @graph_klein_2024 definition 5.9.4]
a decomposition tree for is a rooted tree in which each leaf is assigned a region of such that each edge of is represented in some region. for each node of the decomposition tree, the region corresponding to is the subgraph of that is the union of the regions assigned to descendants of .
[cite:;taken from @graph_klein_2024 definition 5.9.5]
a decomposition tree admits an -division with few holes if there is a set of nodes of whose corresponding regions form an -division of with few holes.
[cite:;taken from @graph_klein_2024 definition 5.9.6]
for a constant , there is an -time algorithm that, for any triangulated planar embedded graph , outputs a binary decomposition tree for that simultaneously admits an -division of with few holes for every .
[cite:;taken from @graph_klein_2024 theorem 5.10.1]
since the input graph is assumed to be triangulated, it follows that, for every region of , every natural face is a triangle. the algorithm is invoked by calling the procedure , given in [cite:@graph_klein_2024 Algorithm 5.1].
given a connected region with more than edges, and given a recursion-depth parameter , first triangulates each hole of by adding an artificial vertex and attaching it via artificial edges to each occurrence of a vertex on the boundary of the hole. let be the resulting graph. the vertices and edges that are not artificial are natural.
next, the procedure uses the planar-cycle-separator algorithm to find a simple-cycle separator consisting of at most natural vertices, where is a constant and is the number of vertices of (which is equivalent to the number of natural vertices of ). depending on the current recursion depth , the cycle separates in a balanced way with respect to either vertices, boundary vertices, or holes.
note that the cycle separator algorithm is invoked on , which has more than vertices since it also has some artificial vertices. however, its shown in [cite:@graph_klein_2024 lemma 5.10.4] that there are at most twelve artificial vertices, the bound of still holds for some choice of (since ). the number of artificial vertices on the separator does not matter in the analysis of .
the cycle determines a bipartition of the faces of the triangulated graph , which in turn induces a bipartition of the natural faces of . for , let be the region consisting of the edges bounding the faces in , together with the edges of that are in (i.e., omitting the artificial edges added to triangulate the artificial faces).
If is connected then is connected and is connected.
[cite:;taken from @graph_klein_2024 lemma 5.10.2]
the procedure calls itself recursively on and , obtaining decomposition trees and , respectively. the procedure creates a new decomposition tree by creating a new root corresponding to the region and assigning as its children the roots of and .
[cite:;taken from @graph_klein_2024 lemma 5.10.2]
it is shown in [cite:@graph_klein_2024 chapter 5.10.1 number of holes] how to take care of holes.
let be the number of vertices in the original input graph . consider the decomposition tree of produced by . each node corresponds to a region . we define , and to be the number of boundary vertices of . we will show that for any given , admits an -division of . the analysis consists of two phases. in the first phase ([cite:@graph_klein_2024 lemma 5.10.8]), we identify a set of regions for which the number of vertices is at most , and the average number of boundary vertices is . however, some of the individual regions in this set might have too many boundary vertices (since the number of vertices and boundary vertices do not necessarily decrease at the same rate). we show that each such region can be replaced with smaller regions in so that every region has boundary vertices, and the total number of regions remains ([cite:@graph_klein_2024 lemma 5.10.9]).
[cite:@graph_klein_2024 chapter 5.10.3 number of holes]
[cite:;taken from @graph_klein_2024 chapter 5.10 computing a decomposition tree]