Covering and Partitioning Complex Objects with Small Pieces
Abstract
We study the problems of covering or partitioning a polygon (possibly with holes) using a minimum number of small pieces, where a small piece is a connected sub-polygon contained in an axis-aligned unit square. For covering, we seek to write as a union of small pieces, and in partitioning, we furthermore require the pieces to be pairwise interior-disjoint. We show that these problems are in fact equivalent: Optimum covers and partitions have the same number of pieces.
For covering, a natural local search algorithm repeatedly attempts to replace pieces from a candidate cover with pieces. In two dimensions and for sufficiently large , we show that when no such swap is possible, the cover is a approximation, hence obtaining the first PTAS for the problem. Prior to our work, the only known algorithm was a -approximation that only works for polygons without holes [Abrahamsen and Rasmussen, SODA 2025]. In contrast, in the three dimensional version of the problem, for a polyhedron of complexity , we show that it is NP-hard to approximate an optimal cover or partition to within a factor that is logarithmic in , even if is simple, i.e., has genus and no holes.
Keywords and phrases:
Covering, partitioning, polygon, small piece, PTASFunding:
Anders Aamand: This work was supported by the VILLUM Foundation grant 54451.Copyright and License:
Prahlad Narasimhan Kasthurirangan, Linda Kleist, Joseph S. B. Mitchell,
Valentin Polishchuk, and Jack Stade; licensed under Creative Commons License CC-BY 4.0
2012 ACM Subject Classification:
Theory of computation Computational geometry ; Theory of computation Packing and covering problems ; Theory of computation Approximation algorithms analysisEditors:
Hee-Kap Ahn, Michael Hoffmann, and Amir NayyeriSeries and Publisher:
Leibniz International Proceedings in Informatics, Schloss Dagstuhl – Leibniz-Zentrum für Informatik
1 Introduction
Partitioning large objects into pieces of bounded size is a fundamental problem. One practical motivation comes from 3D printing and related manufacturing technologies: we can only produce objects that fit within the printing volume, which can be assumed to be a unit cube. If the goal is to produce a large part , we must partition into smaller pieces, , each of which fits within the unit cube. The small pieces can then be assembled to form the desired part . A natural objective is to minimize the number, , of pieces. Heuristics have been proposed to solve this problem [31, 18, 26, 30, 38, 36].
Similar partitioning problems arise in everyday settings. For instance, one might disassemble an entire broccoli head, the peeled stem included, into pieces suitable for consumption with minimal indignity. Yet even in this humble task, one strives to avoid the disarray of producing an excessive multitude of fragments. Recently, Abrahamsen and Rasmussen [5] initiated a theoretical study of partitioning polygons into few small pieces. They provided constant-factor approximation algorithms when the domain is a simple polygon (no holes), for various definitions of what it means for a piece to be “small,” each with its own algorithm and approximation factor. A particularly simple version demands that each piece be connected and contained in an axis-aligned unit square. Abrahamsen and Stade [6] showed that this version is NP-hard even when is a simple polygon.
In this paper, we consider the problems of partitioning and covering objects with small pieces in two and three dimensions. We consider the setting where a small piece is defined as a connected subset of contained in an axis-aligned unit square (in two dimensions) or unit cube (in three dimensions). We obtain the following results.
-
We present a PTAS for covering a polygon (possibly with holes) into a minimum number of small pieces (Section 2).
-
For polygons (possibly with holes), we show that the small-cover and small-partition problem have the same optimal value (Section 2.4).
-
We prove that in 3D, covering or partitioning a polyhedron of description complexity with small pieces is NP-hard to approximate within a logarithmic factor of , even when is simply-connected and contained in a box of size (Section 3).
Our PTAS works by local search: we start with a candidate small cover and then repeatedly try to find a set of pieces that can be swapped for a set of pieces. We show that this gives a approximation algorithm, when is sufficiently large. A result by Roy, Govindarajan, Raman, and Ray [34] shows that local search is a PTAS for discrete Set-Cover when the candidate pieces satisfy a certain non-piercing property. Two simply-connected pieces are non-piercing if and are connected. We show that a set of maximal small pieces satisfies a slightly weaker non-piercing property, but we are able to modify the pieces slightly so that the result from [34] can be used. We are then able to analyze our “continuous” local search algorithm using this result–unlike the discrete case studied in [34], note that our search space is infinite.
For many optimization algorithms, local search can be used to obtain a PTAS when a certain related graph has sublinear separators (see [8] for details). We highlight the fact that this is non-obvious for the small-cover problem. Local search gives a PTAS for packing axis-aligned unit squares into a polyhedron in any constant dimension, since a density argument can be used to obtain the required separation bounds (see for example [24]). In contrast, for small covers, we insist that the pieces be connected, which means that there are “comb-shaped” polygons requiring many pieces, even though the polygon itself almost fits in a unit square; see Figure 1. In 3D, we show that it is NP-hard to approximate optimal small cover or partition to within a factor of , for any , where is the number of bits needed to describe the input polyhedron. We also observe (Theorem 10) that for small pieces, covering and partitioning are equivalent, in the sense that the smallest number of pieces in a cover and in a partition is the same. This is in stark contrast with other geometric settings where not only the optima differ, but also covering seems considerably harder than partitioning. For instance, it is -complete to cover a simple polygon with the minimum number of star polygons [3] (that is, the art-gallery problem) or convex polygons [2], while the corresponding partitioning problems are solvable in polynomial time [4, 16]. Details of all proofs can be found in the full version [1].
1.1 Related Work
The small cover and partitioning problems belong to the class of decomposition problems, which form a large, established subfield in computational geometry. In all of these problems, we want to decompose a polygon into connected polygonal pieces that must respect certain restrictions. Here, the union of the pieces must be , and we usually seek a decomposition into as few pieces as possible, in which case the decomposition is called optimal. A decomposition that allows the pieces to overlap is called a cover; if thee pieces are pairwise interior-disjoint, it is called a partition. Depending on the assumptions about the input polygon and the requirements on the pieces, this leads to a wealth of interesting problems. There is a vast literature about such decomposition problems, as documented in several books and survey papers that give an overview of the state-of-the-art at their respective times of publication [35, 17, 15, 28, 29, 32, 33].
Earlier works studied variants of the small partitioning problem without Steiner points [20, 13], i.e., each vertex of a piece is a vertex of . As an undesirable consequence such a partition often does not exist, e.g., if an edge of the polygon is too long to fit in a piece.
Motivated by indoor localization using lasers, Arkin, Das, Gao, Goswami, Mitchell, Polishchuk, and Tóth [7] studied partitioning a polygon with chords (maximal segments within ), which may model laser beams that serve as “tripwires”; the goal is to cut the polygon into bounded pieces using the fewest lasers. Motivated by communication graphs for mobile robots, Fekete, Kamphans, Kröller, Mitchell, and Schmidt [23] (see also the video [9]) showed how to compute a Steiner triangulation of a simple polygon, whose edge lengths are bounded; they presented a -approximation for minimizing the number of Steiner points. Worman [37] showed NP-hardness of partitioning a polygon with holes into a minimum number of pieces contained in axis-aligned unit squares, without Steiner points. More recently, Buchin and Selbach [13] proved NP-hardness of partitioning and covering with fat pieces. Combinatorial aspects of partitioning into small[er] pieces are classical problems in mathematics. For instance, Borsuk’s problem is to partition a unit-diameter convex body (in any dimension) into fewest pieces of diameter strictly less than ; see [12, 25, 27] for the rich history of the problem. Conway’s fried potato problem [10, 11, 14, 19] deals with minimizing the in-radius of the pieces obtained by a specified number of hyperplane cuts of a given convex polyhedron (in dimensions); in our terminology, Conway’s problem is a dual small partitioning problem.
1.2 Problem Formulation
We say that a polygon (possibly with holes) is small if is contained in an axis-aligned unit square. We often call small polygons small pieces. A set of small pieces is a small cover of a polygon if ; note in particular that for each small piece . We say that a piece is complete if is the closure of a connected component of the intersection , where is the interior of and is an axis-aligned unit square. A simpler definition would be that is complete if it is a connected component of , but that could be a degenerate polygon, which we by definition don’t allow. A small cover of is a small partition of if furthermore the pieces in are pairwise interior-disjoint. In this paper, we study the problems of finding small covers and small partitions consisting of a minimum number of pieces for a given polygon , which may have holes. We denote these problems Small-Cover and Small-Partition, respectively.
2 A PTAS for Small-Cover in 2 dimensions
In this section, we present an -approximation algorithm for Small-Cover when the input is a polygon , possibly with holes. In Section 2.1, we establish tools that allow us to use local search. We then show in Section 2.2 how to use these techniques to handle polygons which intersect at most squares in the integer grid. The running time of our algorithm are polynomial in . Finally, in Section 2.3, we extend our ideas to handle polygons that might have exponentially large diameter. We note that, for the purposes of constructing approximate solutions for Small-Cover, we will only consider complete small pieces, since any small piece that fits in a square must cover a subset of the complete piece covering the same component of .
2.1 Fundamentals for Local Search
Roy, Govindarajan, Raman, and Ray [34] studied the geometric set cover problem with so-called non-piercing regions. Two compact simply-connected regions and are non-piercing if and are both connected. We say that and intersect properly if the intersection of the boundaries consists of a finite set of points and in each of these points, the boundaries cross, i.e., tangential intersections are not allowed. We say that a set of compact, simply-connected regions is properly non-piercing if the regions are pairwise non-piercing and intersect properly.
Lemma 1 ([34]).
For a universal constant the following holds: Let be a (finite) set of points in and suppose that and are sets of connected regions such that and each cover . If the regions in are properly non-piercing and for some , then there is some set of at most of the pieces in that can be replaced by a strictly smaller set of pieces in to obtain a cover of .
We start by adapting this result to the setting of covering a polygon rather than a discrete set of points. We show the following:
Lemma 2.
There is a constant such that the following holds: Let be a polygon (possibly with holes) and let be an optimal small cover of consisting of complete pieces, and let be another small cover of consisting of complete pieces. Then for any , if , then there is a set of at most of the pieces in that can be replaced by a strictly smaller set of pieces in to obtain a small cover of .
It is relatively straightforward to prove Lemma 2 given Lemma 1. The strategy is to put a point in the interior of each cell of the overlay of and . A subset of covers if and only if it covers each of these points. The pieces in are almost non-piercing, but need to be modified slightly in order to remove degeneracies and holes. The process is demonstrated informally in Figure 2 and uses an idea from [21]. The following lemma says that these modifications exist:
Lemma 3.
Consider a polygon and a small cover of consisting of complete small pieces. Consider the overlay of the pieces in , choose a point in the interior of each region contained in , and let be the set of these points. There exists a set of simply-connected pieces that are properly non-piercing such that for all . It holds in particular that for any , we have if and only if .
Note that these modifications are only used in the analysis; we don’t need to produce them algorithmically. We now prove Lemma 2.
Proof of Lemma 2.
Let be the union of the global optimum and the local optimum. Using Lemma 3, we obtain a new set of properly non-piercing pieces and a finite set of points such that a subset of covers if and only if the corresponding subset of covers . Since and both cover , and must both cover .
Recall that and . If for some , then by Lemma 1, we can replace a set of at most of the pieces in with a strictly smaller set of pieces from to obtain another cover of . If we swap the corresponding pieces in with the corresponding pieces in , then we get a small cover of , proving the claim.
Lemma 2 gives sufficient conditions for a small cover to be a -approximation of the optimum. We say that a small cover is a -local optimum if no set of at most pieces from can be replaced by a strictly smaller set of small pieces.
Corollary 4.
There is some constant such that if is a polygon and is a small cover that is a -local optimum for and has complete pieces, then is at most times the size of an optimal cover of .
Proof.
Taking to be the constant from Lemma 2, let and . Because is -local optimum, no set of at most pieces can be replaced by a smaller set of small pieces. If , then is necessarily an optimal solution and the claim holds. So suppose that . Let be an optimal small cover of with complete pieces. Suppose for contradiction that . Note that for , Lemma 2 guarantees a set of pieces can be replaced by fewer pieces from . A contradiction to the fact that is a -local optimum. Hence, .
2.2 Polygons with Small Diameter
In this section, we describe a PTAS for small covers of polygons that intersect at most squares of the integer grid. In order to obtain a PTAS, it is sufficient by Corollary 4 to show that, for any fixed , a -local optimum can be found in polynomial time. The strategy is as follows: we start with some small cover of , and then test every set of pieces in that cover to see if it can be replaced by a smaller set. If such a swap is possible, then we perform the swap and start over with the smaller cover. This repeats until no swap can be found.
The polygon with vertices intersects at most integer grid squares, so we can find an initial cover with at most squares–note that the intersection of a unit square with has at most connected components as each side of is incident to at most one connected component. So finding a -local optimum requires at most a polynomial (in and ) number of swaps, because the number of pieces decreases in each step. It remains to show how to find a swap, or determine that none exists.
Given a set of complete small pieces (not necessarily a cover) in , we define a corresponding “combinatorial structure”. The combinatorial structure is determined by:
-
The line arrangement containing edges of and edges of the squares bounding the pieces.
-
For each bounding square , the connected component of defining the piece (indicated with a number).
Let be the set of lines containing edges of or edges of a bounding square. For each , the first piece of information says on which side of the intersection of and occurs, or if the intersection is contained in . (This is the orientation of the triangle formed by or the order type of the dual of the lines.) The slope of each line in is fixed, so all the information about the arrangement of can be described by equalities and (strict) inequalities that are linear in the coordinates of the bounding squares. For example, if is a vertical line containing the left edge of a square with center , is a horizontal line containing the top edge of a square with center , and is a line containing an edge of , then the combinatorial data contains one of:
-
,
-
, or
-
,
specifying on which side of the intersection of and occurs; see Figure 3.
A realization of a combinatorial structure is a set of pieces satisfying the constraints. Since the constraints are linear, the set of realizations of any fixed combinatorial structure is a convex set. Note that the combinatorial data does not ensure that a realization corresponds to a cover of the polygon . For instance, it is easy to make an example where all the squares are placed almost on top of each other, while big regions of remain uncovered. Given just the combinatorial data of a (hypothetical) arrangement, we can use linear programming (LP) to check if it can actually be realized by some set of small pieces. What we really want to be able to check is if any such realization corresponds to a cover of . The following lemma says that we only need to check a single realization.
Lemma 5.
For a given combinatorial structure, either every or no realization is a cover.
Proof.
Let and be realizations of a combinatorial structure with squares. We show that is a cover if and only if is a cover. Suppose that is a cover. We continuously move the bounding squares from their positions in to their positions in , along straight lines in the -dimensional coordinate space. If, during this process, the arrangement stops being a cover, then one of the following cases occurs: (a) part of a polygon edge is uncovered, (b) part of the interior is uncovered, or (c) a piece becomes disconnected. The cases are illustrated in Figure 4.
We consider a snapshot right after the first point becomes uncovered. In case (a), the uncovered region is a triangle (or a rectangle). Note that the intersection of a right angle of this region has changed sides with respect to the polygon side independent of whether both or just one involved square is moving. In case (b), the uncovered region is a rectangle and its appearance is due to two squares that become disjoint due to the movement of at least one square. In case (c), a side of a moving square now intersects a side of the polygon which was previously disjoint. Consequently, in each case some of the combinatorial data is changing. Since the set of realizations of a combinatorial structure is convex, we conclude that this doesn’t happen. Since the arrangement forms a cover at every point in the motion, we conclude that must be a cover.
By a symmetric argument, it is clear that if is a cover, then is a cover.
Given a cover with complete pieces, we want to check if some set of of its pieces can be swapped for a set of pieces. This is accomplished by the next lemma.
Lemma 6.
Let be a polygon with vertices and consider a small cover of with pieces. For each fixed , we can determine in time whether any set of of the pieces from the cover can be replaced by small pieces (not necessarily from the cover) to form a cover with fewer pieces.
Proof.
For each of the -subsets of , we remove it and test each of the ways of adding squares to the combinatorial arrangement. We need to argue that for any fixed , there are only polynomially many ways of adding squares to a combinatorial structure with squares. This corresponds to adding vertical lines and horizontal lines to the arrangement. A line arrangement with lines contains at most intersection points. Thus there are combinatorially different ways to add a new line with a fixed slope. A combinatorial structure with squares has lines. So the number of ways of adding the new lines is . The intersection of a square with can have at most connected components, so in total there are ways of adding squares to the arrangement. For fixed , this is polynomial in and .
For each of these candidate combinatorial structures, we need to check whether it represents a valid covering. By Lemma 5, it suffices to find a single representative set of pieces (if one exists). Each element of the combinatorial data is a linear constraint involving the coordinates of the squares and either an equality or a strict inequality. We construct an LP instance from these linear constraints, adding a new variable and replacing each strict inequality with . To test if a solution exists, we solve the LP instance in which the objective function is to maximize . If there is no feasible solution with , then we conclude that there is no valid swap with this combinatorial structure. If we find a feasible solution with , then we check if this solution covers all of . We do this by constructing the pieces explicitly and computing their union. If the union does not cover , then we know that no arrangement with this combinatorial structure does. The only free variables in the LP instance are and the coordinates of the newly-added bounding squares. So in order to solve the LP instance, we can just check all of the basic solutions. This takes (strongly-)polynomial time for a fixed .
We should check that this procedure finds a swap if one exists. Suppose that there is a set of pieces in the initial cover that can be swapped with pieces in order to obtain a new cover . The cover has a combinatorial structure, which is one of the candidate structures tested by our procedure. Furthermore, is a realization of this structure with the positions of the old pieces being the same as in , so such a realization exists, and the linear programming step will find one (but the realization found is not necessarily the same one as ). Since is a cover, by Lemma 5, the realization found will be a cover.
Theorem 7.
There is an algorithm that, given a polygon and a parameter , computes a -approximation of the optimal small cover of . The algorithm runs in time , where is the number of integer grid squares intersecting .
Proof.
Fix such that , and , where is the constant from Corollary 4.
We can construct a cover of with small pieces by overlaying with the integer grid and taking the connected components of each intersection. Recall that the intersection of a unit square with has at most connected components. Hence, we obtain an initial solution with at most pieces, where is the number of integer grid squares intersecting . We then check if this cover is a -local optimum using the procedure from Lemma 6.
If this cover is not a -local optimum, then we perform the swap and repeat the process until no more valid swaps remain. Every swap decreases the total number of pieces by , so the algorithm terminates after at most steps, and when it does we have obtained a cover such that no set of pieces can be swapped for a strictly smaller set of pieces. By Corollary 4, this solution has at most -times as many pieces as an optimal solution. It is clear by Lemma 6 that the entire process takes time at most .
The algorithm in Theorem 7 runs in polynomial time on real RAM, but the bit-complexity of the coefficients can grow by a constant factor after each swap, potentially leading to exponential coefficient growth. In order to obtain an algorithm that runs in strongly-polynomial time, we can adjust the coordinates after each swap. Let be the number of squares of the cover. We consider the LP instance corresponding to the combinatorial structure of the cover. Here, has two variables for all squares, not just the new squares introduced in the latest swap. The cover that we found is a feasible solution to . There are two coordinates in for each square and one for the value in the strict inequalities. We want to find a basic feasible solution to , i.e., a vertex of the polyhedron defined by the constraints, because the bit-complexity of the variables in such a solution is polynomial in , and the bit-complexity of the coordinates of vertices of . The value of (the variable for strict inequalities) should still be positive in the new solution.
This can be done in strongly-polynomial time. We can write such that all constraints have form . We start by evaluating each constraint at the feasible solution . A constraint is tight if . Let be the set of tight constraints and let . In other words, is the affine subspace that causes the tight constraints to be tight. The solution is a basic feasible solution if has dimension . Otherwise, we can find a direction such that does not decrease when moving in direction . We move from in direction until an additional constraint becomes tight.
We obtain a new feasible solution to , where at is at least as large as at . Furthermore, the dimension of , the subspace of tight constraints corresponding to , has decreased by at least compared to . So we can repeat this process to find a basic feasible solution with the required properties. The number of arithmetic operations depends only on the number of variables and the number of constraints, so this process runs in strongly polynomial time. The bit-complexity of a basic feasible solution is polynomial in , and the bit-complexity of the coordinates of vertices of . In particular, it does not increase with the number of swaps performed by the algorithm in Theorem 7.
2.3 Polygons with Large Diameter
In this section, we assume the existence of an algorithm providing a -approximation for a small cover of a polygon with diameter at most . We show that from such an algorithm, one can design an algorithm that for an arbitrary polygon , for which the size of a minimum cover of is OPT, can find a value such that , where for some universal constant . The algorithm also provides an implicit description of a cover with this approximation guarantee. Recall that we work in the real RAM model. In particular, we can perform basic arithmetic operations like addition, multiplication, and division on the coordinates of the corners of the polygon in constant time.
Theorem 8.
Assume there exists an algorithm which for any polygon with vertices and diameter finds a -approximate minimum cover of in time . Then there exists an algorithm that for any -vertex polygon returns a value with , where OPT is the size of a minimal cover of with small pieces and is a sufficiently large universal constant. The runtime of is . The algorithm also produces an implicit description of a -approximate cover. For any query point , the algorithm can in time return all pieces in the cover containing .
Corollary 9.
There is an algorithm that, given a polygon and a parameter , computes a -approximation to the number of pieces in an optimal small cover of . The algorithm runs in time .
The algorithm also produces an implicit description of a -approximate cover. For any query point , the algorithm can in time return all pieces in the cover containing .
Proof.
We now sketch the idea of the reduction. We first argue that there is a set of disjoint “large” corridors with each such that we can solve the covering problem on and separately. Each corridor is constructed to have a pair of sides that are either both vertical or both horizontal and are of distance apart. The remaining two sides are both contained in an edge of . Finally, each is essentially picked to be of maximum volume satisfying these properties.
We will show that the union of -approximate covers of and yields a -approximate cover of . For , the diameter of each connected component is at most , so we can use the algorithm for bounded diameter polygons. The corridors are more tricky as the size of their optimal solutions cannot be bounded in terms of , so for those, we maintain an implicit solution. Denote by and the area and perimeter of . If , one can show that the intersection with the integer grid gives an approximate cover, and this solution is easy to describe implicitly. The tricky part is handling a corridor with where is “long” and “skinny”. Suppose that has a pair of vertical edges (the horizontal case is similar). In this case, we partition further into corridor sections , all having a pair of vertical edges and width . We then again argue that it suffices to solve the problem on each with an approximation ratio of . Unfortunately, we cannot afford to find a solution for each separately, but we can argue about a certain monotonicity of sizes of optimal covers of the . Namely, after appropriate translations, it is either the case that for all or it is the case that for all . In the former case, we show that the size of the optimal cover of is at most the size of the optimal cover of and a similar claim holds in the latter case. Based on these properties, and defining , we show that it suffices to approximate the minimum covers of . For any with , for some , we can then use the size of the approximate cover of as an upper bound on the size of the optimal cover of . This only requires us to run on the instances of the form . While for some values of , this approach might not give approximation to , the monotonicity ensures that for most values of , the approximation is good, and suffices to give a final approximation guarantee of .
2.4 Equivalence of Small Covers and Partitions
The proof of Lemma 3 lets us show the equivalence of small covering and partitioning – a result which may be interesting in its own right.
Theorem 10.
For any polygon , possibly with holes, optimal small covers and small partitions have the same number of pieces.
Proof.
Consider an optimal small cover consisting of complete small pieces; see Figure 5.
Consider the overlay of and choose a point in the interior of each cell which is also in . Construct a set of proper non-piercing regions as in Lemma 3. As described in the proof, the pieces in are subsets of those in , except that some holes of have been filled. Importantly, the boundaries of the pieces in are just slight perturbations of those in .
The following process of lens bypassing is described in [34, Section 4]. Since are non-piercing, any intersection consists of a set of lenses, which are regions bounded by one interval of the boundaries of each set and . In the process of lens bypassing, we consider an inclusion-wise minimal lens , say in the intersection . Let the boundary of be , where and are on the boundaries of and , respectively. We change the boundary of by replacing by a curve following (but slightly outside to avoid non-proper intersections). This effectively removes from . It is shown [34, Lemma 4.6] that the operation results in a set of regions that are also non-piercing. Repeating the process results in a set of pairwise disjoint regions that are subsets of the original regions and still contain the points .
Consider any hole of , i.e., is a bounded connected component in the complement of . Recall that in the pieces , the hole might have been filled in some of them, so might also be filled in some of the pieces . In our modifications from to , we have only ever made modifications along curves that are disjoint from . Hence, for each piece , we either have ( is filled) or ( is still a hole of or outside the outer boundary). We can remove from all pieces where it is filled, thus reintroducing as a hole, and this will not break connectivity. We do so for all holes of . We end up with regions that are pairwise disjoint and all contained in . Furthermore, the regions still cover in the sense that each region in the overlay of the original cover is contained in a region in the overlay of , except that the boundary might be slightly perturbed. We can thus create pieces analogous to using the original boundaries, and these pieces will cover all of and still be pairwise interior-disjoint. We therefore obtain a small partition of .
3 Hardness for Small-Cover in 3 dimensions
In this section, we give a gap-preserving reduction from Set-Cover to -dimensional small cover. The best-known inapproximability result for Set-Cover is the following:
Theorem 11.
(Dinur and Steurer [22]) For any , it is NP-hard to approximate an instance of Set-Cover of size to within a factor of .
Our results show that Small-Cover in 3 dimensions is no easier to approximate than Set-Cover.
Theorem 12.
Let be an instance of Set-Cover where the universe is and the sets are . Then we can construct in polynomial time a simple polyhedron with vertices such that has a unit cube cover of size if and only if can be covered by of the sets in . The vertices of have bit-complexity at most and is contained in a box of size .
Proof.
For simplicity, we will scale the coordinates by a factor of . So the polyhedron will have a cover with pieces that fit inside -cubes. We will construct from a union of flat plane pieces, but it can easily be thickened to obtain a non-degenerate polyhedron.
To construct , we start by making layers of hook pieces. There is one type of hook piece for each of the sets in . The hook piece for is shown in Figure 6(a). For each , we place a copy of the corresponding hook piece at -coordinate .
The hook pieces are connected by a wall, which is formed by the segments marked through in Figure 6(b) extruded to cover the -coordinates . Additionally, the segment marked is extruded to cover the coordinates for each . The entire construction is illustrated in Figure 7.
Suppose that can be covered by of the sets in . We want to show that can be covered with pieces that fit inside an -unit cube. First note that the cubes shown in Figure 8 are sufficient to cover most of .
The intersection of with each of these cubes is connected. There are connected chunks remaining uncovered, corresponding to the elements of . Let be the connected part of the uncovered region containing . For each , there is a connected piece containing that fits inside the cube , as illustrated in Figure 9(a) and 9(b). So if can be covered by of the , then can be covered by pieces.
Now suppose that can be covered by pieces. We first designate five points (as shown in Figure 6(a) and 7). No cube can contain more than of these points, so there are at least five pieces in the covering, one for each of these points. These pieces also cannot contain any of the points , so the remaining pieces must cover these points.
Suppose that some piece in the cover contains for some set . We want to show that for some . By assumption, each is in some , so WLOG suppose . Let with . So contains a path from to . No part of the walls through is close enough to to be contained in , so must connect through or .
In order to get from to or , must go through some hook piece, say this hook piece corresponds to . Such a connection contains coordinates covering the interval (see Figure 9(a) and 9(b)). Since is contained in an -unit cube, it cannot contain points with -coordinates covering for any . So any contained in is connected to through a hook piece corresponding to . This is only possible if . So .
Thus, can be covered by of the if and only if can be covered by connected pieces each fitting inside an -unit cube.
If we thicken slightly, we obtain a simple (topologically ball-shaped) polyhedron. To see this, we observe that is contractable. Indeed, each hook piece (strongly) deformation retracts onto walls through . So all of the hook pieces deformation retract onto the wall pieces. Since the union of the wall pieces is contractable, is contractable.
We note that it is possible to trim the cover of size described in the proof in order to obtain a partition, so we get hardness for both Small-Cover and Small-Partition. In fact, it is easy to see that the problems are equivalent in and higher dimensions: If form a cover for a polyhedron , we can define for . Then the pieces are pairwise disjoint and also cover , but they may be disconnected. However, if is disconnected, we can connect the parts by thin tunnels, staying in the original piece so we don’t violate the size constraint. These tunnels are removed from the other pieces , and choosing them sufficiently thin, they will not disconnect any piece.
Corollary 13.
In 3 dimensions, for any , it is NP-hard to approximate Small-Cover and Small-Partition better than , where is the number of bits needed to describe the input polyhedron. This holds even when the polyhedron is simple and contained in a box of size .
References
- [1] Anders Aamand, Mikkel Abrahamsen, Reilly Browne, Mayank Goswami, Prahlad Narasimhan Kasthurirangan, Linda Kleist, Joseph S. B. Mitchell, and Jack Polishchuk, Valentin Stade. Covering and partitioning complex objects with small pieces, 2026. arXiv:2603.23216.
- [2] Mikkel Abrahamsen. Covering polygons is even harder. In Symposium on Foundations of Computer Science (FOCS), pages 375–386. IEEE, 2021. doi:10.1109/FOCS52979.2021.00045.
- [3] Mikkel Abrahamsen, Anna Adamaszek, and Tillmann Miltzow. The art gallery problem is -complete. J. ACM, 69(1):4:1–4:70, 2022. doi:10.1145/3486220.
- [4] Mikkel Abrahamsen, Joakim Blikstad, André Nusser, and Hanwen Zhang. Minimum star partitions of simple polygons in polynomial time. In Symposium on Theory of Computing, (STOC), pages 904–910. ACM, 2024. doi:10.1145/3618260.3649756.
- [5] Mikkel Abrahamsen and Nichlas Langhoff Rasmussen. Partitioning a polygon into small pieces. In Symposium on Discrete Algorithms (SODA), pages 3562–3589. SIAM, 2025. doi:10.1137/1.9781611978322.118.
- [6] Mikkel Abrahamsen and Jack Stade. Hardness of packing, covering and partitioning simple polygons with unit squares. SIAM Journal on Computing, pages FOCS24–29, 2026. doi:10.1137/24M171824X.
- [7] Esther M. Arkin, Rathish Das, Jie Gao, Mayank Goswami, Joseph S. B. Mitchell, Valentin Polishchuk, and Csaba D. Tóth. Cutting polygons into small pieces with chords: Laser-based localization. In European Symposium on Algorithms (ESA), pages 7:1–7:23, 2020. doi:10.4230/LIPIcs.ESA.2020.7.
- [8] Rom Aschner, Matthew J. Katz, Gila Morgenstern, and Yelena Yuditsky. Approximation schemes for covering and packing. In WALCOM: Algorithms and Computation, pages 89–100, 2013. doi:10.1007/978-3-642-36065-7_10.
- [9] Aaron T. Becker, Sándor P. Fekete, Alexander Kröller, SeoungKyou Lee, James McLurkin, and Christiane Schmidt. Triangulating unknown environments using robot swarms. In Symposium on Computational Geometry (SoCG), pages 345–346, 2013. doi:10.1145/2462356.2462360.
- [10] A. Bezdek and K. Bezdek. A solution of conway’s fried potato problem. Bulletin of the London Mathematical Society, 27(5):492–496, 1995. doi:10.1112/blms/27.5.492.
- [11] A. Bezdek and K. Bezdek. Conway’s fried potato problem revisited. Arch. Math., 66(6):522–528, 1996. doi:10.1007/BF01268872.
- [12] Karol Borsuk. Drei Sätze über die -dimensionale euklidische Sphäre. Fundamenta Mathematicae, 20(1):177–190, 1933. doi:10.4064/fm-20-1-177-190.
- [13] Maike Buchin and Leonie Selbach. Decomposing polygons into fat components. In Canadian Conference on Computational Geometry (CCCG), pages 175–184, 2021.
- [14] Antonio Cañete, Isabel Fernández, and Alberto Márquez. Conway’s fried potato problem: a (quadratic) algorithm leading to an optimal division for convex polygons. In Discrete Mathematics Days (DMD), pages 71–76, 2022.
- [15] Bernard Chazelle. Approximation and decomposition of shapes. In Algorithmic and Geometric Aspects of Robotics, volume 1 of Advances in Robotics, pages 145–185. L. Erlbaum Associates Inc., 1987.
- [16] Bernard Chazelle and David P. Dobkin. Optimal convex decompositions. In Computational Geometry, volume 2 of Machine Intelligence and Pattern Recognition, pages 63–133. Elsevier, 1985. doi:10.1016/B978-0-444-87806-9.50009-8.
- [17] Bernard Chazelle and Leonidas Palios. Decomposition algorithms in geometry. In Algebraic Geometry and its applications, pages 419–447. Springer, 1994. doi:10.1007/978-1-4612-2628-4_27.
- [18] Xun Chen and Mingyong Chen. Skeleton partition models for 3D printing. In Second International Conference on Medical Imaging and Additive Manufacturing (ICMIAM 2022), 2022. doi:10.1117/12.2636369.
- [19] Hallard T. Croft, Kenneth J. Falconer, and Richard K. Guy. Unsolved Problems in Geometry. Problem Books in Mathematics: Unsolved Problems in Intuitive Mathematics. Springer, 1991. doi:10.1007/978-1-4612-0963-8.
- [20] 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.
- [21] Mark de Berg, Sándor Kisfaludi-Bak, Morteza Monemizadeh, and Leonidas Theocharous. Clique-based separators for geometric intersection graphs. Algorithmica, 85(6):1652–1678, 2023. doi:10.1007/S00453-022-01041-8.
- [22] Irit Dinur and David Steurer. Analytical approach to parallel repetition. In Symposium on Theory of Computing (STOC), pages 624–633. ACM, 2014. doi:10.1145/2591796.2591884.
- [23] Sándor P. Fekete, Tom Kamphans, Alexander Kröller, Joseph S. B. Mitchell, and Christiane Schmidt. Exploring and triangulating a region by a swarm of robots. In Approximation, Randomization, and Combinatorial Optimization. Algorithms and Techniques (APPROX-RANDOM), pages 206–217. Springer, 2011. doi:10.1007/978-3-642-22935-0_18.
- [24] Sariel Har-Peled and Kent Quanrud. Approximation algorithms for polynomial-expansion and low-density graphs. SIAM Journal on Computing, 46(6):1712–1744, 2017. doi:10.1137/16M1079336.
- [25] Thomas Jenrich and Andries E. Brouwer. A 64-dimensional counterexample to Borsuk’s conjecture. Electron. J. Comb., 21(4):4, 2014. doi:10.37236/4069.
- [26] Xiaotong Jiang, Xiaosheng Cheng, Qingjin Peng, Luming Liang, Ning Dai, Mingqiang Wei, and Cheng Cheng. Models partition for 3D printing objects using skeleton. Rapid Prototyping Journal, 23:54–64, 2017. doi:10.1108/RPJ-07-2015-0091.
- [27] Jeff Kahn and Gil Kalai. A counterexample to Borsuk’s conjecture. Bulletin of the American Mathematical Society, 29(1):60–62, 1993. doi:10.1090/S0273-0979-1993-00398-7.
- [28] J. Mark Keil. Polygon decomposition. In Jörg-Rüdiger Sack and Jorge Urrutia, editors, Handbook of computational geometry, chapter 11, pages 491–518. Elsevier, 1999. doi:10.1016/B978-044482537-7/50012-7.
- [29] J. Mark Keil and Jörg-R. Sack. Minimum decompositions of polygonal objects. In Computational Geometry, volume 2 of Machine Intelligence and Pattern Recognition, pages 197–216. Elsevier, 1985. doi:10.1016/B978-0-444-87806-9.50012-8.
- [30] Minseok Ko, Yeongjun Yoon, Jaeyeon Kim, Samyeon Kim, and Soonjo Kwon. D-ECOmposer: Sustainable part decomposition for additive manufacturing using machine learning based life cycle assessment. Additive Manufacturing, 103:104759, 2025. doi:10.1016/j.addma.2025.104759.
- [31] Linjie Luo, Ilya Baran, Szymon Rusinkiewicz, and Wojciech Matusik. Chopper: Partitioning models into 3D-printable parts. ACM Trans. Graph., 31(6):129:1–129:9, 2012. doi:10.1145/2366145.2366148.
- [32] Joseph O’Rourke. Art Gallery Theorems and Algorithms. Oxford University Press, 1987.
- [33] Joseph O’Rourke, Subash Suri, and Csaba D. Tóth. Polygons. In J. E. Goodman and J. O’Rourke, editors, Handbook of discrete and computational geometry, chapter 30, pages 787–810. Taylor & Francis, third edition edition, 2018. doi:10.1201/9781315119601.
- [34] Aniket Basu Roy, Sathish Govindarajan, Rajiv Raman, and Saurabh Ray. Packing and covering with non-piercing regions. Discret. Comput. Geom., 60(2):471–492, 2018. doi:10.1007/S00454-018-9983-2.
- [35] Thomas C. Shermer. Recent results in art galleries. Proceedings of the IEEE, 80(9):1384–1399, 1992. doi:10.1109/5.163407.
- [36] Juraj Vanek, Jorge A. Garcia Galicia, Bedrich Benes, Radomír Mech, Nathan A. Carr, Ondrej Stava, and Gavin S. P. Miller. Packmerger: A 3D print volume optimizer. Comput. Graph. Forum, 33(6):322–332, 2014. doi:10.1111/CGF.12353.
- [37] Chris Worman. Decomposing polygons into diameter bounded components. In Canadian Conference on Computational Geometry (CCCG), pages 103–106, 2003. URL: http://www.cccg.ca/proceedings/2003/9.pdf.
- [38] Yuan Yao, Longyu Cheng, and Zhengyu Li. A comparative review of multi-axis 3D printing. Journal of Manufacturing Processes, 120:1002–1022, 2024. doi:10.1016/j.jmapro.2024.04.084.
