This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Folding One Polyhedral Metric Graph into Another

Lily Chung MIT Computer Science and Artificial Intelligence Laboratory, 32 Vassar St., Cambridge, MA 02139, USA, {lkdc,edemaine,mdemaine,hecher,ryelin,jaysonl}@mit.edu Erik D. Demaine MIT Computer Science and Artificial Intelligence Laboratory, 32 Vassar St., Cambridge, MA 02139, USA, {lkdc,edemaine,mdemaine,hecher,ryelin,jaysonl}@mit.edu Martin L. Demaine MIT Computer Science and Artificial Intelligence Laboratory, 32 Vassar St., Cambridge, MA 02139, USA, {lkdc,edemaine,mdemaine,hecher,ryelin,jaysonl}@mit.edu Markus Hecher MIT Computer Science and Artificial Intelligence Laboratory, 32 Vassar St., Cambridge, MA 02139, USA, {lkdc,edemaine,mdemaine,hecher,ryelin,jaysonl}@mit.edu Rebecca Lin MIT Computer Science and Artificial Intelligence Laboratory, 32 Vassar St., Cambridge, MA 02139, USA, {lkdc,edemaine,mdemaine,hecher,ryelin,jaysonl}@mit.edu Jayson Lynch MIT Computer Science and Artificial Intelligence Laboratory, 32 Vassar St., Cambridge, MA 02139, USA, {lkdc,edemaine,mdemaine,hecher,ryelin,jaysonl}@mit.edu Chie Nara Meiji Institute for Advanced Study of Mathematical Sciences, Meiji University, Nakano, Tokyo 164-8525, Japan, cnara@jeans.ocn.ne.jp
Abstract

We analyze the problem of folding one polyhedron, viewed as a metric graph of its edges, into the shape of another, similar to 1D origami. We find such foldings between all pairs of Platonic solids and prove corresponding lower bounds, establishing the optimal scale factor when restricted to integers. Further, we establish that our folding problem is also NP-hard, even if the source graph is a tree. It turns out that the problem is hard to approximate, as we obtain NP-hardness even for determining the existence of a scale factor 1.5ε1.5-\varepsilon. Finally, we prove that, in general, the optimal scale factor has to be rational. This insight then immediately results in NP membership. In turn, verifying whether a given scale factor is indeed the smallest possible, requires two independent calls to an NP oracle, rendering the problem DP-complete.

1 Introduction

Viewing a polyhedron as a metric graph (graph with specified edge lengths), when can we fold it into another polyhedron, in the sense of 1D origami [4] where lengths must be preserved and we view multiple overlapping layers as one? More formally:

Problem 1 (IsoCovering).

Given two metric spaces AA and BB, find an isometric covering of BB by AA, that is, a surjective map m:ABm:A\to B such that, for every path pp in AA, the arc length of pp in AA equals the arc length of m(p)m(p) in BB.

Refer to caption
Figure 1: (Left): Simple example foldings, where source graphs are routed onto target graphs. (Right): Folding icosahedron into a dodecahedron via inscription of the target geometry into the source.

Figure 1 shows simple examples. To ensure that this is always possible, we can scale the lengths in AA by a constant scale factor α\alpha (in Figure 1, scale factors α\alpha are given for unit edge lengths). The required scale factor between source and target shape is also the primary concern in computational origami design [4].

We aim to compute the minimum possible scale factor. This leads to the decision problem of verifying whether a given scale factor is possible as well as the following optimization problem.

Problem 2 (Optimization).

Given graphs AA and BB, minimize α\alpha\in\mathbb{R} such that BB scaled by α\alpha has an isometric covering from AA.

Some well-known problems can be cast into this framework. When the source graph AA is a path or a cycle, this problem is exactly the Chinese postman tour problem: what is the shortest cycle that visits every edge at least once? This problem, and thus optimal scale factors in this case, can be computed in polynomial time [5]. Notably, folding cycles like this are commonly studied in the context of 1D origami [3, Chapters 12].

1.1 Our Results

First, we consider foldings of every Platonic solid into every other, proving many upper bounds (Section 2) and lower bounds (Section 3) on the optimal scale factor α\alpha. Table 1 summarizes these results, which are tight if we artificially restrict to integral scale factor.

Next, we analyze the complexity of the general problem. We prove that IsoCovering is NP-hard and that the optimization problem is hard to approximate within some constant factor (Section 4). We prove that the optimal scale factor is always rational (Section 5), which immediately gives rise to NP membership. We also show DP-completeness of verifying that a given scale factor is the optimal (Section 5.1). We conclude with open problems in Section 6.

Table 1: Our integer-tight lower and upper bounds, given as intervals, on the minimum scale factor for folding one Platonic solid (row) into another (column), both with unit edge lengths. * The lower bound from icosahedron to cube is due to topological arguments, see also Theorem 2.
\Rsh Tetrahedron Cube Octahedron Dodecahedron Icosahedron
Tetrahedron [1, 1] [2+1/3, 2+5/6] (2, 2+1/2] [6+1/3, 6+5/6] (5+2/3, 5+7/8]
Cube (1/2, 5/6] [1, 1] (1, 1+1/2] [3, 3] (2+2/3, 3]
Octahedron (1/2, 1] (1+1/12, 1+1/2] [1, 1] (3+1/12, 4] (2+1/2, 3]
Dodecahedron (1/5, 3/5] (2/5, 4/5] (2/5, 3/4] [1, 1] (1, 1+1/3]
Icosahedron (1/5, 1] (1*, 1+1/3] (2/5, 1] (1+2/15, 2] [1, 1]

2 Platonic Upper Bounds (Foldings)

To achieve the upper bounds reported in Table 1, we developed initial solutions by observing inscriptions of one polyhedron in another (Figure 1 (right)), and then further optimized these solutions through manual rerouting and automated search. For the latter, we combined two brute-force paradigms—logic programming and integer linear programming—along with local improvement techniques.

Refer to caption
Figure 2: Routing edges via subdivisions of (a) a tetrahedron to an icosahedron with α=47/8\alpha=47/8, (b) an octahedron to a cube with α=3/2\alpha=3/2, (c) a tetrahedron to an octahedron with α=5/2\alpha=5/2 (and back with scale α=1\alpha=1), and (d) an octahedron to a cube with α=3/2\alpha=3/2. Note that mappings are schematic and, therefore, not drawn to scale.

2.1 Automated Upper Bounds

For obtaining upper bounds, we use two different computing techniques. First, we will discuss an approach based on logic programming, which inherits concepts from propositional satisfiability (SAT) with direct language supports for transitive closure (reachability). Then, we briefly present an integer linear program. At the end of this section, we describe our approach of combining both technologies in the form of a local improvement.

2.1.1 Integer Scales

Modern SAT-based search engines [6] provide an efficient tool for searching for solutions to combinatorial problems. The advantage of these solvers is that they are based on non-chronological backtracking, thereby using sophisticated heuristics to efficiently traverse and cut the search space. With the help of sophisticated conflict analysis, the idea is to learn from unsuccessful branches of the search tree, with the goal of avoiding (short-cutting) similar conflicts in the future.

We design an encoding to utilize a SAT-based logic programming solver, called clingo [7], which is particularly focused on efficiently evaluating transitive closure properties by lazily adding constraints during solving. While we do not expect to fully solve optimization problems in general, in practice we can use our encoding to efficiently compute solutions of decent quality.

However, as this method is SAT-based it translates to Boolean variables. Consequently, we cannot expect arbitrarily large precision, but we can aim for integer or limited rational scale factors. These approaches still work well for quickly obtaining decent solutions that then serve as a basis for further optimization. Let SS be the source graph and DD be the target graph. While we do not care about the direction of edges, we assume both graphs to be directed (any fixed edge orientation), simplifying the encoding.

1% Input:
2% vertex(x) for every source vertex x in S
3% edge(x,y) for every source edge (x,y) in S
4% tvertex(x) for every target vertex x in D
5% tedge(x,y) for every target edge (x,y) in D
6
7% Guess single scale factor
8{scale(S): S >= 1, S <= E(D)\mid E(D)\mid}=1
9% Minimize scale factor
10#\#minimize{S:scale(S)}
11
12% Source vertices X assigned to single target A
13{sass(X,A):tvertex(A)}=1 \leftarrow vertex(X)
14
15% Reachability via source assignment
16reach(e(X,Y),A) \leftarrow sass(X,A), edge(X,Y)
17% Reachability via outgoing edge
18reach(e(X,Y),B) \leftarrow eass(e(X,Y),_,B)
19
20% Guess outgoing edge among reached vertices
21{eass(e(X,Y),A,B)} \leftarrow reach(e(X,Y),A), edge(A,B)
22{eass(e(X,Y),A,B)} \leftarrow reach(e(X,Y),A), edge(B,A)
23
24% Target path length must not exceed scale
25\bot\leftarrow #count{A,B:eass(e(X,Y),A,B)} > S, scale(S), edge(X,Y)
26
27% Every target edge must be covered
28\bot\leftarrow tedge(A,B), not eass(_,A,B), not eass(_,B,A)
29
30% Every source edge must be constructed
31con(X,Y) \leftarrow edge(X,Y), reach(e(X,Y),B), sass(Y,B)
32\bot\leftarrow edge(X,Y), not con(X,Y)
33
34% Degree rule to ensure income equals outcome
35\bot\leftarrow O=#count{B: eass(e(X,Y),A,B)}, I=#count{B: eass(e(X,Y),B,A)}, O\neqI, reach(e(X,Y),A), not sass(Y,A), not sass(X,A)
36% Source gets additional outcome
37\bot\leftarrow O=#count{B: eass(e(X,Y),A,B)}, I=#count{B: eass(e(X,Y),B,A)}, O\neqI+1, reach(e(X,Y),A), sass(X,A), not sass(Y,A)
38% Target gets additional income
39\bot\leftarrow O=#count{B: eass(e(X,Y),A,B)}, I=#count{B: eass(e(X,Y),B,A)}, O+1\neqI, reach(e(X,Y),A), sass(Y,A), not sass(X,A)

Note that we extend this encoding to capture limited rational scale factors. However, it works similarly and was skipped for the sake of presentation. There, we subdivide target edges (which then still allows us to map source vertices only to target vertices) and consider these subdivisions when computing the scale factor.

2.1.2 Rational Scales via ILP

In the following we discuss an integer linear program (ILP). To this end let SS be the source graph and DD be the target graph. Further, we assume DD^{\prime} to be a modification of target DD, where each edge e={x,y}e=\{x,y\} in E(D)E(D) is subdivided using up to c|V(S)|c\leq|V(S)| intermediate auxiliary vertices. These auxiliary vertices allow us to position source vertices on edge positions and are positioned between 0 (xx) and 1 (yy). For every target edge eE(D)e\in E(D), we assume a predecessor relation \prec among the vertices in V(D)V(D^{\prime}) on ee obtained after subdividing. Without loss of generality, we assume that edges in E(D)E(D) are directed, based on this ordering, i.e. edges go from \prec-lower to \prec-higher vertices. Let α|E(D)|\alpha\leq|E(D)| be a chosen scale factor upper bound constant.

In the encoding, we use the following variables:

directed flow fs,x,y0\displaystyle f_{s,x,y}\geq 0 for sE(S),{x,y}E(D)\displaystyle\text{for }s\in E(S),\{x,y\}\in E(D^{\prime})
directed edge decision es,x,y:binary\displaystyle e_{s,x,y}:\text{binary}
src mapping mu,n:binary\displaystyle m_{u,n}:\text{binary} for uV(S),nV(D)\displaystyle\text{for }u\in V(S),n\in V(D^{\prime})
aux position an:[0,1]\displaystyle a_{n}:[0,1] for nV(D)\displaystyle\text{for }n\in V(D^{\prime})
src reachability rs,n:binary\displaystyle r_{s,n}:\text{binary} for sE(S),nV(D)\displaystyle\text{for }s\in E(S),n\in V(D^{\prime})
directed edge length ls,x,y:[0,1]\displaystyle l_{s,x,y}:[0,1] for sE(S),{x,y}E(D)\displaystyle\text{for }s\in E(S),\{x,y\}\in E(D^{\prime})
objective o0\displaystyle o\geq 0

For every sE(S)s\in E(S), we then generate the following ILP:

edge/flow rel. es,x,yfs,x,y\displaystyle e_{s,x,y}\leq f_{s,x,y} for {x,y}E(D)\displaystyle\text{for }\{x,y\}\in E(D^{\prime})
fs,x,yαes,x,y\displaystyle f_{s,x,y}\leq\alpha\cdot e_{s,x,y}
edge/reach rel. es,n,xrs,n\displaystyle e_{s,n,x}\leq r_{s,n} for {n,x}E(D),nV(D)\displaystyle\text{for }\{n,x\}{\,\in\,}E(D^{\prime}),n{\,\in\,}V(D^{\prime})
rs,nxngbs(n)(es,x,n+es,n,x)\displaystyle r_{s,n}\leq\sum_{x\in ngbs(n)}(e_{s,x,n}+e_{s,n,x})\hskip-42.50061pt for nV(D)\displaystyle\text{for }n\in V(D^{\prime})
edge/length rel. ls,x,yes,x,y\displaystyle l_{s,x,y}\leq e_{s,x,y} for {x,y}E(D)\displaystyle\text{for }\{x,y\}\in E(D^{\prime})
ls,x,yayax\displaystyle l_{s,x,y}\leq a_{y}-a_{x} for x,yV(D),xy\displaystyle\text{for }x,y{\,\in\,}V(D^{\prime}),x{\,\prec\,}y
ls,y,xayax,ayax\displaystyle l_{s,y,x}\leq a_{y}-a_{x},\quad a_{y}\geq a_{x}
ls,x,yay+axes,x,y1\displaystyle l_{s,x,y}-a_{y}+a_{x}\geq e_{s,x,y}-1\hskip-42.50061pt
ls,y,xay+axes,y,x1\displaystyle l_{s,y,x}-a_{y}+a_{x}\geq e_{s,y,x}-1\hskip-42.50061pt
ax=0,ay=1\displaystyle a_{x}=0,a_{y}=1 for (x,y)E(D)\displaystyle\text{for }(x,y)\in E(D)
demand 1\displaystyle\geq\text{demand }1 Σxngbs(n)fs,x,nΣxngbs(n)fs,n,x+\displaystyle\Sigma_{x\in ngbs(n)}f_{s,x,n}-\Sigma_{x\in ngbs(n)}f_{s,n,x}+\hskip-42.50061pt for s=(u,v),nV(D)\displaystyle\text{for }s{=}(u,v),n{\,\in\,}V(D^{\prime})
αmu,nrs,n\displaystyle\qquad\qquad\qquad\quad\alpha\cdot m_{u,n}\geq r_{s,n}
degree constr. Σxngbs(n)es,n,xΣxngbs(n)es,x,n\displaystyle\Sigma_{x\in ngbs(n)}e_{s,n,x}-\Sigma_{x\in ngbs(n)}e_{s,x,n}-\hskip-42.50061pt
mu,n+mv,n=0\displaystyle m_{u,n}+m_{v,n}=0
1 target per src\displaystyle 1\text{ target per src} ΣnV(D)mu,n=1\displaystyle\Sigma_{n\in V(D^{\prime})}m_{u,n}=1 for uV(S)\displaystyle\text{for }u\in V(S)
edges covered ΣsE(S)es,y,x+es,x,y1\displaystyle\Sigma_{s^{\prime}\in E(S)}e_{s^{\prime},y,x}+e_{s^{\prime},x,y}\geq 1 for {x,y}E(D)\displaystyle\text{for }\{x,y\}\in E(D^{\prime})
lengths o\displaystyle\text{lengths }\leq o Σ{x,y}E(D)ls,x,yo\displaystyle\Sigma_{\{x,y\}\in E(D^{\prime})}l_{s,x,y}\leq o
min(o)\displaystyle\min(o)

2.1.3 Local Improvement of Limited Rational Scales

For computing and improving upper bounds among platonic solids (as presented in Table 1 works as follows. First, using the approach discussed in Section 2.1.1, we obtain initial mappings with integer or limited rational scale factors. These mappings are then relaxed, where we allow a shift of source vertices mapped onto target vertices or edges. The goal is then to use the approach of Section 2.1.2 to optimize those shifts such that the resulting solution is better or at least only slightly worse. We then iteratively try to keep parts of a solution that is then optimized and completed with the presented encoding. Whenever we obtain a new solution we keep parts of it for the next iteration, assuming the quality improved or only slightly worsened.

3 Lower Bounds

For any pair of polyhedra, a naïve lower bound on the optimal scale factor is immediate: every target edge needs to be covered by a source edge, thus OPTperimeter of target graphperimeter of source graph\text{OPT}\geq\tfrac{\text{perimeter of target graph}}{\text{perimeter of source graph}}. We significantly improve this lower bound with the following observations:

  • Each source vertex is mapped to either a vertex or a point along an edge of the target;

  • Each source edge is routed to a path in the target;

  • The scale factor is the maximum length of the routed target paths.

Let nsn_{s} be the number of vertices in the source graph, and let oto_{t} be the number of vertices of odd degree in the target. The following result forms the basis of our lower bounds:

Lemma 1.

Every target edge not containing a source vertex is either covered (1) by one or more paths going straight along the complete edge, or (2) by two doubling-back paths that meet at a point (doubling the entire target edge).

Proof.

If there is at least one path going straight along the complete edge, then it is never helpful to have a doubling-back path: such a doubling-back can be shortcut to just never enter the edge. ∎

We obtain the following based on doubly covering edges.

Lemma 2.

In any solution, at least otns2\frac{o_{t}-n_{s}}{2} target edges must be fully doubly covered. If at least one source vertex is placed in the middle of a target edge, this bound is strict.

Proof.

Locally at an odd-degree vertex vv of the target graph, if vv does not have a vertex of the source graph at it, then vv is visited by a sequence of paths that enter and leave. Because vv has odd degree, there must be a local doubling along an edge e={v,w}e=\{v,w\} incident to vv. If this doubling continues fully along the edge ee then we get one doubled edge for two (potentially) odd-degree vertices, matching the bound of ot/2o_{t}/2.

Now suppose the doubling does not continue fully along the edge ee. If there are no source vertices along edge ee then by Lemma 1, the edge has two meeting doubling paths, which doubles the entire edge, and again we are done. So suppose there is a source vertex ss along edge ee. If there are at least two outgoing paths in each direction from ss, then again, the edge is fully doubled, so ss provided no benefit. Otherwise, there is at most one outgoing path in some direction, say d{v,w}d\in\{v,w\}. Then dd locally acts the same as if ss were not there, so it must have an incident doubling not on the edge ee (i.e., not toward ss so the argument above applies. The other vertex {v,w}{d}\{v,w\}-\{d\} no longer necessarily has an incident wholly doubled edge, but this matches the “ns-n_{s}” in the bound. Note: if there are two source vertices along the same edge ee then both endpoints potentially have no incident wholly doubled edge. But this again matches the “ns-n_{s}” in the bound (there are two source vertices to charge to).

If at least one source vertex is in the middle of a target edge, then the above bound becomes strict. In this case, we get a doubled partial edge beyond the bound (on the side {v,w}{d}\{v,w\}-\{d\} so we have strictly more doubling and get a strictly large bound. ∎

This yields the following adapted lower bound.

Theorem 1 (Improved Lower Bound).

OPTperimeter of target graph+lengths of doubly covered target edgesperimeter of source graph.\text{OPT}\geq\tfrac{\text{perimeter of target graph}~+~\text{lengths of doubly covered target edges}}{\text{perimeter of source graph}}.

Table 2: Detailed computation of lower bounds as shown in Table 1, providing source vertices nsn_{s}, target odd-degree vertices oto_{t}, as well as the perimeter of source and target graph. The lower bound marked by an asterisk is subsumed by Theorem 2.
\Rsh Tetrahedron
(ot=4o_{t}=4, perim=t6{}_{t}=6)
Cube
(ot=8o_{t}=8, perim=t12{}_{t}=12)
Octahedron
(ot=0o_{t}=0, perim=t12{}_{t}=12)
Dodecahedron
(ot= 20o_{t}{\,=\,}20, perim=t 30{}_{t}{\,=\,}30)
Icosahedron
(ot= 12o_{t}{\,=\,}12, perim=t 30{}_{t}{\,=\,}30)
Tetrahedron
(ns=4n_{s}=4, perim=s6{}_{s}=6) 1 2+1/3=12+(84)/262+1/3=\frac{12+(8-4)/2}{6} >2=126>2=\frac{12}{6} 6+1/3=30+(204)/266+1/3=\frac{30+(20-4)/2}{6} >5+2/3=30+(124)/26>5+2/3{=}\frac{30+(12-4)/2}{6}
Cube (ns=8n_{s}=8, perim=s12{}_{s}=12) >1/2=6+(44)/212>1/2=\frac{6+(4-4)/2}{12} 1 >1=1212>1=\frac{12}{12} 3=30+(208)/2123=\frac{30+(20-8)/2}{12} >2+2/3=30+(128)/212>2+2/3{=}\frac{30+(12-8)/2}{12}
Octahedron (ns=6n_{s}=6, perim=s12{}_{s}=12) >1/2=612>1/2=\frac{6}{12} > 1+1/12=12+(86)/212{>\,}1+1/12{=}\frac{12+(8-6)/2}{12} 1 > 3+ 1/12=30+(206)/212{>\,}3{\,+\,}1/12{=}\frac{30+(20-6)/2}{12} >2+1/2=30+(126)/212>2+1/2{=}\frac{30+(12-6)/2}{12}
Dodecahedron (ns=20n_{s}=20, perim=s30{}_{s}=30) >1/5=630>1/5=\frac{6}{30} >2/5=1230>2/5=\frac{12}{30} >2/5=1230>2/5=\frac{12}{30} 1 >1=3030>1=\frac{30}{30}
Icosahedron (ns=12n_{s}=12, perim=s30{}_{s}=30) >1/5=630>1/5=\frac{6}{30} >2/5=1230>2/5=\frac{12}{30}\ast >2/5=1230>2/5=\frac{12}{30} > 1+ 2/15=30+(2012)/230{>\,}1{\,+\,}2/15{=}\frac{30+(20-12)/2}{30} 1

Table 2 details computation steps to obtain the lower bounds given in Table 1. Bounds are strict according to Lemma 2 and by the observation that mapping between vertices of different degrees (or from larger to smaller degree vertices) causes doubly covered edge parts. If mapping from icosahedron to cube, we obtain the following stronger lower bound.

Refer to caption
Figure 3: (Left): Icosahedron, where the four edges (dotted) highlighted in blue, are contracted. (Right): Resulting cube with additional diagonal edges (dashed). Two vertices are of degree 66 and the remaining 66 vertices have degree 44.
Theorem 2.

There cannot exist an isometric covering from icosahedron to cube.

Proof.

By contracting four edges (highlighted in color in Figure 3 (left)), we obtain a cube (right) with additional diagonals. By contracting edges, we simplified the source linkage by assigning certain source vertices to the same position. Therefore, lower bounds are preserved using the simplified source. Note that a cube without diagonals can never provide the same connectivity as a cube. Therefore, we need additional scaling, as certain edges of the source linkage can never be represented in the target linkage via an isometric covering. ∎

4 Hardness and Inapproximability

We show that deciding if one embedded (planar) graph can be mapped onto another via folding is NP-complete. Further deciding the scale factor needed to allow one planar graph to be mapped onto another cannot be approximated within a factor of 1.5ε1.5-\varepsilon for any constant ε\varepsilon.

Refer to caption
Figure 4: Proof sketch of our reduction from Planar Set Cover to IsoCovering.
Theorem 3 (Inapproximability).

Given two metric planar graphs G1G_{1}, G2G_{2} and scale factor α\alpha, deciding whether G1G_{1} can be folded onto G2G_{2} via an isometric covering (scale factor 11) is NP-complete. Further, the optimal scale factor OPT of mapping G1G_{1} onto G2G_{2} is NP-hard to approximate within a factor of <1.5<1.5.

Proof.

Membership immediately follows from utilizing an ILP that is presented in Section 2.1.2.

For hardness, we reduce from Planar Set Cover with sets of size exactly 3 [8]. Here we are given a set of elements XX and a collection CC of mm sets of three elements of XX. Further, if one constructs the bipartite graph with notes for elements of CC and XX and edges when xcx\in c, then that graph is planar. The question is whether there is a subset CCC^{\prime}\subset C of size kk such that each element of XX is contained in CC^{\prime}.

In this construction, which is sketched in Figure 4, all edges are of length 1. For the target graph first construct a top node and one node for each set cc and connect them to the root. Also connect a>4|C|a>4|C| nodes to the root, which will help anchor the root node in the construction. Then, we construct a node for each element xx and connect it to the nodes representing sets containing that element. Finally, off of each xx, add an additional degree-1 node connected to it. This has a total of |C|+2|X|+1+a|C|+2|X|+1+a nodes and 4|C|+|X|+a4|C|+|X|+a edges.

The initial graph is a tree. The root node has a+|C|a+|C| children. Of these aa children will be leaf nodes. Then kk children will each be connected to three length 2 paths which will be the intended to be used to solve the set cover of size kk. The other |C|k|C|-k children will be connected to 33 leaves and be used to cover the edges in the unused sets. This graph has 4|C|+k+1+a4|C|+k+1+a nodes and 4|C|+k+a4|C|+k+a edges.

In this construction, due to the aa leave nodes, a valid solution must map the root node to the top node.

If there is a valid solution to the set cover, take the kk subtrees of depth 3 and map them to the sets in the set cover solution. This will allow the kk paths of length 2 to cover the element nodes and their leaves. Next, use the remaining subtrees to cover all the unchosen set nodes and the edges of their elements.

If a solution to the set cover does not exist we will show there is no solution to the graph folding problem. First, note that all of the element leaves in the target are distance three from the top node and that these leaves are distance 4 from each other. Thus we know the leaves of the kk subtrees of depth 3 must be used to cover the leaves of the element nodes. These subtrees are distance 1 from the root and thus must either be mapped to the aa nodes (which then prevents them from covering element leaves) or to set nodes. The element leaves in a set are of distance 2 from the node containing them and thus can be covered by the leaves of a subtree mapped to that set node. However, all leaves of the elements not contained in that set are of distance at least 4 and thus cannot be covered. Thus, if there is no set cover of size kk, some of the element leaves will be impossible to cover in the graph folding. ∎

For establishing also membership in NP, we rely on the insights from the next section.

5 The Optimum is Rational

It turns out that the best scale factor is guaranteed to be rational, which we prove as follows.

Theorem 4.

Given graphs G1G_{1} and G2G_{2}, the optimal scale α\alpha such that G1G_{1} can be folded onto G2G_{2} via isometric covering is rational.

Proof.

We will prove the result by designing an ILP, where we can compute all (exponential) possibilities for binary variable assignments. After assigning these integer variables, we invoke the remaining LP. This LP only has rational coefficients, so the optimal solution will be rational [1, 9, 2]. Consequently, optimal scale factors are rational.

Recall the ILP encoding from Section 2.1.2, as well as scale factor upper bound α\alpha, source graph SS, target graph DD and DD^{\prime} that is obtained from DD after subdividing. After fixing integer variables, the following variables remain:

directed flow fs,x,y0\displaystyle f_{s,x,y}\geq 0 for every sE(S),{x,y}E(D)\displaystyle\text{for every }s\in E(S),\{x,y\}\in E(D^{\prime})
aux position an:[0,1]\displaystyle a_{n}:[0,1] for every nV(D)\displaystyle\text{for every }n\in V(D^{\prime})
directed edge length ls,x,y:[0,1]\displaystyle l_{s,x,y}:[0,1] for every sE(S),{x,y}E(D)\displaystyle\text{for every }s\in E(S),\{x,y\}\in E(D^{\prime})
objective o0\displaystyle o\geq 0

Then, if some of the constraints containing integer variables are not satisfied, we can stop. For the remainder, we are left with the following non-integer constraints, constructed for every sE(S)s\in E(S), as the remaining integer variables are fixed constants:

edge/length rel. ls,x,yes,x,y\displaystyle l_{s,x,y}\leq e_{s,x,y} for {x,y}E(D)\displaystyle\text{for }\{x,y\}\in E(D^{\prime})
ls,x,yayaxls,y,xayax\displaystyle l_{s,x,y}\leq a_{y}-a_{x}\quad l_{s,y,x}\leq a_{y}-a_{x}\hskip-6.37509pt for x,yV(D),xy\displaystyle\text{for }x,y\in V(D^{\prime}),x\prec y
ayax\displaystyle a_{y}\geq a_{x}
ls,x,yay+axes,x,y1\displaystyle l_{s,x,y}-a_{y}+a_{x}\geq e_{s,x,y}-1
ls,y,xay+axes,y,x1\displaystyle l_{s,y,x}-a_{y}+a_{x}\geq e_{s,y,x}-1
ax=0,ay=1\displaystyle a_{x}=0,a_{y}=1 for (x,y)E(D)\displaystyle\text{for }(x,y)\in E(D)
demand 1\displaystyle\geq\text{demand }1 Σxngbs(n)fs,x,nΣxngbs(n)fs,n,x+\displaystyle\Sigma_{x\in ngbs(n)}f_{s,x,n}-\Sigma_{x\in ngbs(n)}f_{s,n,x}+\hskip-6.37509pt for s=(u,),nV(D)\displaystyle\text{for }s=(u,\cdot),n\in V(D^{\prime})
αmu,nrs,n\displaystyle\qquad\qquad\qquad\quad\alpha\cdot m_{u,n}\geq r_{s,n}\hskip-6.37509pt
lengths o\displaystyle\text{lengths }\leq o Σ{x,y}E(D)ls,x,yo\displaystyle\Sigma_{\{x,y\}\in E(D^{\prime})}l_{s,x,y}\leq o
min(o)\displaystyle\min(o)

The LP, which can be solved in polynomial time [1, 9], correctly characterizes the optimal scale factor oo. ∎

5.1 Complexity Consequences

This insight results in NP membership for verifying a given scale factor.

Corollary 1.

Given two graphs G1G_{1}, G2G_{2}, and a scale factor α\alpha, deciding whether G1G_{1} scaled by α\alpha can be folded onto G2G_{2} via an isometric covering is in NP.

Proof.

The NP algorithm is given in the proof of Theorem 4. ∎

Therefore we can use binary search with logarithmic many calls to an NP oracle to compute the optimum. Verifying the optimality of a given scale factor α\alpha is complete for complexity class DP={abaNP,bcoNP}\text{DP}=\{a\cap b\mid a\in\text{NP},b\in\text{coNP}\}.

Theorem 5.

Given graphs G1G_{1}, G2G_{2}, and a scale factor α\alpha, it is DP-complete to decide whether α\alpha is the smallest scale factor to enable isometric covering of folding G1G_{1} onto G2G_{2}.

Proof.

Verifying that α\alpha is a valid scale factor is in NP by Corollary 1. Deciding whether there is a strictly smaller scale factor α<α\alpha^{\prime}<\alpha is in NP, so verifying the nonexistence of such a scale factor is in coNP. Because both can be verified independently, the problem is in DP.

Hardness follows by applying the construction of Theorem 3 two times. We reduce from a tuple (P,P)(P,P^{\prime}) comprising the NP-hard problem Planar Set Cover PP and the coNP-hard coproblem Planar Set Uncover PP^{\prime}. For PP^{\prime}, we use the same approach as in Figure 4, where we have a scale factor α1.5\alpha^{\prime}\geq 1.5 in case PP^{\prime} is a no-instance. For PP, we still use this approach, but with a different large-degree 2a2a (to distinguish PP from PP^{\prime}) and where we replace every edge of the source tree by a path comprising 33 edges and every edge of the target tree by a path of 44 edges.

Consequently, the ideal scale factor α\alpha for PP (if it is a yes instance) would be α=431.333\alpha=\frac{4}{3}\approx 1.333 instead of 11. Otherwise (in case of a no-instance), the scale would be 1.543=21.5\cdot\frac{4}{3}=2, which is, however, larger than 1.51.5. As a result, if we manage a combined scale factor of max{α,α}=1.5\max\{\alpha,\alpha^{\prime}\}=1.5, we know that PP is a yes-instance (as the factor is smaller than 22). Further, if we do not manage combined scale factor <1.5<1.5, PP^{\prime} is a no-instance (as desired). ∎

6 Open Problems

The next steps include tightening the bounds in Table 1 and developing heuristics for folding general polyhedra. We would also like to strengthen the hardness proof to apply to polyhedral graphs, which requires more connectivity than our current construction. Finally, it would be interesting to develop solutions that permit continuous folding motions, which are required in the case of rigid polyhedral linkages.

References

  • [1] B. Aspvall and R. E. Stone. Khachiyan’s Linear Programming Algorithm. J. Algorithms, 1(1):1–13, 1980.
  • [2] Dandelion. Linear programming restricted to rational coefficients. https://cs.stackexchange.com/questions/82086/linear-programming-restricted-to-rational-coefficients, 2019 (accessed Nov 03, 2024).
  • [3] E. D. Demaine and J. O’Rourke. Geometric folding algorithms - linkages, origami, polyhedra. Cambridge University Press, 2007.
  • [4] E. D. Demaine and J. O’Rourke. Geometric Folding Algorithms: Linkages, Origami, Polyhedra. Cambridge University Press, 2007.
  • [5] J. Edmonds and E. L. Johnson. Matching, Euler tours and the Chinese postman. Math. Program., 5(1):88–124, 1973.
  • [6] J. K. Fichte, D. L. Berre, M. Hecher, and S. Szeider. The Silent (R)evolution of SAT. Commun. ACM, 66(6):64–72, 2023.
  • [7] M. Gebser, R. Kaminski, B. Kaufmann, and T. Schaub. Multi-shot ASP solving with clingo. Theory Pract. Log. Program., 19(1):27–82, 2019.
  • [8] D. Lichtenstein. Planar formulae and their uses. SIAM journal on computing, 11(2):329–343, 1982.
  • [9] N. Megiddo. Towards a Genuinely Polynomial Algorithm for Linear Programming. SIAM J. Comput., 12(2):347–353, 1983.