Abstract 1 Introduction 2 Preliminaries 3 Algorithmic Results 4 Further Improvements for cutting Squares 5 Using Coarser Grid (𝒓=𝟒) for Squares to get 𝟗𝟐𝟓𝟔-separation References Appendix A Deferred proofs

An Improved Guillotine Cut for Squares

Parinya Chalermsook ORCID University of Sheffield, England Axel Kugelmann PSL Research University, Paris, France Ly Orgo ORCID Aalto University, Finland Sumedha Uniyal ORCID Aalto University, Finland Minoo Zarsav ORCID Aalto University, Finland
Abstract

Given a set of n non-overlapping geometric objects, can we separate a constant fraction of them using straight-line cuts that extend from edge to edge? In 1996, Urrutia posed this question for compact convex objects. Pach and Tardos later refuted it for general line segments by constructing a family where any separable subfamily has size at most O(nlog32). However, for axis-parallel rectangles, they provided positive evidence, showing that an Ω(1/logn)-fraction can be separated.

This problem naturally arises in geometric approximation algorithms. In particular, when restricting cuts to only orthogonal straight lines, known as a guillotine cut sequence, any bound on the separability ratio directly translates into a clean and simple dynamic programming for computing a maximum independent set of geometric objects.

This paper focuses on the case when the objects are squares. For squares of arbitrary sizes, an Ω(1)-fraction can be separated (Abed et al., APPROX 2015), recently improved to 1/40 (and 1/1600.62% for the weighted case) (Khan and Pittu, APPROX 2020). We further improve this bound, showing that a 9/2563.51% can be separated for the weighted case. This result significantly narrows the possible range for squares to [3.51%,50%]. The key to our improvement is a refined analysis of the existing framework.

Keywords and phrases:
Guillotine cuts, Geometric Approximation Algorithms, Rectangles, Squares
Copyright and License:
[Uncaptioned image] © Parinya Chalermsook, Axel Kugelmann, Ly Orgo, Sumedha Uniyal, and Minoo Zarsav; licensed under Creative Commons License CC-BY 4.0
2012 ACM Subject Classification:
Theory of computation Approximation algorithms analysis
; Theory of computation Computational geometry
Acknowledgements:
In memory of our friend, Sumedha Uniyal.
Funding:
This work was supported by the European Research Council (ERC) under the European Union’s Horizon 2020 research and innovation programme (grant agreement No 759557).
Editors:
Pat Morin and Eunjin Oh

1 Introduction

In this paper, we investigate the following combinatorial question, posed initially by Urrutia in 1996 [17]: Given a collection of n disjoint compact convex objects, what is the largest subset that a sequence of straight-line cuts can separate? This combinatorial geometric question naturally arises in two distinct scenarios:

  • Cutting Stock Problems: The cutting stock problem involves cutting a standard-sized large piece of material – such as a roll of paper, a sheet of glass, or a wooden plank – into smaller specified pieces while minimizing waste [5]. This class of problems has inspired numerous challenges in operations research, combinatorics, and approximation algorithms (see, e.g., [9, 13, 15]).

  • Simple Algorithms for Geometric Packing: In geometric packing, we seek to compute the maximum independent set in the intersection graph of geometric objects, i.e., given a collection of convex polygons, find the largest subset of non-overlapping polygons. These problems have been extensively studied, with a focus on approximation algorithms (due to their NP-hardness even for the simplest objects like disks or squares) [8, 2, 4, 3, 6, 10, 14, 7].

While Urrutia’s question was refuted by Pach and Tardos [16] – who constructed a family of line segments where any separable subset has size at most O(nlog32) – there remains hope for axis-parallel rectangles:

  • For any family of rectangles, there exists a separable set of size Ω(n/logn) [16].

  • For squares, a constant fraction of any given family is separable, thus affirmatively answering Urrutia’s original question for square objects [1].

Both [16] and [1] (and a recent follow-up [12]) rely only on a sequence of orthogonal straight-line cuts (known as guillotine cuts) to separate the rectangles. Guillotine cuts are particularly appealing from an approximation algorithms perspective, as they lead to clean and simple combinatorial techniques. Specifically, any non-constructive result that guarantees a guillotine separable γ fraction of objects immediately implies a simple DP-based (1/γ)-approximation algorithm for geometric packing of the respective object families.

This connection, in fact, holds in a more general setting when the geometric objects have weights, i.e., we are looking for a separable set that retains γ fraction of total weights. For squares, the current best known factor is 1/40 (and 1/1600.62% for the weighted setting) [12], while obtaining a factor better than 1/2 is not possible [1].

1.1 Our Contributions

Our main contribution is summarized in the following theorem.

Theorem 1.

For all families of non-overlapping weighted squares, there exists a separable subset that retains at least 9/2563.51% of the total weight.

So our result improves upon the previous result by a factor of 5.6 in the weighted setting.

Broader connections to the DP framework.

Our results relate to a dynamic programming framework for geometric packing, initiated by Adamaszek and Wiese [3, 2]. Their framework is parametrized by (α,t), where a geometric object family is called (α,t)-good if it contains a subset of at least an α-fraction of objects that can be separated using polygonal cuts that always create pieces with at most t edges. If a family is (α,t)-good, the framework yields a (1/α)-approximation algorithm with running time nO(t). In Adamaszek, Har-Peled, and Wiese’s elegant result [2], they show that every family of polygons in 2D is ((1ϵ),polylogn)-good, implying a quasi-polynomial time approximation scheme (QPTAS) for the independent set of polygons.

Since the existence of a γ-fraction guillotine separable subset implies that the family is (γ,4)-good, our results directly contribute to a better understanding of this framework for squares. The recent breakthrough by Mitchell [14] show that rectangles are (1/10,5)-good, and further refinements [11] prove that they are (12ϵ,O(1/ϵ))-good, leading to the best known (2+ϵ)-approximation algorithm for the maximum independent set of rectangles.

1.2 Overview of Techniques

This paper builds on the techniques from [1]. There, the guillotine cut sequence is created in two phases. In the first phase, which we call the grid drawing phase, the procedure draws hierarchical grid lines so that each square is assigned its own cell roughly the size of its own. Those squares that do not fit this criterion would be removed from the first phase. We call the squares that remain after this phase the surviving squares. Denote by γ1 the surviving ratio of the first phase. In the second phase, called conflict removal phase, we define a conflict graph H where the vertices correspond to the surviving squares and the edges connect the squares that are “difficult” to save simultaneously. The graph H is defined so that every independent set in this graph corresponds to squares that can be guillotine-separated. Therefore, the crux of this approach is to ensure that the conflict graph is sufficiently sparse, so that the graph is k-colorable for some small value of k. This will imply a guillotine-separable set of size γ1/k.

Using this terminology, the best known factor of 160 [12] ensures that the conflict graph is 5-colorable and loses the factor of 32 in the grid drawing phase [12]; the earlier work by Abed et al. [1] also aims for a simple conflict removal phase, and therefore losing a relatively large factor in the grid drawing phase. Our improvements are obtained by looking at this differently. We ensure that the first phase has a good surviving rate (i.e., our γ1=9/16), thus naturally complicating the second phase. Our conflict graph is more sophisticated and is no longer 5-colorable. We, nevertheless, show that the graph is 16-colorable, which implies the factor of 9/256 as claimed.

The paper is written so that the ideas are introduced one by one. We first present the proof where γ1=1/4 and k=15 (so the factor is 1/60) and improve k to 9 and 8 respectively (while keeping γ1=1/4). Finally, we present the main result with γ1=9/16 and k=16.

2 Preliminaries

Assume we are given a set of non-overlapping axis-parallel squares of arbitrary sizes. We aim to separate as many of them as possible with a sequence of axis-parallel cuts, defined as follows.

Guillotine cuts are a series of horizontal and vertical cuts separating objects on a plane, such that each cut is performed on a previously separated part. For example, if the first vertical cut separates the plane into two, the next two horizontal cuts can separate the two pieces independently.

Given a collection of non-overlapping squares , ||=n on a plane, the problem is to find the largest set R separable by Guillotine cuts.

2.1 Grid construction

In this section, we give the random hierarchical grid construction used in all the separation algorithms. Let M be the maximum width/height of a square in . Instead of width/height, we will say the size of a square.

We define a hierarchical grid structure similar to Abed et al. [1], which will act as a scaffolding for our instance . In our cutting strategy, we will perform cuts only along these lines.

We choose two integers a,b[0,M) uniformly at random, corresponding to the random horizontal and vertical shift, respectively. The positive integer r will be a “scaling factor”.

Algorithm 1 Grid drawing.

We say that a grid line is level-i if it is drawn by Algorithm 1 in iteration i. Note that all level-i grid lines are also level-(i+1) grid lines, etc.

Definition 2 (Cell levels).

Any two consecutive horizontal and vertical grid lines on level-i form a unique square, called a level-i cell.

Definition 3 (Square levels).

We say that S is a level-i square, if its size is within (M2i+1,M2i].

Fact 4.

A level-i cell is at least r times (and strictly less than 2r times) larger than a level-i square.

Proposition 5.

Grid cells satisfy the following properties:

  • A level-i cell has a size of rM2i.

  • Two cells of the same level do not intersect.

  • For two cells that intersect, one must contain the other.

We say that C is a subcell of D if D contains C, and DC (they are not the same cell). We use 𝗌𝗂𝗓𝖾(C) to refer to the size of cell C and similarly for squares.

2.2 Surviving set 𝓡𝟏

Definition 6 (Original cells).

Let S be any square and i be the level of S. If S does not intersect a grid line of level i, we define the original cell of S to be the level-i cell that contains S. We denote it as 𝒪𝒞(S).

Note that 𝒪𝒞(S) is not defined for every square S. The set of squares for which original cells are defined is called the surviving set 1.

Theorem 7 (Claim 2.1, [1]).

The horizontal and vertical shifts a,b[0,M) can be chosen such that the surviving set 1 is of size at least (11r)2||.

The proof can be found in Appendix A.

3 Algorithmic Results

3.1 Overview

We will introduce multiple strategies for separating a set of squares by performing guillotine cuts. All of these strategies will follow the basic structure outlined here.

Algorithm 2 Cutting framework.

This strategy leads to a set of size at least (11r)21β||. The specific ratio depends on r and, most importantly, on how we define a conflict, which will gradually be improved in each section, resulting in increasingly larger sets.

3.2 A direct cutting strategy to get 𝟏/𝟔𝟎-separation

In this subsection, we fix r=2, define the conflict graph G1 on 1, and show that it is 15-colorable. Thus, the cutting sequence separating any independent set of G1 will imply a 1/60-separation.

We say that two squares S1,S21 conflict if the original cells of S1 and S2 are the same, i.e., 𝒪𝒞(S1)=𝒪𝒞(S2), or we have the case that 𝒪𝒞(S1) contains 𝒪𝒞(S2) and S1 intersects 𝒪𝒞(S2). Note that S1 and S2 do not conflict if 𝒪𝒞(S1) and 𝒪𝒞(S2) are of the same level but not the same cells. Figure 1 shows examples of conflicting and non-conflicting squares.

Figure 1: Dot-filled squares conflict with the black square, but the empty squares do not. The original cell of the black square is the black level-i cell.

Now, we define the conflict graph G1, so that the vertices are the squares in and two vertices are adjacent if they conflict.

For any cell C, we denote by 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒪𝒞(C) the set of all squares S1, such that 𝒪𝒞(S)=C. Note that some higher- or lower-level squares might be drawn inside C but not contained in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒪𝒞(C).

Lemma 8.

The conflict graph G1 is 15-colorable.

Proof.

We prove it by induction on the size of G1. If G1 is empty, it is obviously 15-colorable. Otherwise, we take the smallest non-empty cell C1 such that 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒪𝒞(C1), i.e. there exists a square S1 such that 𝒪𝒞(S)=C1, and for any cell C2 contained in C1, we have 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒪𝒞(C2)=. Let i be the level of cell C1.

Figure 2: We color nine squares contained in C1 using different colors.

According to the induction hypothesis, G1\𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒪𝒞(C1) is 15-colorable, so let us assume it is already colored. We show that we can color all the squares in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒪𝒞(C1) to get a 15 coloring for G1. These squares all have to have a level at most i; otherwise, their original cell would have been smaller, and we wouldn’t have chosen C1. According to Fact 4, the size of level-i squares is strictly bigger than 12r=14 of the size of C1, and therefore at most 3 squares of level i fit into a cell of level i horizontally as well as vertically. Since squares of smaller levels are larger, it follows that at most 9 squares can be inside C1 (Figure 2). If C1 contains squares of smaller levels, they will already be colored by the induction hypothesis, and these colors will not be changed. We can color all the squares in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒪𝒞(C1) with at most nine different colors (see Figure 2), avoiding the already used colors inside C1.

Now, we bound the number of squares that conflict with any square in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒪𝒞(C1) but are not contained in C1. Since C1 is the smallest non-empty cell, any square S1 must cross the boundary of C1. Since C1 is a level-i cell, then 𝒪𝒞(S) is a level-j cell for j<i. We bound the number of squares that can conflict with any square in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒪𝒞(C1) based on the way they intersect C1 (see Figure 3(a)): First, there can be at most four squares containing one of the corners of C1. Next, let S be a square intersecting the side of C1 without containing any corner. Using Fact 4, we know that the size of S is strictly bigger than half of the size of C1. Thus, there can be at most one square in this position for each side of C1, which adds up to four squares. We can further reduce this number because two sides of any level-i cell are also level-(i1) grid lines. Then, there cannot be any intersecting square on those sides, implying that at most two squares intersecting only sides of C1 (see Figure 3(b)).

(a) Without considering the geometry of the cells.
(b) Such squares shouldn’t cross the level-(i1) grid lines.
Figure 3: The dot-filled squares show the possible positions of squares not contained in cell C (darkened area) and conflict with the black square in C.

We showed that at most six squares can conflict with squares in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒪𝒞(C1) by intersecting the boundary of C1 and at most 9 colors can be required to color the squares inside C1, leading to a valid 15 coloring for G1.

Lemma 9.

Any independent set of G1 is guillotine separable.

Proof.

Let 1 be an independent set of G1. First, we can separate the two squares with the “biggest” original cells without cutting through any other squares. Let S1,S2 be the squares such that 𝗌𝗂𝗓𝖾(𝒪𝒞(S1))𝗌𝗂𝗓𝖾(𝒪𝒞(S2)) and for any other square S, 𝗌𝗂𝗓𝖾(𝒪𝒞(S2))𝗌𝗂𝗓𝖾(𝒪𝒞(S)). Note that since S1 and S2 cannot conflict, then 𝒪𝒞(S1)𝒪𝒞(S2).

Figure 4: The dashed squares are 𝒪𝒞(S1) and 𝒪𝒞(S2), and black-line cut separates S1 and S2.

Since the grid lines defining 𝒪𝒞(S2) cannot go through any cell smaller than itself, we can safely cut along these grid lines and do not touch any other squares in except for S1. Now, we claim that one of the four grid lines defining 𝒪𝒞(S2) separates S1 and S2 (see Figure 4). Since S1 cannot intersect 𝒪𝒞(S2), it must be entirely on the left, right, top, or bottom of 𝒪𝒞(S2). The grid line of the corresponding side then separates S1 from S2 without cutting any square in . We can separate all the squares by recursively and independently applying this process to the two resulting sub-instances.

3.3 Fitting Cells to get 𝟏/𝟒𝟒-separation

In this section, we improve coloring by using the additional concept of fitting cells. The grid’s scaling factor remains 2.

Figure 5: For the black square 𝒞(S)=𝒪𝒞(S), whereas for the grey square 𝒞(S)𝒪𝒞(S).

Note that the grid structure defined in Section 2 forms a laminar family of cells. Let the set of these cells be 1. For any laminar family of cells, we define the notion of fitting cells as follows.

Definition 10 (Fitting cells).

Given a laminar family of cells 1 and a surviving set 1, the fitting cell 𝒞(S) of any square S1 is the smallest cell in 1 containing S.

The fitting and original cells of square S1 can differ when the former is too small to qualify as an original cell because of the scaling factor r=2 (Figure 5).

Fact 11.

For a level-i square S, the fitting cell 𝒞(S) is always of level j, for iji+1.

Proof.

The bound ji+1 is a direct result of the scaling factor: for a cell C of level i, 𝗌𝗂𝗓𝖾(S)>14𝗌𝗂𝗓𝖾(C) (Fact 4), therefore for a cell C1 of level i+1, we would have 𝗌𝗂𝗓𝖾(S)>12𝗌𝗂𝗓𝖾(C1) and for a level-(i+2) cell C2, 𝗌𝗂𝗓𝖾(S)>𝗌𝗂𝗓𝖾(C2). This implies that C2 cannot be a fitting cell of S, bounding j at most i+1. The first part of the inequality, ij, is easy to see since every original cell must contain S, so the smallest cell that contains S cannot be larger than 𝒪𝒞(S).

Conflict graph 𝑮𝟐.

We define the new conflict graph G2 based on the definition of conflicts below.

Definition 12 (Conflicts).

Let S1 and S2 be distinct squares in 1. We say that S1 and S2 conflict if one of the following conditions is true: (i) 𝒞(S1)=𝒞(S2), or (ii) 𝗌𝗂𝗓𝖾(𝒞(S1))>𝗌𝗂𝗓𝖾(𝒞(S2)) and S1 intersects 𝒞(S2).

Figure 6 shows examples of conflicting and non-conflicting squares.

Figure 6: Dot-filled squares conflict with the black square, and empty squares do not. The fitting cell of the black square is the black level-i cell.

Analogously to 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒪𝒞 for original cells, we define 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞 for fitting cells.

Definition 13.

Let C be a cell of 1. We use 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C) to denote the set of all squares S1, such that 𝒞(S)=C.

Lemma 14.

The conflict graph G2 is 11-colorable.

The proof can be found in Appendix A.

Lemma 15.

Any independent set of G2 is guillotine-separable.

The proof can be seen by replacing the concept of original cells in Lemma 9 with fitting cells.

4 Further Improvements for cutting Squares

4.1 Twin squares to reach 𝟏/𝟑𝟔-separation

In this subsection, we introduce the notion of twin squares. The idea is to identify pairs of squares (belonging to the same fitting cell) that can be separated using the next level’s vertical or horizontal grid line. We will get a sparser conflict graph G3 on 1 by removing conflicts between such squares. We show that the new conflict graph G3 is 9-colorable, and any independent set of this graph is guillotine separable, implying a 1/36-separation for . We start with the same set 1, laminar family 1, and the fitting cells defined in Section 3.3.

Definition 16 (Twin squares).

For a laminar family 1, Let S1 and S2 be two squares with the same level-i fitting cell, i.e. 𝒞(S1)=𝒞(S2). We say S1 and S2 are twin squares if they can be separated by the level-(i+1) horizontal or vertical grid line cutting through 𝒞(S1) (see Figure 7).

Figure 7: The two gray and two black squares all have a common fitting cell.

Conflict graph 𝑮𝟑.

We define the new conflict graph G3 based on the definition of conflicts below.

Definition 17 (Conflicts).

Let S1 and S2 be two squares in 1. We say that S1 and S2 conflict (up to renaming) if one of the following conditions is true:

  • 𝒞(S1)=𝒞(S2), and S1 and S2 are not twin squares.

  • 𝒞(S1) contains 𝒞(S2), and S1 intersects 𝒞(S2).

Lemma 18.

The conflict graph G3 is 9-colorable.

The proof can be found in Appendix A.

Lemma 19.

Any independent set of G3 is guillotine separable.

Proof.

Similarly to Lemma 9, we show a recursive cutting strategy. Starting with an independent set 2 of G3, we first separate two squares with the “biggest” fitting cell. Let S1,S22 be the squares such that 𝗌𝗂𝗓𝖾(𝒞(S1))𝗌𝗂𝗓𝖾(𝒞(S2)), and for any other square S2, 𝗌𝗂𝗓𝖾(𝒞(S2))𝗌𝗂𝗓𝖾(𝒞(S)). If 𝒞(S1)𝒞(S2), then S1 and S2 can be separated using the proof of Lemma 9 (see Figure 4). Otherwise, S1,S2 must be twin squares with a common fitting cell (let C=𝒞(S1)), since they do not conflict. Then, we can cut along the grid lines of C (see Figure 8). Since for any square S2, 𝗌𝗂𝗓𝖾(C)𝗌𝗂𝗓𝖾(𝒞(S)), we can safely perform these cuts without intersecting any square in 2.

Figure 8: Cutting to separate twin squares; we first cut the dashed grey lines 1 to 4 to isolate C. We cut along the 5th light grey line to separate S1 and S2. No square can intersect the last cut.

Let i be the level of C. Since we have isolated C with the first 4 cuts, further cuts of C can be done independently from the rest of the graph. We use the horizontal (or vertical) level-(i+1) grid line, which certifies that S1 and S2 are twins (see Definition 16), as a cut to separate S1 from S2 (see Figure 8). Let S2 be any square inside C intersecting the cut. Since S is contained in C then 𝗌𝗂𝗓𝖾(𝒞(S))𝗌𝗂𝗓𝖾(C). S also cannot have a level-(i+1) (or smaller) cell as its fitting cell because of intersecting the level-(i+1) grid line. Therefore 𝒞(S)=C. Since twin squares S1 and S2 intersect the vertical level-(i+1) grid line and their fitting cell is also C, then S conflicts with them. This implies that S2 and the cut is safe to perform. Similarly to the proof of Lemma 9, we recursively apply this process to separate 2.

4.2 Half-Cells for a 𝟏/𝟑𝟐-separation

In this section, we redefine the notion of cells to include rectangular cells.

Definition 20 (Rectangular Cells).

Any two consecutive horizontal and vertical grid lines of level i and j form a unique rectangle, called a level-(i,j) cell.

Let square-cells be all level-(i,i) cells for some i (our old notion of cells), and half-cells be all level-(i,i+1) cells for some i. Note that half-cells of level (i,i+1) can be obtained by splitting square-cells of level (i,i) with the level-(i+1) vertical line within them.

We will use 𝗁𝖾𝗂𝗀𝗁𝗍(C) and 𝗐𝗂𝖽𝗍𝗁(C) to refer to the height and width of a cell C, respectively. For any pair of cells C1,C2, we will say 𝗌𝗂𝗓𝖾(C1)𝗌𝗂𝗓𝖾(C2), if 𝗁𝖾𝗂𝗀𝗁𝗍(C1)𝗁𝖾𝗂𝗀𝗁𝗍(C2) and 𝗐𝗂𝖽𝗍𝗁(C1)𝗐𝗂𝖽𝗍𝗁(C2). Note that among square-cells and half-cells, any pair of cells C1,C2 is comparable (either 𝗌𝗂𝗓𝖾(C1)𝗌𝗂𝗓𝖾(C2) or 𝗌𝗂𝗓𝖾(C2)𝗌𝗂𝗓𝖾(C1)), since we are only considering the tall halves. Adding half-cells to the laminar family 1, the resulting family 2 remains laminar. In this section, let fitting cells be defined over the laminar family 2 (Definition 10), while the scaling factor r remains 2. Examples of the new fitting cells are depicted on Figure 9.

Figure 9: The black dashed square-cell is the original cell of all the squares. The fitting cell of the black square is its original cell. The dark and light gray squares have a half-cell and a higher-level square-cell as their fitting cells, respectively.
Fact 21.

For a level-i square S, the fitting cell 𝒞(S) is

  • A square-cell of level j, for iji+1, or

  • A half-cell of level (i,i+1)

Proof.

The first part follows directly from Fact 11. Let us consider the second part. When we define fitting cells over 2, the surviving set remains the same; therefore, when the fitting cell is a half-cell, it is always two times narrower than if we defined fitting cells over . Similarly to the proof of Fact 11, a half-cell C of level (i,i+1) has 𝗐𝗂𝖽𝗍𝗁(S)>12𝗐𝗂𝖽𝗍𝗁(C), therefore a half-cell C1 of level (i+1,i+2) would not be able to contain S.

Twin squares.

Similarly to the original definition Definition 16, we define twin squares S1,S21 to be a pair of squares in the same fitting cell C1 (which is a level-i square-cell) that are separated by a level-(i+1) grid line.

If their fitting cell is a half-cell, we do not consider S1,S21 twin squares. Additionally, twin squares S1,S21 cannot be separated by a vertical grid line, otherwise their fitting cells would be separate half-cells.

Conflict graph 𝑮𝟒.

We define the new conflict graph G4 based on the same Definition 17 of conflicts with respect to the new fitting cells of 2. See Figure 10 for illustration.

Figure 10: The dot-filled squares conflict with the black square, and the empty squares do not. The fitting cell of the black square is the shaded half-cell on the left and the shaded square-cell on the right.
Lemma 22.

The conflict graph G4 is 8-colorable.

Proof.

This proof is easier to show by using a stronger statement. We will show that there exists an 8-coloring of G4, such that for each cell C2, the squares 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C) are colored with at most 2 colors.

We will see this proof by induction over the number of squares (|V(G4)|). The base case holds trivially. We again pick the smallest non-empty cell C12 for induction. Then 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) and for any cell C2 smaller than C1 (𝗌𝗂𝗓𝖾(C2)𝗌𝗂𝗓𝖾(C1)), we have 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C2)=.

We assume that the induction hypothesis holds for G4𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) and show that we can use 2 colors to color 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1), with at most eight colors in total. We will consider the cases where C1 is a square-cell or a half-cell separately.

Firstly, consider that C1 is a square-cell of level i. Equivalently to Lemma 8, it can be seen that there are at most 6 squares that can conflict with any square in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1). Since these squares use at most 6 colors, at least 2 colors remain to color 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1). We will count the number of squares C1 contains, which, similarly to previous proofs, is the same as 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) due to how C1 was chosen. All squares in C1 must intersect the vertical grid line of level i+1, splitting C1; otherwise, those squares would be contained in a subcell of C1. According to Fact 4, these squares can be at most 3. These squares can be colored with 2 colors since the squares above and below the horizontal grid line of the level i+1 are twin squares and can share a color (Figure 11).

Figure 11: Two colors (black and gray) suffice to color all squares contained in C1 since if squares are above and below the horizontal grid line crossing C1, these are twin squares.

Secondly, we consider that C1 is a level-(i,i+1) half-cell. Again, the squares that C1 contains among 1 are exactly 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) due to how C1 was chosen. These squares must intersect the horizontal grid line of level i+1 within C1; otherwise, they would fit into a subcell of C1. The squares in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) must be of level i to have survived, and the number of level-i squares intersecting the level-(i+1) grid line in C1 can be at most 1 (Fact 21Fact 4). Since 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) cannot be empty, it must contain exactly one square. Let S be that square.

It remains to bound the number of squares conflicting with S. Note that all the conflicting squares must intersect the boundary of C1 (Definition 17). Let C0 be the level-i square-cell such that C1 is a subcell of C0.

Figure 12: Cell C1 is shaded, and cell C0 is bordered by the black grid lines of level i. We depict that the left vertical grid line of level i is also of level i1.

At most, 4 squares can intersect with the corners of cell C1. Next, consider the squares intersecting the level-i horizontal grid lines bordering C1. For these squares to survive, their level must be at most i1. This implies they are too large to intersect only the level-i horizontal grid line without intersecting a corner (Figure 12). Next, let us consider the level-i vertical grid lines bordering C0. Similarly to Lemma 8, Figure 3(b), one of those grid lines must also be of level i1 and therefore cannot have a surviving square intersecting it without also intersecting a corner. This leaves us with one square S1 as depicted on Figure 12. Finally, let us consider the squares intersecting the level-(i+1) vertical grid line bordering C1 (Figure 12). Since we already counted the squares intersecting the borders of C0 in addition to C1, these squares must be in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C0). By induction hypothesis, they can be colored with 2 colors. If the colors of the corner squares and S1 are different from these two colors, we have at most 7 colors used for the set of squares that conflict with S. By coloring S with a different color, we have a valid 8-coloring with at most 2 colors used for 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) as stated.

Lemma 23.

Any independent set of G4 is guillotine separable.

Proof.

Similarly to Lemma 19, we show a recursive cutting strategy. Starting with an independent set 2 of G4, we first separate two squares with the “biggest” fitting cell. Let S1,S22 be the squares such that 𝗌𝗂𝗓𝖾(𝒞(S1))𝗌𝗂𝗓𝖾(𝒞(S2)), and for any other square S2, 𝗌𝗂𝗓𝖾(𝒞(S2))𝗌𝗂𝗓𝖾(𝒞(S)). If 𝒞(S1)𝒞(S2), then S1 and S2 can be separated using the proof of Lemma 9 (see Figure 4). Next, we consider the case that 𝒞(S1)=𝒞(S2), e.g S1 and S2 share the same fitting cell. Let this fitting cell be C and its level be i.

First, consider the case that C is a half-cell. This implies that S1 and S2 intersect the same horizontal grid line of level i+1. Otherwise, they would fit in smaller subcells. Since there are no twin squares in half-cells, S1 and S2 conflict, which contradicts them being in the same independent set 2.

Secondly, consider the case that C is a square-cell. Similarly to the proof of Lemma 19, the square-cell can be isolated from the rest of the graph by the first 4 cuts as depicted on Figure 8. Again, these cuts will not intersect any squares outside of C, because the fitting cells for other squares must be smaller than or equal to the size of C (due to our choice of S1 and S2). Similarly to Lemma 19, the fifth cut is a level-(i+1) horizontal grid line if i is the level of C. Let us now consider the squares inside C since the fifth cut will be performed only on C. For 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C), we can see similarly to Lemma 19 that they are not cut. For a square S whose fitting cell is a half-cell subcell of C, there is a conflict between S and Si, because 𝒞(S1)𝒞(S) and S1 intersects 𝒞(S). This means that S cannot exist in the independent set 2, and the cutting strategy doesn’t cut any squares.

Similarly to the proof of Lemma 9, we recursively apply this process to separate 2.

5 Using Coarser Grid (𝒓=𝟒) for Squares to get 𝟗𝟐𝟓𝟔-separation

We consider a set containing n non-overlapping axis-parallel squares. In Theorem 27, we show that we can separate at least 9256 fraction of the squares with guillotine cuts.

For the coarser grid, we set r=4, and get 916 fraction of surviving squares 1 by applying Theorem 7. Then, we introduce a conflict graph G5, showing that it is 16-colorable. Finally, we show that any independent set of this graph is Guillotine separable, leading to a 9/256-separation.

Similar to Section 4.2, we consider the laminar family 3 containing all the level-i cells together with all the level-(i,i+1) half-cells for any i0. For each square S, we define the fitting cell 𝒞(S) over the laminar family 3 (Definition 10).

Since, in this case, r=4, the number of squares associated with a fitting cell increases. In this section, let the surviving set 1 be redefined to be the surviving set of the new grid structure.

Fact 24.

For any square S1, one of the following must be true:

  • The fitting cell 𝒞(S) is a level-i square-cell for some i. Then S intersects the level-(i+1) vertical grid line, cutting 𝒞(S) in half, and 𝒞(S) can be a fitting cell for at most seven squares (see Figure 13(a)).

  • The fitting cell 𝒞(S) is a level-(i,i+1) half-cell for some i. Then S intersects the level-(i+1) horizontal grid line, cutting 𝒞(S) in half, and 𝒞(S) can be a fitting cell for at most three squares (see Figure 13(b)).

(a) Square-cell.
(b) Half-cell.
Figure 13: A coloring for the squares in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) when C1 is a level-i square-cell or level-(i,i+1) half-cell on the left and right respectively. C1 is shaded.

Proof.

If the intersection property did not hold for either of the cases above, the square S would fit into some smaller cell in 3, leading to a contradiction.

Since S intersects a level-(i+1) grid line in both cases, S must be level-j for ji. Also, 𝗌𝗂𝗓𝖾(S) must be strictly more than 18 fraction of the height of any level-i cell, because of the Fact 4.

In case 𝒞(S) is of level i, any such square must intersect the level-(i+1) vertical grid line cutting 𝒞(S) in half. Hence, at most seven squares can fit into 𝒞(S).

Otherwise, if 𝒞(S) is a level-(i,i+1) cell, the width of 𝒞(S) is half the width of any level-i cell. Since S must intersect the level-(i+1) horizontal grid line cutting 𝒞(S) into half, then at most three squares can fit into 𝒞(S).

Conflict Graph 𝑮𝟓.

We use the same Definition 17 of conflicting squares to define our conflict graph G5 on 1. Similar to Section 4.2, there are no twin squares separated by the vertical line cutting through the cell; otherwise, the two squares would have different fitting cells. The following lemma shows the coloring of G5, similar to the proof of Lemma 22, involving more counting arguments. Since we have r=4 instead of r=2, this grid is coarser, leading to more squares inside and intersecting the boundary of any cell C in 3.

Lemma 25.

The graph G5 is 16-colorable.

The proof can be found in Appendix A.

Lemma 26.

Any independent set of G5 is guillotine separable.

The proof of this lemma is similar to the proof of Lemma 23 in Section 4.

Theorem 27.

For an n-size set of non-overlapping axis-parallel squares, there exists a 9256-separation with guillotine cuts.

Proof.

Using Theorem 7, we can place a grid on and define the original cells for a subset 1 containing at least 9n16 squares, with r=4. Then, Lemma 25 ensures that the conflict graph G5 for the squares is 16-colorable. Thus, we can extract a subset 21 containing at least 9n256 squares, which do not conflict with any other square in 2.

Finally, Lemma 26 provides a cutting strategy for 2, showing that 2 is guillotine separable.

References

  • [1] Fidaa Abed, Parinya Chalermsook, José Correa, Andreas Karrenbauer, Pablo Pérez-Lantero, José A. Soto, and Andreas Wiese. On Guillotine Cutting Sequences. In Naveen Garg, Klaus Jansen, Anup Rao, and José D. P. Rolim, editors, Approximation, Randomization, and Combinatorial Optimization. Algorithms and Techniques (APPROX/RANDOM 2015), volume 40 of Leibniz International Proceedings in Informatics (LIPIcs), pages 1–19, Dagstuhl, Germany, 2015. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPICS.APPROX-RANDOM.2015.1.
  • [2] Anna Adamaszek, Sariel Har-Peled, and Andreas Wiese. Approximation schemes for independent set and sparse subsets of polygons. Journal of the ACM (JACM), 66(4):29, 2019.
  • [3] Anna Adamaszek and Andreas Wiese. Approximation schemes for maximum weight independent set of rectangles. In Proceedings of the 2013 IEEE 54th Annual Symposium on Foundations of Computer Science, FOCS ’13, pages 400–409. IEEE Computer Society, 2013. doi:10.1109/FOCS.2013.50.
  • [4] Anna Adamaszek and Andreas Wiese. A QPTAS for Maximum Weight Independent Set of Polygons with Polylogarithmically Many Vertices, pages 645–656. Society for Industrial and Applied Mathematics, 2014. doi:10.1137/1.9781611973402.49.
  • [5] Mir-Bahador Aryanezhad, Nima Fakhim Hashemi, Ahmad Makui, and Hasan Javanshir. A simple approach to the two-dimensional guillotine cutting stock problem. Journal of Industrial Engineering International, 8(1):21, September 2012.
  • [6] Parinya Chalermsook and Julia Chuzhoy. Maximum independent set of rectangles. In Proceedings of the twentieth annual ACM-SIAM symposium on Discrete algorithms, pages 892–901. Society for Industrial and Applied Mathematics, 2009. doi:10.1137/1.9781611973068.97.
  • [7] Parinya Chalermsook and Bartosz Walczak. Coloring and maximum weight independent set of rectangles. In Proceedings of the 2021 ACM-SIAM symposium on discrete algorithms (SODA), pages 860–868. SIAM, 2021. doi:10.1137/1.9781611976465.54.
  • [8] Timothy M Chan and Sariel Har-Peled. Approximation algorithms for maximum independent set of pseudo-disks. Discrete & Computational Geometry, 48(2):373–392, 2012. doi:10.1007/S00454-012-9417-5.
  • [9] CH Cheng, BR Feiring, and TCE Cheng. The cutting stock problem – A survey. International Journal of Production Economics, 36(3):291–305, 1994.
  • [10] Thomas Erlebach, Klaus Jansen, and Eike Seidel. Polynomial-time approximation schemes for geometric intersection graphs. SIAM Journal on Computing, 34(6):1302–1323, 2005. doi:10.1137/S0097539702402676.
  • [11] Waldo Gálvez, Fabrizio Grandoni, Arindam Khan, Diego Ramírez-Romero, and Andreas Wiese. Improved approximation algorithms for 2-dimensional knapsack: Packing into multiple l-shapes, spirals, and more. arXiv preprint arXiv:2103.10406, 2021. arXiv:2103.10406.
  • [12] Arindam Khan and Madhusudhan Reddy Pittu. On Guillotine Separability of Squares and Rectangles. In Jaroslaw Byrka and Raghu Meka, editors, Approximation, Randomization, and Combinatorial Optimization. Algorithms and Techniques (APPROX/RANDOM 2020), volume 176 of Leibniz International Proceedings in Informatics (LIPIcs), pages 47:1–47:22, Dagstuhl, Germany, 2020. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPICS.APPROX/RANDOM.2020.47.
  • [13] Andrea Lodi, Silvano Martello, and Michele Monaci. Two-dimensional packing problems: A survey. European journal of operational research, 141(2):241–252, 2002. doi:10.1016/S0377-2217(02)00123-6.
  • [14] Joseph Mitchell. Approximating maximum independent set for rectangles in the plane. SIAM Journal on Computing, 0(0):FOCS21–299–FOCS21–322, 0. doi:10.1137/22M1475521.
  • [15] Nthabiseng Ntene and Jan H van Vuuren. A survey and comparison of guillotine heuristics for the 2d oriented offline strip packing problem. Discrete Optimization, 6(2):174–188, 2009. doi:10.1016/J.DISOPT.2008.11.002.
  • [16] János Pach and Gábor Tardos. Cutting glass. In Proceedings of the Sixteenth Annual Symposium on Computational Geometry, SoCG ’00, pages 360–369. ACM, 2000. doi:10.1145/336154.336223.
  • [17] Jorge Urrutia. Problem presented at ACCOTA’96: Combinatorial and computational aspects of optimization. Topology, and Algebra, Taxco, Mexico, 1996.

Appendix A Deferred proofs

Theorem 7 (Claim 2.1, [1]). [Restated, see original statement.]

The horizontal and vertical shifts a,b[0,M) can be chosen such that the surviving set 1 is of size at least (11r)2||.

Proof.

We will show that this result can be reached in expectation by sampling a,b[0,M) independently and uniformly at random.

Let S be any square of level i. Let Ph and Pv be the probabilities that a level-i horizontal or vertical grid line is drawn on S, respectively. By using Fact 4, we get that Ph,Pv1r. Thus, the probability that S is in the surviving set (survives), is (1Ph)(1Pv)(11r)2. In expectation, (11r)2|| rectangles survive. This implies that there must exist a and b such that at least (11r)2|| squares survive.

Lemma 14. [Restated, see original statement.]

The conflict graph G2 is 11-colorable.

Proof.

Similar to Lemma 8, we will prove this by induction on the number of squares (|V(G2)|). The base case is trivial. For the inductive step, consider the smallest cell C1 that contains a square (𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1)). This implies that for any cell C2 smaller than C1, 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C2)=. By induction hypothesis, G2\𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) is 11-colorable, and we will show that we can color the squares of 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) while maintaining a valid 11-coloring of G2.

First, we bound the number of squares contained within C1. Let i be the level of C1. Since C1 is the smallest cell containing any square, any square S within C1 must cross the level-(i+1) grid lines within C1, or otherwise S would be contained in a smaller level-(i+1) cell. According to Fact 11 and Fact 4, at most 3 consecutive squares can fit into C1 width- or height-wise. Since all contained squares must intersect the level-(i+1) grid lines, it is easy to verify that the number of these squares can be at most 5 in total (Figure 14). Note that this set of squares equals 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1).

Figure 14: We color five squares of 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) using different colors as shown in the figure.

We count all conflicts involving 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) for coloring. The number of colors that cannot be used for coloring 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) based on the second condition of Definition 12 can be counted equivalently to Lemma 8, resulting in 6 colors that 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) must avoid. Since the counted set of squares contained within C1 is equal to 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1), five additional colors suffice for coloring 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1). This gives us a valid 11-coloring of G2.

Lemma 18. [Restated, see original statement.]

The conflict graph G3 is 9-colorable.

Proof.

This proof follows a similar inductive argument on the size of G3 with an improvement on the proof of Lemma 14, as the definition of conflict in G3 is relaxed.

The base case is trivially true, and for the inductive step, we again pick the smallest non-empty cell C1, such that 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) and for any cell C2 contained in C1, 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C2)=. Let i be the level of C1. By the induction hypothesis, G2\𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) is 11-colorable, and we show that we can color the squares of 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) while maintaining a valid 11-coloring of G2. By induction hypothesis, G3\𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) is 9-colorable, and we show that we can color the squares of 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) while maintaining this property. The proof of Lemma 14, implies that |𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1)|5. However, using Definition 17, there is at most one square on each side of the vertical and horizontal level-(i+1) line cutting through the center of C1. Hence, it is always possible to pair up the twin squares by giving them the same color, such that we can color the graph G3[𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1)] using at most three colors as shown in Figure 15.

Figure 15: A 3-coloring for G3[𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1)] using the same color for twin squares.

Using the bound of six (from proof of Lemma 8) on the number of squares in G3𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) conflicting with any square of 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) leaves three out of nine used to color G3\𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) to color 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1). Eventually, we have a 9-coloring for G3.

Lemma 25. [Restated, see original statement.]

The graph G5 is 16-colorable.

Proof.

We show a 16-coloring of G5 by induction on the size of the graph with the property that for any cell C3, all the squares in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C) are colored with at most four colors.

The base case is trivial. Let us consider the smallest cell C1 so that 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1), and for any cell C2 contained in C1 we have 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C2)=. By induction hypothesis, G\𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) is 16-colorable. We show that we can color the squares of 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) while maintaining the mentioned property. There are two possible cases:

Case 1.

Consider C1 to be a level-i square-cell. Like Lemma 22, we start by counting the number of colors needed for the squares inside C1, which are precisely 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1). According to Fact 24, at most seven such squares can intersect the level-(i+1) vertical grid line cutting through C1. Since there can be at most three squares above and below the level-(i+1) horizontal grid line, we can pair up the twin squares by giving them the same color, such that we can color the graph G[𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1)] with at most four colors (see Figure 13(a) for illustration). Now, we consider the squares not in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) that conflict with any square in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1). Any such square must intersect the boundary of the cell C1 (see Figure 16).

  • There can be at most four squares that contain a corner of C1.

  • We now look at the squares that do not contain any corner of C1. For the two level-(i1) grid lines, there can be only one square intersecting each line without intersecting the corner of the cell: Squares crossing a grid line of level (i1) must be of level-j for some ji2, and according to Fact 4, their size is strictly bigger than half of the size of a level-i cell (specifically, C1) with r=4. Thus, at most, two additional conflicting squares can intersect the level-(i1) grid lines.

  • Let us consider the two other sides of C1 formed by the level-i grid lines. There are at most three squares intersecting those sides but not the corners, since the size of those squares is strictly more than 14 of the size of C1. In total, there are at most six additional conflicting squares intersecting the level-i grid lines.

Figure 16: The black square is a square of 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1), where C1 (shaded) is a level-i square-cell. The dot-filled squares are the squares of G\𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) that can conflict with any square in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1).

We have shown that the squares in G5𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) conflicting with 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) can be colored by at most twelve colors. Considering the additional four colors needed to color 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1), the graph is 16-colorable.

Case 2.

Consider C1 to be a level-(i,i+1) half-cell. The squares contained by C1 are precisely the squares in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1). According to Fact 24, at most three squares can intersect the level-(i+1) horizontal grid line cutting through C1, and they can be colored using three colors as shown in Figure 13(b). Now, we bound the number of colors needed to color the squares not in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) conflicting with any square in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1). Note that those squares must intersect the boundary of C1 (see Figure 16).

  • There are at most four squares covering a corner of C1.

  • Now, consider the squares not containing any of the corners of C1. Let C0 be the smallest level-i square-cell containing C1. Up to three squares can intersect the vertical level-i grid line that C1 shares with C0, without intersecting a corner of C1 (Figure 17). Since the width of C1 is half that of its height, there can be at most one square intersecting the level-i grid lines at the top and the bottom of C1 without intersecting a corner. Hence, at most, two squares intersect the top or bottom grid lines of C1 without intersecting its corners.

    (a) All the squares intersecting the gray level-(i+1) grid line and not a corner are in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C0).
    (b) The square S, intersecting the level-(i+1) grid line and not a corner, is not in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C0).
    Figure 17: The black square is a square in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1), and C1 is a level-(i,i+1) cell (shaded). The cell formed by the bold black lines is C0. The remaining squares are the squares in G5\𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) that conflict with any element of 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1). They can all have different colors in G5.

    Next, we examine the fourth side of C1, which is formed by a level-(i+1) grid line (the gray lines on Figure 17). We consider two possible scenarios depending on whether all conflicting squares intersecting the level-(i+1) grid line have C0 as their fitting cell.

    1. (a)

      If all these squares belong to 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C0), then by the induction hypothesis, they are colored with at most four colors (see Figure 17(a)).

    2. (b)

      Otherwise, there exists a square S that also intersects a vertical side of C0 (and not a corner of C1) such that C0 is not its fitting cell (see Figure 17(b)). Then, the size of S is bigger than half of 𝗁𝖾𝗂𝗀𝗁𝗍(C1). Moreover, the size of the other squares crossing this side of C1 (a level-(i+1) grid line) is strictly more than 18 of 𝗁𝖾𝗂𝗀𝗁𝗍(C1). Thus, at most three more squares can fit into this space.

    In both scenarios, the squares intersecting the fourth side of C1 can be colored with at most four colors.

We showed that all the squares in G5𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) conflicting with any square in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) can be colored using at most thirteen colors. Since we need at most three more colors for the squares in 𝖲𝗊𝗎𝖺𝗋𝖾𝗌𝒞(C1) (Figure 13(b)), then G5 is 16-colorable in this case as well.