Abstract 1 Introduction 2 Preliminaries 3 Monotonicity of minimum partition numbers 4 Reconfiguration of restricted non-guillotine partitions 5 Analysis of reconfigured non-guillotine partitions 6 Bang-type theorem for partitions of a convex body References

Minimum Partition of Polygons Under Width and Cut Constraints

Jaehoon Chung ORCID Korea Institute for Advanced Study (KIAS), Seoul, South Korea Kazuo Iwama Department of Industrial Engineering and Engineering Management, National Tsing Hua University, Hsinchu, Taiwan Chung-Shou Liao Department of Electrical Engineering, National Taiwan University, Taipei, Taiwan Hee-Kap Ahn ORCID Graduate School of Artificial Intelligence, Department of Computer Science and Engineering, Pohang University of Science and Technology (POSTECH), South Korea
Abstract

We study the problem of partitioning a polygon into the minimum number of subpolygons using cuts in predetermined directions such that each resulting subpolygon satisfies a given width constraint. A polygon satisfies the unit-width constraint for a set of unit vectors if the length of the orthogonal projection of the polygon on a line parallel to a vector in the set is at most one. We analyze structural properties of the minimum partition numbers, focusing on monotonicity under polygon containment. We show that the minimum partition number of a simple polygon is at least that of any subpolygon, provided that the subpolygon satisfies a certain orientation-wise convexity with respect to the polygon. As a consequence, we prove a partition analogue of the Bang’s conjecture about coverings of convex regions in the plane: for any partition of a convex body in the plane, the sum of relative widths of all parts is at least one. For any convex polygon, there exists a direction along which an optimal partition is achieved by parallel cuts. Given such a direction, an optimal partition can be computed in linear time.

Keywords and phrases:
Polygon partitioning, Width constraints, Plank problem
Funding:
Jaehoon Chung: Supported by a KIAS Individual Grant AP106101 via the Center for Artificial Intelligence and Natural Sciences at Korea Institute for Advanced Study.
Kazuo Iwama: Supported in part by MOST, Taiwan, under Grants NSTC 110-2223-E-007-001 and NSTC 111-2223-E-007-010.
Chung-Shou Liao: Supported by MOST Taiwan Grants NSTC 111-2221-E-002-207-MY3, 114-2221-E-002-221-MY3, and 114-2221-E-002-220-MY3.
Hee-Kap Ahn: Supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government(MSIT) (RS-2023-00219980) and the Institute of Information & communications Technology Planning & Evaluation(IITP) grant funded by the Korea government(MSIT) (No. RS-2019-II191906, Artificial Intelligence Graduate School Program(POSTECH)).
Copyright and License:
[Uncaptioned image] © Jaehoon Chung, Kazuo Iwama, Chung-Shou Liao, and Hee-Kap Ahn; licensed under Creative Commons License CC-BY 4.0
2012 ACM Subject Classification:
Theory of computation Computational geometry
Related Version:
Full Version: https://arxiv.org/abs/2509.09981
Editors:
Ho-Lin Chen, Wing-Kai Hon, and Meng-Tsung Tsai

1 Introduction

Most works in partitioning polygons have primarily focused on maximizing geometric measures, such as fatness or the minimum side length of resulting pieces [11, 13, 20]. In this paper, we study an opposite objective: partitioning a polygon into subpolygons whose widths are bounded above in certain directions. Such a width constraint commonly arises in manufacturing and recycling industries, where materials must be cut or processed within certain width limits. For example, wood chipping and metal shredding require pieces to fit within the machine’s inlet. In some materials, cut directions are critical for preserving structural strength; for example, fabric is typically cut along the fiber direction [17].

Our problem is rooted in classical questions in convex geometry, notably Tarski’s plank problem and its affine-invariant extension by Bang [7]. The original conjecture asserts that any covering of a convex body in d by strips must have a total width at least the minimal width of the body, which was proven by Bang. Bang further proposed the affine plank problem, in which strip widths are measured relative to the body’s width in the same direction. The affine version remains open in general, with only partial results [16, 4, 19, 6]. It is known to be equivalent to the Davenport conjecture [5], which concerns partitions. Several partition analogues have been studied [9, 3, 10].

Our work can also be viewed as a partition analogue of these problems in the plane, where width constraints replace strips, and simple polygons substitute convex bodies.

Figure 1: (a) The polygon P has a windmill shape with three arms extending from an equilateral triangle of height 4. (b–c) The minimum partitions of P under constraints U={𝐯0,𝐯60,𝐯120} and W={𝐯30,𝐯90,𝐯150}, where 𝐯θ=(cosθ,sinθ)𝕊+. (b) A guillotine partition of five trapezoids. (c) A non-guillotine partition of four trapezoids.

1.1 Problem definition and results

We consider the problem of partitioning polygons into the minimum number of pieces satisfying both a unit-width constraint and a cut constraint. Let P be a simple polygon. Let Q be a piece in a partition of P satisfying unit-width constraint W𝕊+, where 𝕊+ is the set of unit vectors {(cosθ,sinθ)0θ<π}. Let ω𝐯(Q) denote the width of Q in 𝐯𝕊+, that is, the length of the orthogonal projection of Q on a line parallel to 𝐯. We say Q satisfies the unit-width constraint W if ω𝐯(Q)1 for some vector 𝐯W.

The process of partitioning P must satisfy a cut constraint U𝕊+. A cut is defined as a line segment within P whose relative interior lies in the interior of P. A unit vector is often used to represent a direction, such as the orientation of a cut, meaning that the cut lies on a line parallel to the vector. We require that every cut must be in a direction in U. If a cut extends from one edge of P to the other edge, it divides P into two distinct pieces; such a cut is called a guillotine cut. A guillotine partition of P (also called a binary partition) is obtained by a finite sequence of guillotine cuts; it starts from P and recursively partitions each piece into two subpieces using a guillotine cut. A non-guillotine partition of P is an arbitrary partition of P using cuts that are not necessarily guillotine. Figure 1 shows a guillotine partition and a non-guillotine partition.

Given a simple polygon P, our objective is to partition P into the minimum number of pieces using cuts constrained by U such that each piece in the partition satisfies unit-width constraint W. We denote this minimum partition problem by wPartition(P,W,U) and its optimum value by opt(P,W,U). Throughout this paper, we use W and U exclusively to refer to the unit-width constraint and the cut constraint, respectively.

Related Work.

Damian and Pemmaraju [14] and Damian-Iordache [15] gave a polynomial-time algorithm for partitioning a simple polygon into the minimum number of subpolygons without using Steiner points such that each subpolygon has diameter at most α, for α>0. Later, Buchin and Selbach [11] showed that this problem becomes NP-hard for polygons with holes. Worman [22] proved NP-completeness for a variant in which each subpolygon must be contained in an axis-aligned square of side length α. Abrahamsen and Stade [2] showed that allowing Steiner points leads to NP-hardness for the partition problem under axis-aligned unit-square containment, even for simple polygons without holes. This marks the first known NP-hardness result of the minimum partition problems for hole-free polygons. Abrahamsen and Rasmussen [1] studied the problem of partitioning simple polygons into the minimum number of pieces such that each piece satisfies a bounded-size constraint (e.g., unit area, perimeter, diameter, or containment within unit disks or squares).

Our Results.

Our main contribution is an analysis of the minimum partition number under constraints W,U𝕊+. First, we provide necessary and sufficient conditions for the existence of feasible partitions in wPartition(P,W,U), along with a decision algorithm for testing feasibility

Second, we study the monotonicity of the minimum partition number under polygon containment QP (Sections 3, 4, and 5). We show that this monotonicity does not hold in general, and identify a sufficient condition based on a restricted-orientation convexity, called 𝒪-convexity, where 𝒪𝕊+. Theorem 3 states that opt(Q,W,U)opt(P,W,U) holds if Q is U-convex with respect to P for guillotine partitions, or W¯-convex with respect to P for non-guillotine partitions, where W¯ is the set of all unit vectors perpendicular to those in W.

Finally, we prove a partition analogue of Bang’s conjecture (Section 6). The statement of Bang’s conjecture is as follows: if a convex body Kd is covered by strips H1,,Hm, then i=1minf𝐯𝕊+ω𝐯(Hi)ω𝐯(K)1. Our theorem replaces strip coverings with arbitrary partitions and extends the direction set to any subset W𝕊+.

Theorem 1 (Bang-Type Partition Analogue).

Let K2 be a convex body, and let K1Km=K be its arbitrary partition. Then, for any subset W𝕊+,

i=1minf𝐯Wω𝐯(Ki)ω𝐯(K)1.

To the best of our knowledge, this is the first partition analogue that allows non-convex pieces. We also show that, for UW¯, an optimal partition of a convex polygon can be computed in linear time using equally spaced parallel cuts (See Corollary 17). The omitted proofs will be found in the full version of the paper at https://arxiv.org/abs/2509.09981.

2 Preliminaries

Let P be a simple polygon with n vertices in the plane. We assume that the vertices of P are given in a list sorted in counterclockwise order along its boundary. A partition of a simple polygon is a set of connected pieces with pairwise disjoint interiors whose union equals the polygon. The cardinality of a partition is the number of its pieces.

For a set X2, we denote by X the boundary of X, by int(X) the interior of X, and by cl(X) the closure of X. We treat a polygon as the union of its interior and boundary; cl(P)=P, P is the boundary, and int(P) is the interior.

For a point p2, let x(p) and y(p) be its x- and y-coordinates, respectively. For any two points p and q in 2, we use pq¯ to denote the line segment connecting p and q with length |pq¯|. We call pq¯ a cut in P if it lies entirely in the interior of P, excluding its endpoints. If both endpoints lie on P, we call it a guillotine cut.

The inner product of any two vectors 𝐮 and 𝐯 is denoted by 𝐮,𝐯. The Euclidean norm of a vector 𝐯 is denoted by 𝐯. A vector with norm 1 is called a unit vector. We use 𝕊+ to denote the set of unit vectors {(cosθ,sinθ)0θ<π}. For a subset V𝕊+, we define V¯={𝐯𝕊+𝐮,𝐯=0 for some 𝐮V}.

For a compact set X2 and a vector 𝐯𝕊+, let ω𝐯(X) denote the length of the orthogonal projection of X on a line parallel to 𝐯. We say X satisfies unit-width constraint W𝕊+ if and only if ω𝐯(X)1 for some 𝐯W.

A strip is the region in the plane bounded by two parallel lines. The distance between the bounding lines is the width of the strip, and the direction in 𝕊+ orthogonal to the bounding lines is called the normal vector of this strip. If a strip has width 1, we call it a unit strip.

We use the notation [m]{1,2,,m} for a positive integer m. For a finite set A, we use |A| to denote the cardinality of A which is the number of its elements.

3 Monotonicity of minimum partition numbers

In this section, we assume that wPartition(P,W,U) has a partition satisfying the constraints. The necessary and sufficient condition for feasibility is presented in the full version. We show opt(Q,W,U)opt(P,W,U) for any subpolygon Q of P that satisfies a certain condition. For both guillotine and non-guillotine partitions, we identify sufficient conditions on Q that ensure this monotonicity. When the constraints W and U are clear from context, we abbreviate opt(P,W,U) as opt(P).

Figure 2: (a) A polygon P and its subpolygon Q (gray) with opt(P,W,U)=2 and opt(Q,W,U)>2 for W={(1,0)} and U={(0,1)}. (b) Q (gray) is U-convex (or W¯-convex) with respect to P, resulting in opt(Q,W,U)opt(P,W,U). (c) Q (gray) of P is 𝒪-convex, but not 𝒪-convex with respect to P, where 𝒪={(1,0),(0,1)} and 𝒪={(22,22)}.

Let P be a square of side length 2, and let Q be a subpolygon of P as shown in Figure 2(a). Consider the instance wPartition(P,W,U) with W={(1,0)} and U={(0,1)}. Since U is a singleton, every cut must be a guillotine cut. Observe that neither P nor Q satisfies unit-width constraint W. A vertical cut halving P yields a feasible partition of two pieces. No vertical cut, however, in Q partitions Q into two pieces, each with horizontal width at most 1. Thus, opt(Q)>2=opt(P), implying that the inclusion QP alone is not sufficient to ensure opt(Q)opt(P).

Such failures are common in minimum partitioning problems, as the optimal partition number depends on the geometric complexity of Q. Two typical approaches are restricting the geometry of Q relative to P, and constraining the partition class to specific families, such as the guillotine (binary) class [9]. These alter the structural properties of feasible solutions.

3.1 Restricted-orientation convexity

Rawlins [21] introduced the restricted-orientation convexity as a generalization of standard convexity in Euclidean space. For 𝒪𝕊+, a set X is 𝒪-convex if, for every line parallel to a vector in 𝒪, X is connected (we regard an empty set as being connected). When 𝒪=𝕊+, 𝒪-convexity coincides with standard convexity in 2. We extend this concept to subpolygons of simple polygons with respect to guillotine cuts.

Definition 2.

Let Q be a subpolygon of a polygon P, and 𝒪 be a set of unit vectors. Then Q is 𝒪-convex with respect to P if its intersection with every guillotine cut in P parallel to a vector in 𝒪 is connected.

Figure 2(c) shows a subpolygon Q that is 𝒪-convex with respect to P for 𝒪={(0,1),(1,0)}, but not 𝒪-convex for 𝒪={(22,22)} since a guillotine cut in P parallel to (22,22) intersects Q in at least two connected components.

Observe that 𝒪-convexity with respect to a polygon P is equivalent to the geodesic convexity within P when 𝒪=𝕊+. The following theorem gives sufficient conditions for monotonicity of the minimum partition numbers.

Theorem 3 (Monotonicity in Polygon Containment).

Let U and W be sets of unit vectors, and let Q be a subpolygon of a polygon P. Assume that wPartition(P,W,U) has a solution.

  • opt(Q)opt(P) for guillotine partitions if Q is U-convex with respect to P.

  • opt(Q)opt(P) for non-guillotine partitions if Q is W¯-convex with respect to P.

Revisit the subpolygons Q in Figure 2(a,b). In (a), Q is neither U-convex nor W¯-convex with respect to P, whereas in (b), Q satisfies both conditions, and Theorem 3 implies that opt(Q)opt(P)=2, for both guillotine and non-guillotine partitions.

Figure 3: A non-guillotine partition of P, where W={(0,1)} and U={(0,1),(1,0)}. (a) The polygon P and a subpolygon Q, both having vertical widths greater than 1. (b) An optimal non-guillotine partition of P into two pieces, but four when restricted to Q.

3.2 Monotonicity in guillotine partitions

We prove Theorem 3 for the guillotine case. Let Π={P1,,Pm} be a guillotine partition of P feasible to wPartition(P,W,U), and let Π[Q]={PiQ}i=1,,m be its restriction to a subpolygon Q that is U-convex with respect to P. Then, i=1m(PiQ)=Q, and thus, Π[Q] also forms a partition of Q. Note that each piece in Π[Q] satisfies unit-width constraint W, as every piece is a subset of some Pi that satisfies the constraint. To show opt(Q)opt(P), it suffices to verify two aspects: (1) Π[Q] is a guillotine partition of Q and (2) |Π[Q]|m.

Since Π is a guillotine partition, the cuts used for Π are partially ordered by their precedence in the partitioning process. Let 𝒞=c1,,cm1 denote a sequence of guillotine cuts that produces Π. Then each ciQ is connected as ci is a cut in P with a direction in U and Q is U-convex with respect to P. Let 𝒟=d1,,dm be the subsequence of c1Q,,cm1Q consisting of those satisfying ciint(Q) for i=1,,m1. Note that each dj for j[m] is a cut in Q and mm1. Also, observe that Π[Q] is induced by 𝒟. It suffices to show that 𝒟 is indeed a sequence of guillotine cuts in Q: each dj𝒟 is a guillotine cut in one subpolygon obtained by applying d1,,dj1 to Q.

Let i be the smallest index in [m1] such that ciint(Q). Since no cut in c1,,ci1 intersects int(Q), there is a subpolygon in the partition of P by c1,,ci11 that contains Q. Observe that ci is a guillotine cut in this subpolygon that is aligned with a direction in U. Since Q is U-convex with respect to P, d1=ciQ is a line segment, and thus, d1 is a guillotine cut in Q.

We proceed by induction on j with 1<jm, that d1,,dj1 forms a sequence of guillotine cuts in Q. Among the pieces of Q partitioned by the sequence, let Qj denote the one containing dj, where dj is a cut in Qj. By definition, there exists an index k[m] such that dj=ckQ. Let Pk be the piece in the partition of P by c1,,ck1 that contains ck.

To see that dj is a guillotine cut of Qj, recall that dj=ckQj, where ck is a guillotine cut of Pk and QjPk. Let ck be the guillotine cut in P obtained by extending ck until it touches P. Since Q is U-convex, ckQ is connected, and hence so is its subsegment ckQ=dj. Moreover, as ck spans Pk, its restriction to Qj necessarily touches Qj at both endpoints. Thus, dj is a guillotine cut in Qj. We conclude that 𝒟=d1,,dm induces a guillotine partition of Q. Since mm, we have |Π[Q]|m.

Lemma 4.

Let P be a polygon and let Π={P1,,Pm} be a solution to the problem wPartition(P,W,U) for guillotine cuts. If a subpolygon Q of P is U-convex with respect to P, the restricted partition {QPi}i=1,,m is a solution to wPartition(Q,W,U) for guillotine cuts with at most m pieces.

4 Reconfiguration of restricted non-guillotine partitions

Let Q be a subpolygon of P that is W¯-convex with respect to P. The monotonicity opt(Q)opt(P) trivially holds when opt(Q)=1. Also, any feasible partition is guillotine when U is a singleton. Assume that opt(Q)>1 and U contains at least two distinct vectors.

Let Π={P1,,Pm} be any feasible partition of P to wPartition(P,W,U). Its restriction to Q, defined as Π[Q]={PiQ}i=1,,m, is a feasible partition of Q to wPartition(Q,W,U). However, some regions PiQ may be disconnected, even when Q is W¯-convex with respect to P (See Figure 3(a–b)). To address this, we modify the cuts in Π[Q] to reconnect disjoint fragments into connected regions while preserving feasibility for wPartition(Q,W,U).

Consider any element Pi in the partition Π of P such that int(Pi)int(Q). The intersection int(Pi)int(Q) consists of open connected components. We define Ri as

Ri{cl(X)|X is a connected component of int(Pi)int(Q) with cl(X)Q}.

Let Ri={C1,C2,,Ct}. Note that each Cj is a subpolygon of Q with positive area that touches Q. To connect elements in Ri into a single piece, we reconfigure Π[Q] by iteratively performing a process, called reallocation. Let X be a connected region in Q. We define the reallocation of X to Pi as the operation that modifies Π[Q] by expanding the region assigned to Pi so that it includes X. This can be done by adding new boundaries along XPi and removing those along PiX. If X and Pi intersect in their interiors, or share a boundary segment of positive length, then XPi appears as a single piece in the resulting partition. We say that the region X is reallocated to Pi.

4.1 Construction and layering of corridor of 𝑸

We first construct a narrow corridor along Q. This corridor lies entirely within Q, closely following Q, and provides the space needed to link elements of Ri.

The corridor is an annular region bounded by two simple closed curves: the outer curve Q and an inner curve that lies at a small distance δ inward. The region between the two curves is called the δ-corridor of Q, where δ denotes its width. In our construction, we set δ to be a sufficiently small positive value and denote the resulting corridor by 𝒜.

Consider the edges of each CjRi that have one endpoint on Q and intersect int(Q). Let Eijbd denote the set of such edges of Cj. We define Eibdj=1tEijbd and EQbdi=1mEibd. The corridor 𝒜 is subdivided into a sequence of nested subregions, which we refer to as layers. Let h>0 denote the number of layers which will be determined in Section 4.4. For each k[h], we construct a simple closed curve Γk lying entirely within int(𝒜), such that the curves Γ1,,Γh are pairwise disjoint and arranged sequentially inward from Q. Each Γk follows a zigzag pattern using the two directions in U, and intersects every edge in EQbd once or twice, depending on whether the edge is a guillotine cut in Q. Details on the construction of the corridor 𝒜 and simple curves are provided in the full version.

These h curves subdivide 𝒜 into h nested subregions, called layers: for each k[h], the k-th layer is the annular region bounded by Γk1 and Γk, where we define Γ0=Q.

Figure 4: (a) A layer segment Z of Ri is bounded by e1,e2Eibd, and it corresponds to Ii. (b) A link instruction λ=(I1,I2,k) reallocates the layer segments in Lk[Z1,Z2] to Pi. (c) Applying λ merges Cj and Cj into a single piece through layer segments in Lk, where I1ij and I2ij for some j,j[t].

4.2 Link instructions with circular intervals and layers

Let Cj and Cj be two elements in Ri with jj. For k[h], let Lk denote the k-th layer. Each connected component of LkCj for CjRi is a subregion of Q referred to as a layer segment of Cj (and of Ri) in Lk. Each layer segment is bounded by four parts: continuous portions of the inner and outer boundaries of Lk, and two edges from Eijbd. Removing any layer segment from Lk alters its topological structure from an annulus to a weakly simple polygon. All layer segments in Lk can be arranged in cyclic order along Lk. Figure 4(a) illustrates a layer segment of Ri in Lk.

We use an interval notation over layer segments that are cyclically ordered. For two layer segments Z1,Z2 in Lk, we denote by Lk[Z1,Z2] the set of layer segments encountered in counterclockwise traversal from Z1 to Z2 in Lk, where Z1,Z2Lk[Z1,Z2]. Similarly, Lk(Z1,Z2), Lk[Z1,Z2), and Lk(Z1,Z2] denote the open and half-open intervals over layer segments between Z1 and Z2 in Lk.

Assume that Z1Cj and Z2Cj are layer segments of Ri in Lk, for j,j[t] with jj. The reallocation of Lk[Z1,Z2] to Pi merges Cj and Cj into a single piece within Lk. We refer to such an ordered pair (Z1,Z2) as a link instruction of Ri. See Figure 4(b–c).

Decomposition of 𝑸 into circular intervals.

For CjRi, Cj is a subpolygon of Q that touches Q. The intersection CjQ consists of continuous paths on Q. Specifically, it can be the loop Q itself if QCj, implying that Q satisfies unit-width constraint W. However, assuming opt(Q)>1, this case does not occur. Thus, every connected component of CjQ must be a continuous path on Q that is not a loop. We define ij as

ij{IQ|I is a connected component of CjQ}.

We then define the aggregate sets ij=1tij and Qi=1mi.

Let Iij be a continuous path along Q with endpoints p and q such that I corresponds to the portion of Q from p to q in counterclockwise order. Since Q is a simple closed curve, topologically equivalent to a circle, we regard each path I as a circular interval on Q. As ij contains no loops, the case p=q occurs only when Cj touches Q at a single point p, and no other portion of Cj near p intersects Q. Such intervals are called degenerate intervals.

For i[m], i may contain both degenerate and non-degenerate intervals. Since Pi is simple, all intervals in i are pairwise interior-disjoint. Figure 5(a) shows a piece Pi and the subpolygon Q, from which the circular intervals in i are defined. These intervals are illustrated in Figure 5(b).

Note that a degenerate interval at some point pQ may appear in multiple i’s. In such cases, each occurrence is treated as a distinct element in Q. Since Π={P1,,Pm} is a partition of P and QP, every point on Q belongs to some interval of Q, and no two intervals in Q intersect each other in their interiors. Thus, Q forms a decomposition of Q.

Figure 5: (a) int(Pi)int(Q) induces Ri={C1,C2,C3}, and each Cjint(Q) induces simple paths {γ1,,γ5}. (b) p8 serves as both an entry and exit point for the transition C1C2. The simple paths outside int(Q), from p7 to p6 and from p5 to p1, represents the transitions C2C3 and C3C1, respectively. (c) The directed graph Gi, constructed based on Pi and Q shown in (a).

Finally, we relate these circular intervals to layer segments so as to define a link instruction formally. For any j[t] and any k[h], consider the component CjRi and the layer Lk. Each connected component of 𝒜Cj (or LkCj) is bounded by four parts: continuous portions of the inner and outer boundaries of 𝒜 (or Lk), and two edges from Eijbd. Each connected component of LkCj is entirely contained within a unique connected component of 𝒜Cj. Moreover, the portion of Q that bounds each connected component of 𝒜Cj corresponds to a circular interval in ij. Thus, each layer segment of Cj in Lk is uniquely associated with a circular interval in ij, in a one-to-one correspondence. The number of layer segments in 𝒜Cj (or LkCj) is |ij|h (or |ij|).

We revisit the link instruction that merges two layer segments Z1LkCj and Z2LkCj for j,j[t] along layer Lk. The link instruction reallocates the region in Lk spanned counterclockwise from Z1 to Z2. Since Z1 and Z2 correspond to circular intervals in ij and ij, respectively, each link instruction can be represented by a triple (I1,I2,k), where I1,I2Q and k[h] (See Figure 4). Note that (I1,I2,k)(I2,I1,k), as the counterclockwise span from Z1 to Z2 differs from that in the reverse order.

4.3 Graph for encoding link instructions

Recall that Ri={C1,C2,,Ct} is the set of closures of connected pieces of int(Pi)int(Q) such that each Cj has a positive area and touches Q. We construct a graph for each Ri, which specifies how the elements of Ri are to be connected into a single piece within Q.

For each j[t], ij consists of circular intervals, each corresponding to a continuous path in CjQ along Q. Let ij+ denote the subset of ij consisting of only those intervals with positive length. We define i+=j=1tij+ and Q+=i=1mi+. Unlike Q, the set Q+ contains only non-degenerate intervals, which are pairwise interior-disjoint. Note that {i+}i=1,,m forms a partition of Q.

Sequencing subpaths of 𝑷𝒊.

For each CjRi, Cjint(Q) consists of connected components, each forming a continuous path connecting two points on Q. By the definition of ij, the endpoints of these paths correspond to the endpoints of the circular intervals in ij. The total number of such paths in Cjint(Q) is |ij|. See Figure 5(a).

We traverse Pi counterclockwise, starting at any point on C1int(Q) and completing a full circuit. During the traversal, each path in Cjint(Q) is visited exactly once for each j[t], except for the path containing the starting point. The order in which the continuous paths are visited is denoted by γ1γ2γl, where γ1=γl is the path in C1int(Q) containing the starting point, and l=j=1t|ij|+1=|i|+1.

Consider two consecutive paths γk and γk+1 for any k[l1]. Each path is derived from some piece in Ri; there exist j,j[t] such that γkCjint(Q) and γk+1Cjint(Q). As we traverse from γk to γk+1, we exit int(Q) through an endpoint of γk and re-enter int(Q) through an endpoint of γk+1.

Lemma 5.

Let (γk,γk+1) be a pair of consecutive paths for k[l1], where γkCjint(Q) and γk+1Cjint(Q) for some j,j[t]. The traversal from γk to γk+1 exits and re-enters int(Q) through intervals I1ij and I2ij, respectively. If j=j, then I1=I2. Otherwise, I1 and I2 are interior-disjoint, non-degenerate intervals.

By Lemma 5, a pair of distinct intervals in i+ provides an exit-entry pair for each transition between distinct pieces in Ri in the counterclockwise traversal of Pi.

Construction of 𝑮𝒊.

Based on the counterclockwise traversal of Pi, we construct a directed graph Gi=(Vi,Ei) as follows. Each vertex vVi corresponds to an interval in i+, so |Vi|=|i+|. Let γ1 and γ2 be consecutive paths in the traversal where γ1Cjint(Q) and γ2Cjint(Q) with jj. The traversal from γ1 to γ2 encounters intervals I1 and I2 in i+ that contain the exit and entry points, respectively. By Lemma 5, these intervals I1 and I2 are uniquely determined. We add a directed edge e between vertices v1 and v2 corresponding to I1 and I2, respectively.

Let p and q denote the exit and entry points of the traversal, respectively; p is the endpoint of I1 and q is the endpoint of I2. The counterclockwise traversal on Pi between γ1 and γ2 follows a simple path along Pi outside Q that starts from p and ends at q. Let γpqPiint(Q) denote this path from p to q. Observe that the exit and entry points may coincide, i.e., p=q, if I1 and I2 are adjacent at p and I1 lies counterclockwise from I2 along Q. In this case, the direction of e is assigned from v2 to v1.

Given that pq, the simple path γpq can be viewed as a simple path connecting two distinct points on the boundary of the circle and lying outside the circle. The path γpq can be classified into one of two types, depending on how it winds around the circle. Formally, γpq is homotopic to a directed path in 2int(Q) that winds around Q in either counterclockwise or clockwise direction. Note that it cannot wind around the boundary more than once since γpq is simple. We assign the direction of e from v1 to v2 if the path is of the counterclockwise type, and from v2 to v1, otherwise. Figure 5(b) illustrates γpq for both cases where p=q and pq. The same rule is applied to assign directions to all other edges in Gi.

In summary, we construct the directed graph Gi for i[m] to represent how the disjoint components of Ri are to be connected into a single piece within Q. Each vertex corresponds to an interval in i+. Each directed edge e=(v1,v2) of Gi represents a link instruction (I1,I2,k), but k is not specified yet. See Figure 5(c) for an illustration of the directed graph Gi that defines three link instructions, where Pi and Q are as shown in Figure 5(a).

4.4 Layer assignments for link instructions

For i[m], let Gi be the directed graph for Ri={C1,C2,,Ct}. Each edge in Gi represents a link instruction that reallocates layer segments within a specific layer. The goal is to assign layers to link instructions so that no redundant reallocation of layer segments is allowed and all elements in Ri are eventually merged into a single piece for every i=1,,m.

The underlying graph of a digraph is its undirected version, obtained by ignoring the directions of all edges. Consider a connected component T of the underlying graph of Gi. We assume that T contains more than one vertex, as a component of size 1 does not indicate any link instruction. Each vertex of T corresponds to a circular interval in i+. Let T be the subset of i+ such that T={Ii+I corresponds to a vertex in T}.

Figure 6: (a) The combine step merges I1, I5, and I4 to a circular interval J𝒥Q. (b) The interval J is derived from a connected component T of the underlying graph of Gi. This corresponds to a connected region X𝒳i that is bounded by the circular intervals associated with T.

We iteratively perform a combine step to merge all circular intervals in T into a single circular interval on Q. The process begins with an initial set S={u} and a circular interval JS, where u is any vertex of T and JS is the circular interval in T corresponding to u. At each step, any vertex vTS is chosen if there exists an edge between v and some vertex wS. Let IvT be the circular interval corresponding to v. We add v to S and update JS to be the smallest circular interval on Q that spans from Iv to JS in counterclockwise direction if the edge is directed from v to w, or in clockwise direction otherwise. Once S=T, the process returns a single circular interval on Q, denoted by JT, corresponding to the connected component T of Gi. See Figure 6(a) for an illustration of this process.

𝒥Q{JTT is a connected component of Gi with |T|>1, for i=1,2,,m}.

Throughout, we use I to denote intervals in Q and J for those in 𝒥Q to emphasize their distinct roles. Each J𝒥Q is non-degenerate. For any J1,J2𝒥Q with int(J1)int(J2), there exists a proper containment between J1 and J2. To prove this, we present a lemma relating connectivity in the underlying graph of Gi to the existence of a path contained in a connected component of Piint(Q), as illustrated in Figure 6(b).

Lemma 6.

The vertices corresponding to I1 and I2 in i+ are connected in the underlying graph of Gi if and only if there is a simple path connecting pI1 to qI2 contained in Piint(Q).

Let 𝒳i be the set of connected components in Piint(Q). Then each element in 𝒳i is a closed connected set. Moreover, it is a (weakly) simple polygon.

For p,qQ, let Λ(p,q) denote the set of all simple paths from p to q contained in Piint(Q). For I1,I2i+, we define Λ(I1,I2)=pI1,qI2Λ(p,q). Lemma 6 guarantees the existence of a path between I1 and I2 whenever their corresponding vertices are connected in the underlying graph of Gi. Furthermore, all such paths share a consistent topological behavior, such as winding around Q in the same direction.

Corollary 7.

Let I1,I2i+ with I1I2. If Λ(I1,I2), then all paths in Λ(I1,I2) wind around Q in the same direction, and there is a unique component X𝒳i that contains all such paths.

Using Lemma 6 and Corollary 7, we prove a proper containment relation.

Lemma 8.

For any distinct J1,J2𝒥Q with int(J1)int(J2), J1J2 or J2J1.

By Lemma 8, we construct the circular interval graph G𝒥, where each node corresponds to a circular interval in 𝒥Q, and a directed edge from J1 to J2 is added if J1J2 for J1,J2𝒥Q. Then, G𝒥 is acyclic as each edge corresponds to a strict containment.

Transitive reduction of 𝑮𝓙.

The graph G𝒥 represents the transitive closure of the proper containment relation. That is, for J1,J2𝒥Q, there is a directed edge from J1 to J2 in G𝒥 if there exists some J𝒥Q such that (J1,J) and (J,J2) are directed edges in G𝒥. A transitive reduction of G𝒥 is a directed graph on the same vertex set with the minimum number of edges that preserves all reachability relations of G𝒥. Since the transitive reduction of a DAG is unique [8], we denote the transitive reduction of G𝒥 by G𝒥tr. Let UG𝒥tr denote the underlying graph of G𝒥tr.

Lemma 9.

Any vertex of G𝒥tr has out-degree at most one, and UG𝒥tr is acyclic.

By Lemma 9, UG𝒥tr is a forest. Each directed tree T of G𝒥tr has total out-degrees |T|1, implying that exactly one vertex has out-degree zero and all others have out-degree one. This structure corresponds to an in-branching tree [8].

Layer assignment of link instructions.

In each in-branching tree of G𝒥tr, the unique vertex with out-degree zero is called the root. The level of a vertex is defined as the number of edges on the path from the root to that vertex plus one, where the level of the root is one. The level of each interval J𝒥Q is defined to be the level of the corresponding vertex in G𝒥tr.

Recall that each circular interval J𝒥Q is formed by merging intervals in i+ for some i[m]. These intervals correspond to the vertices of a connected component T of Gi, where each edge of T encodes a link instruction that merges two elements in Ri. Let 𝙸𝙽𝚂𝚃(J) denote the set of link instructions corresponding to the edges of T. We assign the k-th layer to every link instruction in 𝙸𝙽𝚂𝚃(J) if J is at level k in G𝒥tr. Note that the maximum level in G𝒥tr is at most |Q+|/2 if each connected component of Gi has size two for all i=1,2,,m. Thus, we set the number of layers in the corridor 𝒜 to this maximum level: h=|Q+|/2.

For each J𝒥Q, all link instructions in 𝙸𝙽𝚂𝚃(J) reallocate layer segments within a single layer Lk to a common piece Pi, where i[m] and k[h] are determined by J. Let Ia,Ibi+ such that J is the smallest circular interval that spans from Ia to Ib in counterclockwise order. Let Za,ZbLk be the layer segments corresponding to Ia and Ib, respectively. Applying 𝙸𝙽𝚂𝚃(J) is equivalent to reallocating every ZLk[Za,Zb] to Pi.

In summary, 𝙸𝙽𝚂𝚃Q=J𝒥Q𝙸𝙽𝚂𝚃(J) defines the set of all link instructions for reconfiguration. Applying 𝙸𝙽𝚂𝚃Q to Π[Q] yields a partition Q=Q1Qm, where each Qi is a region assigned to Pi within Q. When Q is W¯-convex with respect to P, each Qi is connected and satisfies both constraints W and U.

5 Analysis of reconfigured non-guillotine partitions

Assuming that the link instructions in 𝙸𝙽𝚂𝚃Q have been applied to Π[Q] in an arbitrary order, we verify the following statements in order to prove Theorem 3.

  1. (1)

    For each i=1,,m, the region allocated to Pi within Q forms a single connected piece.

  2. (2)

    The reconfiguration of Π[Q] is a solution to the problem wPartition(Q,W,U) if Q is W¯-convex with respect to P.

It follows from statements (1) and (2) that the reconfigured partition of Q satisfies the constraints W and U while ensuring that the number of pieces does not exceed m.

5.1 Connectivity in reconfigured partitions

For i[m], let 𝙸𝙽𝚂𝚃i denote the subset of 𝙸𝙽𝚂𝚃Q consisting of instructions of the form (I1,I2,k), where I1,I2i+ and k[h]. Then, 𝙸𝙽𝚂𝚃Q=i[m]𝙸𝙽𝚂𝚃i. We first show that the link instructions in 𝙸𝙽𝚂𝚃i merge all elements of Ri into a single connected piece. We then verify that applying the link instructions in 𝙸𝙽𝚂𝚃Q𝙸𝙽𝚂𝚃i does not disconnect the merged piece. Furthermore, the resulting reconfigured partition of Q is invariant under the order in which the link instructions in 𝙸𝙽𝚂𝚃Q are applied to Π[Q].

Merging 𝑹𝒊 via 𝙸𝙽𝚂𝚃𝒊.

We show that any two pieces Cj,CjRi are connected by some link instructions in 𝙸𝙽𝚂𝚃i. During the traversal on Pi, each continuous path of Cjint(Q) is encountered at least once for every j[t], and we denote the sequence of these paths in the order they are visited as (γ1,γ2,,γl), where γ1=γl. Then, there exist indices k,k[l] such that γkCjint(Q) and γkCjint(Q). Since it is a cyclic sequence with γ1=γl, we assume without loss of generality that k<k.

Recall that an edge of Gi is added whenever two consecutive paths in the sequence are derived from distinct elements in Ri. This indicates that a transition between them occurs during the traversal. The link instruction associated with this edge merges the corresponding elements in Ri. The subsequence (γk,γk+1,,γk) contains multiple transitions between distinct elements in Ri, starting from Cj and eventually reaching Cj. Applying all link instructions associated with the transitions in (γk,,γk) results in Cj and Cj being merged into a single connected piece.

Let Qi denote the subregion of Q resulting from merging elements of Ri via 𝙸𝙽𝚂𝚃i, with no other instructions applied. Then, Qi consists of all elements in Ri and layer segments reallocated from other pieces: Qi=(j[t]Cj)𝒵iout, where 𝒵iout is the set of layer segments reallocated to Pi by 𝙸𝙽𝚂𝚃i.

The region 𝐋=L1Lh denotes the union of all layers in Q. For each CjRi, 𝐋Cj consists of layer segments within Cj. By construction of layers, Cj𝐋 is connected and non-empty. We refer to this region as a core of Cj, denoted by core(Cj)=Cj𝐋. Each Cj consists of its core together with the layer segments it contains. Let 𝒵iin denote the set of all layer segments in 𝐋Cj over all CjRi. Therefore, for i[m], we have Qi=(j[t]core(Cj))𝒵iin𝒵iout. Figure 7(a) illustrates the parts of Qi: cores and layer segments. The shapes are drawn schematically to reflect the topological structure, rather than an exact polygonal description.

Figure 7: The corridor of Q has two layers, with |R1|=3 and |R2|=2. (a) Red regions represent {core(C) for CR1}, while blue and green regions indicate layer segments in 𝒵1in and 𝒵1out, respectively. (b) Q1 is formed by merging R1 according to 𝙸𝙽𝚂𝚃1, and some layer segments in 𝒵1in are reallocated by 𝙸𝙽𝚂𝚃2. (c) Q1 is obtained by applying 𝙸𝙽𝚂𝚃Q𝙸𝙽𝚂𝚃1 to Q1.

We now turn to the link instructions in 𝙸𝙽𝚂𝚃Q𝙸𝙽𝚂𝚃i that are applied to Qi. Let Qi be a subregion of Qi that is obtained by applying all link instructions in 𝙸𝙽𝚂𝚃Q𝙸𝙽𝚂𝚃i to Qi. Note that any part of Qi reallocated by 𝙸𝙽𝚂𝚃Q𝙸𝙽𝚂𝚃i lies within 𝒵iin𝒵iout, and thus the cores remain unchanged. We show that Qi is well-defined, meaning that Qi is invariant under the order in which the instructions in 𝙸𝙽𝚂𝚃Q are applied.

Lemma 10.

Let (I1,I2,k)𝙸𝙽𝚂𝚃i be a link instruction, and let Z1 and Z2 be the layer segments in Lk corresponding to I1 and I2, respectively. Then, the layer segments Lk[Z1,Z2] remain assigned to Pi under any link instruction in 𝙸𝙽𝚂𝚃Q𝙸𝙽𝚂𝚃i.

Lemma 10 implies that no layer segment is reassigned by more than one link instruction. As a consequence, we obtain the following corollary, which states that Qi is well-defined.

Corollary 11.

In the reconfiguration of Π[Q], each layer segment in Q is reallocated at most once.

Corollary 11 ensures that each layer segment may be reallocated to a different piece at most once, and no chains of reallocations such as Pi1Pi2Pi3 with i1i2 and i2i3 occur.

This lemma further implies that layer segments in 𝒵iout are preserved, while only those in 𝒵iin are reallocated by 𝙸𝙽𝚂𝚃Q𝙸𝙽𝚂𝚃i. Let 𝒵iin be the subset of 𝒵iin that consists of layer segments preserved under 𝙸𝙽𝚂𝚃Q𝙸𝙽𝚂𝚃i. Then, Qi is the subpolygon that is obtained from Qi by removing those layer segments in 𝒵iin𝒵iin. Then Qi=(j[t]core(Cj))𝒵iin𝒵iout, where 𝒵iin𝒵iin. Figure 7(b–c) illustrates the construction of Qi, in which only layer segments in 𝒵iin are reallocated by 𝙸𝙽𝚂𝚃Q𝙸𝙽𝚂𝚃i.

Path-Connectivity of 𝑸𝒊.

To prove that Qi forms a connected piece, it suffices to verify two types of path-connectivity among its constituent parts, which must be preserved during the reallocation induced by 𝙸𝙽𝚂𝚃Q𝙸𝙽𝚂𝚃i.

  • Each layer segment in 𝒵iin𝒵iout is path-connected to some core(Cj) within Qi for CjRi.

  • The cores {core(Cj)CjRi} are mutually path-connected within Qi.

Here, two sets A,BX are said to be path-connected within a region X if there exists a path in X joining some aA and bB.

Lemma 12.

Each layer segment in 𝒵iin𝒵iout is path-connected within Qi to the core of some CjRi.

By Lemma 12, every layer segment in 𝒵iin𝒵iout has a path to some core within Qi. It remains to show that core(C1),,core(Ct) are mutually path-connected within Qi.

Lemma 13.

All cores of elements in Ri are mutually path-connected within Qi.

By Lemmas 12 and 13, each Qi is connected. Thus, applying 𝙸𝙽𝚂𝚃Q to Π[Q] yields the partition Π[Q]={Q1,Q2,,Qm}, where each Qi is a connected subregion of Q.

Remarks.

Applying link instructions in 𝙸𝙽𝚂𝚃Q may induce holes within merged pieces in the reconfigured partition of Q. When Qi contains holes, reallocating them to Pi does not increase ω𝐯(Qi) for every 𝐯𝕊+. Therefore, each Qi can be regarded as a simple polygon.

5.2 Feasibility of reconfigured partitions

We first observe that the reconfigured partition Π[Q]={Q1,Q2,,Qm} remains as a valid partition of Q. By construction, the cut constraint U is also preserved: each layer segment is bounded by the boundaries of layers and the cuts from Π[Q], all aligned with directions in U. It remains to check the unit-width constraint W.

Since Π={P1,,Pm} is a solution to wPartition(P,W,U), there exists a vector 𝐯𝐢W such that ω𝐯𝐢(Pi)1. In other words, there exists a unit strip Hi with normal vector 𝐯𝐢 that contains Pi. If every layer segment reallocated by 𝙸𝙽𝚂𝚃i is contained within Hi, then Qi also satisfies unit-width constraint W.

Assume that λ=(I1,I2,k) is a link instruction associated with a directed edge from v1 to v2 in Gi for I1,I2i+ and k[h]. Let j,j[t] be two distinct indices such that I1ij+ and I2ij+. Recall that the edge between v1 and v2 is added to Gi if and only if there is a transition between Cj and Cj during the counterclockwise traversal on Pi.

For each k[h], let Z1k and Z2k denote the layer segments in Lk corresponding to I1 and I2, respectively. The link instruction λ reallocates the layer segments in Lk(Z1k,Z2k) to Pi, where Z1k and Z2k are already assigned to Pi in Π[Q]. We define 𝐙λk[h]Z𝒵kZ, where 𝒵kLk(Z1k,Z2k). It suffices to show that 𝐙λHi. If this inclusion holds, every layer segment reallocated by λ lies within Hi, and thus the unit-width constraint W is preserved.

Decomposition of 𝐙𝝀.

The region 𝐙λ is connected and bounded by four parts: two continuous portions of the inner and outer boundaries of 𝒜, and two subsegments of edges from Cj and Cj. The outer boundary of 𝒜 is Q and its inner boundary is Qϕ, where Qϕ is the inner ϕ-offset polygon of Q.

For the sake of clarity, we introduce interval notation to represent subpaths of Q and Qϕ. For any two points x,yQ, we denote by Q[x,y] the portion of Q from x to y in counterclockwise order, including both endpoints. Let Q(x,y]=Q[x,y]{x}, Q[x,y)=Q[x,y]{y}, and Q(x,y)=Q[x,y]{x,y}. Similarly, we define Qϕ[x,y],Qϕ(x,y],Qϕ[x,y), and Qϕ(x,y) as portions of Qϕ.

Since I1 and I2 are non-degenerate intervals on Q, let I1=Q[p1,q1] and I2=Q[p2,q2] for some points p1,q1,p2,q2Q with p1q1 and p2q2. The portion of 𝐙λ contained in Q is Q[q1,p2]. Let r1,r2Qϕ be the endpoints of the portion of 𝐙λ lying on Qϕ, which we denote by Qϕ[r1,r2]. Finally, the parts of 𝐙λ along the edges of Cj and Cj correspond to the segments q1r1¯ and p2r2¯, respectively. Thus, 𝐙λ decomposes into the four parts Q[q1,p2],Qϕ[r1,r2],q1r1¯, and p2r2¯. This decomposition is shown in Figure 8(a).

Since Hi is convex, 𝐙λHi if and only if all parts of 𝐙λ are contained in Hi. Note that q1r1¯ and p2r2¯ lie in Hi, as both Cj and Cj are contained in Pi. To prove 𝐙λHi, it remains to show that Q[q1,p2] and Qϕ[r1,r2] are contained in Hi.

Figure 8: (a) The link instruction λ=(I1,I2,k) is derived from the traversal of Pi from p1 to q2 or from p2 to q1, where I1=Q[p1,q1] and I2=Q[p2,q2]. 𝐙λ consists of Q[q1,p2],Qϕ[r1,r2],q1r1¯, and p2r2¯. (b) The path γ from p2 to q1 must pass through z when P intersects Q at z.

Containment of 𝑸[𝒒𝟏,𝒑𝟐] in int(𝑷).

During the transition between Cj and Cj in the counterclockwise traversal on Pi, it follows a simple path, denoted by γ, which lies outside int(Q). The path γ exits and re-enters int(Q) through the endpoints of I1 and I2.

Let v1 and v2 denote the vertices in Gi corresponding to I1 and I2, respectively. The link instruction λ=(I1,I2,k) is derived from the directed edge (v1,v2) in Gi. The direction of the edge is determined by how γ winds around Q (either clockwise or counterclockwise) and whether the path exits int(Q) through the endpoint of I1 or that of I2. If γ winds around Q counterclockwise, it exits int(Q) from p1 and re-enters at q2. Otherwise, it exits int(Q) from p2 and re-enters at q1. Figure 8(a) illustrates both cases.

Up to this point, we consider both clockwise- and counterclockwise-type instructions. However, counterclockwise ones can be omitted in the reconfiguration. Assume that γ winds around Q counterclockwise. By Corollary 7, there exists a unique component X𝒳i whose boundary contains I1, I2, and the path γ. Since X is a weakly simple polygon, we can traverse X in counterclockwise order. This traversal encounters a sequence of circular intervals in i+, and, from the construction of Gi, each consecutive pair of intervals in this sequence corresponds to an edge in Gi whose direction is determined by whether the subpath of X between the intervals winds around Q clockwise or counterclockwise.

Since the traversal of X follows the path γ from I1 to I2 that winds around Q counterclockwise, the other subpath of X runs from I2 back to I1, and winds around Q clockwise. This path encounters a sequence of intervals in i+ starting from I2 to I1, where each consecutive pair of intervals induces a clockwise-type edge in Gi. In Figure 6(b), the counterclockwise-type path from I4 to I1 corresponds to the sequence of clockwise-type paths I1I5 and I5I4. Thus, link instructions associated with counterclockwise-type edges can be omitted without affecting the resulting partition Π[Q].

Without loss of generality, we restrict our analysis to clockwise type instructions. In this case, γ is a path from p2 to q1. The path γ can be continuously deformed into a path γ~=Q[q1,p2] on Q while preserving its endpoints. As illustrated in Figure 8(b), if P intersects Q at a point zQ[q1,p2], then γ must pass through z. This implies that Pi intersects itself at z, contradicting that Pi is a simple polygon.

Lemma 14.

All points on Q[q1,p2] lie within the interior of P.

Note that a point pint(P) if and only if there exists a sufficiently small ball B(p) centered at p such that B(p)int(P). We slightly extend the polygonal chain Q[q1,p2] beyond its endpoints and denote the resulting chain by Q[q1,p2+] for q1Q(p1,q1) and p2+Q(p2,q2). Since Q[q1,p2]int(P) by Lemma 14, Q[q1,p2+] also lies in int(P). Furthermore, as I1 and I2 are non-degenerate, the slight extension guarantees that Q[q1,p2+]Q[p1,q2].

Turning points on 𝑸[𝒒𝟏,𝒑𝟐+].

Without loss of generality, assume Hi is a vertical strip, meaning that its boundary consists of two vertical lines. A portion of Q is a polygonal chain, consisting of a sequence of line segments. As we traverse a polygonal chain from one endpoint to the other, these line segments are encountered sequentially. A point zQ(q1,p2+) is called a turning point of Q[q1,p2+] if the traversal changes its horizontal direction (from leftward to rightward or vice versa) at z. Since q1 and p2+ lie sufficiently close to q1 and p2 along Q, every turning must occur on Q[q1,p2].

When Q[q1,p2+] contains vertical edges, the above definition of turning points is not sufficient. Consider a path that initially moves in the positive (or negative) x-direction, then follows a vertical segment, and subsequently moves in the negative (or positive) x-direction. We define the lowest point on the vertical segment as the unique turning point on that segment. See Figure 9(a).

Note that the number of turning points is invariant under the traversal direction; that is, it remains unchanged whether we traverse Q[q1,p2+] from q1 to p2+ or in the reverse direction. As illustrated in Figure 9(b), if there are two turning points on Q[q1,p2+], we can draw a vertical guillotine cut c in P such that cQ is disconnected, since all points on Q[q1,p2+] lie within int(P). This implies that Q cannot be W¯-convex with respect to P.

Figure 9: (a) The turning points on Q[q1,p2+] are z1 and z2. (b) For the guillotine cut c along x=x(z)+ε, the intersection cQ consists of at least two maximal line segments. (c) γ contains a point with x-coordinate larger than that of the turning point z. The sequence of edges on Qϕ[r1,r2] from e1ϕ to e2ϕ corresponds to a subsequence of those of Q[p1,q2].
Lemma 15.

If Q is W¯-convex with respect to P, then the number of turning points on Q[q1,p2+] is at most one.

Since both Q[p1,q1] and Q[p2,q2] lie in Pi, q1,p2+Hi. If there are no turning points on Q[q1,p2+], then the points with the largest and smallest x-coordinates along Q[q1,p2+] appear at q1 and p2+. Since Hi is a vertical slab, all points on Q[q1,p2+] lie in Hi.

Consider the case that Q[q1,p2+] has a turning point at zQ[q1,p2], and it is unique by Lemma 15. Then, the point with the largest or smallest x-coordinate along Q[q1,p2+] may appear at z. Without loss of generality, we assume that z is the point with the largest x-coordinate. The point with the smallest x-coordinate lies at q1Hi or p2+Hi.

Recall that the path γ follows from p2 to q1 outside int(Q) and is deformed into the path γ~ that traverses Q[q1,p2]. Note that z is a convex vertex of Q with locally largest x-coordinate, and γ encloses z from outside int(Q). It follows that γ must pass through a point with x-coordinate at least x(z). Since γPiHi, the x-coordinate of z is smaller than that of the right boundary of Hi. Thus, Q[q1,p2+]Hi. See Figure 9(c).

Containment of 𝐙𝝀 within 𝑯𝒊.

Revisiting the boundary of 𝐙λ, we have shown that three parts, r1q1¯,r2p2¯, and Q[q1,p2], are contained in Hi. The remaining part is Qϕ[r1,r2] which is the portion of the inner ϕ-offset polygon of Q. By definition of the offset polygon, each edge of Qϕ is parallel to its corresponding edge in Q and the edges of Qϕ appear in the same cyclic order along its boundary as the edges of Q.

We traverse the chain Q[q1,p2+] from q1 to p2+. Let e1 and e2 be the edges of Q that contain the first and last segments of this chain, respectively. Likewise, traversing Qϕ[r1,r2] from r1 to r2 gives edges e1ϕ,e2ϕ of Qϕ incident to r1 and r2, respectively. We claim that the edges of Q corresponding to e1ϕ and e2ϕ appear along the traversal of Q[q1,p2+].

The segments r1q1¯ and r2p2¯ lie on edges of Cj and Cj, respectively. Since ϕ<ϕij and ϕ<ϕij, the edges of Q corresponding to e1ϕ and e2ϕ are incident to q1 and p2, respectively. Recall that we work on the extended chain Q[q1,p2+], obtained by slightly extending Q[q1,p2]. This guarantees that the corresponding edges of Q appear along Q[q1,p2+]. Consequently, the sequence of line segments forming Qϕ[r1,r2] corresponds to a subsequence of those forming Q[q1,p2+]. See Figure 9(c) for an illustration of this correspondence. Thus, by Lemma 15, the number of turning points of Qϕ[r1,r2] is also at most one.

Assuming that the largest x-coordinate of Q[q1,p2+] occurs at its turning point, the largest x-coordinate of Qϕ[r1,r2] is smaller than that of Q[q1,p2+]. The argument is symmetric when the smallest x-coordinate is attained at the turning point. It follows that Qϕ[r1,r2] is also contained in Hi, which completes the proof that 𝐙λHi. Hence, the reconfigured partition Π[Q]={Q1,,Qm} is a solution to the problem wPartition(Q,W,U) with at most m connected pieces; thus, by definition, opt(Q)m=opt(P).

6 Bang-type theorem for partitions of a convex body

We adapt the reconfiguration technique in Section 4 to prove Theorem 1. We then show that, when W¯U, an optimal partition of a convex polygon P is achieved by equally spaced parallel cuts, which can be computed in linear time.

Let K be a convex body in 2, and let P1P2Pm be its arbitrary partition. Note that each Pi is compact and possibly non-convex. Let CH(X) denote a convex hull of a set X in 2. A pocket of CH(X) is defined as a closure of a connected component of CH(X)X. Each pocket is bounded by a subpath along Pi and a unique line segment lying outside Pi. We refer to this segment as the hull-edge of the pocket.

To convexify Pi, we iteratively reallocate its pockets to Pi. However, such a reallocation may split other pieces Pj with ji. Accordingly, we perform a reconfiguration step to merge such fragments into a single piece in K, ensuring that each piece remains connected.

This configuration mirrors Section 4, but with spatial roles reversed. Previously, we considered the restriction of a partition to a subpolygon Q, and reconnected the fragments of other pieces within Q. Here, we restrict the partition to the complement of a pocket, and consider the fragments of other pieces that lie outside the pocket. The circular intervals in the earlier setting now correspond to the intervals along the hull-edge of the pocket.

Lemma 16.

Let {P1,,Pm} be a partition of a convex body K2. Then, there exists a convex partition K=P1Pm, such that ω𝐯(Pi)ω𝐯(Pi) for all 𝐯𝕊+ and i[m].

By Lemma 16, we have a convex partition K=P1Pm such that ω𝐯(Pi)ω𝐯(Pi) for all 𝐯𝕊+ and i[m]. Given this convex partition, Akopyan [4] showed that i=1mrK(Pi)1, where rK(Pi)=sup{h0t2such thathK+tPi}. For any direction 𝐯𝕊+, we have rK(Pi)ω𝐯(Pi)/ω𝐯(K). Thus, for any subset W𝕊+, i=1minf𝐯Wω𝐯(Pi)ω𝐯(K)i=1minf𝐯Wω𝐯(Pi)ω𝐯(K)i=1mrK(Pi)1.

Optimal partition for a convex polygon.

Let P be a convex polygon with n vertices, and let W,U𝕊+ such that W¯U. Choose an arbitrary vector 𝐮W; without loss of generality, assume that 𝐮=(1,0). Let q be the leftmost vertex of P, and partition P by vertical lines along xi=x(q)+i for all i=1,,ω𝐮(P)1. This partitions P into ω𝐮(P) pieces, each of horizontal width at most 1, and it is a feasible solution to wPartition(P,W,U). Since 𝐮 is chosen arbitrarily, opt(P)min𝐯Wω𝐯(P).

Suppose, for the sake of contradiction, that the optimal partition has fewer than min𝐯Wω𝐯(P) pieces. Let P=P1Pm be an optimal partition for wPartition(P,W,U), with m=opt(P). By Theorem 1, we have 1i=1minf𝐯W(ω𝐯(Pi)/ω𝐯(P)). Since each Pi satisfies unit-width constraint W, there exists 𝐮i𝕊+ such that ω𝐮i(Pi)1. Thus, 1i=1minf𝐯W(ω𝐯(Pi)/ω𝐯(P))i=1m(ω𝐮i(Pi)/ω𝐮i(P))i=1m(1/ω𝐮i(P)).

We analyze two cases depending on whether ω𝐯(P) attains a minimum over W. If it does, we have 1i=1m(1/min𝐯Wω𝐯(P)), and min𝐯Wω𝐯(P)m. As m is an integer, min𝐯Wω𝐯(P)m. If no minimum is attained over W, 1<i=1m(1/inf𝐯Wω𝐯(P)) and inf𝐯Wω𝐯(P)<m. Then min𝐯Wω𝐯(P)=inf𝐯Wω𝐯(P)m. Both cases contradict our assumption, and thus opt(P)=min𝐯Wω𝐯(P).

Let 𝐮W be a vector minimizing ω𝐮(P), computed in O(n) time for W=𝕊+ [18]. Assume that 𝐮 is given. For the vertices of P given in counterclockwise order, such m1 parallel cuts can be computed in O(min{n,mlognm}) time [12]. Since x/(1+x)<log(1+x)<x for all x>0, min{n,mlognm}=Θ(mlog(1+nm)). For fixed n, f(m)=mlog(1+nm) starts at Θ(logn) when m=1 and increases monotonically, approaching Θ(n) as m.

Corollary 17.

Let P be a convex polygon with n vertices, and let U,W𝕊+ be sets of unit vectors such that W¯U. Then an optimal partition for the problem wPartition(P,W,U) is achieved by equally spaced parallel cuts orthogonal to 𝐮W that minimizes ω𝐮(P). Given such a direction 𝐮, the partition can be computed in O(ω𝐮(P)log(1+nω𝐮(P))) time.

Remarks.

We work in the Real RAM model, which supports unit-cost arithmetic (+,,×,÷) and comparisons on real numbers. Our algorithms perform integer rounding via comparisons.

References

  • [1] Mikkel Abrahamsen and Nichlas Langhoff Rasmussen. Partitioning a polygon into small pieces. In Proc. 2025 Annual ACM-SIAM Symposium on Discrete Algorithms (SODA). Society for Industrial and Applied Mathematics, 2025.
  • [2] Mikkel Abrahamsen and Jack Stade. Hardness of packing, covering and partitioning simple polygons with unit squares. In Proc. 65th IEEE Symposium on Foundations of Computer Science (FOCS). IEEE, 2024. doi:10.1109/FOCS61266.2024.00087.
  • [3] Arseniy Akopyan and Roman Karasev. Kadets-type theorems for partitions of a convex body. Discrete & Computational Geometry, 48:766–776, 2012. doi:10.1007/S00454-012-9437-1.
  • [4] Arseniy Akopyan, Roman Karasev, and Fedor Petrov. Bang’s problem and symplectic invariants. Journal of Symplectic Geometry, 17(6):1579–1611, 2019.
  • [5] Ralph Alexander. A problem about lines and ovals. The American Mathematical Monthly, 75(5):482–487, 1968.
  • [6] Keith Ball. The plank problem for symmetric bodies. Inventiones Mathematicae, 104:535–543, 1991.
  • [7] Thøger Bang. A solution of the “plank problem”. Proc. American Mathematical Society, 2(6):990–993, 1951.
  • [8] Jørgen Bang-Jensen and Gregory Z. Gutin. Digraphs: Theory, Algorithms and Applications. Springer Science & Business Media, 2008.
  • [9] Andras Bezdek and Károly Bezdek. Conway’s fried potato problem revisited. Archiv der Mathematik, 66(6):522–528, 1996.
  • [10] Károly Bezdek. Plank theorems via successive inradii. In Discrete Geometry and Algebraic Combinatorics, Contemporary Mathematics, volume 625, pages 1–8. American Mathematical Society, 2013. URL: http://www.ams.org/books/conm/625/12489.
  • [11] Maike Buchin and Leonie Selbach. Decomposing polygons into fat components. In Proc. 33rd Canadian Conference on Computational Geometry (CCCG), pages 175–184, 2021.
  • [12] Jaehoon Chung, Sang Won Bae, Chan-Su Shin, Sang Duk Yoon, and Hee-Kap Ahn. Approximating convex polygons by histogons. In Proc. 34th Canadian Conference on Computational Geometry (CCCG), 2022.
  • [13] Mirela Damian. Exact and approximation algorithms for computing optimal fat decompositions. Computational Geometry: Theory and Applications, 28(1):19–27, 2004. doi:10.1016/J.COMGEO.2004.01.004.
  • [14] Mirela Damian and Sriram V. Pemmaraju. Computing optimal diameter-bounded polygon partitions. Algorithmica, 40(1):1–14, 2004. doi:10.1007/S00453-004-1092-3.
  • [15] Mirela Damian-Iordache. Shape constrained polygon decomposition and graph domination problems. PhD thesis, University of Iowa, Iowa City, IA 52242, 2000.
  • [16] Richard John Gardner. Relative width measures and the plank problem. Pacific Journal of Mathematics, 135(2):299–312, 1988.
  • [17] J. W. S. Hearle. The structural mechanics of fibers. Journal of Polymer Science Part C: Polymer Symposia, 20:215–230, 1967.
  • [18] Michael B. Houle and Godfried T. Toussaint. Computing the width of a set. In Proc. 1st Annual Symposium on Computational Geometry (SCG), pages 1–7, 1985.
  • [19] Henry F. Hunter. Some special cases of bang’s inequality. Proc. American Mathematical Society, 117(3):819–821, 1993.
  • [20] Joseph O’Rourke and Geetika Tewari. The structure of optimal partitions of orthogonal polygons into fat rectangles. Computational Geometry, 28(1):49–71, 2004. doi:10.1016/J.COMGEO.2004.01.007.
  • [21] Gregory J. E. Rawlins. Explorations in restricted orientation geometry. PhD thesis, Indiana University, Department of Computer Science, Bloomington, 1987.
  • [22] Chris Worman. Decomposing polygons into bounded diameter components. In Proceedings of the 15th Canadian Conference on Computational Geometry (CCCG), pages 103–107, 2003.