WEBVTT

00:00:03.255 --> 00:00:05.840
PROFESSOR: We have a lot of
fun material to cover today,

00:00:05.840 --> 00:00:07.610
so let's get started.

00:00:07.610 --> 00:00:11.400
We start with a few basic
questions about-- well,

00:00:11.400 --> 00:00:13.110
first is a topology question.

00:00:13.110 --> 00:00:15.580
What is a handle?

00:00:15.580 --> 00:00:19.470
In general, a handle is really
a transformation on a surface.

00:00:19.470 --> 00:00:22.190
I thought I will demonstrate in
the context of glass blowing.

00:00:22.190 --> 00:00:24.860
So this is what it looks
like if you're making a cup.

00:00:24.860 --> 00:00:26.800
You take some hot glass.

00:00:26.800 --> 00:00:29.470
You attach it to your surface.

00:00:29.470 --> 00:00:32.430
You cut it off your hot pipe.

00:00:32.430 --> 00:00:39.100
And then you bring it around
and attach it to another point,

00:00:39.100 --> 00:00:41.100
and so that's a handle.

00:00:41.100 --> 00:00:45.490
You've probably used
handles before in real life.

00:00:45.490 --> 00:00:48.790
In general, or in the
mathematical setting,

00:00:48.790 --> 00:00:52.120
it's the same thing
but on a 2D surface.

00:00:52.120 --> 00:00:55.700
So imagine you have
some 2D surface.

00:00:55.700 --> 00:01:00.420
You take two disk-like
regions on the surface

00:01:00.420 --> 00:01:08.660
and then you attach on a
handle-- something like that.

00:01:08.660 --> 00:01:11.470
So it's an operation
you can do to a surface.

00:01:11.470 --> 00:01:14.330
And you can keep adding handles.

00:01:14.330 --> 00:01:16.100
I don't think there's
a clear way to say,

00:01:16.100 --> 00:01:18.840
oh, this is clearly a handle,
except to have added it

00:01:18.840 --> 00:01:20.850
as a handle.

00:01:20.850 --> 00:01:25.230
In general, the nice theorem
for two dimensional surfaces--

00:01:25.230 --> 00:01:28.910
so here's a coffee cup being
converted into a torus,

00:01:28.910 --> 00:01:30.790
because it has
genus 1, meaning it

00:01:30.790 --> 00:01:33.120
has essentially
one handle in it.

00:01:33.120 --> 00:01:35.410
In general, you take
any orientable surface

00:01:35.410 --> 00:01:39.260
without boundary-- this is
locally two dimensional-- then

00:01:39.260 --> 00:01:45.820
it will be a sphere plus some
non-negative number of handles.

00:01:45.820 --> 00:01:48.970
And that's a
classification theorem

00:01:48.970 --> 00:01:50.570
for orientable surfaces.

00:01:50.570 --> 00:01:52.390
It's only slightly
more complicated

00:01:52.390 --> 00:01:53.700
for non-orientable surfaces.

00:01:53.700 --> 00:01:58.840
And then 3D surfaces
are even harder

00:01:58.840 --> 00:02:00.410
and was only recently solved.

00:02:00.410 --> 00:02:03.950
But this is two
dimensional surfaces,

00:02:03.950 --> 00:02:07.730
which is easy and clean.

00:02:07.730 --> 00:02:09.919
There is a way to compute
genus and in some sense

00:02:09.919 --> 00:02:12.130
learn how many
handles are there.

00:02:12.130 --> 00:02:15.000
But there isn't a unique
thing of, oh, this part

00:02:15.000 --> 00:02:16.360
is clearly a handle.

00:02:16.360 --> 00:02:18.179
But when you draw it
this way, it kind of

00:02:18.179 --> 00:02:19.470
becomes clear this is a handle.

00:02:19.470 --> 00:02:20.178
This is a handle.

00:02:20.178 --> 00:02:22.710
But there isn't a
formal sense in which--

00:02:22.710 --> 00:02:29.170
I don't know-- this thing is not
a handle or some weird thing.

00:02:29.170 --> 00:02:32.561
I think that's
all about handles.

00:02:32.561 --> 00:02:33.810
Hopefully that answers things.

00:02:33.810 --> 00:02:35.420
Of course, things
get more complicated

00:02:35.420 --> 00:02:38.630
when you have a boundary,
which we usually call holes.

00:02:38.630 --> 00:02:43.620
But the next question is
about holes in the unfoldings.

00:02:43.620 --> 00:02:46.250
So I claim that convex
polyhedron, when

00:02:46.250 --> 00:02:50.490
you unfold them, never have
holes in the unfolded form.

00:02:50.490 --> 00:02:53.760
And this is to contrast this
example, which is not convex.

00:02:53.760 --> 00:02:56.642
But you can unfold it by
cutting these two edges.

00:02:56.642 --> 00:02:57.850
And you've got a little hole.

00:02:57.850 --> 00:02:59.620
So I showed this in lecture.

00:02:59.620 --> 00:03:01.560
And natural question
is, why isn't this

00:03:01.560 --> 00:03:05.290
possible for convex polyhedron?

00:03:05.290 --> 00:03:06.900
So I thought I would prove that.

00:03:06.900 --> 00:03:09.870
And the proof uses a cool
theorem, which we'll probably

00:03:09.870 --> 00:03:12.650
be seeing again, called
the Gauss-Bonnet theorem.

00:03:15.270 --> 00:03:21.360
And it says that if you
have some surface, which

00:03:21.360 --> 00:03:24.770
is homeomorphic to a
sphere-- so I don't

00:03:24.770 --> 00:03:27.430
want any handles
for this theorem.

00:03:27.430 --> 00:03:30.080
And of course, convex
polyhedra our sphere-like.

00:03:30.080 --> 00:03:32.310
They don't have handles.

00:03:32.310 --> 00:03:36.770
And I take a-- let me
take a better color--

00:03:36.770 --> 00:03:40.310
I take a closed curve
non-self-intersecting closed

00:03:40.310 --> 00:03:45.130
curve on that
surface-- that defines

00:03:45.130 --> 00:03:49.290
an interior and an exterior.

00:03:49.290 --> 00:03:52.590
Then what the
Gauss-Bonnet theorem

00:03:52.590 --> 00:03:56.850
says is that if you look
at the curvature that's

00:03:56.850 --> 00:04:09.950
enclosed by the curve-- the
total curvature by this closed

00:04:09.950 --> 00:04:17.140
curve on the surface-- and
you add on the total turn

00:04:17.140 --> 00:04:29.400
angle along the curve-- so here,
the curve is turning right.

00:04:29.400 --> 00:04:32.150
Here, it's turning
left, right, left.

00:04:32.150 --> 00:04:33.440
Left is positive.

00:04:33.440 --> 00:04:34.930
Right is negative.

00:04:34.930 --> 00:04:38.757
Then these always add
up to 360 degrees.

00:04:38.757 --> 00:04:40.340
We're not going to
prove this theorem,

00:04:40.340 --> 00:04:42.290
but we're going to use it.

00:04:42.290 --> 00:04:45.820
So this is a nice invariant
for sphere-like things.

00:04:45.820 --> 00:04:47.810
When you have handles,
this number changes.

00:04:47.810 --> 00:04:50.566
I think it's 0 for a torus.

00:04:50.566 --> 00:04:53.490
Well, I won't try to guess
it, because it's a little bit

00:04:53.490 --> 00:04:55.150
subtle to get right.

00:04:55.150 --> 00:04:58.420
One fun consequence of this--
let's just get warmed up--

00:04:58.420 --> 00:05:01.640
suppose you take a
sphere like object

00:05:01.640 --> 00:05:04.185
and you take a
closed curve-- this

00:05:04.185 --> 00:05:07.400
is going to be pretty
abstract-- in this direction,

00:05:07.400 --> 00:05:11.850
then it says, OK, the
total amount of curvature

00:05:11.850 --> 00:05:16.840
in here plus the total
turn angle equals 360.

00:05:16.840 --> 00:05:19.710
Now suppose that I
turn the curve around.

00:05:19.710 --> 00:05:28.660
So I just reverse the
direction-- like this.

00:05:28.660 --> 00:05:32.190
And so now, the interior
is this stuff out here.

00:05:32.190 --> 00:05:35.950
And then we get that the total
curvature outside the curve,

00:05:35.950 --> 00:05:40.120
plus the total turn angle of
the blue thing, equals 360.

00:05:40.120 --> 00:05:42.410
If I add those two
equations together,

00:05:42.410 --> 00:05:43.950
the total turn angle cancels.

00:05:43.950 --> 00:05:46.990
Because wherever red turns,
left blue turns right.

00:05:46.990 --> 00:05:49.280
And so this term disappears.

00:05:49.280 --> 00:05:51.200
And so what we get is
that the total curvature

00:05:51.200 --> 00:05:53.741
inside the curve, plus the total
curvature outside the curve,

00:05:53.741 --> 00:05:55.260
equals 720.

00:05:55.260 --> 00:05:57.170
So this is a nice
topological invariant

00:05:57.170 --> 00:06:01.750
of sphere-like polyhedra.

00:06:01.750 --> 00:06:04.230
You add up the total
curvature everywhere--

00:06:04.230 --> 00:06:08.150
it didn't really matter what the
curve was-- you always get 720.

00:06:08.150 --> 00:06:09.670
And so this is kind of neat.

00:06:09.670 --> 00:06:11.170
For convex polyhedra,
this means you

00:06:11.170 --> 00:06:13.061
have to somehow divvy
up this curvature.

00:06:13.061 --> 00:06:14.560
Because all curvatures
are positive.

00:06:14.560 --> 00:06:17.400
So 720 is, somehow,
spread around.

00:06:17.400 --> 00:06:19.889
But you have to have
exactly that much.

00:06:19.889 --> 00:06:22.430
For non-convex things, you could
have some negative curvature

00:06:22.430 --> 00:06:24.570
that balances out a lot
of positive curvature.

00:06:24.570 --> 00:06:26.180
So you can have a lot of both.

00:06:26.180 --> 00:06:28.490
But you have almost the
same amount of each.

00:06:28.490 --> 00:06:31.262
Just you have
exactly 720 excess.

00:06:31.262 --> 00:06:32.220
that's just a fun fact.

00:06:32.220 --> 00:06:34.011
We'll be using that in
the future, I think.

00:06:38.370 --> 00:06:40.670
OK, that was Gauss-Bonnet.

00:06:40.670 --> 00:06:42.380
Now let's use it
to prove that this

00:06:42.380 --> 00:06:46.610
can't happen for
convex polyhedron.

00:06:46.610 --> 00:06:52.920
So the idea is, suppose you have
an unfolding with a hole in it.

00:06:52.920 --> 00:06:54.670
So this is the surface out here.

00:06:58.100 --> 00:07:00.580
Then I'm going to take
a closed curve that

00:07:00.580 --> 00:07:06.151
walks around the hole but
stays inside the unfolding.

00:07:06.151 --> 00:07:08.150
And then, of course, I'm
visualizing that really

00:07:08.150 --> 00:07:10.420
on the polyhedron.

00:07:10.420 --> 00:07:13.440
So I want the
interior of the curve

00:07:13.440 --> 00:07:16.850
to enclose the hole-- or
what becomes the hole.

00:07:16.850 --> 00:07:18.790
Now, what we learned
from Gauss-Bonnet

00:07:18.790 --> 00:07:21.160
is that the curvature
enclosed by this thing,

00:07:21.160 --> 00:07:24.630
plus the total turn angle
of the curve, equals 360.

00:07:24.630 --> 00:07:28.670
The total turn angle
of the curve is 360.

00:07:28.670 --> 00:07:31.330
It's a planar walk here.

00:07:31.330 --> 00:07:38.150
So turn angle-- total
turn here is 360 degrees.

00:07:38.150 --> 00:07:40.380
Now, if we have a
convex polyhedron,

00:07:40.380 --> 00:07:42.505
then this curvature
has to be non-negative.

00:07:45.280 --> 00:07:46.610
Well, I mean, sorry.

00:07:46.610 --> 00:07:49.580
In any case here, this
curvature better equal 0.

00:07:49.580 --> 00:07:53.320
For convex polyhedra, this is
a sum of vertex curvatures.

00:07:53.320 --> 00:07:55.550
For convex polyhedra,
every vertex

00:07:55.550 --> 00:07:58.160
has strictly positive
curvature actually.

00:07:58.160 --> 00:08:01.690
I mean the zero curvature
vertices aren't vertices.

00:08:01.690 --> 00:08:04.530
They're just points
on the surface.

00:08:04.530 --> 00:08:07.230
So for convex
polyhedron, if you're

00:08:07.230 --> 00:08:08.690
going to have zero
total curvature,

00:08:08.690 --> 00:08:11.160
that means you actually
have no curvature.

00:08:11.160 --> 00:08:13.839
So you have no vertices
enclosed in here,

00:08:13.839 --> 00:08:14.880
which is a contradiction.

00:08:14.880 --> 00:08:17.640
That means there wasn't
a hole to open up.

00:08:17.640 --> 00:08:20.020
Technically, you could
do something weird

00:08:20.020 --> 00:08:25.350
like-- I don't know,
let's take a cube.

00:08:25.350 --> 00:08:29.920
You could say, OK, I'm going
to make a couple cuts here

00:08:29.920 --> 00:08:32.140
that do nothing.

00:08:32.140 --> 00:08:35.333
This is kind of a
weird situation.

00:08:35.333 --> 00:08:36.966
We're going to add those cuts.

00:08:36.966 --> 00:08:39.299
And then, of course, you could
draw this curve around it

00:08:39.299 --> 00:08:40.260
and say, oh yeah, look.

00:08:40.260 --> 00:08:42.851
I've got lots of zero
curvature vertices inside here.

00:08:42.851 --> 00:08:45.100
In general, whenever you
have zero curvature vertices,

00:08:45.100 --> 00:08:47.780
you could always just suture
them back up-- uncut them--

00:08:47.780 --> 00:08:50.040
and there'd be no
difference in the unfolding.

00:08:50.040 --> 00:08:52.270
So you have to assume
that you've already

00:08:52.270 --> 00:08:55.370
removed pointless cuts.

00:08:55.370 --> 00:08:57.840
Then there'll be no
vertices in there.

00:08:57.840 --> 00:09:02.580
And so then, in fact, there was
no hole for convex polyhedra.

00:09:02.580 --> 00:09:05.960
For non-convex polyhedra, you
can have a negative curvature

00:09:05.960 --> 00:09:09.500
vertex that balances out some
positive curvature vertices.

00:09:09.500 --> 00:09:12.320
And so the total curvature
here equals zero.

00:09:12.320 --> 00:09:13.530
But you have three vertices.

00:09:13.530 --> 00:09:15.113
And that just can't
happen for convex.

00:09:19.650 --> 00:09:23.650
Next quick question
is, when we're

00:09:23.650 --> 00:09:26.980
talking about the cut
locus and the ridge tree,

00:09:26.980 --> 00:09:28.654
we drew some pictures.

00:09:28.654 --> 00:09:30.320
The claim is that it
was a spanning tree

00:09:30.320 --> 00:09:31.020
of the polyhedron.

00:09:31.020 --> 00:09:32.811
And in particular, the
leaves of the tree--

00:09:32.811 --> 00:09:35.060
the degree 1
vertices-- are exactly

00:09:35.060 --> 00:09:38.260
the vertices of the polyhedron.

00:09:38.260 --> 00:09:40.490
And I hadn't actually
realized this,

00:09:40.490 --> 00:09:45.690
but in fact, it's not
really literally true.

00:09:45.690 --> 00:09:48.380
It's kind of spiritually true.

00:09:48.380 --> 00:09:51.960
The vertices, in fact, have
unique shortest paths to x.

00:09:51.960 --> 00:09:55.150
So remember, we have some
point, x, on the surface.

00:09:55.150 --> 00:09:57.860
And we're looking at
points, like this one,

00:09:57.860 --> 00:09:59.795
they have non-unique
shortest paths to x.

00:09:59.795 --> 00:10:02.580
This is, if you grow
the fire around x,

00:10:02.580 --> 00:10:04.060
where does the fire meet itself.

00:10:04.060 --> 00:10:06.250
And it will meet
itself along this edge,

00:10:06.250 --> 00:10:07.750
because you could
go around this way

00:10:07.750 --> 00:10:11.060
or go around this way and
it's equal length path.

00:10:11.060 --> 00:10:12.559
But at the vertex,
there's actually

00:10:12.559 --> 00:10:13.600
a unique way to go there.

00:10:13.600 --> 00:10:15.490
That's the black line.

00:10:15.490 --> 00:10:18.150
So technically, this point
is not on the ridge tree.

00:10:18.150 --> 00:10:20.040
But all of these points are.

00:10:20.040 --> 00:10:21.890
So this is kind of
like a limiting point

00:10:21.890 --> 00:10:25.006
of the ridge tree points.

00:10:25.006 --> 00:10:26.880
So we think of it as
being on the ridge tree.

00:10:26.880 --> 00:10:28.520
I mean, you could think
of as cut are not cut.

00:10:28.520 --> 00:10:29.710
It doesn't really matter.

00:10:29.710 --> 00:10:34.122
But you cut right next to it,
so effectively the same thing.

00:10:34.122 --> 00:10:35.830
But it is a neat
point-- a subtle point--

00:10:35.830 --> 00:10:39.750
that these guys have
unique shortest paths.

00:10:39.750 --> 00:10:41.030
Whereas, these do not.

00:10:41.030 --> 00:10:45.420
Still we cut all the
way up to corner.

00:10:45.420 --> 00:10:49.290
All right, that is that.

00:10:49.290 --> 00:10:52.560
So now we have a bunch of
newer and more exciting

00:10:52.560 --> 00:10:58.010
things-- or updates that
you haven't heard of.

00:10:58.010 --> 00:11:01.030
One question that we mentioned
was generalizing the star

00:11:01.030 --> 00:11:02.130
and source unfoldings.

00:11:02.130 --> 00:11:05.395
And there's a new
paper about this.

00:11:05.395 --> 00:11:10.610
This is with my PhD
advisor, Anna Lubiw,

00:11:10.610 --> 00:11:15.260
and this is just a
warm up to get started.

00:11:15.260 --> 00:11:18.710
So here, we have a box,
if we take a point x.

00:11:18.710 --> 00:11:21.830
And let's see, here we have
the source unfolding from x.

00:11:21.830 --> 00:11:25.062
And here, we have the star
unfolding, just for comparison.

00:11:25.062 --> 00:11:27.020
It's also kind of fun to
see them side by side.

00:11:27.020 --> 00:11:28.290
They're color coded.

00:11:28.290 --> 00:11:31.870
So where you cut is the
ridge tree, in this case.

00:11:31.870 --> 00:11:34.514
And you end up gluing
along the ridge tree

00:11:34.514 --> 00:11:35.430
in the star unfolding.

00:11:38.090 --> 00:11:39.710
Now, we're going to
generalize things

00:11:39.710 --> 00:11:42.390
a little bit in that we're
going to generalize the source

00:11:42.390 --> 00:11:44.020
unfolding, specifically.

00:11:44.020 --> 00:11:46.560
So source unfolding,
you have a point x.

00:11:46.560 --> 00:11:49.120
And you just sort of
shoot shortest paths all

00:11:49.120 --> 00:11:51.097
from x, and that's
what you keep.

00:11:51.097 --> 00:11:53.180
And you end up cutting
along the ridge tree, which

00:11:53.180 --> 00:11:55.100
is the void in our
diagram at this point.

00:11:55.100 --> 00:11:57.420
So I'm going to generalize
that a little bit

00:11:57.420 --> 00:12:00.370
and think of this as
a tiny little circle.

00:12:00.370 --> 00:12:02.290
And in general,
what I'm going to do

00:12:02.290 --> 00:12:04.731
is the source unfolding
outside the circle.

00:12:04.731 --> 00:12:07.230
And so when the circle is really
tiny, it is just the source

00:12:07.230 --> 00:12:08.560
unfolding.

00:12:08.560 --> 00:12:11.650
But in general, I'm going
to do the star unfolding

00:12:11.650 --> 00:12:14.240
inside the circle.

00:12:14.240 --> 00:12:15.180
OK.

00:12:15.180 --> 00:12:17.250
So in this case,
nothing changes.

00:12:17.250 --> 00:12:19.860
But next example is
going to be more general.

00:12:19.860 --> 00:12:21.770
Instead of being a
single point here,

00:12:21.770 --> 00:12:23.780
I'm going to take
a geodesic arc--

00:12:23.780 --> 00:12:26.030
a straight line on the surface.

00:12:26.030 --> 00:12:28.310
So here's an example of that.

00:12:28.310 --> 00:12:31.350
We have a square-based pyramid.

00:12:31.350 --> 00:12:34.470
We drew a straight
line on the surface.

00:12:34.470 --> 00:12:37.210
If you unfolded it,
it would be straight.

00:12:37.210 --> 00:12:40.296
We're thinking of
having a little--

00:12:40.296 --> 00:12:43.630
I think it's called a racetrack
curve in mathematics--

00:12:43.630 --> 00:12:46.229
around that straight line.

00:12:46.229 --> 00:12:48.270
And I'm going to do star
unfolding on the inside.

00:12:48.270 --> 00:12:49.940
In this case, there's no
vertices on the inside,

00:12:49.940 --> 00:12:51.002
so nothing happens.

00:12:51.002 --> 00:12:52.960
And then we do source
unfolding on the outside.

00:12:52.960 --> 00:12:54.334
This is actually
previously known

00:12:54.334 --> 00:12:57.290
to unfold by
O'Rourke and others.

00:12:57.290 --> 00:13:00.890
But we have a simpler
proof, essentially.

00:13:00.890 --> 00:13:03.000
And we're going to
generalize it more.

00:13:03.000 --> 00:13:05.490
But what we do is the source
unfolding on the outside.

00:13:05.490 --> 00:13:07.520
So you take shortest
paths-- from every point,

00:13:07.520 --> 00:13:12.300
you take its shortest
path to this geodesic.

00:13:12.300 --> 00:13:15.130
That's, some of these blue lines
show various shortest paths.

00:13:15.130 --> 00:13:16.810
That's what you keep.

00:13:16.810 --> 00:13:20.240
The ridge tree is if you
light fire simultaneously

00:13:20.240 --> 00:13:22.630
along this entire segment,
where does it burn out?

00:13:22.630 --> 00:13:24.520
And that's the purple stuff.

00:13:24.520 --> 00:13:27.740
And this is the
complementary diagram,

00:13:27.740 --> 00:13:32.100
where you do the reverse, which
would be the star unfolding

00:13:32.100 --> 00:13:34.230
on the outside, source
unfolding on the inside.

00:13:34.230 --> 00:13:36.400
So you glue along
the purple stuff

00:13:36.400 --> 00:13:39.870
instead of cutting
along the purple stuff.

00:13:39.870 --> 00:13:42.390
And this, we conjecture, doesn't
overlap but we don't know.

00:13:44.990 --> 00:13:46.750
All right, so fine.

00:13:46.750 --> 00:13:47.627
That looks easy.

00:13:47.627 --> 00:13:49.460
And you can prove that
this doesn't overlap.

00:13:49.460 --> 00:13:51.370
Before you proved
it, because you just

00:13:51.370 --> 00:13:54.630
had shortest paths emanating
in all directions around x.

00:13:54.630 --> 00:13:58.600
Now, you have shortest
paths emanating

00:13:58.600 --> 00:14:01.950
in 180 degrees of directions
around this endpoint.

00:14:01.950 --> 00:14:03.590
Then they are all just straight.

00:14:03.590 --> 00:14:05.660
And then they rotate
around 180 degrees here.

00:14:05.660 --> 00:14:07.140
And then they're
all just straight.

00:14:07.140 --> 00:14:08.700
And so there can't be
anything overlapping,

00:14:08.700 --> 00:14:10.300
because you're just
taking a continuum

00:14:10.300 --> 00:14:12.470
of these segments
of varying lengths.

00:14:12.470 --> 00:14:14.130
They don't overlap.

00:14:14.130 --> 00:14:15.540
Here, they're all parallel.

00:14:15.540 --> 00:14:16.660
Here, they sweep nicely.

00:14:16.660 --> 00:14:19.110
In general, if they
always turn clockwise

00:14:19.110 --> 00:14:22.471
as you walk along the
curve, you're fine.

00:14:22.471 --> 00:14:24.197
OK, here's a more general one.

00:14:24.197 --> 00:14:26.030
In general, what we can
prove is that if you

00:14:26.030 --> 00:14:29.820
have a convex curve
on the surface--

00:14:29.820 --> 00:14:33.172
so it always turns to the
left, I think technically.

00:14:33.172 --> 00:14:34.880
The angle on the left
hand side is always

00:14:34.880 --> 00:14:37.071
less than or equal
to 180 degrees.

00:14:37.071 --> 00:14:38.570
You have to be a
little careful what

00:14:38.570 --> 00:14:39.370
it means to turn to the left.

00:14:39.370 --> 00:14:41.660
When you hit a vertex, you've
got less than 360 total.

00:14:41.660 --> 00:14:43.120
So what does to the left mean?

00:14:43.120 --> 00:14:45.890
It just means you've got less
than 180 degrees of material

00:14:45.890 --> 00:14:47.430
on your left side.

00:14:47.430 --> 00:14:49.320
So this is an example
of a convex curve.

00:14:49.320 --> 00:14:50.840
It's got some circular arcs.

00:14:50.840 --> 00:14:53.442
We're no longer
tracking along some--

00:14:53.442 --> 00:14:55.400
we're no longer just
doubling along some curve.

00:14:55.400 --> 00:14:57.060
Here, we enclose a
vertex, which makes

00:14:57.060 --> 00:14:59.380
it a little more exciting,
because now what we're

00:14:59.380 --> 00:15:02.150
going to do star unfolding
on the inside, which remember

00:15:02.150 --> 00:15:05.760
was cutting along shortest
paths from every vertex

00:15:05.760 --> 00:15:06.610
to your thing.

00:15:06.610 --> 00:15:08.730
In this case, your thing
is no longer a point, x.

00:15:08.730 --> 00:15:10.690
It is now this convex curve.

00:15:10.690 --> 00:15:13.895
So let's say this is
the shortest path here.

00:15:13.895 --> 00:15:18.777
It might be than one choice, but
we're going to-- actually, no.

00:15:18.777 --> 00:15:19.860
This is the shortest path.

00:15:19.860 --> 00:15:21.050
This is a root 2 diagonal.

00:15:21.050 --> 00:15:22.896
This is length 1.

00:15:22.896 --> 00:15:24.270
So we're going to
come along here

00:15:24.270 --> 00:15:26.190
and that's this dashed line.

00:15:26.190 --> 00:15:29.140
So it got opened
up here, because we

00:15:29.140 --> 00:15:30.620
had too little material here.

00:15:30.620 --> 00:15:31.910
We open it up.

00:15:31.910 --> 00:15:33.410
But otherwise, it acts the same.

00:15:33.410 --> 00:15:36.050
In particular, outside
this red curve,

00:15:36.050 --> 00:15:37.290
it's just source unfolding.

00:15:37.290 --> 00:15:38.907
You've got all these
shortest paths.

00:15:38.907 --> 00:15:41.115
And again, what we argue--
and I'm not going to prove

00:15:41.115 --> 00:15:43.520
it here-- is that all
of these shortest paths

00:15:43.520 --> 00:15:47.800
keep turning clockwise and
do so exactly 360 degrees.

00:15:47.800 --> 00:15:49.950
There's some jumps when
you hit these gaps.

00:15:49.950 --> 00:15:51.770
And you have to kind
of jump over them.

00:15:51.770 --> 00:15:55.610
But still, you
have no collision.

00:15:55.610 --> 00:15:58.240
And drawn over here
is the reverse,

00:15:58.240 --> 00:16:03.616
where we would star unfold the
outside of a convex curve--

00:16:03.616 --> 00:16:05.740
because it's a convex curve,
the inside and outside

00:16:05.740 --> 00:16:08.930
are different-- and source
unfold on the inside.

00:16:08.930 --> 00:16:10.790
And this, we conjecture,
doesn't overlap.

00:16:10.790 --> 00:16:13.390
But we don't know
how to prove it.

00:16:13.390 --> 00:16:15.900
This thing is a generalization
of the source unfolding.

00:16:15.900 --> 00:16:18.590
Because when this curve is super
tiny, it is a source unfolding.

00:16:18.590 --> 00:16:20.090
This thing would
be a generalization

00:16:20.090 --> 00:16:23.641
of the star unfolding, but
we don't know whether works.

00:16:23.641 --> 00:16:25.840
I think one more example here.

00:16:25.840 --> 00:16:29.070
This is a way to
generate convex curves.

00:16:29.070 --> 00:16:31.320
You start from some point, x.

00:16:31.320 --> 00:16:34.130
And you design it-- you
choose a direction so

00:16:34.130 --> 00:16:36.980
that if you go straight--
so this curve goes straight

00:16:36.980 --> 00:16:38.230
everywhere except x.

00:16:38.230 --> 00:16:40.940
If you set it up right,
you come back to x.

00:16:40.940 --> 00:16:42.690
So this, in particular,
is a convex curve,

00:16:42.690 --> 00:16:44.440
because it's straight
everywhere except x.

00:16:44.440 --> 00:16:46.290
And at x, it's convex.

00:16:46.290 --> 00:16:49.730
And so, in this case, we
enclose a few vertices.

00:16:49.730 --> 00:16:53.440
On the inside, we've
got V3, V7, V6.

00:16:53.440 --> 00:16:59.950
So each of those ends up getting
cut here in these green lines.

00:16:59.950 --> 00:17:02.250
And so, like this one
is a very tiny cut.

00:17:02.250 --> 00:17:04.160
We just cut there at V3.

00:17:04.160 --> 00:17:05.960
The other ones
are little bigger.

00:17:05.960 --> 00:17:07.800
But they open up.

00:17:07.800 --> 00:17:12.359
And yeah, I guess,
this is the-- well,

00:17:12.359 --> 00:17:15.520
it's a few different
versions of the picture here.

00:17:15.520 --> 00:17:17.790
But again, you look
at the shortest paths.

00:17:17.790 --> 00:17:19.099
Here, they're all parallel.

00:17:19.099 --> 00:17:20.300
Here, they sweep.

00:17:20.300 --> 00:17:21.670
Here, they're all parallel.

00:17:21.670 --> 00:17:24.110
Here, we jump, but
it's just the same

00:17:24.110 --> 00:17:26.339
as sweeping-- it
doesn't hurt you.

00:17:26.339 --> 00:17:28.300
Then they're all parallel.

00:17:28.300 --> 00:17:28.890
Then we jump.

00:17:28.890 --> 00:17:31.139
Then they're all parallel,
in this particular example.

00:17:31.139 --> 00:17:33.030
But they will always
proceed clockwise

00:17:33.030 --> 00:17:37.600
around the curve, which
here is drawn red.

00:17:37.600 --> 00:17:39.390
Gets split up a
little bit, but you

00:17:39.390 --> 00:17:41.150
can show because
of that sweeping,

00:17:41.150 --> 00:17:42.640
they won't hit each other.

00:17:42.640 --> 00:17:46.290
And you have
non-overlapping unfolding.

00:17:46.290 --> 00:17:51.000
So we call this sun
unfolding, because of the rays

00:17:51.000 --> 00:17:52.642
that sweep around.

00:17:52.642 --> 00:17:54.100
And because we have
a convex curve,

00:17:54.100 --> 00:17:56.820
it's kind of like the sun.

00:17:56.820 --> 00:18:00.150
So that's a new unfolding.

00:18:00.150 --> 00:18:02.950
The obvious open
question is the reverse,

00:18:02.950 --> 00:18:04.600
when you glue around
the purple sides

00:18:04.600 --> 00:18:10.585
instead of the--
It's essentially,

00:18:10.585 --> 00:18:11.960
instead of having
a convex curve,

00:18:11.960 --> 00:18:14.780
you have a reflex curve,
exactly the opposite.

00:18:14.780 --> 00:18:16.106
What happens, we don't know.

00:18:16.106 --> 00:18:17.230
It's a lot harder to prove.

00:18:17.230 --> 00:18:18.490
Because in particular,
it's a lot harder

00:18:18.490 --> 00:18:20.531
to prove that the star
unfolding doesn't overlap.

00:18:20.531 --> 00:18:22.670
And you've got to include
at least that proof

00:18:22.670 --> 00:18:24.090
in any generalization of it.

00:18:26.610 --> 00:18:30.070
Next topic of unfolding
kind of related

00:18:30.070 --> 00:18:32.130
we call zipper unfolding.

00:18:32.130 --> 00:18:36.960
So these are some examples of
real felt models with a zipper.

00:18:36.960 --> 00:18:41.190
The goal is, I want an unfolding
that has a single zipper.

00:18:41.190 --> 00:18:44.410
And you just pull the zipper,
and it makes your polyhedron.

00:18:44.410 --> 00:18:46.340
So this is an example
of an octahedron.

00:18:46.340 --> 00:18:48.730
This one is actually
not even a polyhedron.

00:18:48.730 --> 00:18:51.650
It has two pyramidal
pockets in it.

00:18:51.650 --> 00:18:54.140
And it's actually closed
off in the middle.

00:18:54.140 --> 00:18:56.220
I think we have a
little video here

00:18:56.220 --> 00:19:00.180
of what it looks like
to open that octahedron.

00:19:00.180 --> 00:19:03.180
So what does it take
to have a single zipper

00:19:03.180 --> 00:19:08.445
line, that connects
everything together?

00:19:08.445 --> 00:19:09.820
Well, if you think
about it, that

00:19:09.820 --> 00:19:14.160
means that the cuts that you
make must follow a single path.

00:19:14.160 --> 00:19:18.380
So in general, the cuts form
a tree on a convex polyhedron.

00:19:18.380 --> 00:19:21.000
We want that tree
to be just a path.

00:19:21.000 --> 00:19:23.000
So it's like a Hamiltonian path.

00:19:23.000 --> 00:19:26.430
It's got to visit all the
vertices in some order.

00:19:26.430 --> 00:19:28.975
And you'd like it to
unfold without overlap.

00:19:28.975 --> 00:19:30.100
So is this always possible?

00:19:34.280 --> 00:19:39.780
This is a father, son,
mother, son, son paper.

00:19:39.780 --> 00:19:41.790
So this is my advisor
again and her two sons.

00:19:41.790 --> 00:19:44.164
Although we like to say this
a paper with her three sons,

00:19:44.164 --> 00:19:47.900
because I'm her academic
son-- or four, if you count

00:19:47.900 --> 00:19:48.560
Marty too.

00:19:48.560 --> 00:19:51.350
She was his advisor as well.

00:19:51.350 --> 00:19:53.800
So here are some examples
of good unfolding.

00:19:53.800 --> 00:19:55.200
So we have the platonic solids.

00:19:55.200 --> 00:19:57.170
These are just
typical unfoldings.

00:19:57.170 --> 00:19:59.220
These are all zipper unfoldings.

00:19:59.220 --> 00:20:02.425
So we're cutting along edges,
along a Hamiltonian path

00:20:02.425 --> 00:20:03.300
that doesn't overlap.

00:20:03.300 --> 00:20:06.210
They all have this kind
of nice snake like shape.

00:20:06.210 --> 00:20:07.640
And so all platonic
solids can be

00:20:07.640 --> 00:20:10.210
made by zipper edge unfoldings.

00:20:10.210 --> 00:20:11.740
Next, we did Archimedean solids.

00:20:11.740 --> 00:20:13.480
This is a lot more work.

00:20:13.480 --> 00:20:17.800
But again, you get these
nice S-like curves.

00:20:17.800 --> 00:20:19.224
And they're all
zipper unfolding,

00:20:19.224 --> 00:20:20.890
because they're all
possible and they'll

00:20:20.890 --> 00:20:27.060
have these Hamiltonian paths,
cuts, and avoid overlap.

00:20:27.060 --> 00:20:28.850
But you may notice,
there's one missing up

00:20:28.850 --> 00:20:30.890
there-- the great
Rhombi-Cosi-Dodecahedron,

00:20:30.890 --> 00:20:32.870
my favorite Archimedean solid.

00:20:32.870 --> 00:20:37.000
And it has a rather
different looking unfolding.

00:20:37.000 --> 00:20:39.430
As far as we can tell,
there's no S-shaped one--

00:20:39.430 --> 00:20:40.350
whatever that means.

00:20:40.350 --> 00:20:42.580
But you have to have a tree.

00:20:42.580 --> 00:20:45.310
These examples all
had path-like--

00:20:45.310 --> 00:20:47.470
The dual graph was
roughly a path.

00:20:47.470 --> 00:20:49.970
I guess it branches
a little bit here.

00:20:49.970 --> 00:20:53.810
Here, it's very
tree like, I guess.

00:20:53.810 --> 00:20:57.260
So all Archimedean
solids can be done.

00:20:57.260 --> 00:20:59.560
One open question,
next category up,

00:20:59.560 --> 00:21:01.890
is Johnson solids, which
are all polyhedron made

00:21:01.890 --> 00:21:04.570
with regular polygon faces--
convex polyhedron made

00:21:04.570 --> 00:21:06.484
by regular polygonal faces.

00:21:06.484 --> 00:21:08.150
Those we don't know,
whether they always

00:21:08.150 --> 00:21:10.040
have zipper unfoldings.

00:21:10.040 --> 00:21:13.160
But we do know there are
some convex polyhedra--

00:21:13.160 --> 00:21:19.970
like this rhombic dodecahedron--
that do not have zipper

00:21:19.970 --> 00:21:21.960
unfoldings if you
only cut along edges.

00:21:21.960 --> 00:21:24.710
Because this graph has
no Hamiltonian path.

00:21:24.710 --> 00:21:26.674
So never mind avoiding overlap.

00:21:26.674 --> 00:21:28.840
There's some polyhedra that
just aren't Hamiltonian.

00:21:28.840 --> 00:21:31.330
There's no path it visits
every vertex exactly

00:21:31.330 --> 00:21:33.890
once and only follows edges.

00:21:33.890 --> 00:21:36.180
So there's nothing
you could even

00:21:36.180 --> 00:21:39.100
hope to cut along
and avoid overlap.

00:21:39.100 --> 00:21:41.590
So that's bad news
for edge unfoldings.

00:21:41.590 --> 00:21:43.840
The big open question here
is for general unfoldings

00:21:43.840 --> 00:21:46.420
if you're allowed to cut
anywhere on a convex surface

00:21:46.420 --> 00:21:48.030
and do things like
the sun unfolding.

00:21:48.030 --> 00:21:49.676
I mean, edge
unfoldings, we don't

00:21:49.676 --> 00:21:50.800
know how to do them anyway.

00:21:50.800 --> 00:21:53.034
So if you allow
general unfoldings,

00:21:53.034 --> 00:21:55.450
we've got star unfolding,
source unfolding, sun unfolding,

00:21:55.450 --> 00:21:57.090
all sorts of things.

00:21:57.090 --> 00:21:59.740
But none of them are
zipper unfoldings.

00:21:59.740 --> 00:22:01.520
They all cut along trees.

00:22:01.520 --> 00:22:04.500
Like star unfolding
cuts along a star.

00:22:04.500 --> 00:22:06.460
The source unfolding cuts
along the ridge tree,

00:22:06.460 --> 00:22:08.910
which is going to be
very tree like thing.

00:22:08.910 --> 00:22:13.040
Can you always convert a
tree cut into a path cut?

00:22:13.040 --> 00:22:14.520
We've tried.

00:22:14.520 --> 00:22:17.550
It seems quite challenging.

00:22:17.550 --> 00:22:18.680
So that's the open problem.

00:22:18.680 --> 00:22:22.640
Does every convex polyhedron
have a general zipper

00:22:22.640 --> 00:22:26.420
unfolding, because edge
unfolding is always too much

00:22:26.420 --> 00:22:28.010
to hope for.

00:22:28.010 --> 00:22:32.542
So those are some fun
problems to think about.

00:22:32.542 --> 00:22:34.000
It's kind of like
zipper unfolding.

00:22:36.760 --> 00:22:38.870
So the next topic-- oh, right.

00:22:38.870 --> 00:22:43.240
One more thing to show, this is
a very fun talk that we gave.

00:22:43.240 --> 00:22:46.530
All five of us gave this
talk at Canadian Conference

00:22:46.530 --> 00:22:48.110
on Computational Geometry.

00:22:48.110 --> 00:22:51.270
And one of the props in the
talk was this cardboard box.

00:22:51.270 --> 00:22:53.844
And in the middle of the
talk, it starts jiggling.

00:22:53.844 --> 00:22:56.010
And actually, initially,
only four of the co-authors

00:22:56.010 --> 00:22:58.750
were giving the talk,
because the fifth one

00:22:58.750 --> 00:23:01.220
was hiding inside the box.

00:23:01.220 --> 00:23:03.170
And then in the
middle of the talk,

00:23:03.170 --> 00:23:05.750
he just jumps out
and then starts

00:23:05.750 --> 00:23:08.180
speaking, as if
nothing happened.

00:23:08.180 --> 00:23:09.720
It was a lot of fun.

00:23:09.720 --> 00:23:13.200
At this point, our son,
Jonah, is in the box.

00:23:13.200 --> 00:23:14.320
He was fairly small.

00:23:14.320 --> 00:23:17.090
He's grown up a lot
since, but at the time

00:23:17.090 --> 00:23:18.520
he fit nicely into
this cardboard

00:23:18.520 --> 00:23:21.930
box, which was maybe this big.

00:23:21.930 --> 00:23:23.870
I think we give him a
book and a flashlight

00:23:23.870 --> 00:23:26.640
and stuff to do while he
was sitting there, waiting

00:23:26.640 --> 00:23:30.440
for his slides, waiting
for the queue to come out.

00:23:30.440 --> 00:23:31.110
There we go.

00:23:36.610 --> 00:23:39.050
So those are unfolding of
the cube or a box in general.

00:23:41.910 --> 00:23:45.851
Next topic is going
back to edge unfolding.

00:23:45.851 --> 00:23:47.420
I like this comment.

00:23:47.420 --> 00:23:49.000
I thought they were
pretty obvious,

00:23:49.000 --> 00:23:50.820
but now you've
convinced me otherwise.

00:23:50.820 --> 00:23:54.450
And some of the evidence for
edge unfolding being difficult

00:23:54.450 --> 00:23:57.720
was this polyhedron, which we
proved has no edge unfolding.

00:23:57.720 --> 00:24:01.210
I didn't say it in lecture, but
we call it edge on unfoldable,

00:24:01.210 --> 00:24:04.350
because they cannot be unfolded.

00:24:04.350 --> 00:24:06.700
This is actually the first
example we came up with.

00:24:06.700 --> 00:24:10.092
I mention it only because
it has fewer faces.

00:24:10.092 --> 00:24:12.175
We usually show this one
because it's triangulated

00:24:12.175 --> 00:24:13.840
and that's kind of cooler.

00:24:13.840 --> 00:24:17.790
This one has convex faces still,
so still topologically convex.

00:24:17.790 --> 00:24:20.110
I mean, if I pushed
these points in,

00:24:20.110 --> 00:24:22.950
the polyhedron would be
convex but has fewer faces.

00:24:22.950 --> 00:24:34.000
It has I guess six faces per
hat, times 4 hats, so 24 faces.

00:24:34.000 --> 00:24:36.440
This was done in '99.

00:24:36.440 --> 00:24:38.740
It turns out at
exactly the same time,

00:24:38.740 --> 00:24:40.556
there was this paper
by Tarasov called,

00:24:40.556 --> 00:24:42.180
"Polyhedron with No
Natural Unfolding."

00:24:42.180 --> 00:24:44.799
The paper has no figures,
so I had to draw one

00:24:44.799 --> 00:24:46.090
to show you what it looks like.

00:24:46.090 --> 00:24:47.580
It's just a cube.

00:24:47.580 --> 00:24:50.100
And then at each corner of the
cube, you cut off the corner

00:24:50.100 --> 00:24:53.450
and then pull the point out.

00:24:53.450 --> 00:24:56.690
And they proved, by a pretty
similar argument-- I mean,

00:24:56.690 --> 00:24:58.730
essentially you treat
each of these as a hat.

00:24:58.730 --> 00:25:00.350
It's kind of a very simple hat.

00:25:00.350 --> 00:25:02.730
They happen to overlap;
they share edges.

00:25:02.730 --> 00:25:05.170
But again, because of these
negative curvature vertices,

00:25:05.170 --> 00:25:06.930
you have to cut through the hat.

00:25:06.930 --> 00:25:08.860
And that cut has to
keep going around.

00:25:08.860 --> 00:25:10.070
Eventually, it forms a cycle.

00:25:10.070 --> 00:25:15.480
So that's what Tarasov
proved in the same year, '99.

00:25:15.480 --> 00:25:22.830
And then Grunbaum-- he's a
famous geometer in Seattle--

00:25:22.830 --> 00:25:24.230
came up with some more examples.

00:25:24.230 --> 00:25:27.780
So he initially wanted to
make a star shaped example.

00:25:27.780 --> 00:25:30.680
Star shaped means that
there's a single point, namely

00:25:30.680 --> 00:25:33.250
the center, where you can
shine a light in all directions

00:25:33.250 --> 00:25:36.949
and the light reaches the entire
interior of the polyhedron.

00:25:36.949 --> 00:25:38.740
He didn't know about
our witch hat example.

00:25:38.740 --> 00:25:42.570
So he took the Tarasov example,
made it a dodecahedron,

00:25:42.570 --> 00:25:44.500
and then it is star shaped.

00:25:44.500 --> 00:25:47.200
I think ours are
already star shaped.

00:25:47.200 --> 00:25:48.130
So that's kind of fun.

00:25:48.130 --> 00:25:51.110
It looks like some scary
underwater creature.

00:25:51.110 --> 00:25:53.000
And then he learned
about our paper,

00:25:53.000 --> 00:25:54.541
and he said, all
right, I want to get

00:25:54.541 --> 00:25:56.000
as few faces as possible.

00:25:56.000 --> 00:25:59.630
And so we had 26, was it, 24?

00:25:59.630 --> 00:26:03.580
This one has only 13 faces.

00:26:03.580 --> 00:26:06.540
And it has tetrahedral--
well, that's not actually

00:26:06.540 --> 00:26:09.030
tetrahedrally asymmetric,
because this bottom spike is

00:26:09.030 --> 00:26:10.880
different from the others.

00:26:10.880 --> 00:26:13.540
But it's kind of like
Tarasov's example down

00:26:13.540 --> 00:26:17.780
to its very minimal
amounts, also star shaped.

00:26:17.780 --> 00:26:21.420
And his conjecture is that,
if you have 12 faces or fewer,

00:26:21.420 --> 00:26:24.480
there is no
un-unfoldable polyhedron.

00:26:24.480 --> 00:26:30.130
So he says polyhedra with 12
faces are un-un-unfoldable.

00:26:30.130 --> 00:26:33.259
He wanted to one up us.

00:26:33.259 --> 00:26:35.175
Open problem is to define
un-un-un-unfoldable.

00:26:37.934 --> 00:26:38.850
But we're up to three.

00:26:42.580 --> 00:26:45.040
So that's some
un-unfoldable polyhedra

00:26:45.040 --> 00:26:49.330
and some conjectured
un-un-unfoldable polyhedra.

00:26:49.330 --> 00:26:50.940
This is fun to say.

00:26:50.940 --> 00:26:55.430
The next result, which is
very recent is that-- this

00:26:55.430 --> 00:26:58.750
is with Zach Abel
and myself-- that it

00:26:58.750 --> 00:27:02.330
is NP-complete to decide,
given a polyhedron,

00:27:02.330 --> 00:27:05.460
is it unfoldable or
un-unfoldable-- by cutting

00:27:05.460 --> 00:27:06.250
along edges.

00:27:06.250 --> 00:27:07.850
These are all
cutting along edges.

00:27:07.850 --> 00:27:10.270
And we reduce from
this problem, which

00:27:10.270 --> 00:27:13.620
comes from parallel
computers actually--

00:27:13.620 --> 00:27:16.500
or geometry in general, you
want to pack a bunch of squares

00:27:16.500 --> 00:27:17.300
into a square.

00:27:17.300 --> 00:27:19.930
So you have squares
of different sizes.

00:27:19.930 --> 00:27:22.910
And you want to pack those
squares into a given square.

00:27:22.910 --> 00:27:23.640
Is it possible?

00:27:23.640 --> 00:27:24.490
Yes or no?

00:27:24.490 --> 00:27:27.030
Sometimes it is,
sometimes it isn't.

00:27:27.030 --> 00:27:32.259
This proof, by many
people-- Long, et al.--

00:27:32.259 --> 00:27:34.550
is from three partition,
which is a problem we've seen.

00:27:34.550 --> 00:27:35.466
I won't go through it.

00:27:35.466 --> 00:27:37.980
But essentially, it's kind
of like the disk packing

00:27:37.980 --> 00:27:40.460
proof, which I showed in
lecture some time ago related

00:27:40.460 --> 00:27:42.340
to tree maker.

00:27:42.340 --> 00:27:44.740
But you set up this tiny
space and you end up

00:27:44.740 --> 00:27:49.800
having to partition a bunch of
your squares into groups, each

00:27:49.800 --> 00:27:53.950
with the same sum
groups of size 3.

00:27:53.950 --> 00:27:57.290
So starting from this
problem of square packing,

00:27:57.290 --> 00:28:01.220
how do we convert it into
an unfolding problem?

00:28:01.220 --> 00:28:03.430
This is a rough idea
of the construction.

00:28:03.430 --> 00:28:05.780
So the big picture--
this is initially

00:28:05.780 --> 00:28:07.000
a polyhedron with boundary.

00:28:07.000 --> 00:28:08.680
Later on, we'll
remove the boundary.

00:28:08.680 --> 00:28:12.482
So just imagine a square, and
in the square, there's a tower.

00:28:12.482 --> 00:28:13.940
Things are not
drawn to scale here.

00:28:13.940 --> 00:28:17.270
The tower is super tall.

00:28:17.270 --> 00:28:22.010
This little pipe thing is very
narrow and also very long.

00:28:22.010 --> 00:28:27.130
I think even way longer than
anything in this picture.

00:28:27.130 --> 00:28:30.610
OK, so now along the
side of the tower--

00:28:30.610 --> 00:28:33.010
so this is an unfolding.

00:28:33.010 --> 00:28:36.510
Like if you cut along these
edges, you get a plus sign.

00:28:36.510 --> 00:28:38.370
This is the tower.

00:28:38.370 --> 00:28:40.770
Now, this grid
stuff is something

00:28:40.770 --> 00:28:42.100
that I haven't shown you yet.

00:28:42.100 --> 00:28:44.870
But basically, think
of it as water.

00:28:44.870 --> 00:28:45.960
It's very malleable.

00:28:45.960 --> 00:28:48.780
It can be cut open in
many different ways.

00:28:48.780 --> 00:28:51.520
And essentially, you don't have
to worry about it being there.

00:28:51.520 --> 00:28:54.010
It's like the glue that
holds everything together.

00:28:54.010 --> 00:28:58.100
But then, there's these
square faces, b1 up to bn.

00:28:58.100 --> 00:28:59.940
These are the things
you need to pack.

00:28:59.940 --> 00:29:02.340
So our goal is to set
things up that so, when

00:29:02.340 --> 00:29:04.550
you take this tower out,
you have a square hole.

00:29:04.550 --> 00:29:07.174
That is your target
square shape.

00:29:07.174 --> 00:29:08.590
And then on the
side of the tower,

00:29:08.590 --> 00:29:10.090
you've got all these squares.

00:29:10.090 --> 00:29:12.580
Basically those squares
have to fit into that hole.

00:29:12.580 --> 00:29:14.230
So it is square packing.

00:29:14.230 --> 00:29:15.200
That is our goal.

00:29:15.200 --> 00:29:19.560
Now, the challenge for that
is to make all of this stuff

00:29:19.560 --> 00:29:22.029
get out of the way and
also for these squares--

00:29:22.029 --> 00:29:24.070
normally when you unfold,
you're very constrained

00:29:24.070 --> 00:29:25.312
in how you lay out the faces.

00:29:25.312 --> 00:29:27.020
You can cut here or
cut here, but there's

00:29:27.020 --> 00:29:28.680
a discrete set of choices.

00:29:28.680 --> 00:29:31.670
Our goal is to design this stuff
so that these squares can just

00:29:31.670 --> 00:29:35.230
basically move willy-nilly
without hitting each other.

00:29:35.230 --> 00:29:37.610
It's not easy to do,
but that's the thing.

00:29:37.610 --> 00:29:40.949
This is one big face on the
outside-- this kind of L shape.

00:29:40.949 --> 00:29:43.490
We didn't want to go all the
way around for a couple reasons.

00:29:43.490 --> 00:29:45.930
One is we need a place
for things to get out.

00:29:45.930 --> 00:29:49.840
But also, we wanted this
to be topologically convex.

00:29:49.840 --> 00:29:53.870
So we didn't want to
face that is a donut.

00:29:53.870 --> 00:29:56.330
OK, so what's the next
part of the construction?

00:29:56.330 --> 00:29:59.280
Well, if we can
arrange for these guys

00:29:59.280 --> 00:30:03.150
to move willy-nilly-- that's
these very thin lines--

00:30:03.150 --> 00:30:05.510
we can just imagine that
if the squares are somehow

00:30:05.510 --> 00:30:09.780
packed, instead of having
things overlapping like this,

00:30:09.780 --> 00:30:14.687
you can route all of those
paths to avoid crossings.

00:30:14.687 --> 00:30:17.270
So as long as there's tiny gaps
between all the squares, which

00:30:17.270 --> 00:30:20.010
doesn't turn out to change the
square packing problem very

00:30:20.010 --> 00:30:24.080
much, you can do this.

00:30:24.080 --> 00:30:27.340
And then there's another issue,
which is there's a lot of stuff

00:30:27.340 --> 00:30:27.840
here.

00:30:27.840 --> 00:30:30.130
You've got to put it
somewhere, so you end up--

00:30:30.130 --> 00:30:32.620
it's very, very tiny--
so in some cases,

00:30:32.620 --> 00:30:34.760
you have to do this
kind of wiggling just

00:30:34.760 --> 00:30:39.510
to eat up length in
certain settings.

00:30:39.510 --> 00:30:41.040
It gets complicated.

00:30:41.040 --> 00:30:43.140
So how do we do
this wiggly stuff?

00:30:43.140 --> 00:30:47.980
Well, at the first
level, there's

00:30:47.980 --> 00:30:50.720
a very fine grid with
very small squares here.

00:30:53.370 --> 00:30:55.700
And we set it up so that
we can follow everything

00:30:55.700 --> 00:30:57.150
along a single path.

00:30:57.150 --> 00:30:59.960
We can visit all of this great
stuff along a single path.

00:30:59.960 --> 00:31:03.120
Occasionally, we will
encounter squares,

00:31:03.120 --> 00:31:05.500
but the path length
between any two squares

00:31:05.500 --> 00:31:08.640
is so big that these squares
have room to kind of stretch

00:31:08.640 --> 00:31:13.010
out as far away from each
other as they need to go.

00:31:13.010 --> 00:31:14.670
Now, these squares
are not squares.

00:31:14.670 --> 00:31:16.540
They are actually
this construction,

00:31:16.540 --> 00:31:18.440
which we call atoms.

00:31:18.440 --> 00:31:23.420
It looks like a weird set of
pyramids, or outside of towers.

00:31:23.420 --> 00:31:27.280
But in fact, there's many
different ways to unfold this.

00:31:27.280 --> 00:31:29.400
There's lots of different
ways to cut it open.

00:31:29.400 --> 00:31:30.660
And some of them go straight.

00:31:30.660 --> 00:31:31.618
Some of them turn left.

00:31:31.618 --> 00:31:32.910
Some of them turn right.

00:31:32.910 --> 00:31:34.830
These are three of the
unfoldings, I forget.

00:31:34.830 --> 00:31:37.080
There's a few dozen
unfoldings that we

00:31:37.080 --> 00:31:39.700
need that all have
the right parameters.

00:31:39.700 --> 00:31:41.340
This one's clearly turning left.

00:31:41.340 --> 00:31:43.677
This one's going straight
in a certain sense.

00:31:43.677 --> 00:31:46.010
This is coming from a left
turn and then going straight.

00:31:46.010 --> 00:31:48.060
So there's lots of
combinations here,

00:31:48.060 --> 00:31:50.350
slightly different
parities, and so on.

00:31:50.350 --> 00:31:54.410
But the end effect is that if
you have a big grid of these

00:31:54.410 --> 00:31:58.690
and you're following
them in a path,

00:31:58.690 --> 00:32:01.870
the path does some
turns on the surface.

00:32:01.870 --> 00:32:03.670
But you can force
it to do whatever

00:32:03.670 --> 00:32:05.320
turns you want in the unfolding.

00:32:05.320 --> 00:32:08.330
So you have complete freedom
to move the squares around.

00:32:08.330 --> 00:32:10.450
As I showed you, you
can avoid crossings,

00:32:10.450 --> 00:32:13.160
and it all works out.

00:32:13.160 --> 00:32:15.640
Maybe one detail,
which I didn't mention,

00:32:15.640 --> 00:32:19.370
is there's going to be
a ton of extra stuff.

00:32:19.370 --> 00:32:20.350
Where does it go?

00:32:25.630 --> 00:32:27.130
It's going to fill the pipe up.

00:32:30.240 --> 00:32:32.860
It's going to push
these guys up somewhat.

00:32:32.860 --> 00:32:34.780
And this thing is
so tall that there's

00:32:34.780 --> 00:32:39.790
room to put all the
excess stuff in here.

00:32:39.790 --> 00:32:41.710
And it's also so tall
that you can't just

00:32:41.710 --> 00:32:44.810
reach all the way out and put
all the squares on the outside.

00:32:44.810 --> 00:32:48.729
OK, so if you make that super,
super tall, none of the squares

00:32:48.729 --> 00:32:50.270
fit in here, because
it's too narrow.

00:32:50.270 --> 00:32:51.686
And none of the
squares can get up

00:32:51.686 --> 00:32:53.160
to the top, because
it's too long.

00:32:53.160 --> 00:32:55.880
So that's how it works.

00:32:55.880 --> 00:32:58.360
Now, that was a
polyhedron with boundary.

00:32:58.360 --> 00:33:00.070
Without boundary,
the construction

00:33:00.070 --> 00:33:01.690
is almost the same.

00:33:01.690 --> 00:33:04.930
You just add some extra
stuff on the outside

00:33:04.930 --> 00:33:08.180
to make it a regular polyhedron
homeomorphic to a sphere.

00:33:08.180 --> 00:33:10.530
But in the end, you have
basically the same construction

00:33:10.530 --> 00:33:11.770
of this nice square.

00:33:11.770 --> 00:33:14.490
The pipe and some other
stuff, you prove basically

00:33:14.490 --> 00:33:16.490
doesn't matter.

00:33:16.490 --> 00:33:20.940
So that is NP-completeness
of edge unfolding

00:33:20.940 --> 00:33:23.730
of topologically
convex polyhedra,

00:33:23.730 --> 00:33:25.590
even orthogonal
polyhedra, which is

00:33:25.590 --> 00:33:29.855
kind of nifty-- from last year.

00:33:32.455 --> 00:33:34.080
If you actually want
to unfold things--

00:33:34.080 --> 00:33:36.550
if you want to build
things out of paper,

00:33:36.550 --> 00:33:39.430
the current best heuristic
unfolder is called Pepakura.

00:33:39.430 --> 00:33:42.800
It's a free download online,
probably Windows only.

00:33:42.800 --> 00:33:44.840
You can take some
weird 3D model.

00:33:44.840 --> 00:33:48.330
And it uses multiple pieces, in
general, but you can add tabs

00:33:48.330 --> 00:33:50.550
and it's quite practical.

00:33:50.550 --> 00:33:54.050
And cut it out, either
manually or with your computer

00:33:54.050 --> 00:33:55.950
controlled sign
cutter or something

00:33:55.950 --> 00:34:00.020
and then fold up your pieces.

00:34:00.020 --> 00:34:02.270
When a one piece
unfolding is possible,

00:34:02.270 --> 00:34:03.480
it will typically find it.

00:34:03.480 --> 00:34:05.160
But it's not guaranteed.

00:34:05.160 --> 00:34:07.330
I don't know exactly
what algorithm it uses.

00:34:07.330 --> 00:34:08.889
But some combination
of brute force

00:34:08.889 --> 00:34:12.159
and just cutting into
multiple pieces when it fails.

00:34:18.620 --> 00:34:23.320
Next up, we have band unfolding.

00:34:23.320 --> 00:34:25.310
So I talked very briefly
about band unfolding.

00:34:25.310 --> 00:34:28.497
I thought I'd show you
some pictures about it.

00:34:28.497 --> 00:34:31.080
And so remember, we're talking
about volcano unfoldings, which

00:34:31.080 --> 00:34:32.830
is when you cut
along all the edges

00:34:32.830 --> 00:34:35.530
from a point or it's sort
of in the vertical thing.

00:34:35.530 --> 00:34:38.150
Band unfolding was when
you had some side faces,

00:34:38.150 --> 00:34:42.250
you kept those intact and
cut everything else away.

00:34:42.250 --> 00:34:44.150
So what do I have to show here?

00:34:44.150 --> 00:34:50.489
This is an example of a band
unfolding gone wrong-- I guess.

00:34:50.489 --> 00:34:52.139
It's a little hard to see.

00:34:52.139 --> 00:34:54.170
This is, in general,
a prismatoid.

00:34:54.170 --> 00:34:57.320
We had a top polygon, A,
here, and then below it,

00:34:57.320 --> 00:35:00.060
this is polygon, B. We
took the convex hull, which

00:35:00.060 --> 00:35:01.910
adds all these other edges.

00:35:01.910 --> 00:35:06.630
And this is an example of a
bad unfolding of a primatoid.

00:35:06.630 --> 00:35:08.530
Here's an example of
a bad-- this is really

00:35:08.530 --> 00:35:11.740
a band unfolding
that has gone wrong.

00:35:11.740 --> 00:35:15.620
So imagine here the top
polygon is this triangle.

00:35:15.620 --> 00:35:17.270
Bottom polygon is this triangle.

00:35:17.270 --> 00:35:18.005
That nicely nest.

00:35:18.005 --> 00:35:21.180
It's a very easy
example, seemingly.

00:35:21.180 --> 00:35:23.590
But for whatever reason,
we also added this cut.

00:35:23.590 --> 00:35:27.680
And you can actually force
that if I make this not quite--

00:35:27.680 --> 00:35:29.490
actually, maybe it's
not quite a triangle.

00:35:29.490 --> 00:35:30.470
It's a quadrilateral.

00:35:30.470 --> 00:35:32.930
Yeah, and this is
slightly a quadrilateral.

00:35:32.930 --> 00:35:35.200
So when you take a convex
hull, you get that edge.

00:35:35.200 --> 00:35:37.900
If you cut along that edge
and then cut along here

00:35:37.900 --> 00:35:41.010
and cut along here and
do the band unfolding

00:35:41.010 --> 00:35:44.080
thing-- we're not even drawing
the bottom polygon here-- just

00:35:44.080 --> 00:35:49.790
the band itself overlaps,
which is annoying.

00:35:49.790 --> 00:35:53.070
Nonetheless-- so this
is an old example--

00:35:53.070 --> 00:35:57.776
but nonetheless, we proved
that there's at least one place

00:35:57.776 --> 00:35:59.150
to cut the band--
like here would

00:35:59.150 --> 00:36:02.920
work-- that will avoid overlap.

00:36:02.920 --> 00:36:06.310
And this is some
parts the proof.

00:36:06.310 --> 00:36:10.370
In general, here we're
looking at the inner polygon.

00:36:10.370 --> 00:36:12.770
And we cut it somewhere.

00:36:12.770 --> 00:36:16.609
And then we argue about where
that vertex goes if we open up

00:36:16.609 --> 00:36:18.150
all the angles,
which is what happens

00:36:18.150 --> 00:36:20.440
when you squash it flat.

00:36:20.440 --> 00:36:23.200
And in particular,
we argue this vertex

00:36:23.200 --> 00:36:26.510
must stay in the gray
region, like in the picture

00:36:26.510 --> 00:36:30.850
on the right, so it
can't go up here.

00:36:30.850 --> 00:36:33.470
And so in general, if you look
at how these things unfold,

00:36:33.470 --> 00:36:36.280
if you're lucky, things will
be convex when you open it.

00:36:36.280 --> 00:36:38.130
This is always going to be good.

00:36:38.130 --> 00:36:40.400
There's this weakly
convex picture,

00:36:40.400 --> 00:36:42.880
where when you
close the ends, it's

00:36:42.880 --> 00:36:45.730
not quite convex but
only at one point.

00:36:48.840 --> 00:36:53.420
This is troublesome--
sometimes this works,

00:36:53.420 --> 00:36:54.510
sometimes it doesn't.

00:36:54.510 --> 00:36:56.550
If you look at this
example, I believe

00:36:56.550 --> 00:36:58.850
it is in the weakly
convex category.

00:36:58.850 --> 00:37:01.790
I haven't told you the
other one is a spiral.

00:37:01.790 --> 00:37:06.190
Here, if you draw a 90 degree
angle from this last bar,

00:37:06.190 --> 00:37:11.110
then this guy is on wrong
side of that 90 degree thing.

00:37:11.110 --> 00:37:13.740
This thing can't happen.

00:37:13.740 --> 00:37:17.190
So that's comforting.

00:37:17.190 --> 00:37:19.460
And it's related
to this property.

00:37:19.460 --> 00:37:21.390
But these things
can cause problems

00:37:21.390 --> 00:37:23.220
like in the previous picture.

00:37:23.220 --> 00:37:25.760
And so you have to argue
that there is a place

00:37:25.760 --> 00:37:29.600
to cut where you don't get
this or if when you get it,

00:37:29.600 --> 00:37:30.590
it's still OK.

00:37:30.590 --> 00:37:33.440
And that's a messy argument--
a lot of case analysis

00:37:33.440 --> 00:37:35.160
I won't go through here.

00:37:35.160 --> 00:37:39.970
I think I have one picture
of a nicely working example.

00:37:39.970 --> 00:37:45.300
This is, I guess, a
general primatoid.

00:37:45.300 --> 00:37:48.770
But here, we have a
nice cutting that works.

00:37:48.770 --> 00:37:53.510
The original question that
someone here posed was,

00:37:53.510 --> 00:37:54.970
what about prismoids?

00:37:54.970 --> 00:37:57.730
So we know the band
unfolds nicely.

00:37:57.730 --> 00:38:00.170
What we don't know is, can
you attach the top polygon

00:38:00.170 --> 00:38:03.067
and the bottom polygons to
the band and get an unfolding.

00:38:03.067 --> 00:38:05.400
We don't know, for example,
whether all prismatoids have

00:38:05.400 --> 00:38:07.890
edge unfoldings,
because we don't

00:38:07.890 --> 00:38:09.780
know how to place the
top and bottom things.

00:38:09.780 --> 00:38:11.730
Probably possible
but really hard

00:38:11.730 --> 00:38:14.820
to figure out where
they would go.

00:38:14.820 --> 00:38:20.150
A simpler problem is prismoids--
which this might actually

00:38:20.150 --> 00:38:20.802
be a prismoid.

00:38:20.802 --> 00:38:22.260
If you know that
all of these edges

00:38:22.260 --> 00:38:29.240
are parallel initially-- so it's
a very nice situation-- then

00:38:29.240 --> 00:38:31.170
that's a more special
case from prismatoids--

00:38:31.170 --> 00:38:33.590
then maybe you could attach
the interface and outerface.

00:38:33.590 --> 00:38:35.270
We don't know.

00:38:35.270 --> 00:38:37.770
We know volcano unfoldings
work for prismoids.

00:38:37.770 --> 00:38:39.270
We don't know about
band unfoldings.

00:38:39.270 --> 00:38:41.960
That could be an interesting
open problem to work on.

00:38:41.960 --> 00:38:43.890
Maybe it's easy with prismoids.

00:38:43.890 --> 00:38:48.330
They seem pretty clean,
but I don't know for sure.

00:38:48.330 --> 00:38:50.960
Oh, another fun thing, which
relates to our next topic,

00:38:50.960 --> 00:38:55.090
is that if you just
unfold the band part,

00:38:55.090 --> 00:38:58.720
you can do it by continuous
blooming-- meaning there's

00:38:58.720 --> 00:39:01.900
a continuous motion
from the folded thing

00:39:01.900 --> 00:39:04.130
to the unfolded
thing, or vice versa.

00:39:04.130 --> 00:39:06.220
And the easy way to see
that-- you kind of get

00:39:06.220 --> 00:39:09.860
a sense from this picture--
in general, when you squash it

00:39:09.860 --> 00:39:12.190
all the way flat, it opens.

00:39:12.190 --> 00:39:15.840
Like this initial grey diagram
is a projection of the original

00:39:15.840 --> 00:39:16.510
thing.

00:39:16.510 --> 00:39:18.670
If you-- instead of
opening it all the way--

00:39:18.670 --> 00:39:20.750
if you kind of squish
it from the top

00:39:20.750 --> 00:39:23.310
and just keep lowering
that top face, at the end,

00:39:23.310 --> 00:39:25.080
it's fully in the plane.

00:39:25.080 --> 00:39:27.050
But in the middle,
you have a motion.

00:39:27.050 --> 00:39:29.780
And by the same
argument, at all times,

00:39:29.780 --> 00:39:31.030
you are non-self intersecting.

00:39:31.030 --> 00:39:33.350
So that actually gives
you a continuous blooming

00:39:33.350 --> 00:39:37.385
of the band of a prismatoid,
which is kind of cool.

00:39:39.890 --> 00:39:42.690
So the next topic is blooming.

00:39:42.690 --> 00:39:44.350
This is the last topic also.

00:39:44.350 --> 00:39:46.400
A bunch of people asked
about continuous booming

00:39:46.400 --> 00:39:49.080
and so the obvious one
to learn more about.

00:39:49.080 --> 00:39:55.530
So I have some algorithms
and examples for you.

00:39:55.530 --> 00:39:57.840
This is the paper--
a bunch of authors,

00:39:57.840 --> 00:40:00.030
"Continuous Blooming
of Convex Polyhedra."

00:40:00.030 --> 00:40:01.880
This problem was
posed by Connolly,

00:40:01.880 --> 00:40:04.715
I believe, a bunch
of years prior.

00:40:10.380 --> 00:40:13.580
It's still not known whether
every unfolding continuously

00:40:13.580 --> 00:40:14.700
blooms.

00:40:14.700 --> 00:40:17.940
It could be that
every unfolding--

00:40:17.940 --> 00:40:21.020
every non-overlapping unfolding
of a convex polyhedron--

00:40:21.020 --> 00:40:22.160
continuously blooms.

00:40:22.160 --> 00:40:25.530
I would guess the answer is,
it doesn't but it's plausible.

00:40:25.530 --> 00:40:27.750
That was the original question.

00:40:27.750 --> 00:40:30.000
What we found are
two different ways

00:40:30.000 --> 00:40:33.060
to continuously bloom
any convex polyhedron,

00:40:33.060 --> 00:40:34.784
but we choose the unfolding.

00:40:34.784 --> 00:40:36.450
So we have a couple
different strategies

00:40:36.450 --> 00:40:38.920
for choosing unfoldings
that do continuously bloom.

00:40:38.920 --> 00:40:41.150
Whether every unfolding
continuously blooms,

00:40:41.150 --> 00:40:42.130
I don't know.

00:40:42.130 --> 00:40:44.730
There are definitely unfoldings
of non-convex polyhedra that

00:40:44.730 --> 00:40:48.390
do not continuously bloom,
based on knitting needles type

00:40:48.390 --> 00:40:50.880
examples, based on
bad linkage stuff.

00:40:50.880 --> 00:40:53.890
But for convex
polyhedra, I'm not sure.

00:40:56.930 --> 00:40:58.425
So what do we have first?

00:40:58.425 --> 00:41:02.800
First strategy actually starts
from any unfolding you have.

00:41:02.800 --> 00:41:06.370
So we start here from the
cross unfolding of the cube.

00:41:06.370 --> 00:41:07.920
And then it refines it.

00:41:07.920 --> 00:41:09.990
So a similar strategy
to hinged dissection,

00:41:09.990 --> 00:41:14.130
although I think this was
done before hinged dissection.

00:41:14.130 --> 00:41:16.670
Let's take some
hinged structure,

00:41:16.670 --> 00:41:18.665
add extra cuts and extra hinges.

00:41:18.665 --> 00:41:21.040
In this case, I mean the hinges
are going to be the same.

00:41:21.040 --> 00:41:22.770
It's just adding extra cuts.

00:41:22.770 --> 00:41:26.030
So we're going to cut along
the red thing and also

00:41:26.030 --> 00:41:27.160
this red dashed line.

00:41:27.160 --> 00:41:31.990
The red thing is a
spanning tree of the--

00:41:31.990 --> 00:41:33.780
or it's really the dual graph.

00:41:33.780 --> 00:41:35.640
So we have, the
dual graph is you

00:41:35.640 --> 00:41:37.580
have a vertex for every face.

00:41:37.580 --> 00:41:39.650
You connect them together
if they share an edge.

00:41:39.650 --> 00:41:41.710
In this case, when
they share an edge,

00:41:41.710 --> 00:41:43.070
we're going to cut along there.

00:41:43.070 --> 00:41:44.990
So we cut along
all this red stuff.

00:41:44.990 --> 00:41:48.760
And the cool thing is, if you
walk around the red structure,

00:41:48.760 --> 00:41:51.420
you get a cycle-- a
Hamiltonian cycle that

00:41:51.420 --> 00:41:53.520
visits all the
faces exactly once.

00:41:53.520 --> 00:41:57.100
We want to path, not a cycle,
so we add one more cut.

00:41:57.100 --> 00:42:00.230
So then this blue
dash thing is a path.

00:42:00.230 --> 00:42:02.720
And the claim is,
any path shaped

00:42:02.720 --> 00:42:05.980
unfolding-- where the faces are
connected together in a path--

00:42:05.980 --> 00:42:07.900
can be continuously bloomed.

00:42:07.900 --> 00:42:09.410
How do you do it?

00:42:09.410 --> 00:42:09.910
Roll.

00:42:13.210 --> 00:42:15.570
So it's a little
easier for me to think

00:42:15.570 --> 00:42:17.285
about unrolling
rather than rolling,

00:42:17.285 --> 00:42:18.410
but they're the same thing.

00:42:18.410 --> 00:42:21.580
So imagine, you
start with the cube.

00:42:21.580 --> 00:42:25.580
And then you just roll it--
you unroll one face at a time.

00:42:25.580 --> 00:42:28.490
So initially, there was a
90 degree fold angle here.

00:42:28.490 --> 00:42:31.812
Just unroll it, so that now
they're in the same plane.

00:42:31.812 --> 00:42:33.770
And there was initially
a 90 degree angle here.

00:42:33.770 --> 00:42:35.200
Unroll that.

00:42:35.200 --> 00:42:38.160
After three steps,
I think-- this guy's

00:42:38.160 --> 00:42:42.850
been flattened, two, three--
we have this picture.

00:42:42.850 --> 00:42:44.960
In general, I would
normally draw it rotated,

00:42:44.960 --> 00:42:50.140
so that the unfolded part
lives in the floor of xy-plane.

00:42:50.140 --> 00:42:52.930
And the polyhedron lives in z
greater than or equal to zero,

00:42:52.930 --> 00:42:55.340
so lives above that plane.

00:42:55.340 --> 00:42:58.800
What you know at all times
is that the unfolded part

00:42:58.800 --> 00:43:00.910
is a subset of the unfolding.

00:43:00.910 --> 00:43:03.010
It's a subset of this picture.

00:43:03.010 --> 00:43:04.970
So it doesn't overlap itself.

00:43:04.970 --> 00:43:06.910
If you start with a
non-overlapping unfolding,

00:43:06.910 --> 00:43:09.330
you do this cutting.

00:43:09.330 --> 00:43:11.390
And then you just take
some subset of the faces--

00:43:11.390 --> 00:43:13.710
a prefix of the
path-- then that will

00:43:13.710 --> 00:43:15.430
be a non-overlapping thing.

00:43:15.430 --> 00:43:17.390
On the other hand, the
polyhedron that remains,

00:43:17.390 --> 00:43:18.350
we haven't touched.

00:43:18.350 --> 00:43:19.940
I mean, it's rotating.

00:43:19.940 --> 00:43:22.680
You have to make sure it
stays above the plane here.

00:43:22.680 --> 00:43:26.390
But it is just a subset
of the faces of the cube.

00:43:26.390 --> 00:43:28.130
The cube is also not
self intersecting.

00:43:28.130 --> 00:43:29.780
So any subset is not
self intersecting.

00:43:29.780 --> 00:43:31.710
So this thing doesn't
self intersect.

00:43:31.710 --> 00:43:34.930
This thing doesn't
self intersect.

00:43:34.930 --> 00:43:39.700
Potentially, this cube will
be resting on like f1 here.

00:43:39.700 --> 00:43:43.470
It's possible for this thing
to unroll and just touch

00:43:43.470 --> 00:43:46.910
the plane-- xy-plane.

00:43:46.910 --> 00:43:49.790
But it won't penetrate it, just
because this thing's convex

00:43:49.790 --> 00:43:51.220
and this is a plane.

00:43:51.220 --> 00:43:53.530
So you can always keep this
thing above-- keep a convex

00:43:53.530 --> 00:43:56.650
shape above-- or what
was a convex shape--

00:43:56.650 --> 00:44:00.000
a partial version of a
convex shape-- above a plane.

00:44:00.000 --> 00:44:02.040
But they can be
potentially touching,

00:44:02.040 --> 00:44:04.900
even along two
dimensional surfaces.

00:44:04.900 --> 00:44:08.720
So if you allow touching, this
is the path unroll algorithm.

00:44:08.720 --> 00:44:09.990
It works fine.

00:44:09.990 --> 00:44:11.490
If you don't want
to allow touching,

00:44:11.490 --> 00:44:20.970
you need a slightly better
strategy, which I'll tell you.

00:44:20.970 --> 00:44:22.550
It's pretty simple.

00:44:22.550 --> 00:44:26.300
I won't argue that
it works, but it's

00:44:26.300 --> 00:44:28.170
called the 2-step unfolding.

00:44:28.170 --> 00:44:30.550
This is named after
the 2-step dance.

00:44:30.550 --> 00:44:33.180
So we alternate between
two kinds of steps.

00:44:33.180 --> 00:44:45.430
One is unfold of edge, ei, to
be almost coplanar-- sorry,

00:44:45.430 --> 00:44:57.710
this should be a
face-- face, fi,

00:44:57.710 --> 00:45:03.995
to be almost coplanar with
the previous one, fi minus 1.

00:45:03.995 --> 00:45:05.870
So that does correspond
to unfolding an edge,

00:45:05.870 --> 00:45:08.870
but I'm going to think
about numbering the faces.

00:45:08.870 --> 00:45:11.220
Almost means we
unfold it to epsilon

00:45:11.220 --> 00:45:14.980
within the angle of 180 degrees.

00:45:14.980 --> 00:45:26.230
Then we finish unfolding the
previous step-- fi minus 1.

00:45:26.230 --> 00:45:27.080
And then we repeat.

00:45:30.077 --> 00:45:31.035
This is a little funny.

00:45:33.830 --> 00:45:36.110
So we're worried that if
we unfold all the way flat,

00:45:36.110 --> 00:45:38.900
we'll actually live in the plane
and then we'll touch things.

00:45:38.900 --> 00:45:40.042
We don't want to do that.

00:45:40.042 --> 00:45:42.000
So we're going to unfold
it almost all the way.

00:45:42.000 --> 00:45:44.460
But when we're done,
we do want to be flat.

00:45:44.460 --> 00:45:47.729
So I don't want to just unfold
everything almost all the way.

00:45:47.729 --> 00:45:49.520
That might work, but
it's a little tricky--

00:45:49.520 --> 00:45:51.840
the almost might interact.

00:45:51.840 --> 00:45:55.400
So what I'm going to do is just
keep one guy almost unfolded.

00:45:55.400 --> 00:45:57.150
That will be the previous one.

00:45:57.150 --> 00:45:58.990
When I've almost
unfolded the next guy,

00:45:58.990 --> 00:46:01.516
I will finish unfolding
the previous guy.

00:46:01.516 --> 00:46:03.390
Then we will almost
unfold the next, next guy

00:46:03.390 --> 00:46:06.390
and then finish unfolding
the next guy, and so on.

00:46:06.390 --> 00:46:07.870
And this turns out to work.

00:46:07.870 --> 00:46:10.870
Essentially, you've got
your fully planar part,

00:46:10.870 --> 00:46:14.180
which is everything
before i minus 2.

00:46:14.180 --> 00:46:15.930
That would be completely flat.

00:46:15.930 --> 00:46:18.050
Then the next angle
will be almost flat.

00:46:18.050 --> 00:46:20.260
And then the rest will
be in its original state.

00:46:20.260 --> 00:46:22.610
And you can argue the
appropriate definitions

00:46:22.610 --> 00:46:23.650
of almost.

00:46:23.650 --> 00:46:26.190
There will be no--
in this case, there

00:46:26.190 --> 00:46:28.300
will be no two
dimensional overlap.

00:46:28.300 --> 00:46:31.890
You still can get an edge
resting on another thing--

00:46:31.890 --> 00:46:33.210
still not quite perfect.

00:46:33.210 --> 00:46:38.700
To make it completely
perfect, we need a waltz.

00:46:38.700 --> 00:46:41.775
So the waltz is a
three step dance.

00:46:45.960 --> 00:46:54.190
So the waltz, we have-- a
little tricky-- we unfold fi

00:46:54.190 --> 00:47:02.480
to almost coplanar-- almost
180 degrees, with fi minus 1.

00:47:02.480 --> 00:47:09.270
Then we unfold fi
plus 1 slightly.

00:47:12.230 --> 00:47:23.690
And then we finish
unfolding fi minus 1.

00:47:23.690 --> 00:47:26.440
So there's essentially
a potential interaction

00:47:26.440 --> 00:47:28.850
between fi plus
1 and fi minus 1.

00:47:28.850 --> 00:47:31.610
We do a little bit of
unfolding to prevent that

00:47:31.610 --> 00:47:34.910
from being an issue here.

00:47:34.910 --> 00:47:38.690
And so you end up with this
three step waltz thing.

00:47:41.790 --> 00:47:45.980
Stefan Langerman is a dancer,
so he liked this terminology.

00:47:45.980 --> 00:47:48.040
I won't argue here
that that works,

00:47:48.040 --> 00:47:50.510
but now actually, you
avoid all touching.

00:47:50.510 --> 00:47:54.110
Last picture I wanted
to show you is I

00:47:54.110 --> 00:47:55.590
said there were
two ways to unfold.

00:47:55.590 --> 00:47:58.419
One was you take any unfolding,
you make it Hamiltonian.

00:47:58.419 --> 00:48:00.960
And then you unroll it, using
one of these three algorithms--

00:48:00.960 --> 00:48:04.390
just regular unroll,
two step, or waltz.

00:48:04.390 --> 00:48:08.660
But another strategy we know
works is the source unfolding.

00:48:08.660 --> 00:48:10.710
Here, no extra cuts required.

00:48:10.710 --> 00:48:13.290
Source unfolding is like the
cleanest, coolest unfolding.

00:48:13.290 --> 00:48:15.490
It turns out it just unfolds.

00:48:15.490 --> 00:48:17.080
No problem.

00:48:17.080 --> 00:48:18.200
How do we unfold it?

00:48:18.200 --> 00:48:22.020
We follow a post order
traversal of the tree of faces,

00:48:22.020 --> 00:48:25.500
meaning we completely
do one subtree.

00:48:25.500 --> 00:48:29.060
And now, here, we're in the
middle of doing this subtree.

00:48:29.060 --> 00:48:31.920
So here, we just have a cube
with x being this point.

00:48:31.920 --> 00:48:33.190
And so the reds are the cuts.

00:48:33.190 --> 00:48:34.170
Pretty simple example.

00:48:34.170 --> 00:48:36.450
You just have a
star of four prongs.

00:48:36.450 --> 00:48:38.840
But here, we've completely
unfolded this subtree.

00:48:38.840 --> 00:48:40.820
We've done one step
of this subtree.

00:48:40.820 --> 00:48:42.800
The next thing we would
do is flip it open.

00:48:42.800 --> 00:48:45.460
Then we do the next one,
then we do the next one.

00:48:45.460 --> 00:48:48.550
Essentially what we argue
here, in one minute,

00:48:48.550 --> 00:48:53.270
is as you unfold you
can think of-- well,

00:48:53.270 --> 00:48:54.650
there's a couple
things going on.

00:48:54.650 --> 00:48:57.650
One is just look
at a shortest path.

00:48:57.650 --> 00:48:58.150
Right?

00:48:58.150 --> 00:49:01.900
This source unfolding is made
by a star of shortest paths.

00:49:01.900 --> 00:49:07.700
So just think of each shortest
path individually for now.

00:49:07.700 --> 00:49:10.800
Individually, if you look
at a single shortest path,

00:49:10.800 --> 00:49:12.850
it hits some sequence of faces.

00:49:12.850 --> 00:49:17.190
Those faces form a
path-like unfolding.

00:49:17.190 --> 00:49:19.360
So you just use path unroll.

00:49:19.360 --> 00:49:21.590
And that will work.

00:49:21.590 --> 00:49:24.090
The only issue is potential
interactions between the paths.

00:49:24.090 --> 00:49:28.360
And that's where you have to get
into the post order traversal.

00:49:28.360 --> 00:49:32.040
In general, you want this
shortest path to stay shortest.

00:49:32.040 --> 00:49:34.400
What we're going to do
is imagine the polyhedron

00:49:34.400 --> 00:49:37.220
in some sense as growing here.

00:49:37.220 --> 00:49:42.139
So as we unfold-- like, as
we start unfolding this--

00:49:42.139 --> 00:49:44.055
we can think of the
interior of the polyhedron

00:49:44.055 --> 00:49:45.890
as just getting bigger.

00:49:45.890 --> 00:49:47.570
And in that convex
polyhedron, it

00:49:47.570 --> 00:49:50.500
turns out still these
paths remain shortest.

00:49:50.500 --> 00:49:52.997
And by that, all the
variants to work out.

00:49:52.997 --> 00:49:54.830
And you could argue
that the paths basically

00:49:54.830 --> 00:49:56.560
don't interact with
each other, because

00:49:56.560 --> 00:49:57.620
of post order traversal.

00:49:57.620 --> 00:49:58.620
That was very hand wavy.

00:49:58.620 --> 00:50:01.690
The actual proof is a
bit technical and more

00:50:01.690 --> 00:50:05.900
than I can do in zero minutes.

00:50:05.900 --> 00:50:09.320
That's a sketch of
continuous blooming

00:50:09.320 --> 00:50:12.170
of source unfolding,
which is pretty cool.

00:50:12.170 --> 00:50:14.110
Star unfolding is open.

00:50:14.110 --> 00:50:18.800
Whether all unfoldings of
convex polyhedra work is open.

00:50:18.800 --> 00:50:21.042
For non-convex
polyhedra, there are

00:50:21.042 --> 00:50:23.500
bunch of non-convex polyhedra,
which we'll be talking about

00:50:23.500 --> 00:50:27.150
in future lectures, that
we know have unfoldings.

00:50:27.150 --> 00:50:28.600
Do they have
continuous blooming?

00:50:28.600 --> 00:50:29.430
We have no idea.

00:50:29.430 --> 00:50:32.610
This is the state of
the art for bloomings.

00:50:32.610 --> 00:50:34.930
Still a lot of interesting
open questions.

00:50:34.930 --> 00:50:38.952
Any other questions from you?

00:50:38.952 --> 00:50:41.680
All right, that's it.