1 Introduction

A proper coloring of a graph is an assignment of colors to the vertices of the graph such that no two adjacent ones are in the same color. The minimum number of colors sufficient to color a graph \(G\) properly is called the chromatic number of \(G\) and denoted by \(\chi (G)\). The maximum size of a clique (a set of pairwise adjacent vertices) in a graph \(G\) is called the clique number of \(G\) and denoted by \(\omega (G)\). It is clear that \(\chi (G)\geqslant \omega (G)\). Classes of graphs for which there is a function \(f:\mathbb {N}\rightarrow \mathbb {N}\) such that \(\chi (G)\leqslant f(\omega (G))\) holds for any graph \(G\) in the class are called \(\chi \) -bounded. A graph is triangle-free if it does not contain a triangle, that is, if \(\omega (G)\leqslant 2\).

It was observed in the 1940s that large cliques are not necessary for the chromatic number to grow. Various classical constructions [14, 19] show that it can be arbitrarily large even for triangle-free graphs. Kim [11] constructed triangle-free graphs on \(n\) vertices with chromatic number \(\Theta (\sqrt{n/\log n})\). An earlier result due to Ajtai et al. [1] implies that this bound is tight.

In this paper, we focus on the relation between the chromatic number and the number of vertices in classes of triangle-free graphs arising from geometry. The intersection graph of a family of sets \(\mathcal {F}\) is the graph with vertex set \(\mathcal {F}\) and edge set consisting of pairs of intersecting members of \(\mathcal {F}\). The overlap graph of a family of sets \(\mathcal {F}\) is the graph with vertex set \(\mathcal {F}\) and edge set consisting of pairs of members of \(\mathcal {F}\) that intersect but neither contains the other. We always assume that the family of sets \(\mathcal {F}\) is finite.

It is well known that interval graphs (intersection graphs of intervals in \(\mathbb {R}\)) are perfect—they satisfy \(\chi (G)=\omega (G)\). The study of the chromatic number of graphs with geometric representation was initiated in a seminal paper of Asplund and Grünbaum [2], where they proved that the intersection graphs of families of axis-parallel rectangles in the plane are \(\chi \)-bounded. In particular, they proved the tight bound of \(6\) on the chromatic number of triangle-free intersection graphs of axis-parallel rectangles. Gyárfás [7, 8] proved that the class of overlap graphs of intervals in \(\mathbb {R}\) is \(\chi \)-bounded. By contrast, Burling [4] showed that triangle-free intersection graphs of axis-parallel boxes in \(\mathbb {R}^3\) can have arbitrarily large chromatic number. Pawlik et al. [15, 16] provided a construction of triangle-free intersection graphs of segments, and more generally, triangle-free intersection graphs of families of vertically and horizontally scaled translates of any fixed arc-connected compact set in \(\mathbb {R}^2\) that is not an axis-parallel rectangle, with arbitrarily large chromatic number. These graphs require \(\Omega (\log \log n)\) colors, where \(n\) is the number of vertices. One of the problems posed in [16] is to determine (asymptotically) the maximum chromatic number that a triangle-free intersection graph of \(n\) segments can have.

We solve the analogous problem for triangle-free intersection graphs of frames, which are boundaries of axis-parallel rectangles. These graphs can be alternatively defined as overlap graphs of axis-parallel rectangles. Therefore, they can be considered as two-dimensional generalizations of interval overlap graphs. We show that the construction of Pawlik et al. is asymptotically best possible for these graphs.

Theorem 1.1

Every triangle-free overlap graph of \(n\) rectangles (intersection graph of \(n\) frames) can be properly colored with \(O(\log \log n)\) colors.

For the completeness of exposition, we also include the proof of the bound from the other side, which appears in [15].

Theorem 1.2

There are triangle-free overlap graphs of \(n\) rectangles (intersection graphs of \(n\) frames) with chromatic number \(\Theta (\log \log n)\).

Note the difference in the behavior of rectangle intersection graphs and rectangle overlap graphs. The former have chromatic number bounded by a function of their clique number. The latter can have arbitrarily large chromatic number even when they are triangle-free.

Theorem 1.1 provides the first asymptotically tight bound on the chromatic number for a natural class of geometric intersection or overlap graphs that does not allow a constant bound. So far, best upper bounds were of order \(O(\log n)\), following from the results of McGuinness [13] and Suk [18] for intersection graphs of families of shapes including segments and frames, or polylogarithmic in \(n\), obtained by Fox and Pach [6] for arbitrary families of curves with bounded clique number. The only known lower bounds follow from the above-mentioned constructions of Burling and Pawlik et al. We hope that our ideas will lead to improving the bounds for other important classes, in particular, for segment intersection graphs.

On-line coloring is an extensively studied variant of the coloring problem. The difference between ordinary and on-line coloring is that in the on-line setting, the vertices are introduced one by one and the coloring algorithm must assign colors to them immediately, knowing only the edges between vertices presented thus far. Our proof exploits a correspondence between on-line coloring of interval overlap graphs and ordinary (off-line) coloring of rectangle overlap graphs. We obtain a structural decomposition of an arbitrary rectangle overlap graph with bounded clique number into a bounded number of so-called directed families of rectangles. For families whose overlap graphs are triangle-free, we can further decompose them into so-called clean families, in which no rectangle is entirely contained in the intersection of two overlapping rectangles. It turns out that overlap graphs of clean directed families of rectangles have a particular structure of what we call overlap game graphs, that is, they can be viewed as encodings of adversary strategies in the on-line interval overlap graph coloring problem. We succeed in coloring overlap game graphs with \(O(\log \log n)\) colors by combining two ideas: heavy-light decomposition and first-fit coloring. The reductions to directed and clean families are purely geometric—they exploit \(\chi \)-boundedness results and coloring techniques from [2, 7, 13, 18].

2 Overview

All rectangles that we consider are axis-parallel, that is, their sides are parallel to the horizontal or the vertical axes. Throughout the paper, we also assume that all rectangles are in general position, that is, no corner of any rectangle lies on the boundary of another rectangle. We can easily adjust any family of rectangles so as to satisfy this condition without changing the overlap relation, just by expanding each rectangle in every direction by a tiny amount inversely proportional to the area of the rectangle. The boundary of a rectangle is a frame. The filling rectangle of a frame \(F\), denoted by \({{\mathrm{rect}}}(F)\), is the rectangle whose boundary is \(F\).

From now on, we will work with families of frames and their intersection graphs. We denote the chromatic and the clique numbers of the intersection graph of a family of frames \(\mathcal {F}\) by \(\chi (\mathcal {F})\) and \(\omega (\mathcal {F})\), respectively. Triangles, cliques and connected components of the intersection graph of \(\mathcal {F}\) are simply called triangles, cliques and connected components of \(\mathcal {F}\). The \(x\)-coordinates of the left and right sides and the \(y\)-coordinates of the bottom and top sides of a frame \(F\) are denoted by \(\ell (F)\), \(r(F)\), \(b(F)\), \(t(F)\), respectively. Thus \({{\mathrm{rect}}}(F)=[\ell (F),r(F)]\times [b(F),t(F)]\).

We distinguish the following types of frame intersections, illustrated in Fig. 1a–g: crossings, leftward-, rightward-, downward- and upward-directed intersections, and diagonal intersections. A family of frames \(\mathcal {F}\) is leftward-, rightward-, downward- or upward-directed if the following condition is satisfied:

(F1):

for any two intersecting frames in \(\mathcal {F}\), their intersection is leftward-, rightward-, downward- or upward-directed, respectively.

A family of frames \(\mathcal {F}\) is directed if it is leftward-, rightward-, downward- or upward-directed. Note that in a directed family, we still allow only one of the four types of directed intersections, we just do not specify which one. A family of frames \(\mathcal {F}\) is clean if the following holds:

(F2):

no frame in \(\mathcal {F}\) is enclosed in two intersecting frames in \(\mathcal {F}\) (see Fig. 1h).

Fig. 1
figure 1

a Crossing; be leftward-, rightward-, downward- and upward-directed intersections, respectively; fg diagonal intersections; h forbidden configuration in a clean rightward-directed family

The first step in our proof of Theorem 1.1 is to reduce the problem of coloring arbitrary triangle-free families of frames to the problem of coloring clean directed triangle-free families of frames. This is done by the following two lemmas, the first of which works with any bound on the clique number, not only for triangle-free families.

Lemma 2.1

Every family of frames \(\mathcal {F}\) with \(\omega (\mathcal {F})\leqslant k\) can be partitioned into a bounded number of directed subfamilies, where the bound depends only on \(k\).

Lemma 2.2

Every triangle-free family of frames can be partitioned into two subfamilies so that every connected component of either subfamily is a clean family of frames.

The proofs of both lemmas are technical and are postponed to Sect. 6.

The next step is a more abstract description of the structure of intersection graphs of clean directed families of frames in terms of intervals in \(\mathbb {R}\). The family of all closed intervals in \(\mathbb {R}\) is denoted by \(\mathcal {I}\). The left and right endpoints of an interval \(I\) are denoted by \(\ell (I)\) and \(r(I)\), respectively. Two intervals overlap if and only if they intersect but neither contains the other. The overlap graph defined on a family of intervals has an edge for each pair of overlapping intervals. Again, we can assume without loss of generality that the intervals representing an overlap graph are in general position, which means that all their endpoints are distinct. With this assumption, intervals \(I_1\) and \(I_2\) overlap if and only if \(\ell (I_1)<\ell (I_2)<r(I_1)<r(I_2)\) or \(\ell (I_2)<\ell (I_1)<r(I_2)<r(I_1)\).

A rooted forest is a forest in which every tree has one vertex chosen as its root. Let \(G\) be a graph, \(M\) be a rooted forest with \(V(M)=V(G)\), and \(\mu :V(G)\rightarrow \mathcal {I}\). For \(u,v\in V(G)\), we write \(u\prec v\) if \(u\ne v\) and \(u\) is an ancestor of \(v\) in \(M\). The graph \(G\) is an overlap game graph with meta-forest \(M\) and representation \(\mu \) if the following conditions are satisfied:

(G1):

\(\ell (\mu (x))<\ell (\mu (y))\) whenever \(x\prec y\);

(G2):

\(xy\in E(G)\) if and only if \(x\prec y\) or \(y\prec x\) and \(\mu (x)\) and \(\mu (y)\) overlap;

(G3):

there are no \(x\), \(y\), \(z\) such that \(x\prec y\prec z\), \(\mu (x)\) and \(\mu (y)\) overlap, and \(\mu (z)\subset \mu (x)\cap \mu (y)\).

In particular, for every set of vertices \(Q\) on a common path from a root to a leaf in \(M\), the induced subgraph \(G[Q]\) of \(G\) is isomorphic to the overlap graph of the family of intervals \(\{\mu (x):x\in Q\}\). Here, once again, we assume without loss of generality that the intervals \(\mu (x)\) for \(x\in Q\) are in general position. Since two vertices \(x,y\in V(G)\) that are not in the ancestor-descendant relation of \(M\) (\(x\not \prec y\) and \(y\not \prec x\)) are never adjacent in \(G\), the graph \(G\) is the union of the overlap graphs \(G[Q]\) over the vertex sets \(Q\) of all paths from a root to a leaf in \(M\).

Lemma 2.3

A graph is an overlap game graph if and only if it is isomorphic to the intersection graph of a clean directed family of frames.Footnote 1

Lemma 2.4

Every triangle-free overlap game graph has chromatic number \(O(\log \log n)\).\(^{1}\)

Now, Theorem 1.1 follows from Lemmas 2.1 and 2.2, the fact that each connected component of a graph can be colored separately, and Lemmas 2.3 and 2.4. Theorem 1.2 follows from Lemma 2.3 and the following result, implicit in [15], which asserts that the bound in Lemma 2.4 is tight.

Lemma 2.5

There are triangle-free overlap game graphs with chromatic number \(\Omega (\log \log n)\).

We prove Lemma 2.3 in Sect. 5 and Lemma 2.4 in Sect. 4. In Sect. 3, we mostly recall some known results about on-line colorings of forests, which motivate the proof of Lemma 2.5 from [15] and the coloring algorithm presented in Sect. 4. We also include a sketch of the proof of Lemma 2.5, for completeness and to illustrate the idea behind overlap game graphs.

We complete this outline by explaining the meaning of the word “game” in the term “overlap game graphs”. Let \(k\in \mathbb {N}\). Consider the following overlap game between two players: Presenter, who builds a family of intervals presenting them one by one, and Algorithm, who colors them on-line, that is, each interval is assigned its color right after it is presented and without possibility of changing the color later. Presenter’s moves are restricted by the following rules:

(I1):

if an interval \(I_2\) is presented after \(I_1\), then \(\ell (I_1)<\ell (I_2)\);

(I2):

no three intervals \(I_1\), \(I_2\), \(I_3\) such that \(I_1\) and \(I_2\) overlap and \(I_3\subset I_1\cap I_2\) are ever presented.

The coloring constructed by Algorithm has to be a proper coloring of the overlap graph defined by the intervals presented. Presenter aims to force Algorithm to use more than \(k\) colors, while Algorithm tries to keep using at most \(k\) colors.

Every finite strategy of Presenter gives rise to an overlap game graph \(G\) with meta-forest \(M\) and representation \(\mu \) such that the root-to-leaf paths in \(M\) correspond to the intervals presented in the possible scenarios of the strategy. Specifically, each root \(r\) of \(M\) corresponds to an interval \(\mu (r)\) that can be played in Presenter’s first move, and each child of a vertex \(x\) of \(M\) corresponds to an interval that Presenter can play right after \(\mu (x)\) at the position represented by \(x\). Conversely, an overlap game graph \(G\) with meta-forest \(M\) and representation \(\mu \) can be interpreted as a non-deterministic strategy of Presenter, as follows. Presenter starts with an arbitrarily chosen root \(r\) of \(M\) presenting \(\mu (r)\), and then, in each move from a position \(u\) in \(M\), follows to an arbitrarily chosen child \(v\) of \(u\) presenting \(\mu (v)\). The key observation is that Algorithm has a strategy to use at most \(k\) colors against such a strategy of Presenter if and only if \(\chi (G)\leqslant k\). The proof of Lemma 2.5 constructs a strategy of Presenter forcing Algorithm to use more than \(k\) colors by presenting at most \(2^k\) intervals, while the proof of Lemma 2.4 essentially shows that every such strategy needs to have a double exponential number of scenarios.

The presented “on-line” interpretation of overlap game graphs is exploited in the proof of Lemma 2.5 presented in the next section. It may also provide a useful insight into our arguments in Sect. 4, which are formulated using the static definition of an overlap game graph.

3 Restricted Families of Intervals

Let \(\mathcal {J}\) be a family of intervals in \(\mathbb {R}\) in general position. We say that \(\mathcal {J}\) is restricted if the following condition is satisfied:

(R):

for any three intervals \(I_1,I_2,I_3\in \mathcal {J}\), if \(\ell (I_1)<\ell (I_2)<\ell (I_3)\) and \(I_1\) and \(I_2\) overlap, then \(r(I_1)<\ell (I_3)\).

That is, restricted families exclude the three configurations of intervals presented in Fig. 2.

Fig. 2
figure 2

Three configurations of intervals excluded in restricted families

For \(I_1,I_2\in \mathcal {J}\), we write \(I_1\rightarrow I_2\) if \(\ell (I_1)<\ell (I_2)<r(I_1)<r(I_2)\). That is, \(\rightarrow \) is the orientation of the edges of the overlap graph of \(\mathcal {J}\) from left to right.

Lemma 3.1

Let \(\mathcal {J}\) be a restricted family of intervals.

(1):

For every \(I_1\in \mathcal {J}\), there is at most one \(I_2\in \mathcal {J}\) such that \(I_1\rightarrow I_2\). In particular, the overlap graph of \(\mathcal {J}\) is a forest.

(2):

There are no \(I_1,I_2,I_3,I_4\in \mathcal {J}\) such that \(\ell (I_1)<\ell (I_2)<\ell (I_3)<\ell (I_4)\), \(I_1\rightarrow I_3\), and \(I_2\rightarrow I_4\).

Proof

Let \(I_1,I_2,I_3\in \mathcal {J}\), \(\ell (I_1)<\ell (I_2)<\ell (I_3)\), and \(I_1\rightarrow I_2\). It follows from (R) that \(r(I_1)<\ell (I_3)\). Hence the intervals \(I_1\) and \(I_3\) are disjoint, so \(I_1\not \rightarrow I_3\). This completes the proof of (1).

For the proof of (2), let \(I_1,I_2,I_3,I_4\in \mathcal {J}\), \(\ell (I_1)<\ell (I_2)<\ell (I_3)<\ell (I_4)\), and \(I_1\rightarrow I_3\). It follows from (1) that \(I_1\not \rightarrow I_2\not \rightarrow I_3\). This and \(I_1\rightarrow I_3\) yields \(\ell (I_1)<\ell (I_2)<r(I_2)<\ell (I_3)<r(I_1)<r(I_3)\). Therefore, since \(\ell (I_3)<\ell (I_4)\), the intervals \(I_2\) and \(I_4\) are disjoint, so \(I_2\not \rightarrow I_4\). \(\square \)

The restricted overlap game is a variant of the overlap game in which Presenter is required to present a restricted family of intervals. Note that the condition that the family is restricted implies the condition (I2) of the definition of the overlap game.

By Lemma 3.1 (1), the overlap graphs of families of intervals presented in the restricted overlap game are forests. A well-known result in the area of on-line graph coloring algorithms asserts that Presenter has a strategy to force Algorithm to use more than \(k\) colors on a forest with at most \(2^k\) vertices. Such a strategy was first found by Bean [3] and later rediscovered by Gyárfás and Lehel [9]. Erlebach and Fiala [5] described a particular version of such a strategy, which can be carried out on forests represented as intersection graphs of discs or axis-parallel squares in the plane. Pawlik et al. [15] implemented the same strategy on forests represented as overlap graphs of intervals presented in the restricted overlap game.

We present this strategy first for abstract forests, and then in the restricted overlap game. Next, we use it to prove Lemma 2.5. Finally, we show that this strategy is optimal, that is, any forest with fewer than \(2^k\) vertices can be properly colored on-line using at most \(k\) colors.

Proposition 3.2

(Bean [3]; Gyárfás, Lehel [9]) Presenter has a strategy to force Algorithm to use more than \(k\) colors by presenting a forest with at most \(2^k\) vertices.

Proof

For a tree \(T\) of a forest presented on-line, let \(r(T)\) denote the vertex of \(T\) presented last. The strategy constructs, by induction, a forest of trees \(T_1,\ldots ,T_m\) with at most \(2^k-1\) vertices in total such that Algorithm is forced to use at least \(k\) colors on the vertices \(r(T_1),\ldots ,r(T_m)\).

The case \(k=1\) is trivial—it is enough to present a single vertex. To obtain a strategy for \(k\geqslant 2\), we apply the strategy for \(k-1\) twice, building two forests of trees \(T_1,\ldots ,T_m\) and \(T'_1,\ldots ,T'_{{m'}}\) with at most \(2^k-2\) vertices in total such that Algorithm is forced to use at least \(k-1\) colors on \(r(T_1),\ldots ,r(T_m)\) and at least \(k-1\) colors on \(r(T'_1),\ldots ,r(T'_{{m'}})\). If the two sets of colors are different, then we have already forced Algorithm to use at least \(k\) colors on \(r(T_1),\ldots ,r(T_m),r(T'_1),\ldots ,r(T'_{{m'}})\). Otherwise, we present one more vertex \(v\) and connect it to \(r(T'_1),\ldots ,r(T'_{{m'}})\), thus merging \(T'_1,\ldots ,T'_{{m'}}\) into one tree \(T_{m+1}\) with \(r(T_{m+1})=v\). Algorithm has to color \(v\) with a color different from those used on \(r(T'_1),\ldots ,r(T'_{{m'}})\). Hence it has been forced to use at least \(k\) colors on \(r(T_1),\ldots ,r(T_{m+1})\). See Fig. 3 for an illustration.

In the final step, after playing the strategy for \(k\) claimed above, we present one more vertex \(v\) connected to \(r(T_1),\ldots ,r(T_m)\), on which a \((k+1)\)st color must be used. This way, we have forced the use of more than \(k\) colors on a tree with at most \(2^k\) vertices. \(\square \)

Proposition 3.3

(Pawlik et al. [15]) Presenter has a strategy to force Algorithm to use more than \(k\) colors on a family of at most \(2^k\) intervals in the restricted overlap game.

Fig. 3
figure 3

Illustration for the proof of Proposition 3.2

Proof

A tree of a restricted family of intervals \(\mathcal {J}\) is a subfamily \(\mathcal {T}\subset \mathcal {J}\) that is a connected component of the overlap graph of \(\mathcal {J}\). For a tree \(\mathcal {T}\) of a family of intervals presented in the restricted overlap game, let \(R(\mathcal {T})\) denote the interval in \(\mathcal {T}\) presented last.

The strategy is an adaptation of the strategy described in the proof of Proposition 3.2. It constructs, by induction, a restricted family of intervals \(\mathcal {J}\) with trees \(\mathcal {T}_1,\ldots ,\mathcal {T}_m\) of total size at most \(2^k-1\) such that

  1. (i)

    \(R(\mathcal {T}_1)\supset \cdots \supset R(\mathcal {T}_m)\),

  2. (ii)

    every interval in \(\mathcal {J}\backslash \{R(\mathcal {T}_1),\ldots ,R(\mathcal {T}_m)\}\) lies entirely to the left of \(r(R(\mathcal {T}_m))\),

  3. (iii)

    Algorithm is forced to use at least \(k\) colors on the intervals \(R(\mathcal {T}_1),\ldots ,R(\mathcal {T}_m)\).

The case \(k=1\) is trivial—it is enough to present a single interval. To obtain a strategy for \(k\geqslant 2\), we first apply the strategy for \(k-1\), building a restricted family of intervals \(\mathcal {J}\) with trees \(\mathcal {T}_1,\ldots ,\mathcal {T}_m\) of total size at most \(2^{k-1}-1\) such that (i)–(iii) are satisfied. Let \(x\) be the maximum of \(\ell (R(\mathcal {T}_m))\) and the right endpoints of all intervals in \(\mathcal {J}\backslash \{R(\mathcal {T}_1),\ldots ,R(\mathcal {T}_m)\}\). We apply the strategy for \(k-1\) again, this time playing entirely inside the interval \((x,r(R(\mathcal {T}_m)))\), building a restricted family of intervals \(\mathcal {J}'\) with trees \(\mathcal {T}'_1,\ldots ,\mathcal {T}'_{{m'}}\) of total size at most \(2^{k-1}-1\) such that (i)–(iii) are satisfied. Let \(x'\) be the maximum of \(\ell (R(\mathcal {T}'_{{m'}}))\) and the right endpoints of all intervals in \(\mathcal {J}'\backslash \{R(\mathcal {T}'_1),\ldots ,R(\mathcal {T}'_{{m'}})\}\). It is clear that the family \(\mathcal {J}\cup \mathcal {J}'\) with trees \(\mathcal {T}_1,\ldots ,\mathcal {T}_m,\mathcal {T}'_1,\ldots ,\mathcal {T}'_{{m'}}\) satisfies (i) and (ii). If the two sets of at least \(k-1\) colors used on \(R(\mathcal {T}_1),\ldots ,R(\mathcal {T}_m)\) and \(R(\mathcal {T}'_1,\ldots ,\mathcal {T}'_{{m'}})\) differ, then we have already forced Algorithm to use at least \(k\) colors on \(R(\mathcal {T}'_1),\ldots ,R(\mathcal {T}_m),R(\mathcal {T}'_1),\ldots ,R(\mathcal {T}'_{{m'}})\), so (iii) is also satisfied. Otherwise, we present one more interval \(J\) with \(\ell (J)\in (x',r(R(\mathcal {T}'_{{m'}})))\) and \(r(J)\in (r(R(\mathcal {T}'_1)),r(R(\mathcal {T}_m)))\). This way, \(J\) overlaps the intervals \(R(\mathcal {T}'_1,\ldots ,\mathcal {T}'_{{m'}})\) and no other intervals, and thus merges \(\mathcal {T}'_1,\ldots ,\mathcal {T}'_{{m'}}\) into one tree \(\mathcal {T}_{m+1}\) with \(R(\mathcal {T}_{m+1})=J\). Again, the family \(\mathcal {J}\cup \mathcal {J}'\cup \{J\}\) with trees \(\mathcal {T}_1,\ldots ,\mathcal {T}_{m+1}\) satisfies (i) and (ii). Moreover, Algorithm has to color \(J\) with a color different from those used on \(R(\mathcal {T}'_1),\ldots ,R(\mathcal {T}'_{{m'}})\). Hence it has been forced to use at least \(k\) colors on \(R(\mathcal {T}_1),\ldots ,R(\mathcal {T}_{m+1})\), so (iii) is also satisfied. See Fig. 4 for an illustration.

In the final step, after playing the strategy for \(k\) claimed above, we present one more interval \(J\) such that \(\ell (J)\in (x,r(R(\mathcal {T}_m)))\) and \(r(J)>r(R(\mathcal {T}_1))\), where \(x\) is the maximum of \(\ell (R(\mathcal {T}_m))\) and the right endpoints of all intervals in \(\mathcal {J}\backslash \{R(\mathcal {T}_1),\ldots ,R(\mathcal {T}_m)\}\). It follows that a \((k+1)\)st color must be used on \(J\). This way, we have forced the use of more than \(k\) colors on a family of at most \(2^k\) intervals in the restricted overlap game. \(\square \)

Proof of Lemma 2.5 (sketch)

According to what has been told in Sect. 2, any strategy of Presenter in the overlap game gives rise to an overlap game graph encoding this strategy. Since the overlap graph of the family \(\mathcal {J}\) presented by the strategy described in the proof of Proposition 3.3 is triangle-free, the overlap game graph \(G\) obtained from this strategy is triangle-free as well. Since Algorithm is forced to use at least \(k\) colors on \(\mathcal {J}\), the graph \(G\) has chromatic number at least \(k\) (actually, its chromatic number is exactly \(k\)). One can calculate that the number of vertices of \(G\) is less than \(\tfrac{3}{2}\cdot {2^{2^{k-2}}}\). See [15] for more details. \(\square \)

To show that any forest with fewer than \(2^k\) vertices can be properly colored on-line using at most \(k\) colors, we use the algorithm called First-fit. It colors each vertex with the least positive integer that has not been used on any neighbor presented before.

Fig. 4
figure 4

Illustration for the proof of Proposition 3.3

Proposition 3.4

(folklore) First-fit uses at most \(k\) colors on any forest with fewer than \(2^k\) vertices presented on-line in any order.

Proof

Let \(F\) be a forest with fewer than \(2^k\) vertices presented on-line. For \(u,v\in V(F)\), let \(u\rightarrow v\) denote that \(uv\in E(F)\) and \(u\) has been presented before \(v\). Let \(f(u)\) denote the color chosen by First-fit for each vertex \(u\). For every \(v\in V(F)\), the colors \(1,\ldots ,f(v)-1\) have been chosen for some vertices \(u\) with \(u\rightarrow v\). Let \(r\) be a vertex with maximum color, and let \(T\) be a minimal subforest of \(F\) that satisfies the following conditions (see Fig. 5):

  • \(T\) contains the vertex \(r\),

  • for any \(v\in V(T)\), there are \(u_1,\ldots ,u_{f(v)-1}\in V(T)\) such that \(u_j\rightarrow v\) and \(f(u_j)=j\) for \(1\leqslant j\leqslant f(v)-1\).

It follows that there is a directed path in \(T\) from every vertex to \(r\), so \(T\) is actually a tree. Moreover, for every \(u\in V(T)\backslash \{r\}\), there is a unique \(v\in V(T)\) such that \(u\rightarrow v\). Indeed, if there were two such vertices \(v_1\) and \(v_2\), then there would be two different paths in \(T\) from \(u\) to \(r\), which cannot exist in a tree. Let \(n_j\) denote the number of vertices of \(T\) with color \(j\). It follows that \(n_{f(r)}=1\) and \(n_j=n_{j+1}+\cdots +n_{f(r)}\) for \(1\leqslant j\leqslant f(r)-1\). Easy calculation yields \(n_1+\cdots +n_{f(r)}=2^{f(r)-1}\). Since \(T\) has fewer than \(2^k\) vertices, we have \(f(r)\leqslant k\), which means that First-fit has used at most \(k\) colors on \(F\). \(\square \)

Fig. 5
figure 5

Example of a tree \(T\) with \(f(r)=5\)

4 Coloring Triangle-Free Overlap Game Graphs

For the purpose of this entire section, let \(G\) be an \(n\)-vertex triangle-free overlap game graph with meta-forest \(M\) and representation \(\mu \). Our goal is to prove that \(G\) has chromatic number \(O(\log \log n)\). Since different components of \(M\) are not connected by edges of \(G\), they can be colored independently using the same set of colors. Thus it is enough to consider each component of \(M\) separately, and therefore we can assume without loss of generality that \(M\) is a single tree.

For any set \(S\) of vertices lying on a common root-to-leaf path of \(M\), the family of intervals \(\{\mu (v):v\in S\}\) excludes the two configurations of intervals presented in Fig. 2a, by the condition (G3) on \(G\), and 2c, by the assumption that \(G\) is triangle-free, but it may contain the configuration in Fig. 2b. Our first goal is to reduce the problem to the case that all three configurations in Fig. 2 are excluded.

We classify each vertex of \(G\) as either primary or secondary according to the following inductive rule. The root of \(M\) is primary. Now, let \(x\) be a vertex other than the root of \(M\), and suppose that all vertices \(v\) with \(v\prec x\) have been already classified. If there are primary vertices \(u\) and \(v\) with \(u\prec v\prec x\) such that \(\mu (u)\), \(\mu (v)\) and \(\mu (x)\) form the configuration in Fig. 2b, that is, \(\mu (v)\supset \mu (x)\) and \(\mu (u)\) overlaps both \(\mu (v)\) and \(\mu (x)\), then \(x\) is secondary. Otherwise, \(x\) is primary. It clearly follows that for any set \(P\) of primary vertices lying on a common root-to-leaf path of \(M\), the family of intervals \(\{\mu (v):v\in P\}\) excludes all three configurations in Fig. 2, that is, it is restricted.

For every primary vertex \(v\), let \(S(v)\) be the set consisting of \(v\) and all vertices \(x\) with \(v\prec x\) for which there is a primary vertex \(u\) with \(u\prec v\) such that \(\mu (u)\), \(\mu (v)\) and \(\mu (x)\) form the configuration in Fig. 2b. Hence every primary or secondary vertex belongs to some \(S(v)\).

Lemma 4.1

For every primary vertex \(v\), the set \(S(v)\) consists of those and only those vertices \(x\) for which \(v\) is the last primary vertex on the path from the root to \(x\) in \(M\). Moreover, every \(S(v)\) is an independent set in \(G\).

Proof

Let \(v\) be a primary vertex, and let \(y\in S(v)\). It follows that there is a primary vertex \(u\) with \(u\prec v\prec y\) such that \(\mu (u)\), \(\mu (v)\) and \(\mu (y)\) form the configuration in Fig. 2b. Let \(x\) be any vertex with \(v\prec x\prec y\). We claim that \(\mu (v)\supset \mu (x)\supset \mu (y)\) (see Fig. 6). Indeed,

  • if \(r(\mu (x))<r(\mu (u))\), then \(\mu (u)\), \(\mu (v)\) and \(\mu (x)\) form the configuration in Fig. 2a, which is excluded by the condition (G3) on \(G\);

  • if \(r(\mu (u))<r(\mu (x))<r(\mu (y))\), then \(\mu (u)\), \(\mu (x)\) and \(\mu (y)\) form the configuration in Fig. 2c, which contradicts the assumption that \(G\) is triangle-free;

  • if \(r(\mu (x))>r(\mu (v))\), then \(\mu (u)\), \(\mu (v)\) and \(\mu (x)\) form the configuration in Fig. 2c, which again contradicts the assumption that \(G\) is triangle-free;

hence \(r(\mu (y))<r(\mu (x))<r(\mu (v))\), that is, \(\mu (v)\supset \mu (x)\supset \mu (y)\). It follows that \(\mu (u)\), \(\mu (v)\) and \(\mu (x)\) also form the configuration in Fig. 2b, so \(x\) is secondary and \(x\in S(v)\). This yields the first statement of the lemma. It also follows that \(\mu (x)\supset \mu (y)\) whenever \(x,y\in S(v)\) and \(x\prec y\), which proves that \(S(v)\) is an independent set in \(G\). \(\square \)

Fig. 6
figure 6

Illustration for the proof of Lemma 4.1

The relation \(\prec \) defines an orientation of the edges of \(G\): we write \(x\rightarrow y\) if \(xy\in E(G)\) and \(x\prec y\). We write \(S(u)\rightarrow S(v)\) if \(u\prec v\) and there are \(x\in S(u)\) and \(y\in S(v)\) such that \(x\rightarrow y\). We are going to show that any proper \(k\)-coloring of the primary vertices of \(G\) can be transformed into a proper \(2k\)-coloring of the whole \(G\). This is done with the help of the following lemma.

Lemma 4.2

Let \(I\) be an independent set of primary vertices in \(G\), and let \(v\in I\). There is at most one vertex \(u\in I\) such that \(S(u)\rightarrow S(v)\).

Proof

Suppose there are two vertices \(u_1,u_2\in I\) such that \(u_1\prec u_2\prec v\), \(S(u_1)\rightarrow S(v)\), and \(S(u_2)\rightarrow S(v)\). It follows that there are vertices \(x_1\in S(u_1)\), \(x_2\in S(u_2)\), and \(y_1,y_2\in S(v)\) with \(x_1\rightarrow y_1\) and \(x_2\rightarrow y_2\). Hence, by Lemma 4.1, we have \(u_1\prec x_1\prec u_2\prec x_2\prec v\prec y_i\) for \(i\in \{1,2\}\). Since \(\mu (x_1)\subset \mu (u_1)\), \(\mu (x_2)\subset \mu (u_2)\), \(\mu (y_1)\subset \mu (v)\), \(\mu (y_2)\subset \mu (v)\), and \(u_1\), \(u_2\) and \(v\) are independent in \(G\), it follows that \(\mu (u_1)\), \(\mu (u_2)\) and \(\mu (v)\) are nested (see Fig. 7). Clearly, \(\mu (x_1)\) and \(\mu (x_2)\) overlap \(\mu (v)\), and \(\mu (x_1)\) overlaps \(\mu (u_2)\). If \(r(\mu (x_1))<r(\mu (x_2))\), then \(\mu (x_1)\), \(\mu (x_2)\) and \(\mu (v)\) form the configuration in Fig. 2c, which contradicts the assumption that \(G\) is triangle-free. If \(r(\mu (x_1))>r(\mu (x_2))\), then \(\mu (x_1)\), \(\mu (u_2)\) and \(\mu (x_2)\) form the configuration in Fig. 2a, which is excluded by (G3). \(\square \)

Fig. 7
figure 7

Illustration for the proof of Lemma 4.2

We now show how to color the vertices of \(G\) with \(2k\) colors. Let \(I\) be a color class in a proper \(k\)-coloring of the primary vertices of \(G\). Consider all the sets \(S(u)\) for \(u\in I\). By Lemma 4.1, each of them is independent. By Lemma 4.2, the edges between the sets form a bipartite graph. Therefore, we need two colors for the vertices in \(\bigcup _{u\in I}S(u)\) and hence \(2k\) colors for the whole \(G\).

It remains to show that the chromatic number of the subgraph of \(G\) induced on the primary vertices is \(O(\log \log n)\). Clearly, this subgraph is itself an overlap game graph. Therefore, from now on, we simply assume that all vertices of \(G\) are primary. This means that for every set \(P\) of vertices lying on a common root-to-leaf path of \(M\), the family of intervals \(\{\mu (v):v\in P\}\) is restricted. The following is an immediate consequence of Lemma 3.1.

Lemma 4.3

Let \(P\) be a set of vertices lying on a common root-to-leaf path of \(M\).

(1):

For every \(u\in P\), there is at most one \(v\in P\) such that \(u\rightarrow v\). In particular, the graph \(G[P]\) is a forest.

(2):

There are no \(u_1,u_2,v_1,v_2\in P\) such that \(u_1\prec u_2\prec v_1\prec v_2\), \(u_1\rightarrow v_1\), and \(u_2\rightarrow v_2\).

Now, the simplest idea would be to color the vertices by First-fit, processing them from left to right in the order \(\prec \). Then, by Lemma 4.3 (1) and Proposition 3.4, the number of colors used would be logarithmic in the maximum length of a root-to-leaf path in \(M\). This is not enough when \(M\) contains paths longer than \(O(\log n)\). To overcome this problem, we need to introduce the concept of heavy-light decomposition due to Sleator and Tarjan [17].

Let \(T\) be a rooted tree. We call an edge \(uv\) of \(T\), where \(v\) is a child of \(u\), heavy if the subtree of \(T\) rooted at \(v\) contains more than half of the vertices of the subtree of \(T\) rooted at \(u\). Otherwise, we call the edge \(uv\) light. The resulting partition of the edges of \(T\) into heavy and light edges is called the heavy-light decomposition of \(T\). Since every vertex \(u\) of \(T\) has a heavy edge to at most one of its children, the heavy edges induce in \(T\) a collection of paths, called heavy paths. The heavy-light decomposition has the following crucial property, easily proved by induction.

Lemma 4.4

(Sleator, Tarjan [17]) If there is a path in \(T\) starting at the root and containing at least \(k-1\) light edges, then \(T\) has at least \(2^k-1\) vertices.

Fix a heavy-light decomposition of \(M\). Form an auxiliary graph \(G'\) by removing from \(G\) the edges connecting pairs of vertices in different heavy paths. By Lemma 4.3 (1), the vertices on each heavy path induce a forest in \(G\). Hence \(G'\) is a forest and can be properly colored with two colors. Let \(C_1\) and \(C_2\) be the color classes in a proper two-coloring of \(G'\). Fix \(i\in \{1,2\}\). It follows that for any \(x,y\in C_i\), if \(x\rightarrow y\), then \(x\) and \(y\) lie on different heavy paths. Color the induced subgraph \(G[C_i]\) of \(G\) by First-fit, processing the vertices from left to right in the order \(\prec \). That is, the color assigned to a vertex \(v\in C_i\) is the least positive integer not assigned to any \(u\in C_i\) with \(u\rightarrow v\).

Lemma 4.5

If First-fit assigns a color \(k\) to some vertex \(r\in C_i\), then the path \(M_r\) in \(M\) from the root to \(r\) contains at least \(2^{k-2}-1\) light edges.

Proof

Let \(f(u)\) denote the color chosen by First-fit for each vertex \(u\in C_i\). Since \(G[C_i]\) is a forest, we can find, as in the proof of Proposition 3.4, a minimal subtree \(T\) of \(G[C_i]\) that satisfies the following conditions (see Fig. 5):

  • \(T\) contains the vertex \(r\),

  • for any \(v\in V(T)\), there are \(u_1,\ldots ,u_{f(v)-1}\in V(T)\) such that \(u_j\rightarrow v\) and \(f(u_j)=j\) for \(1\leqslant j\leqslant f(v)-1\).

Clearly, the entire \(T\) lies on the path \(M_r\). Moreover, as in the proof of Proposition 3.4, \(T\) contains exactly \(2^{k-1}\) vertices, \(2^{k-2}\) of which have color \(1\) and \(2^{k-2}\) have color greater than \(1\). Let \(v\) be a vertex of \(T\) with color greater than \(1\), and let \(u\in V(T)\) be the vertex directly preceding \(v\) in the order \(\prec \) on \(V(T)\). We claim that \(u\) is a child of \(v\) in \(T\). Suppose it is not. Since \(u\) is not the \(\prec \)-greatest vertex of \(T\), we have \(u\ne r\), and therefore \(u\) has a parent \(p\) in \(T\). Since \(v\) has color greater than \(1\), it has a child \(c\) in \(T\). It follows that \(c\prec u\prec v\prec p\), as \(u\) and \(v\) are consecutive in the order \(\prec \) on \(V(T)\). But we also have \(c\rightarrow v\) and \(u\rightarrow p\), which contradicts Lemma 4.3 (2). We have shown that there is an edge between \(u\) and \(v\) in \(T\), so they must lie on different heavy paths. Consequently, each vertex of \(T\) with color greater than \(1\) belongs to a different heavy path. This shows that the path \(M_r\) contains at least \(2^{k-2}-1\) light edges. \(\square \)

Proof of Lemma 2.4

As noted before, we may assume that \(G\) consists only of primary vertices and \(M\) is a tree. Let \(k\) be the maximum color used by First-fit on a vertex \(r\in C_i\). By Lemma 4.5, the path \(M_r\) in \(M\) from the root to \(r\) contains at least \(2^{k-2}-1\) light edges. This implies, by Lemma 4.4, that \(n\geqslant 2^{2^{k-2}}-1\). Therefore, First-fit uses at most \(O(\log \log n)\) colors on \(C_i\). We color \(C_1\) and \(C_2\) by First-fit using two separate sets of colors, obtaining a proper coloring of \(G\) with \(O(\log \log n)\) colors. \(\square \)

5 Clean Directed Families of Frames \(=\) Overlap Game Graphs

Proof of Lemma 2.3

First, we show that every overlap game graph is isomorphic to the intersection graph of a clean directed family of frames. Let \(G\) be an overlap game graph with meta-forest \(M\) and representation \(\mu \). We define frames \(F(v)\) for all vertices \(v\) of \(G\) so that

  • \(\ell (F(v))=\ell (\mu (v))\) and \(r(F(v))= r(\mu (v))\),

  • \(b(F(v))<b(F(v_1))<t(F(v_1))<\cdots < b(F(v_k))<t(F(v_k))<t(F(v))\), where \(v_1,\ldots ,v_k\) are the children of \(v\) in \(M\) in any order.

See Fig. 8 for an illustration. The numbers \(b(F(v))\) and \(t(F(v))\) can be computed by performing a depth-first search over the forest \(M\) and recording, for each vertex \(v\), the times at which the subtree of \(M\) rooted at \(v\) is entered and left, respectively. Clearly, if \(u\) and \(v\) are two vertices unrelated in \(M\), then \(t(F(u))<b(F(v))\) or \(t(F(v))<b(F(u))\), so \(F(u)\) and \(F(v)\) do not intersect. If \(u\prec v\), then we have \(b(F(u))<b(F(v))<t(F(v))<t(F(u))\), and therefore \(F(u)\) and \(F(v)\) intersect if and only if \(\mu (u)\) and \(\mu (v)\) overlap. Moreover, when \(F(u)\) and \(F(v)\) intersect, this intersection is rightward-directed. If there are three vertices \(u\), \(v\), \(w\) such that \(F(u)\) and \(F(v)\) intersect and \(F(w)\) is enclosed in both \(F(u)\) and \(F(v)\), then \(u\prec v\prec w\), \(\mu (u)\) and \(\mu (v)\) overlap, and \(\mu (w)\subset \mu (u)\cap \mu (v)\), which is excluded by the condition (G3) of the definition of an overlap game graph. Consequently, \(\{F(v):v\in V(G)\}\) is a clean rightward-directed family of frames, and its intersection graph is isomorphic to \(G\).

It remains to show that the intersection graph of every clean directed family of frames is an overlap game graph. Let \(\mathcal {F}\) be a directed family of frames. We can assume without loss of generality that \(\mathcal {F}\) is rightward-directed. Define a mapping \(\mu :\mathcal {F}\rightarrow \mathcal {I}\) so that \(\ell (\mu (F))=\ell (F)\) and \(r(\mu (F))=r(F)\), that is, \(\mu (F)\) is the interval obtained by projecting \(F\) on the \(x\)-axis.

For \(F\in \mathcal {F}\), let \(\mathcal {L}(F)\) be the subfamily of \(\mathcal {F}\) consisting of those \(F'\) for which \(\ell (F')<\ell (F)<r(F')\) and \(b(F')<b(F)<t(F)<t(F')\). We define a rooted forest \(M\) on \(\mathcal {F}\) as follows. If \(\mathcal {L}(F)=\emptyset \), then \(F\) is a root of \(M\). Otherwise, the parent of \(F\) in \(M\) is the member \(F'\) of \(\mathcal {L}(F)\) with greatest \(\ell (F')\). We show that the intersection graph of \(\mathcal {F}\) is an overlap game graph with meta-forest \(M\) and representation \(\mu \). To this end, we argue that the conditions (G1)–(G3) of the definition of an overlap game graph are satisfied by the intersection graph of \(\mathcal {F}\).

It follows directly from the definition of parents that \(F_1\prec F_2\) implies \(\ell (F_1)<\ell (F_2)\) and \(b(F_1)<b(F_2)<t(F_2)<t(F_1)\). This already shows (G1) and the right-to-left implication in (G2). Suppose there are \(F_1,F_2,F_3\in \mathcal {F}\) such that \(F_1\prec F_2\prec F_3\), \(\mu (F_1)\) and \(\mu (F_2)\) overlap, and \(\mu (F_3)\subset \mu (F_1)\cap \mu (F_2)\). We have \(\ell (F_1)<\ell (F_2)<\ell (F_3)<r(F_3)<r(F_1)<r(F_2)\) and \(b(F_1)<b(F_2)<b(F_3)<t(F_3)<t(F_2)<t(F_1)\), a configuration that is forbidden in a clean family of frames. This contradiction shows (G3). Now, let \(F_1\) and \(F_2\) be two intersecting members of \(\mathcal {F}\). By the assumption that \(\mathcal {F}\) is rightward-directed, \(\mu (F_1)\) and \(\mu (F_2)\) overlap, and we have \(F_1\in \mathcal {L}(F_2)\) or \(F_2\in \mathcal {L}(F_1)\). Therefore, in order to prove the left-to-right implication in (G2), it remains to show that \(F_1\in \mathcal {L}(F_2)\) implies \(F_1\prec F_2\). To this end, we use induction on the increasing order of \(\ell (F_2)\). There is nothing to prove when \(F_1\) is the parent of \(F_2\). Hence assume that \(F_1\in \mathcal {L}(F_2)\), but \(F_1\) is not the parent of \(F_2\). Let \(F_2'\) be the parent of \(F_2\). We have \(\ell (F_1)<\ell (F_2')<\ell (F_2)<r(F_1)\) and, since \(\mathcal {F}\) is rightward-directed, \(b(F_1)<b(F_2')<t(F_2')<t(F_1)\). Thus \(F_1\in \mathcal {L}(F_2')\). This and the induction hypothesis yield \(F_1\prec F_2'\) and thus \(F_1\prec F_2\). \(\square \)

Fig. 8
figure 8

Correspondence between overlap game graphs and intersection graphs of clean directed families of frames

6 Reduction to Clean Directed Families of Frames

The goal of this section is to prove Lemmas 2.1 and 2.2. To make the description simpler, we are going to partition a family of frames with bounded clique number into a bounded number of subfamilies with the property that the connected components of each subfamily are directed, but the directions of different components may be different. Let \(\xi (\mathcal {F})\) denote the minimum size of such a partition of a family of frames \(\mathcal {F}\). It is enough to bound \(\xi (\mathcal {F})\), because we can gather the connected components of each partition class that have the same direction, thus turning each partition class into at most four directed families. This way we will obtain the bound of \(4\xi (\mathcal {F})\) on the size of a partition of \(\mathcal {F}\) into directed families.

Two families of frames \(\mathcal {F}_1\) and \(\mathcal {F}_2\) are mutually disjoint if there are no two intersecting frames \(F_1\in \mathcal {F}_1\) and \(F_2\in \mathcal {F}_2\). The following properties of \(\xi \) (analogous to the properties of chromatic number) are straightforward:

  1. (i)

    \(\xi (\mathcal {F}_1\cup \cdots \cup \mathcal {F}_m)\leqslant \xi (\mathcal {F}_1)+\cdots +\xi (\mathcal {F}_m)\),

  2. (ii)

    if \(\mathcal {F}_i\) and \(\mathcal {F}_j\) are mutually disjoint for \(i\ne j\), then \(\xi (\mathcal {F}_1\cup \cdots \cup \mathcal {F}_m)=\max \{\xi (\mathcal {F}_1),\ldots ,\xi (\mathcal {F}_m)\}\).

We will use them implicitly in the rest of this section. For convenience, whenever we consider a partition of a family into a number of subfamilies, we allow these subfamilies to be empty.

Recall that two frames are said to cross if both vertical sides of one intersect both horizontal sides of the other. A family of frames \(\mathcal {F}\) is non-crossing if it contains no two crossing frames.

Lemma 6.1

(implicit in [2]) Every family of frames \(\mathcal {F}\) with \(\omega (\mathcal {F})\leqslant k\) can be partitioned into \(k\) non-crossing subfamilies.

Proof

Define a partial order \(<\) on \(\mathcal {F}\) so that \(F_1<F_2\) whenever both vertical sides of \(F_1\) intersect both horizontal sides of \(F_2\). The graph \(G^+\) of crossing pairs of frames in \(\mathcal {F}\) is the comparability graph of \(<\), so it is perfect. Hence \(\chi (G^+)=\omega (G^+)\leqslant \omega (\mathcal {F})\leqslant k\), and the lemma follows. \(\square \)

A frame \(E\) is external to a family of frames \(\mathcal {F}\) if \(E\not \subset \bigcup _{F\in \mathcal {F}}{{\mathrm{rect}}}(F)\). A subfamily \(\mathcal {L}\) of a family of frames \(\mathcal {F}\) is a layer of \(\mathcal {F}\) if \(|\mathcal {L}|=1\) or every frame in \(\mathcal {L}\) intersects some frame in \(\mathcal {F}\backslash \mathcal {L}\) external to \(\mathcal {L}\). A family \(\mathcal {L}\subset \mathcal {F}\) is an m-fold layer of \(\mathcal {F}\) if there is a chain of families \(\mathcal {L}=\mathcal {L}_m\subset \mathcal {L}_{m-1}\subset \cdots \subset \mathcal {L}_0=\mathcal {F}\) such that \(\mathcal {L}_{i+1}\) is a layer of \(\mathcal {L}_i\) for \(0\leqslant i\leqslant m-1\). Note that every subfamily of a layer (an \(m\)-fold layer) of \(\mathcal {F}\) is also a layer (an \(m\)-fold layer) of \(\mathcal {F}\).

Lemma 6.2

Every family of frames \(\mathcal {F}\) has a partition \(\fancyscript{P}\) into layers. Moreover, \(\fancyscript{P}\) can be partitioned into two subclasses each consisting of mutually disjoint layers.

Proof

When \(\mathcal {F}\) is not connected, the layers and the bipartition can be constructed for each component separately. Thus assume, without loss of generality, that \(\mathcal {F}\) is connected. Choose any frame \(R\in \mathcal {F}\) that is external to \(\mathcal {F}\backslash \{R\}\). For \(j\in \mathbb {N}\), let \(\mathcal {L}_j\) consist of those frames in \(\mathcal {F}\) whose distance to \(R\) in the intersection graph of \(\mathcal {F}\) is \(j\). Let \(d\) be greatest such that \(\mathcal {L}_d\ne \emptyset \). We claim that \(\fancyscript{P}=\{\mathcal {L}_0,\ldots ,\mathcal {L}_d\}\) is a partition of \(\mathcal {F}\) into layers.

We have \(|\mathcal {L}_0|=1\), so \(\mathcal {L}_0\) is a layer. To show that \(\mathcal {L}_j\) with \(j\geqslant 1\) is a layer, we find, for each \(F\in \mathcal {L}_j\), a frame in \(\mathcal {F}\backslash \mathcal {L}_j\) external to \(\mathcal {L}_j\) and intersecting \(F\). Let \(F_0F_1\ldots F_j\) be a path from \(F_0=R\) to \(F_j=F\) of length \(j\). Let \(i\) be greatest such that \(F_i\) is external to \(\mathcal {L}_j\) (such \(i\) exists, as \(R\) is external to \(\mathcal {L}_j\)). Since \(F_i\) intersects \(F_{i+1}\), which is not external to \(\mathcal {L}_j\), \(F_i\) must intersect some frame \(F'\in \mathcal {L}_j\). This witnesses a path from \(R\) to \(F'\) of length \(i+1\), so \(i+1=j\). Therefore, \(F_i\) is the requested frame external to \(\mathcal {L}_j\) and intersecting \(F\).

Clearly, any two intersecting frames belong to one layer or two layers with consecutive indices. Hence the families \(\{\mathcal {L}_j:j\) is odd\(\}\) and \(\{\mathcal {L}_j:j\) is even\(\}\) consist of mutually disjoint layers. \(\square \)

Corollary 6.3

Every family of frames \(\mathcal {F}\) has a partition \(\fancyscript{P}\) into \(m\)-fold layers. Moreover, \(\fancyscript{P}\) can be partitioned into \(2^m\) subclasses each consisting of mutually disjoint \(m\)-fold layers.

Proof

We proceed by induction on \(m\). For \(m=1\), this is exactly the statement of Lemma 6.2. For \(m\geqslant 2\), we apply induction hypothesis to construct a partition \(\fancyscript{P}'\) of \(\mathcal {F}\) into \((m-1)\)-fold layers and a partition of \(\fancyscript{P}'\) into \(2^{m-1}\) subclasses \(\fancyscript{P}_1,\ldots ,\fancyscript{P}_{2^{m-1}}\) each consisting of mutually disjoint layers. We apply Lemma 6.2 to construct a partition \(\fancyscript{P}^\mathcal {L}\) of each \((m-1)\)-fold layer \(\mathcal {L}\in \fancyscript{P}'\) into layers, which are now \(m\)-fold layers of \(\mathcal {F}\), and a partition of \(\fancyscript{P}^\mathcal {L}\) into two subclasses \(\fancyscript{P}^\mathcal {L}_1\) and \(\fancyscript{P}^\mathcal {L}_2\) each consisting of mutually disjoint layers. We set \(\fancyscript{P}=\bigcup _{\mathcal {L}\in \fancyscript{P}}\fancyscript{P}^\mathcal {L}\). The desired partition of \(\fancyscript{P}\) is formed by the families \(\bigcup _{\mathcal {L}\in \fancyscript{P}_i}\fancyscript{P}^\mathcal {L}_1\) and \(\bigcup _{\mathcal {L}\in \fancyscript{P}_i}\fancyscript{P}^\mathcal {L}_2\) for \(1\leqslant i\leqslant 2^{m-1}\). \(\square \)

Theorem 6.4

(Asplund, Grünbaum [2]) Let \(\mathcal {R}\) be a family of axis-parallel rectangles with \(\omega (\mathcal {R})\leqslant k\). It follows that \(\chi (\mathcal {R})\leqslant \alpha _k\), where \(\alpha _k\) depends only on \(k\).

The precise bound of Theorem 6.4 in [2] is \(4k^2-3k\). This was improved to \(3k^2-2k-1\) by Hendler [10]. However, we are going to apply Theorem 6.4 only to non-crossing families \(\mathcal {R}\), for which the bound in [2] is \(4k-3\).

A curve is x-semimonotone if its intersection with every vertical line is connected or empty.

Theorem 6.5

(Suk [18]) Let \(V\) be a vertical line. Let \(\mathcal {C}\) be a family of \(x\)-semimonotone curves contained in the right half-plane delimited by \(V\) such that \(|V\cap C|=1\) for any \(C\in \mathcal {C}\), \(|C_1\cap C_2|\leqslant 1\) for any distinct \(C_1,C_2\in \mathcal {C}\), and \(\omega (\mathcal {C})\leqslant k\). It follows that \(\chi (\mathcal {C})\leqslant \beta _k\), where \(\beta _k\) depends only on \(k\).

The actual theorem in [18] concerns families of \(x\)-monotone curves, that is, curves whose intersection with every vertical line is a single point or empty. The generalization to \(x\)-semimonotone curves above comes from the fact that we can always perturb a family of \(x\)-semimonotone curves to make them \(x\)-monotone without changing their intersection graph. Theorem 6.5 for \(k=2\) but without the \(x\)-semimonotonicity assumption was proved by McGuinness [13]. Lasoń et al. [12] generalized Theorem 6.5 removing the \(x\)-semimonotonicity assumption for any \(k\).

For the rest of this section, assume that \(\alpha _k\) and \(\beta _k\) are as in the statements of Theorems 6.4 and 6.5. Define constants \(\gamma _k\) and \(\delta _{k,m}\) for \(1\leqslant m\leqslant k\) by induction on \(k\) and \(m\), as follows:

$$\begin{aligned} \gamma _1=1,\quad \delta _{k,1}=0,\quad \delta _{k,m}=4(m-1)(\beta _k^4+2\gamma _{k-1}+\delta _{k,m-1}),\quad \gamma _k=2^k\alpha _k\delta _{k,k}. \end{aligned}$$

We are going to prove the bound \(\xi (\mathcal {F})\leqslant k\gamma _k\) for families of frames \(\mathcal {F}\) with \(\omega (\mathcal {F})\leqslant k\).

Lemma 6.6

Let \(\mathcal {F}\) be a non-crossing family of frames with \(\omega (\mathcal {F})\leqslant k\), let \(1\leqslant m\leqslant k\), let \(B_1,\ldots ,B_{k-m+1}\) be pairwise intersecting frames, and let \(\mathcal {L}\subset \mathcal {F}\) be a family of frames enclosed in each of \(B_1,\ldots ,B_{k-m+1}\) such that \(\mathcal {L}\cup \{B_1,\ldots ,B_{k-m+1}\}\) is an \(m\)-fold layer of \(\mathcal {F}\). Suppose that \(\xi (\mathcal {L}')\leqslant \gamma _{k-1}\) holds for any subfamily \(\mathcal {L}'\subset \mathcal {L}\) with \(\omega (\mathcal {L}')\leqslant k-1\). It follows that \(\xi (\mathcal {L})\leqslant \delta _{k,m}\).

Proof

The proof goes by induction on \(m\). If \(m=1\), then the assumption that \(\mathcal {L}\cup \{B_1,\ldots ,B_k\}\) is a layer of \(\mathcal {F}\) yields \(\mathcal {L}=\emptyset \). Indeed, if there was some \(F\in \mathcal {L}\), then there would be a frame \(E\in \mathcal {F}\) external to \(\mathcal {L}\cup \{B_1,\ldots ,B_k\}\) and intersecting \(F\). Hence \(\{B_1,\ldots ,B_k,E\}\) would be a \((k+1)\)-clique in \(\mathcal {F}\). We conclude that \(\xi (\mathcal {L})=0=\delta _{k,1}\).

Now, assume that \(2\leqslant m\leqslant k\) and the lemma holds for \(m-1\). We show that \(\xi (\mathcal {L})\leqslant 4(m-1)(\beta _k^4+2\gamma _{k-1}+\delta _{k,m-1})=\delta _{k,m}\).

Since \(\mathcal {L}\cup \{B_1,\ldots ,B_{k-m+1}\}\) is an \(m\)-fold layer of \(\mathcal {F}\), there is an \((m-1)\)-fold layer \(\mathcal {M}\) of \(\mathcal {F}\) such that \(\mathcal {L}\cup \{B_1,\ldots ,B_{k-m+1}\}\) is a layer of \(\mathcal {M}\). Let \(\mathcal {S}\) be the family of those frames in \(\mathcal {M}\) that intersect all of \(B_1,\ldots ,B_{k-m+1}\) and do not lie inside any frame in \(\mathcal {M}\) intersecting all of \(B_1,\ldots ,B_{k-m+1}\). It follows that \(\omega (\mathcal {S})\leqslant m-1\) and two frames in \(\mathcal {S}\) intersect if and only if their filling rectangles intersect. Since \(\mathcal {L}\cup \{B_1,\ldots ,B_{k-m+1}\}\) is a layer of \(\mathcal {M}\), for every \(F\in \mathcal {L}\), there is a frame \(E\in \mathcal {M}\) that is external to \(\mathcal {L}\cup \{B_1,\ldots ,B_{k-m+1}\}\) and intersects \(F\), which implies that \(E\) or some frame enclosing \(E\) belongs to \(\mathcal {S}\). Hence every frame in \(\mathcal {L}\) intersects or is enclosed in some frame in \(\mathcal {S}\).

We partition \(\mathcal {S}\) into four families \(\mathcal {S}^1\), \(\mathcal {S}^2\), \(\mathcal {S}^3\) and \(\mathcal {S}^4\) so that every frame in \(\mathcal {S}^1\), \(\mathcal {S}^2\), \(\mathcal {S}^3\) or \(\mathcal {S}^4\) intersects the left, right, bottom or top side of \(B_1\), respectively. Next, we partition \(\mathcal {L}\) into four families \(\mathcal {L}^1\), \(\mathcal {L}^2\), \(\mathcal {L}^3\) and \(\mathcal {L}^4\) so that every frame in \(\mathcal {L}^i\) intersects or is enclosed in some frame in \(\mathcal {S}^i\). We have \(\xi (\mathcal {L})\leqslant \xi (\mathcal {L}^1)+\xi (\mathcal {L}^2)+\xi (\mathcal {L}^3)+\xi (\mathcal {L}^4)\). We show that \(\xi (\mathcal {L}^i)\leqslant (m-1)(\beta _k^4+2\gamma _{k-1}+\delta _{k,m-1})\). In the following, we assume without loss of generality that \(i=1\), that is, we are to bound \(\xi (\mathcal {L}^1)\).

We partition \(\mathcal {L}^1\) into three families \(\mathcal {X}\), \(\mathcal {Y}\) and \(\mathcal {Z}\) as follows. Fix a frame \(F\in \mathcal {L}^1\). If there is a frame in \(\mathcal {S}^1\) that encloses \(F\), then we put \(F\) in \(\mathcal {X}\). Otherwise, if there is a frame in \(\mathcal {S}^1\) that encloses the entire top or bottom side of \(F\), then we put \(F\) in \(\mathcal {Y}\). If neither of the above holds, then we put \(F\) in \(\mathcal {Z}\).

The intersection graph of \(\mathcal {S}^1\) is isomorphic to the intersection graph of the filling rectangles of the frames in \(\mathcal {S}^1\), so it is an interval graph, as all these rectangles intersect the vertical line containing the left side of \(B_1\). Hence \(\chi (\mathcal {S}^1)=\omega (\mathcal {S}^1)\leqslant m-1\). Therefore, we can partition \(\mathcal {S}^1\) into \(m-1\) families \(\mathcal {S}_1,\ldots ,\mathcal {S}_{m-1}\) each consisting of frames with pairwise disjoint filling rectangles. We also partition each of \(\mathcal {X}\), \(\mathcal {Y}\) and \(\mathcal {Z}\) into \(m-1\) families \(\mathcal {X}_1,\ldots ,\mathcal {X}_{m-1}\), \(\mathcal {Y}_1,\ldots ,\mathcal {Y}_{m-1}\) and \(\mathcal {Z}_1,\ldots ,\mathcal {Z}_{m-1}\), respectively, so that

  • if \(F\in \mathcal {X}_j\), then \(F\) is enclosed in a frame in \(\mathcal {S}_j\),

  • if \(F\in \mathcal {Y}_j\), then the bottom or top side of \(F\) is enclosed in a frame in \(\mathcal {S}_j\),

  • if \(F\in \mathcal {Z}_j\), then \(F\) intersects a frame in \(\mathcal {S}_j\) and neither of the above holds.

We show that \(\xi (\mathcal {X}_j)\leqslant \delta _{k,m-1}\), \(\xi (\mathcal {Y}_j)\leqslant 2\gamma _{k-1}\) and \(\xi (\mathcal {Z}_j)\leqslant \beta _k^4\) for \(1\leqslant j\leqslant m-1\). Once this is achieved, we will have

$$\begin{aligned} \xi (\mathcal {L}^1)\leqslant \sum _{j=1}^{m-1}\xi (\mathcal {X}_j)+\sum _{j=1}^{m-1}\xi (\mathcal {Y}_j)+ \sum _{j=1}^{m-1}\xi (\mathcal {Z})\leqslant (m-1)(\beta _k^4+2\gamma _{k-1}+\delta _{k,m-1}). \end{aligned}$$

First, we show that \(\xi (\mathcal {X}_j)\leqslant \delta _{k,m-1}\). We partition \(\mathcal {X}_j\) into \(|\mathcal {S}_j|\) families \(\mathcal {X}_S\) for \(S\in \mathcal {S}_j\) so that if \(F\in \mathcal {X}_S\), then \(F\) is enclosed in \(S\). The families \(\mathcal {X}_S\) for \(S\in \mathcal {S}_j\) are mutually disjoint, as the filling rectangles of the \(S\in \mathcal {S}_j\) are pairwise disjoint. Let \(S\in \mathcal {S}_j\). It follows that \(S\) intersects all of \(B_1,\ldots ,B_{k-m+1}\). Since \(\mathcal {X}_S\cup \{B_1,\ldots ,B_{k-m+1},S\}\) is a subfamily of \(\mathcal {M}\), it is an \((m-1)\)-fold layer of \(\mathcal {F}\). The induction hypothesis yields \(\xi (\mathcal {X}_S)\leqslant \delta _{k,m-1}\). Hence \(\xi (\mathcal {X}_j)=\max _{S\in \mathcal {S}_j}\xi (\mathcal {X}_S)\leqslant \delta _{k,m-1}\).

Now, we show that \(\xi (\mathcal {Y}_j)\leqslant 2\gamma _{k-1}\). We partition \(\mathcal {Y}_j\) into two families \(\mathcal {Y}_j^b\) and \(\mathcal {Y}_j^t\) so that if \(F\in \mathcal {Y}_j^b\), then the bottom side of \(F\) is enclosed in some frame in \(\mathcal {S}_j\), while if \(F\in \mathcal {Y}_j^t\), then the top side of \(F\) is enclosed in some frame in \(\mathcal {S}_j\). We show that \(\omega (\mathcal {Y}_j^b)\leqslant k-1\) and \(\omega (\mathcal {Y}_j^t)\leqslant k-1\). Then, it will follow that \(\xi (\mathcal {Y}_j)\leqslant \xi (\mathcal {Y}_j^b)+\xi (\mathcal {Y}_j^t)\leqslant 2\gamma _{k-1}\).

To see that \(\omega (\mathcal {Y}_j^b)\leqslant k-1\), let \(\mathcal {K}\) be a clique in \(\mathcal {Y}_j^b\). Let \(F\) be the frame in \(\mathcal {K}\) with maximum \(b(F)\), and let \(S\) be the frame in \(\mathcal {S}_j\) enclosing the bottom side of \(F\). It follows that \(F\) and \(S\) intersect. Moreover, every other frame in \(\mathcal {K}\backslash \{F\}\) intersects or encloses the bottom side of \(F\) and thus intersects \(S\) as well. Hence \(\mathcal {K}\cup \{S\}\) is a clique in \(\mathcal {F}\). This implies \(|\mathcal {K}|\leqslant \omega (\mathcal {F})-1\leqslant k-1\). The proof that \(\omega (\mathcal {Y}_j^t)\leqslant k-1\) is analogous.

Finally, we show that \(\xi (\mathcal {Z}_j)\leqslant \beta _k^4\). The definition of \(\mathcal {Z}_j\) and the assumption that \(\mathcal {F}\) is non-crossing imply that the right side of no frame in \(\mathcal {Z}_j\) intersects or is enclosed in any frame in \(\mathcal {S}_j\). For each frame \(F\in \mathcal {Z}_j\), we define four curves, the short lower, short upper, long lower and long upper trace of \(F\), as follows. The short lower (upper) trace of \(F\) starts at the bottom (top) right corner of \(F\) and follows along the bottom (top) side of \(F\) and possibly further along \(F\) until it reaches an intersection point with a frame \(S\in \mathcal {S}_j\) on either the bottom (top) or the left side of \(F\). The long lower (upper) trace of \(F\) starts at the top (bottom) right corner of \(F\), follows along the right side of \(F\) to the bottom (top) corner of \(F\), and then continues along the short lower (upper) trace until the intersection point with a frame \(S\in \mathcal {S}_j\). See Fig. 9 for an illustration.

All short lower (upper) traces can be connected to the left side of \(B_1\) by pairwise disjoint \(x\)-monotone curves inside the frames in \(\mathcal {S}_j\), thus forming a family of \(x\)-semimonotone curves with the same intersection graph. Any two of these curves intersect in at most one point, because so do any two short lower (upper) traces. Therefore, by Theorem 6.5, there are proper colorings \(\phi _\ell \) and \(\phi _u\) of all short lower and short upper traces, respectively, with \(\beta _k\) colors. To prove that \(\xi (\mathcal {Z}_j)\leqslant \beta _k^4\), it is enough to show that \(\xi (\mathcal {Z}')\leqslant \beta _k^2\) for any family \(\mathcal {Z}'\subset \mathcal {Z}_j\) of frames whose short lower traces have the same color in \(\phi _\ell \) and whose short upper traces have the same color in \(\phi _u\).

Let \(\mathcal {Z}'\) be such a family. Since the short lower (upper) traces of any two frames in \(\mathcal {Z}'\) are disjoint, their long lower (upper) traces intersect in at most one point. Consequently, the same argument as for short traces yields proper colorings \(\psi _\ell \) and \(\psi _u\) of all long lower and long upper traces, respectively, with \(\beta _k\) colors. The intersection of any two frames in \(\mathcal {Z}'\) whose lower long traces are disjoint and whose upper long traces are disjoint is leftward-directed. Therefore, the frames in \(\mathcal {Z}'\) whose long lower traces have the same color in \(\psi _\ell \) and whose long upper traces have the same color in \(\psi _u\) form a leftward-directed family. This shows that \(\xi (\mathcal {Z}')\leqslant \beta _k^2\). \(\square \)

Fig. 9
figure 9

Short (blue) and long (blue + red) lower traces

Lemma 6.7

Every non-crossing family of frames \(\mathcal {F}\) with \(\omega (\mathcal {F})\leqslant k\) satisfies \(\xi (\mathcal {F})\leqslant \gamma _k\).

Proof

The proof goes by induction on \(k\). The statement is trivial for \(k=1\), so assume that \(k\geqslant 2\) and the statement holds for \(k-1\). Let \(\mathcal {F}\) be a non-crossing family of frames with \(\omega (\mathcal {F})\leqslant k\). By Corollary 6.3, \(\mathcal {F}\) has a partition \(\fancyscript{P}\) into \(k\)-fold layers, and moreover, \(\fancyscript{P}\) can be partitioned into \(2^k\) subclasses \(\fancyscript{P}_1,\ldots ,\fancyscript{P}_{2^k}\) each consisting of mutually disjoint \(k\)-fold layers. We show that \(\xi (\mathcal {L})\leqslant \alpha _k\delta _{k,k}\) for any \(k\)-fold layer \(\mathcal {L}\in \fancyscript{P}\). Once this is done, we will have \(\xi (\cup \fancyscript{P}_i)\leqslant \alpha _k\delta _{k,k}\) (because each \(\fancyscript{P}_i\) consists of mutually disjoint \(k\)-fold layers) and thus

$$\begin{aligned} \xi (\mathcal {F})\leqslant \sum _{i=1}^{2^k}\xi ({\textstyle \cup \fancyscript{P}_i})\leqslant 2^k\alpha _k\delta _{k,k}=\gamma _k. \end{aligned}$$

Let \(\mathcal {L}\in \fancyscript{P}\). Let \(\mathcal {R}\) be the family of those frames in \(\mathcal {L}\) that do not lie inside any frame in \(\mathcal {L}\). Every frame in \(\mathcal {L}\backslash \mathcal {R}\) is enclosed in some frame in \(\mathcal {R}\). Hence \(\mathcal {L}\backslash \mathcal {R}\) can be partitioned into \(|\mathcal {R}|\) families \(\mathcal {L}_R\) for \(R\in \mathcal {R}\) so that every frame in \(\mathcal {L}_R\) is enclosed in \(R\). Since \(\mathcal {L}_R\cup \{R\}\) is a \(k\)-fold layer of \(\mathcal {F}\), it follows from Lemma 6.6 that \(\xi (\mathcal {L}_R)\leqslant \delta _{k,k}\). The intersection graph of \(\mathcal {R}\) is isomorphic to the intersection graph of the filling rectangles of the frames in \(\mathcal {R}\), so Theorem 6.4 yields \(\chi (\mathcal {R})\leqslant \alpha _k\). Hence \(\mathcal {R}\) can be partitioned into \(\alpha _k\) subfamilies \(\mathcal {R}_1,\ldots ,\mathcal {R}_{\alpha _k}\) each consisting of frames with pairwise disjoint filling rectangles. For \(1\leqslant j\leqslant \alpha _k\), the families \(\mathcal {R}_j\) and \(\mathcal {L}_R\) for \(R\in \mathcal {R}_j\) are mutually disjoint, so

$$\begin{aligned} \xi \Bigl (\mathcal {R}_j\cup \bigcup _{R\in \mathcal {R}_j}\mathcal {L}_R\Bigr )=\max \bigl \{\xi (\mathcal {R}_j),\max _{R\in \mathcal {R}_j}\xi (\mathcal {L}_R)\bigr \}\leqslant \delta _{k,k}. \end{aligned}$$

Therefore,

$$\begin{aligned} \xi (\mathcal {L})\leqslant \sum _{j=1}^{\alpha _k}\xi \Bigl (\mathcal {R}_j\cup \bigcup _{R\in \mathcal {R}_j} \mathcal {L}_R\Bigr )\leqslant \alpha _k\delta _{k,k}. \end{aligned}$$

\(\square \)

Proof of Lemma 2.1

Let \(\mathcal {F}\) be a family of frames with \(\omega (\mathcal {F})\leqslant k\). As it has been explained at the beginning of this section, it is enough to bound \(\xi (\mathcal {F})\) in terms of \(k\). By Lemma 6.1, we can partition \(\mathcal {F}\) into \(k\) non-crossing families \(\mathcal {F}_1,\ldots ,\mathcal {F}_k\). By Lemma 6.7, we have \(\xi (\mathcal {F}_i)\leqslant \gamma _k\) for \(1\leqslant i\leqslant k\). Hence \(\xi (\mathcal {F})\leqslant \sum _{i=1}^k\xi (\mathcal {F}_i)\leqslant k\gamma _k\).

\(\square \)

Proof of Lemma 2.2

Let \(\mathcal {F}\) be a triangle-free family of frames. By Lemma 6.2, \(\mathcal {F}\) has a partition \(\fancyscript{P}\) into layers, which can be further split as \(\fancyscript{P}=\fancyscript{P}_1\cup \fancyscript{P}_2\) so that each of \(\fancyscript{P}_1\) and \(\fancyscript{P}_2\) consists of mutually disjoint layers. We are going to show that each layer in \(\fancyscript{P}\) is a clean family of frames. This will show that the subfamilies \(\cup \fancyscript{P}_1\) and \(\cup \fancyscript{P}_2\) of \(\mathcal {F}\) satisfy the conclusion of the lemma.

Choose any layer \(\mathcal {L}\in \fancyscript{P}\). Suppose there are three frames \(F_1,F_2,F_3\in \mathcal {L}\) such that \(F_1\) and \(F_2\) intersect and \(F_3\) is enclosed in both \(F_1\) and \(F_2\). By the definition of a layer, there is a frame \(E\in \mathcal {F}\backslash \mathcal {L}\) external to \(\mathcal {L}\) and intersecting \(F_3\). Clearly, \(E\) must intersect both \(F_1\) and \(F_2\), thus creating a triangle in the intersection graph of \(\mathcal {F}\). This contradiction shows that \(\mathcal {L}\) is indeed a clean family of frames. \(\square \)

7 Problems

The authors of [16] asked for the maximum possible chromatic number of a triangle-free intersection graph of \(n\) segments. In this paper, we resolved a similar question for frames. The following problems ask whether segment graphs behave similarly to frame graphs with respect to containment of overlap game graphs.

Problem 1

Can every triangle-free segment intersection graph be decomposed into a bounded number of overlap game graphs?

Problem 2

Does every triangle-free segment intersection graph with chromatic number \(k\) contain an overlap game graph with chromatic number at least \(ck\) as an induced subgraph, for some absolute constant \(c>0\)?

The positive answer to either question would yield the bound of \(\Theta (\log \log n)\) on the chromatic number of triangle-free segment intersection graphs, while the negative answer would help us understand the limitations of our methods.

Most results of this paper concern triangle-free graphs, but similar statements are likely to hold for \(K_k\)-free graphs.

Problem 3

What is the maximum possible chromatic number of a \(K_k\)-free overlap graph of \(n\) rectangles (intersection graph of \(n\) frames)?