0% found this document useful (0 votes)
101 views7 pages

Platonic Solids: No Overlapping Unfolds

This document summarizes a research paper that investigates whether edge unfoldings of Platonic solids (regular convex polyhedra) can overlap. The paper finds that while general unfoldings of some Platonic solids can overlap, edge unfoldings never overlap. It enumerates all 43,380 edge unfoldings of dodecahedrons and icosahedrons using binary decision diagrams and checks that the circumscribed circles of non-neighboring faces never overlap, proving edge unfoldings are always non-overlapping. The paper also finds overlapping unfoldings for some Archimedean solids.

Uploaded by

Joy Reynon
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
101 views7 pages

Platonic Solids: No Overlapping Unfolds

This document summarizes a research paper that investigates whether edge unfoldings of Platonic solids (regular convex polyhedra) can overlap. The paper finds that while general unfoldings of some Platonic solids can overlap, edge unfoldings never overlap. It enumerates all 43,380 edge unfoldings of dodecahedrons and icosahedrons using binary decision diagrams and checks that the circumscribed circles of non-neighboring faces never overlap, proving edge unfoldings are always non-overlapping. The paper also finds overlapping unfoldings for some Archimedean solids.

Uploaded by

Joy Reynon
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/220991040

Edge Unfoldings of Platonic Solids Never Overlap.

Conference Paper · January 2011


Source: DBLP

CITATIONS READS
13 548

2 authors, including:

Takashi Horiyama
Hokkaido University
96 PUBLICATIONS 392 CITATIONS

SEE PROFILE

All content following this page was uploaded by Takashi Horiyama on 05 June 2014.

The user has requested enhancement of the downloaded file.


CCCG 2011, Toronto ON, August 10–12, 2011

Edge Unfoldings of Platonic Solids Never Overlap


Takashi Horiyama∗ Wataru Shoji∗

Abstract

Is every edge unfolding of every Platonic solid overlap- a


a
free? The answer is yes. In other words, if we develop
a Platonic solid by cutting along its edges, we always
obtain a flat nonoverlapping simple polygon. (a) (b) (c) (d)
We also give self-overlapping general unfoldings of
Platonic solids other than the tetrahedron (i.e., a cube, Figure 1: Overlapping general unfoldings of a cube.
an octahedron, a dodecahedron, and an icosahedron),
and edge unfoldings of some Archimedean solids: a a
a a a
truncated icosahedron, a truncated dodecahedron, a a
a
rhombicosidodecahedron, and a truncated icosidodec-
ahedron.
(a) (b) (c)
1 Introduction Figure 2: Overlapping general unfoldings of an octahe-
dron, a dodecahedron, and an icosahedron.
“Does every convex polyhedron have a nonoverlapping
edge unfolding?” An unfolding (also called a general
unfolding) of a polyhedron is a simple polygon obtained In this paper, we consider the problem from another
by cutting the surface of the polyhedron and unfold- point of view. What happens if our polyhedron is more
ing it into a plane. For an edge unfolding, only cutting restricted and has a regular structure? “Are there any
along the edges is allowed. The origin of unfoldings of a overlapping general unfoldings for Platonic solids?” Al-
polyhedron goes back to the 16th century: In 1525, Al- though this seems to be a naı̈ve question at a first glance,
brecht Dürer, a painter and a mathematician, published we have the following two interesting observations with
a book entitled “Unterweysung der Messung mit dem slightly relaxed conditions.
Zirkel un Richtscheyt in Linien Ebnen uhnd Gantzen First, let us consider the case with general unfold-
Corporen” [11]. In this book, he gave edge unfoldings ing. As for a tetrahedron, any unfolding is a funda-
of Platonic solids (also called regular convex polyhedra) mental domain of tiling [2], i.e., any unfolding can tile
and Archimedean solids (also called semi-regular convex the plane. This statement implicitly says that any gen-
polyhedra). There is no evidence that Dürer was aware eral unfolding never overlaps. Surprisingly, for other
of the question, but he seems to have some insight to the Platonic solids, we found overlapping unfoldings: Fig-
question based on his unfoldings [10]. The first explicit ures 1 (a) and (b) are unfoldings of a cube that overlap
statement was given by Shephard in 1975 [25]. in a point and a line, respectively. If we cut along the
Although it was believed that every edge unfolding of dotted line in Figure 1 (c), and glue the edges labeled
a convex polyhedron never overlaps, some unfortunate a, we obtain an overlapping unfolding in Figure 1 (d).
cut may lead to overlapping unfoldings [9, 10, 20, 22]. (Gray hatch indicates the overlap.) We can find similar
If we relax the restriction of convexity, there exist non- overlapping unfoldings for an octahedron, a dodecahe-
convex polyhedra whose every edge unfolding is self- dron, and an icosahedron, respectively, in Figure 2.
overlapping [4, 12]. If we allow general unfolding, there Next, let us consider the case with Archimedean
are two techniques for unfolding any convex polyhedron solids. It is known that a snub dodecahedron has an
to a simple polygon [3, 21, 24], i.e., any convex poly- overlapping edge unfolding [9]. We also found overlap-
hedron has at least one general unfolding. In [23], the ping edge unfoldings of a truncated icosahedron, a trun-
probability of overlap is investigated for a random un- cated dodecahedron, a rhombicosidodecahedron, and a
folding of a random polyhedron constructed using ran- truncated icosidodecahedron. By cutting along the bold
dom points on a sphere. lines of the polyhedra in Figure 3, we obtain their over-
∗ Graduate School of Science and Engineering, Saitama lapping edge unfoldings.
University, [email protected], s10mm309@mail As a result of the above observations, we will focus on
.saitama-u.ac.jp. the case for edge unfoldings: “Is every edge unfolding
23rd Canadian Conference on Computational Geometry, 2011

of every Platonic solid overlap-free?” In other words,


“Are there any overlapping edge unfoldings for Platonic
solids?” As for a tetrahedron, a cube, and an octa-
hedron, they have 2, 11, and 11 edge unfoldings [15],
respectively, and we can check all of them are overlap-
free by drawing them one by one. For a long time, it
was believed that the same situation holds for a dodeca-
hedron and an icosahedron. We solve this problem and
say that it is correct. (a) (b) (c) (d)

Theorem 1 (Main result) If we unfold a Platonic Figure 3: Overlapping unfoldings of a truncated icosa-
solid by cutting along its edges, we always obtain a flat hedron, a truncated dodecahedron, a rhombicosidodec-
nonoverlapping simple polygon. ahedron, and a truncated icosidodecahedron.

We solve the problem by enumerating all edge unfold-


ings, and check whether they are overlapping or not. It sink nodes 0 and 1, called the 0-node and the 1-node,
is known that a dodecahedron and an icosahedron have respectively (which are together called the constant
43,380 edge unfoldings [6, 13]. Note that they are dual nodes). Other nodes are called variable nodes, and
to each other. Our contribution is to strengthen this each variable node v is labeled by one of the variables
result by making a catalogue of edge unfoldings for Pla- x1 , x2 , . . . , xn . Let var (v) denote the label of node v.
tonic solids. For each pair of non-neighboring faces in Each variable node has exactly two outgoing edges,
the unfoldings, we check whether their circumscribed called 0-edge and 1-edge, respectively. One of the vari-
circles overlap or not. Since there are no overlap, we able nodes becomes the unique source node, which is
confirm the claim that has been believed for a long time. called the root node. Let X = {x1 , x2 , . . . , xn } de-
Our contribution also includes a proposal of enumera- note the set of n variables. A variable ordering is a to-
tion algorithms by binary decision diagrams (BDDs) [1, tal ordering (xπ(n) , xπ(n−1) , . . . , xπ(1) ), associated with
7] for solving problems in computational geometry. A each BDD, where π is a permutation {1, 2, . . . , n} →
BDD is a directed acyclic graph representing a Boolean {1, 2, . . . , n}. The level of a variable xπ(i) is defined to
function, and can be considered as a variant of a deci- be i. Similarly, the level of a node v is defined by its
sion tree. By restricting the order of variable appear- label; if node v has label xπ(i) , its level is defined to
ance and by sharing isomorphic subgraphs, BDDs have be i. That is, the root node is in level n and has label
the following useful properties: (1) When an ordering xπ(n) , the nodes in level n − 1 have label xπ(n−1) and so
of variables is specified, a BDD has the unique reduced on. The level of the constant nodes is defined to be 0.
canonical form for each Boolean function. (2) Many On every path from the root node to a constant node
Boolean functions appearing in practice can be com- in an BDD, each variable appears at most once in the
pactly represented. (3) When a BDD is given, satisfia- decreasing order of their levels. The size of a BDD is
bility and tautology of the represented function can be the number of nodes in it.
easily checked in constant time. (4) There are efficient Every node v of a BDD represents a Boolean function
algorithms for many other Boolean operations on BDDs. fv , defined by the subgraph consisting of those edges
As a result of these properties, BDDs (and its variants) and nodes reachable from v. If node v is a constant
are used for various practical applications, especially in node, fv equals to its label. If node v is a variable
computer-aided design and verification of digital sys- node, fv is defined as var (v)f0-succ(v) ∨ var (v)f1-succ(v)
tems (see e.g., [8, 17, 26]). Recently, BDDs are widely by Shannon’s expansion, where 0-succ(v) and 1-succ(v),
used in various fields (see e.g., [14, 19]). Knuth devoted respectively, denote the nodes pointed by the 0-edge and
notable space in “The Art of Computer Programming” the 1-edge from node v. The function f represented by
with BDDs [16]. BDDs are regarded as a succinct data a BDD is the one represented by the root node. When
structure with efficient manipulation algorithms. two nodes u and v in a BDD represent the same func-
The rest of this paper is organized as follows. The tion, and their levels are the same, they are called equiv-
next section gives fundamental concepts on BDDs. We alent. A node whose 0-edge and 1-edge both point to
propose algorithms for enumerating edge unfoldings and the same node is called redundant. A BDD which has
checking whether they are overlap-free or not in Sec- no mutually equivalent nodes and no redundant nodes
tion 3, and their results are given in Sections 4. is reduced. In the following, we assume that all BDDs
are reduced.
2 Binary Decision Diagrams An assignment to variables in X can be regarded as
a subset S ⊆ X, and a Boolean function f can be re-
A binary decision diagram (BDD) is a directed acyclic garded as a family F ⊆ 2X . For example, an assign-
graph that represents a Boolean function. It has two ment (x3 , x2 , x1 ) = (1, 1, 0) can be regarded as a set
CCCG 2011, Toronto ON, August 10–12, 2011

{x3 , x2 }, and x1 (x2 x3 ∨ x2 x3 ) can be regarded as a fam-


ily {{x2 , x1 }, {x3 , x1 }}. By using BDDs for represent-
ing families of a set, we can use Boolean operations on
BDDs as a family algebra (see e.g., [16]), or set opera-
tions. Later in this paper, we identify a Boolean func-
tion with its corresponding family F , unless confusion
arises.
For solving a constraint satisfaction problem, all we
have to do is to interpret the restrictions of the problem Figure 4: A BDD representing that exactly 3 out of 6
as a form of Boolean functions, and represent them by variables are 1’s.
BDDs. By applying AND operation to the BDDs, we
can obtain the BDD representing the solutions satisfy-
Similarly, the four columns in Figure 4 represent that
ing all of the restrictions. Once such BDD is obtained,
we have received no 1’s, one 1, two 1’s, and three 1’s,
paths from the root node to the 1-node correspond to
respectively. We call this BDD construction procedure
satisfying assignments for its function. Thus, we can
as Choose(n − 1, m).
enumerate all solutions by traversing the BDD.
As for Condition (2), we first construct a BDD for a
set of cycles, and then construct a BDD for prohibiting
3 Algorithms for Enumerating and Checking Edge cycles. For constructing a BDD for cycles, we begin a
Unfoldings set of edges in a face. Then, we repeat adding a new
face and constructing cycle with the edges of the face.
By the following three steps, we enumerate edge un-
Figure 5 is the detail of this idea, and Figure 6 illustrates
foldings of Platonic solids and check whether they are
the first three iterations of Step 2.
overlap-free: (1) We represent the constraints for edge
In Procedure EnumerateCycles, we use fcycle to de-
unfoldings as BDDs. (2) We eliminate mutually equiva-
note the obtained set of cycles. In Step 1, fcycle is set
lent unfoldings. (3) We check whether they are overlap-
to be empty. In the first iteration of Step 2, we pick
free or not. We propose algorithms for these subprob-
face F1 , and add a cycle with its edges. (The cycle is
lems, which are applicable to any of the Platonic solids.
illustrated with a bold line in Figure 6 (a).) The cycle
Later in this paper, we denote n and m as the number
(more precisely, the set of edges in the cycle) is set to f1 .
of vertices and edges of a Platonic solid, respectively.
f2 is empty since fcycle is empty. Now, the family fcycle
contains the cycle of face F1 . In the second iteration,
3.1 Enumeration of Edge Unfoldings
we pick face F2 , and its corresponding cycle is set to f1
We start with the following lemma that gives a good (see Figure 6 (b)). By combining the edges of F2 with
insight for edge unfoldings. the already obtained cycle (the cycle in Figure 6 (a)),
we can obtain a new cycle (i.e., the cycle contains the
Lemma 2 (See [10, Lemma 22.1.1]) The cut edges edges of F1 and F2 ). More precisely, if edge xj of F2
of an edge unfolding of a convex polyhedron form a span- is not in the already obtained cycle, the edge exists in
ning tree of the 1-skeleton (i.e., the graph formed by the the new cycle. Otherwise, the edge does not exist in the
vertices and the edges) of the polyhedron. new cycle. By adding the above two cycles, fcycle be-
This lemma implies two characterizations of edge un- comes a family of the cycles in Figures 6 (a) and (b). In
foldings, and we propose two algorithms according to the following iterations, Step 2-2 combines the edges of
these characterizations. The first characterization is Fi with already obtained cycles. (Although fcycle may
that a set S of cut edges gives an edge unfolding if and contain a set of edges that consists of two (or more)
only if (1) S consists of exactly n − 1 edges and (2) no cycles, there is no influence on the next procedure, i.e.,
edges in S form a cycle. For interpreting these con- the construction of a BDD for prohibiting cycles.) In
straints as Boolean functions, we use m Boolean vari- Step 3, we omit an empty set of edges from fcycle V . Note
ables x1 , x2 , . . . , xm representing whether edges are cut that the empty set is obtained as fempty := xj ∈X xj
or not: xi = 1 if its corresponding edge ei is cut, other- and the set difference is obtained by fcycle ∧ fempty .
wise xi = 0. Now, we have a family of cycles and will construct a
Condition (1) is represented as a Boolean function BDD for prohibiting cycles. The complement of fcycle
that outputs 1 if and only if exactly n − 1 out of m vari- is not sufficient for this task. We should prohibit a
ables are 1’s. Such function is one of symmetric func- set S (⊆ X) of edges if S is in the monotone exten-
tions, whose BDD is of size O(m2 ) [16]. Figure 4 shows sion [5] of fcycle , where the monotone extension of a
a BDD of a function that outputs 1 if and only if 3 out family F of sets is a family { T | there exists a set T ′ ∈
of 6 variables are 1’s. The left-most column of the vari- F satisfying T ′ ⊆ T }. Procedure MonotoneExten-
able nodes implies that no 1’s have been received yet. sion in Figure 7 construct a BDD of the monotone
23rd Canadian Conference on Computational Geometry, 2011

Procedure EnumerateCycles Procedure MonotoneExtension


Input: A Polyhedron. Input: A BDD G representing f . (v is the
Output: A BDD representing a family of root node of G.)
cycles in the give Polyhedron. Output: A BDD representing the monotone
extension of f .
Step 1 (initialize). fcycle := 0.
Step 2 (iterate). For each face Fi , apply Step 1 (termination). If f = 0 or f = 1,
Steps 2-1, 2-2, and 2-3, where Fi has a return G.
set of edges Ei = {xi1 , xi2 , . . . , xik }. Step 2 (recursion). Let G0 and G1 be the
Step 2-1.
V ConstructVa BDD of BDDs whose root nodes are 0-succ(v)
f1 := ( xj ∈Ei xj ) ∧ ( xj ∈X\Ei xj ). and 1-succ(v), respectively. Construct
Step 2-2. Construct a BDD of f2 which is BDDs Gm0 and Gm1 of
obtained from the BDD of fcycle by ex- fm0 := MonotoneExtension(G0 ) and
changing the roles of 0-edges and 1-edges fm1 := MonotoneExtension(G1 ).
of the variable nodes labeled by xj ∈ Ei . Step 3 (construction). Construct a BDD
Step 2-3. Construct a BDD of Gm∗ of fm∗ := fm0 ∨ fm1 . Then, con-
fcycle := fcycle ∨ f1 ∨ f2 . struct a BDD Gm whose root node vm is
Step 3. W Construct a BDD of labeled by the same variable with node
fcycle ∧ ( xj ∈X xj ), and output it. v, 0-succ(vm ) and 1-succ(vm ) are the
root nodes of Gm0 and Gm∗ , respec-
tively. Output Gm .
Figure 5: Procedure EnumerateCycles to construct a
BDD representing the set of cycles in a polyhedron.
Figure 7: Procedure MonotoneExtension to construct a
BDD representing the monotone extension of f .

cedure Choose, we can obtain the BDD representing a


family of edge unfoldings: funfolding := Choose(n−1, m)
∧ EnumerateConnected. We call this Algorithm 1-2.
The algorithms 1-1 and 1-2 enumerate sets of cut
edges. In this family, different sets of cut edges may give
the same edge unfolding. We omit mutually isomorphic
edge unfoldings by the lexicographic order. For exam-
ple, the two sets of cut edges in Figure 8 give the same
edge unfolding. The sets of cut edges in Figure 8 are
Figure 6: Example of the execution of Step 2 in Proce- represented by assignments (a) 101101001011 and (b)
dure EnumerateCycles. 110100101101, respectively, where the most significant
(i.e., left most) bit corresponds to x12 and the least sig-
extension of a given BDD. By combining the above nificant (i.e., right most) bit corresponds to x1 . As (b)
procedures, we can obtain the BDD representing a is lexicographically larger than (a), we omit (a). We can
family of edge unfoldings: funfolding := Choose(n − implement this process by manipulating BDDs.
1, m) ∧ MonotoneExtension(EnumerateCycles), i.e., a
set difference Choose(n − 1, m) \ MonotoneExtension 3.2 Overlapping Check of Edge Unfoldings
(EnumerateCycles). We call this Algorithm 1-1. Now, we have a family of edge unfoldings. All we have
Another characterization of edge unfoldings by to do is to check whether each of them is overlapping-
Lemma 2 is as follows: A set S of cut edges leads to free or not. As for a tetrahedron, a cube, an octahedron,
an edge unfolding if and only if (1) S consists of exactly
n − 1 edges and (2) all vertices are connected by the
edges in S. Condition (2) is obtained by a small mod-
ification of the procedure for constructing a BDD of
Hamiltonian cycles for traveling salesman problem [18].
We do not use the restriction that every vertex has ex-
actly two edges, but use the restriction that every vertex Figure 9: Neighbor-
has at least one edge. We call this Procedure Enumer- Figure 8: Isomorphic edge un-
ing faces.
ateConnected. By combining this procedure with Pro- foldings.
CCCG 2011, Toronto ON, August 10–12, 2011

and an icosahedron, the faces are equilateral triangles


Table 1: Comparison between Algorithms 1-1 and 1-2.
or squares. Thus, we can place all faces of their edge un-
foldings on an equilateral triangular lattice or a square Algorithm 1-1 Algorithm 1-2
lattice. Unfortunately, the faces of a dodecahedron are
pentagons, which cannot make a lattice. In this paper, #unfoldings Time #unfoldings Time
(sec) (sec)
we propose an algorithm that can be applied to any Tetrahedron 16 0.01 16 0.01
Platonic solid.
Cube 384 0.01 384 0.01
Given a set of cut edges, we can obtain the x- Octahedron 384 0.01 384 0.01
y coordinates for the centers of the faces. For
Dodecahedron 5,184,000 0.01 5,184,000 0.61
example, an unfolding of a cube has the cen-
Icosahedron 5,184,000 0.02 5,184,000 2.91
ters on (0, 0), (a cos( 32 π), a sin( 23 π)), (a cos 0, a sin 0),
(a cos 0 + a cos( 12 π), a sin 0 + a sin( 12 π)), (2a cos 0,
2a sin 0), (a cos π, a sin π), where a is a distance between
the centers of two neighboring faces. That is, a =
nf −2
2 sin 2n f
π holds, where nf is the number of vertices
in a face. We assume that the circumscribed circle of a
face has radius 1. We check where the distances between
any two centers are larger than a by Mathematica. Figure 10: Partial list of edge unfoldings of a dodecahe-
For any pair of faces, we check whether their circum- dron and an icosahedron.
scribed circles overlap or not. We do not apply this
check to neighboring faces. We call this Algorithm 3.
We emphasize here that two faces may not overlap even in total. This is why the computation time grows so
if their circumscribed circles overlaps. Nevertheless, as quickly for Algorithm 1-2. By omitting mutually iso-
shown in the next section, there exist no overlapping morphic edge unfoldings, we obtain 2 unfoldings for a
circumscribed circles for any pair of the faces. In other tetrahedron, 11 unfoldings for a cube and an octahe-
words, there are no overlapping faces except for neigh- dron, and 43,380 unfoldings for a dodecahedron and an
boring ones. icosahedron, respectively. Figure 10 is a partial list of
Figure 9 illustrates that edges e2 , e3 and e6 meet on enumerated edge unfoldings of a dodecahedron and an
a vertex in the original Platonic solid, and that x3 = icosahedron.
x6 = 1 (i.e., e3 and e6 are cut edges) and x2 = 0 (i.e., Table 2 gives the total and average computation time
e2 is not a cut edge). If a vertex has k cut edges, its of Algorithm 3. The average means the average com-
surrounding faces are separated into k − 1 sets. (Recall putation time for an edge unfolding. For each edge un-
that we have at least one cut edge for every vertex.) folding, we have O(F 2 ) pairs of faces to check whether
The faces in Figure 9 are separated into {F1 , F2 } and they overlap or not, where F is the number of faces.
{F3 }. If two faces are in the same set, they are called The results on average computation time are almost
neighboring. In case k = 1, the surrounding faces are in same among all Platonic solids. Algorithm 3 says that,
a set, and thus, any two faces of the set are neighboring. in any edge unfolding, there is no pair of faces (ex-
cept for neighboring faces) that have overlapping cir-
4 Experimental Results cumscribed circles. In other words, edge unfoldings of
Platonic solids are simple and nonoverlapping. The list
We implemented the algorithms in Section 3 in pro- of all cut-edges for Platonic solids, their corresponding
gramming language C. Table 1 gives a comparison be- sets of inequalities in Mathematica format, and a cat-
tween Algorithms 1-1 and 1-2. The computation time is alogue for edge unfoldings of Platonic solids are shown
measured on Intel(R) Core(TM) 2 Duo E7300 2.66GHz, in http://www.al.ics.saitama-u.ac.jp/horiyama/
2GB memory, Ubuntu 10.04. Both algorithms give the research/unfolding/.
same number of edge unfoldings: A cube and an octahe-
dron have 384 edge unfoldings, which corresponds to the 5 Conclusions
counting result in [15]. A dodecahedron and an icosahe-
dron have 5,184,000 edge unfoldings, which corresponds We have proposed algorithms making use of BDDs for
to the counting result in [13]. Algorithm 1-1 runs faster enumeration of edge unfoldings, and made a catalogue
than Algorithm 1-2, while both give the same number of edge unfoldings for Platonic solids. We furthermore
of unfoldings. proved that no edge unfolding of a Platonic solid over-
In Algorithm 1-2, we update the BDDs of F1 , . . . , Fn laps. Our algorithms are applicable to Archimedean
for n − 1 times, and each update of Fi requires n − 1 OR solids. It is also interesting to use ZDDs [16, 17] since
operations. Thus, O(n3 ) OR operations are required it is also suitable for handling sets and families. We
23rd Canadian Conference on Computational Geometry, 2011

[12] B. Grünbaum, Are your polyhedra the same as my


Table 2: Computation Time for Algorithm 3.
polyhedra?, In B. Aronov, et al. (eds.), Discrete
Total Time Average Time and Computational Geometry: The Goodman-
Pollack Festschrift, 461–488, Springer, 2003.
Tetrahedron 0.51s 0.25s
Cube 2.70s 0.25s [13] C. Hippenmeyer, Die Anzahl der inkongruenten
Octahedron 2.67s 0.24s ebenen Netze eines regulären Ikosaeders, Elem.
Dodecahedron 198m 39.16s 0.27s Math., 34:61–63, 1979.
Icosahedron 200m 55.15s 0.28s
[14] T. Horiyama and T. Ibaraki, Reasoning with or-
dered binary decision diagrams, Proc. ISAAC,
LNCS 1969, 120–131, 2000.
also emphasize here that our approach for making use
[15] M. Jeger, Über die Anzahl der inkongruenten ebe-
of BDDs is applicable to many other problems in com-
nen Netze des Würfels und des regulären Oktaed-
putational geometry.
ers, Elemente der Mathematik, 30:73–83, 1975.

References [16] D. E. Knuth, The art of computer programming,


vol. 4, fascicle 1, Bitwise tricks & techniques, Bi-
[1] S. B. Akers, Binary decision diagrams, IEEE nary decision diagrams, Addison-Wesley, 2009.
Trans. Com., C-27:509–516, 1978.
[17] S. Minato, “Zero-Suppressed BDDs for Set Manip-
[2] J. Akiyama, Tile-Makers and Semi-Tile-Makers, ulation in Combinatorial Problems,” Proc. DAC,
Math. Assoc. America, 114:602–609, 2007. 272–277, 1993.

[3] B. Aronov and J. O’Rourke, Nonoverlap of the star [18] S. Minato, Arithmetic Boolean expression manip-
unfolding, Disc. Comp. Geom., 8:219–250, 1992. ulator using BDDs, Formal methods in system de-
sign, 10:221–242, Kluwer Academic, 1997.
[4] T. Biedl, E. D. Demaine, M. L. Demaine, A. Lu-
biw, J. O’Rourke, M. Overmars, S. Robbins, and [19] S. Minato and H. Arimura, Frequent Pattern
S. Whitesides, Unfolding some classes of orthogo- Mining and Knowledge Indexing Basedon Zero-
nal polyhedra, Proc. CCCG, 70–71, 1998. Suppressed BDDs, Proc. KDID, 152–169, 2006.

[5] E. Boros, T. Ibaraki, and K. Makino, Monotone [20] J. Mitani and R. Uehara, Polygons Folding to Plu-
extensions of Boolean data sets, Proc. ALT, LNCS ral Incongruent Orthogonal Boxes, Proc. CCCG,
1316, 161–175, 1997. 31–34, 2008.
[21] D. M. Mount, On folding shortest paths on convex
[6] S. Bouzette, and F. Vandamme, The regular Do-
polyhedra, Technical Report 1495, Department of
decahedron and Icosahedron unfold in 43380 ways,
Computer Science, University of Maryland, 1985.
Unpublished manuscript.
[22] M. Namiki and K. Fukuda, Unfolding 3-
[7] R. E. Bryant, Graph-based algorithms for Boolean
dimensional convex polytopes: A package for
function manipulation, IEEE Trans. Com., C-35:
Mathematica 1.2 or 2.0, Mathematica Notebook,
677–691, 1986.
University of Tokyo, 1993.
[8] J. R. Burch, E. M. Clarke, K. L. McMillan, and D. [23] C. Schevon and J. O’Rourke, A conjecture on
L. Dill, Sequential circuit verification using sym- random unfoldings, Technical report JHU-87/20,
bolic model checking, Proc. DAC, 46–51, 1990. Johns Hopkins University, Baltimore, MD, 1987.
[9] H. T. Croft, K. J. Falconer, and R. K. Guy, [24] M. Sharir and A. Schorr, On shortest paths in poly-
Unsolved Problems in Geometry, Springer-Verlag, hedral spaces, SIAM J. Comput., 15:193–215, 1986.
Reissue edition, 1995.
[25] G. C. Shephard, Convex polytopes with convex
[10] E. D. Demaine and J. O’Rourke. Geometric Folding nets, Math. Proc. Camb. Phil. Soc., 78:389–403,
Algorithms: Linkages, Origami, Polyhedra. Cam- 1975.
bridge University Press, 2007.
[26] I. Wegener, Branching programs and binary deci-
[11] A. Dürer, Unterweysung der Messung mit dem sion diagrams, Monographs on discrete mathemat-
Zirkel un Richtscheyt in Linien Ebnen uhnd ics and applications, 2000.
Gantzen Corporen, 1525.

View publication stats

You might also like