1 00:00:03,310 --> 00:00:05,620 PROFESSOR: All right, let's get started. 2 00:00:05,620 --> 00:00:09,470 We are continuing our theme of folding polygons 3 00:00:09,470 --> 00:00:14,520 into convex polyhedra. 4 00:00:14,520 --> 00:00:18,050 Let's do a quick reminder, we're talking 5 00:00:18,050 --> 00:00:22,845 about gluing up the boundary of a polygon to itself. 6 00:00:29,030 --> 00:00:35,640 And we were representing that with gluing trees last time. 7 00:00:35,640 --> 00:00:39,214 So I want to do an actual example of a gluing tree. 8 00:00:39,214 --> 00:00:40,630 So this is how you make a cube out 9 00:00:40,630 --> 00:00:42,975 of a cross, my favorite example. 10 00:00:45,910 --> 00:00:49,400 And a valid gluing, it's an Alexandroff 11 00:00:49,400 --> 00:00:51,256 gluing because it has no crossing, so 12 00:00:51,256 --> 00:00:52,380 its topologically a sphere. 13 00:00:52,380 --> 00:00:54,410 Everything is glued to everything. 14 00:00:54,410 --> 00:00:58,200 And it never glues more than 360 degrees of material 15 00:00:58,200 --> 00:00:58,910 to any point. 16 00:00:58,910 --> 00:01:02,180 In fact, it's going to be 270 at every point, 17 00:01:02,180 --> 00:01:06,210 because that's the curvature of every vertex of a cube. 18 00:01:06,210 --> 00:01:11,927 And the gluing tree was, if we sort of turned this inside out 19 00:01:11,927 --> 00:01:14,260 and think of the polygon as being on the outside instead 20 00:01:14,260 --> 00:01:17,650 of the inside, it's really hard to see here how to convert 21 00:01:17,650 --> 00:01:20,340 that into a gluing tree, though you can do it. 22 00:01:20,340 --> 00:01:23,057 It's the way that these arrows nest. 23 00:01:23,057 --> 00:01:25,140 But it's a little easier to think of on the sphere 24 00:01:25,140 --> 00:01:27,348 or on the polyhedron, because then turning inside out 25 00:01:27,348 --> 00:01:28,670 is just upside down. 26 00:01:28,670 --> 00:01:29,980 It's not a big deal. 27 00:01:29,980 --> 00:01:38,042 So if we look at where the cut are on the cube, 28 00:01:38,042 --> 00:01:40,280 it looks something like this. 29 00:01:40,280 --> 00:01:41,874 That should be a cross. 30 00:01:41,874 --> 00:01:43,290 This is the top of the cross, this 31 00:01:43,290 --> 00:01:44,730 is the bottom of the cross. 32 00:01:44,730 --> 00:01:47,420 It goes around the back side. 33 00:01:47,420 --> 00:01:50,640 So then the gluing tree is essentially this doubled. 34 00:01:50,640 --> 00:01:53,690 If we walk around the outside of the cuts, 35 00:01:53,690 --> 00:01:55,310 that is the gluing tree. 36 00:01:55,310 --> 00:01:59,680 So I can see, there's this segment, then this segment, 37 00:01:59,680 --> 00:02:02,460 then that segment. 38 00:02:02,460 --> 00:02:09,789 Then we're back here, then we go up one, two, 39 00:02:09,789 --> 00:02:10,810 and then we turn around. 40 00:02:10,810 --> 00:02:15,000 That's a leaf, and so it's going to look like this weird h 41 00:02:15,000 --> 00:02:16,530 shape. 42 00:02:16,530 --> 00:02:19,855 And these are vertices. 43 00:02:26,290 --> 00:02:29,760 That's right, all of these should be vertices. 44 00:02:29,760 --> 00:02:32,820 And locally you can see, ah, this is a 90 degree angle. 45 00:02:32,820 --> 00:02:34,530 This is actually the top of the cross, 46 00:02:34,530 --> 00:02:36,924 remember the polygon is now out here. 47 00:02:36,924 --> 00:02:38,340 That's going to be the top across. 48 00:02:38,340 --> 00:02:40,120 This is where it turns, it gets a little confusing 49 00:02:40,120 --> 00:02:41,500 because of the way I've drawn it. 50 00:02:41,500 --> 00:02:42,640 Here's the bottom of the cross. 51 00:02:42,640 --> 00:02:43,806 Those parts are easy to see. 52 00:02:43,806 --> 00:02:46,050 The rest is little awkward. 53 00:02:46,050 --> 00:02:47,790 But for algorithms, this is a great way 54 00:02:47,790 --> 00:02:48,860 to think about things. 55 00:02:48,860 --> 00:02:51,380 And also for proving bounds and how many different ways 56 00:02:51,380 --> 00:02:54,300 to fold, it's really useful to think about gluing trees. 57 00:02:54,300 --> 00:02:56,330 Of course, all of these views are equivalent, 58 00:02:56,330 --> 00:02:59,840 but a lot of things will be easier to analyze here. 59 00:02:59,840 --> 00:03:02,300 So, clear? 60 00:03:02,300 --> 00:03:07,860 Let me first tell you what we're going to prove today. 61 00:03:07,860 --> 00:03:15,760 We're going to do combinatorial bounds and algorithms 62 00:03:15,760 --> 00:03:17,093 for all of this. 63 00:03:20,460 --> 00:03:21,790 And let's see. 64 00:03:21,790 --> 00:03:28,370 So I want general gluings, general situation, 65 00:03:28,370 --> 00:03:35,390 edge-to-edge gluings, and a particular kind of polygon 66 00:03:35,390 --> 00:03:36,573 called bounded sharpness. 67 00:03:44,120 --> 00:03:46,110 And then I want two columns. 68 00:03:49,610 --> 00:03:52,112 The first question is, how many gluings are there? 69 00:03:52,112 --> 00:03:54,320 And whenever we get a bound on the number of gluings, 70 00:03:54,320 --> 00:03:56,680 we're also going to get an enumeration algorithm. 71 00:03:59,287 --> 00:04:00,620 Remember, there are three goals. 72 00:04:00,620 --> 00:04:01,786 The first goal was decision. 73 00:04:01,786 --> 00:04:03,280 Is there any folding? 74 00:04:03,280 --> 00:04:07,070 Second goal was enumeration, give me all the foldings. 75 00:04:07,070 --> 00:04:09,210 And third goal was counting, I think. 76 00:04:09,210 --> 00:04:12,985 How many different solutions are there? 77 00:04:12,985 --> 00:04:19,290 For [INAUDIBLE], this is mainly about decision and enumeration. 78 00:04:19,290 --> 00:04:21,040 And this number of gluings, that's 79 00:04:21,040 --> 00:04:23,540 the combinatorial problem. 80 00:04:23,540 --> 00:04:25,490 So it turns out, for everything the we'll do, 81 00:04:25,490 --> 00:04:27,180 these two have the same answer. 82 00:04:27,180 --> 00:04:29,050 So I'm going to put it in one column. 83 00:04:29,050 --> 00:04:30,430 But sometimes for a decision, you 84 00:04:30,430 --> 00:04:33,740 can do it a little faster than enumerating them. 85 00:04:33,740 --> 00:04:37,920 In particular, because the number of gluings 86 00:04:37,920 --> 00:04:40,394 can be exponential. 87 00:04:40,394 --> 00:04:42,560 We saw last time that it could actually be infinite. 88 00:04:42,560 --> 00:04:44,320 I'm going to fix that, don't worry. 89 00:04:44,320 --> 00:04:45,700 We'll make it finite. 90 00:04:45,700 --> 00:04:47,940 And then the right bound is exponential. 91 00:04:47,940 --> 00:04:50,760 There's upper and lower bounds of two to the theta n. 92 00:04:54,833 --> 00:05:00,106 And also here, bounded sharpness is interesting 93 00:05:00,106 --> 00:05:01,105 because it's polynomial. 94 00:05:04,490 --> 00:05:05,890 And so this is also polynomial. 95 00:05:18,600 --> 00:05:22,900 The one result here that is not tight is this one. 96 00:05:22,900 --> 00:05:26,089 It's an open question whether for the general setup, the most 97 00:05:26,089 --> 00:05:28,005 interesting scenario, just give you a polygon, 98 00:05:28,005 --> 00:05:29,910 is there any gluing? 99 00:05:29,910 --> 00:05:32,860 The best algorithm we know is exponential, 100 00:05:32,860 --> 00:05:35,250 even to decide whether there's a gluing. 101 00:05:35,250 --> 00:05:37,270 So I put a star there to say that. 102 00:05:37,270 --> 00:05:38,179 It is not tight. 103 00:05:38,179 --> 00:05:40,220 The open problem is, can you do it in polynomial? 104 00:05:40,220 --> 00:05:46,090 I suspect yes, but we worked on it a long time ago and failed. 105 00:05:46,090 --> 00:05:49,130 For the special case of edge-to-edge gluings, which 106 00:05:49,130 --> 00:05:51,630 is when you only glue whole edges of the polygons 107 00:05:51,630 --> 00:05:58,682 to other whole edges, there is a n to the order one algorithm. 108 00:05:58,682 --> 00:06:00,640 You can think of this as an edge-to-edge gluing 109 00:06:00,640 --> 00:06:02,360 if you imagine this as being two edges. 110 00:06:02,360 --> 00:06:04,450 If I actually draw a vertex there, 111 00:06:04,450 --> 00:06:06,284 then this is an edge-to-edge gluing. 112 00:06:06,284 --> 00:06:08,450 And then there's a polynomial algorithm to tell you, 113 00:06:08,450 --> 00:06:09,550 is there any folding? 114 00:06:12,310 --> 00:06:14,705 If you want to list all of the gluings though, 115 00:06:14,705 --> 00:06:16,330 you need exponential time because there 116 00:06:16,330 --> 00:06:18,870 can be exponentially many. 117 00:06:18,870 --> 00:06:21,250 But everything except this one result 118 00:06:21,250 --> 00:06:22,936 is the best you could hope for. 119 00:06:22,936 --> 00:06:25,800 Bounded sharpness is a natural sense 120 00:06:25,800 --> 00:06:29,310 in which this exponential is kind of cheating. 121 00:06:29,310 --> 00:06:32,150 Let's see, let me tell you about bounded sharpness. 122 00:06:42,420 --> 00:06:47,610 I want to bound how sharp an angle can be in a polygon. 123 00:06:47,610 --> 00:06:50,530 This is a really sharp angle. 124 00:06:50,530 --> 00:07:00,120 If every angle-- is that actually the sharpness I want? 125 00:07:00,120 --> 00:07:01,700 Actually, no. 126 00:07:01,700 --> 00:07:06,470 Sorry, I'm getting inside out already. 127 00:07:06,470 --> 00:07:09,685 Actually, what I care about are reflex vertices. 128 00:07:12,990 --> 00:07:16,010 I don't want to have a super big angles here. 129 00:07:16,010 --> 00:07:20,410 So if every angle is at least 360 130 00:07:20,410 --> 00:07:29,910 minus some epsilon-- for a constant epsilon-- 131 00:07:29,910 --> 00:07:32,120 then I call my polygon bounded sharpness. 132 00:07:34,640 --> 00:07:37,160 If your polygon has bounded sharpness, 133 00:07:37,160 --> 00:07:40,320 we get a polynomial bound on the number of gluings 134 00:07:40,320 --> 00:07:42,940 and a polynomial algorithm to list all the gluings. 135 00:07:42,940 --> 00:07:46,350 This is really the sense in which this is all practical. 136 00:07:46,350 --> 00:07:49,930 Give me a polygon that's going to have some sharpest angle, 137 00:07:49,930 --> 00:07:53,160 call that the bound. 138 00:07:53,160 --> 00:07:55,790 If epsilon gets really tiny, if your reflex angles get really 139 00:07:55,790 --> 00:07:58,850 close to 360, then this bound will go up. 140 00:07:58,850 --> 00:08:04,340 But as long as you're not too extreme, you're all set. 141 00:08:08,370 --> 00:08:11,850 I mean less than or equal to, yes, thank you. 142 00:08:15,200 --> 00:08:17,015 Yeah, that would be a weird polygon 143 00:08:17,015 --> 00:08:19,150 if all the angles were so big. 144 00:08:19,150 --> 00:08:21,270 I think that doesn't exist. 145 00:08:21,270 --> 00:08:24,540 So for example, convex polygons always have bounded sharpness. 146 00:08:24,540 --> 00:08:28,250 Epsilon is 180 in that situation. 147 00:08:28,250 --> 00:08:30,390 So, that's good. 148 00:08:34,120 --> 00:08:35,870 I told you about edge-to-edge gluings. 149 00:08:35,870 --> 00:08:37,950 Just glue whole edges to whole edges. 150 00:08:37,950 --> 00:08:41,049 What I haven't really told you is how we made this finite, 151 00:08:41,049 --> 00:08:42,630 so let me go to that. 152 00:08:42,630 --> 00:08:45,290 And when I say gluings here, I really 153 00:08:45,290 --> 00:08:52,580 mean a combinatorial type of gluing, 154 00:08:52,580 --> 00:08:54,750 because we had rolling belts. 155 00:08:54,750 --> 00:08:59,796 So there were infinitely many actual gluings, 156 00:08:59,796 --> 00:09:01,420 but I'm going to think of most of those 157 00:09:01,420 --> 00:09:04,350 as being the same thing and just distinguish essentially 158 00:09:04,350 --> 00:09:07,490 what the gluing tree looks like combinatorially. 159 00:09:07,490 --> 00:09:09,336 So let me define that. 160 00:09:09,336 --> 00:09:15,190 The first part is what I call the abstract gluing tree. 161 00:09:19,310 --> 00:09:22,070 So this is just what the picture looks like in general. 162 00:09:22,070 --> 00:09:26,780 So for example, the one over there-- the cube-- 163 00:09:26,780 --> 00:09:31,010 combinatorially the tree looks like this. 164 00:09:31,010 --> 00:09:35,620 It has four leaves and a kind of wishbone configuration. 165 00:09:35,620 --> 00:09:38,150 So I'm not trying to measure the lengths or anything, just 166 00:09:38,150 --> 00:09:43,580 that's the abstract picture, no metric. 167 00:09:43,580 --> 00:09:46,570 And then the second part is I'm going 168 00:09:46,570 --> 00:09:56,330 to specify which polygon vertices and edges are where. 169 00:10:22,310 --> 00:10:25,310 And I'm going to specify that at things called junctions. 170 00:10:25,310 --> 00:10:29,230 So in particular, at leaves I want to say, 171 00:10:29,230 --> 00:10:32,740 oh this is vertex one. 172 00:10:32,740 --> 00:10:36,340 At places like this, where three edges come together, 173 00:10:36,340 --> 00:10:39,570 I want to specify for each one, oh this is vertex two, 174 00:10:39,570 --> 00:10:44,594 this is edge eight, this is vertex 10, whatever. 175 00:10:44,594 --> 00:10:45,760 I'm making up these numbers. 176 00:10:45,760 --> 00:10:47,260 They don't necessarily correspond, 177 00:10:47,260 --> 00:10:49,880 but they should appear in order because this is the polygon 178 00:10:49,880 --> 00:10:52,190 after all, just warped inside out. 179 00:10:55,670 --> 00:10:57,590 Also this one. 180 00:10:57,590 --> 00:11:01,330 Also, I didn't really draw this picture big enough, 181 00:11:01,330 --> 00:11:03,950 but if I have two parts of the gluing tree 182 00:11:03,950 --> 00:11:06,790 where a vertex glues against something-- 183 00:11:06,790 --> 00:11:09,600 it could be another vertex or it could be an edge-- 184 00:11:09,600 --> 00:11:12,250 I also consider those junctions. 185 00:11:12,250 --> 00:11:15,780 So junctions are going to be all the vertices-- 186 00:11:15,780 --> 00:11:17,850 the only exception is when there's an edge gluing 187 00:11:17,850 --> 00:11:20,040 to an edge, I don't consider that a junction 188 00:11:20,040 --> 00:11:22,081 because there's going to be fairly many of those. 189 00:11:22,081 --> 00:11:23,260 I want there to be finite. 190 00:11:23,260 --> 00:11:25,550 So everything of degree one, everything 191 00:11:25,550 --> 00:11:27,950 of degree three or more, for degree two 192 00:11:27,950 --> 00:11:30,890 there has to be at least one vertex. 193 00:11:30,890 --> 00:11:40,940 So degree not equal to 2, or at least one vertex. 194 00:11:40,940 --> 00:11:42,310 Those are junctions. 195 00:11:42,310 --> 00:11:44,550 For each I'm going to mark where they are. 196 00:11:44,550 --> 00:11:47,930 That's part of my abstract gluing tree, specifying where 197 00:11:47,930 --> 00:11:49,680 the junctures are, how they're configured. 198 00:11:49,680 --> 00:11:52,871 And then for each one, wherever there's 199 00:11:52,871 --> 00:11:54,370 part of the polygon coming together, 200 00:11:54,370 --> 00:11:56,982 I specify which vertex or edge is coming there. 201 00:11:56,982 --> 00:11:58,440 Now when I specify an edge, I don't 202 00:11:58,440 --> 00:12:01,340 say what point on the edge, because that could be infinite. 203 00:12:01,340 --> 00:12:03,740 There could be a whole range of points, there could be. 204 00:12:03,740 --> 00:12:06,990 We'll worry about that later. 205 00:12:06,990 --> 00:12:10,310 I just specify that edge eight is there. 206 00:12:10,310 --> 00:12:12,840 So this is what I call combinatorial type of gluing. 207 00:12:12,840 --> 00:12:15,680 And in this case, there are only finitely many gluings, 208 00:12:15,680 --> 00:12:20,070 finitely many types, but it can be exponential. 209 00:12:20,070 --> 00:12:22,540 It's still big, just not quite as big. 210 00:12:33,620 --> 00:12:35,620 So just to get warmed up a little, 211 00:12:35,620 --> 00:12:39,790 let's prove this exponential upper bound that is only 2 212 00:12:39,790 --> 00:12:41,181 to the order n. 213 00:12:41,181 --> 00:12:42,680 That will in particular convince you 214 00:12:42,680 --> 00:12:44,995 that there's only finitely many of these, 215 00:12:44,995 --> 00:12:47,895 although I think that's probably obvious that it's finite. 216 00:12:47,895 --> 00:12:50,020 It's conceivable it could be more than exponential. 217 00:12:55,220 --> 00:12:57,664 This is not a particularly exciting bound, 218 00:12:57,664 --> 00:12:59,580 but we're going to use a lot of the same ideas 219 00:12:59,580 --> 00:13:03,170 in the other proofs, in particular this one which 220 00:13:03,170 --> 00:13:04,655 is more interesting. 221 00:13:09,700 --> 00:13:15,380 I want to look at leaves of my tree. 222 00:13:15,380 --> 00:13:20,630 And we have to remember back to the previous lecture, who 223 00:13:20,630 --> 00:13:23,080 can be at the leaves? 224 00:13:23,080 --> 00:13:26,880 Well, if could be a vertex or it could be an edge. 225 00:13:26,880 --> 00:13:29,230 When it was an edge, we called it a fold point. 226 00:13:29,230 --> 00:13:31,240 When we folded in the middle of an edge-- 227 00:13:31,240 --> 00:13:35,390 so here's an edge of the polygon and I end up 228 00:13:35,390 --> 00:13:39,030 subdividing it and gluing the edge onto itself-- right 229 00:13:39,030 --> 00:13:41,710 there is 180 degrees of curvature. 230 00:13:41,710 --> 00:13:44,520 Total amount of curvature is 720, 231 00:13:44,520 --> 00:13:47,370 therefore I only have-- I can't count, 232 00:13:47,370 --> 00:13:49,420 I'm jetlagged-- four of them. 233 00:13:49,420 --> 00:13:52,200 At most four fold points. 234 00:13:52,200 --> 00:13:54,560 Everybody else is a vertex. 235 00:13:54,560 --> 00:13:59,285 So if I have n vertices, I have at most n plus 4 leaves. 236 00:14:03,880 --> 00:14:05,970 That's already feeling good. 237 00:14:05,970 --> 00:14:08,640 I pull a rabbit out of a hat and tell you 238 00:14:08,640 --> 00:14:11,060 that if I have only n plus 4 leaves, 239 00:14:11,060 --> 00:14:15,070 there are 2 to the order n trees on that many leaves. 240 00:14:20,970 --> 00:14:25,580 Actually, I should be a little more careful. 241 00:14:25,580 --> 00:14:28,560 If I can bound the number of nodes in the tree, 242 00:14:28,560 --> 00:14:31,060 then I'll get an exponential bound on the number of trees. 243 00:14:31,060 --> 00:14:34,039 And that will be part one, the abstract gluing tree. 244 00:14:34,039 --> 00:14:36,580 But right now I have a bound on the number of leaves, not the 245 00:14:36,580 --> 00:14:37,530 number of nodes. 246 00:14:37,530 --> 00:14:39,720 And there's a difference here, because if you 247 00:14:39,720 --> 00:14:43,300 have a tree which has a whole bunch of degree 248 00:14:43,300 --> 00:14:52,770 2 vertices, then that would be bad, because I only have two 249 00:14:52,770 --> 00:14:55,770 leaves I have arbitrarily many nodes. 250 00:14:55,770 --> 00:15:00,190 But every time I have one of these degree 2 nodes, 251 00:15:00,190 --> 00:15:03,160 we already threw away the degree 2 nodes that 252 00:15:03,160 --> 00:15:05,579 had no vertices at them, because there are infinitely many 253 00:15:05,579 --> 00:15:06,870 of those and those don't count. 254 00:15:06,870 --> 00:15:12,340 So once we throw that away, the only degree two junctions 255 00:15:12,340 --> 00:15:15,117 are the ones that have a vertex, which is why-- these dots are 256 00:15:15,117 --> 00:15:17,200 supposed to be the actual vertices of the polygon. 257 00:15:17,200 --> 00:15:19,530 So it might be an edge here, it might be an edge there. 258 00:15:19,530 --> 00:15:21,660 There's at least one vertex at each of them. 259 00:15:21,660 --> 00:15:25,460 So the total number of nodes here is indeed order n. 260 00:15:25,460 --> 00:15:28,740 I mean, it's probably actually at most n plus 4 again. 261 00:15:28,740 --> 00:15:31,470 But if we're sloppy you say, well the number of leaves 262 00:15:31,470 --> 00:15:32,450 is at most n plus 4. 263 00:15:32,450 --> 00:15:37,310 The number of degree 2 nodes is at most n. 264 00:15:37,310 --> 00:15:39,290 Then there could be some degree three nodes. 265 00:15:39,290 --> 00:15:41,440 It's also at most n plus 4 in total, 266 00:15:41,440 --> 00:15:44,470 or n is all I care about. 267 00:15:44,470 --> 00:15:46,390 You could be more careful and figure out 268 00:15:46,390 --> 00:15:47,340 what the consonant is. 269 00:15:47,340 --> 00:15:51,690 But we get from this, this is order n nodes. 270 00:15:54,530 --> 00:15:57,470 And once you have that the tree has a linear number of nodes, 271 00:15:57,470 --> 00:16:01,220 I'll tell you this is one of the [? Kadhalan ?] problems, 272 00:16:01,220 --> 00:16:03,470 that there's only 2 the order n such trees. 273 00:16:03,470 --> 00:16:06,900 But that's only part one of the combinatorial type 274 00:16:06,900 --> 00:16:07,600 of the gluing. 275 00:16:07,600 --> 00:16:10,580 We also have to worry about which vertices are where. 276 00:16:13,540 --> 00:16:15,980 I want to show that that is only exponential. 277 00:16:24,150 --> 00:16:29,110 So imagine at this point you've fixed 278 00:16:29,110 --> 00:16:30,910 the combinatorial structure of the tree, 279 00:16:30,910 --> 00:16:33,720 but you have no idea what's what. 280 00:16:33,720 --> 00:16:37,430 So in particular, at these points-- 281 00:16:37,430 --> 00:16:41,450 and maybe also you've defined some degree 2 282 00:16:41,450 --> 00:16:43,340 junctions, which you know are supposed 283 00:16:43,340 --> 00:16:48,410 to have at least one vertex-- the first thing I want 284 00:16:48,410 --> 00:16:51,150 to specify is, for each of these little dots that 285 00:16:51,150 --> 00:16:56,910 come together-- these are the junctions-- is it a vertex, 286 00:16:56,910 --> 00:16:59,510 or is it an edge? 287 00:16:59,510 --> 00:17:01,570 So that's just binary information for each one. 288 00:17:01,570 --> 00:17:03,220 I'll fill it in, say if it's a vertex, 289 00:17:03,220 --> 00:17:05,900 I'll leave it open if it's an edge. 290 00:17:05,900 --> 00:17:08,990 In fact, I know that at most one edge comes together 291 00:17:08,990 --> 00:17:09,550 at any point. 292 00:17:09,550 --> 00:17:13,140 Otherwise, you'd have too much material glued there. 293 00:17:13,140 --> 00:17:15,975 So maybe it looks something like this. 294 00:17:15,975 --> 00:17:18,590 It could be a fold point, maybe another fold point. 295 00:17:22,640 --> 00:17:24,040 Something like that. 296 00:17:24,040 --> 00:17:26,755 So that coloring, black and white, there's only 2 297 00:17:26,755 --> 00:17:30,030 to the order and such colorings. 298 00:17:30,030 --> 00:17:36,240 Call it a vertex edge coloring, because again there's 299 00:17:36,240 --> 00:17:37,940 order n dots. 300 00:17:37,940 --> 00:17:41,870 Each one, there's two choices, black or white, vertex or edge. 301 00:17:45,610 --> 00:17:47,720 And now what we really care about 302 00:17:47,720 --> 00:17:50,360 is where the vertices, because remember, this 303 00:17:50,360 --> 00:17:53,330 is the polygon in order. 304 00:17:53,330 --> 00:17:57,600 So if I could tell you, let's say which vertex is vertex one? 305 00:17:57,600 --> 00:18:00,990 Maybe this vertex is vertex one. 306 00:18:00,990 --> 00:18:04,240 Then I know this is vertex two, I know this is vertex three, 307 00:18:04,240 --> 00:18:06,310 I know this is edge three or whichever 308 00:18:06,310 --> 00:18:09,600 edge connects V3 three and V4. 309 00:18:09,600 --> 00:18:11,690 This is also edge three, and so on. 310 00:18:11,690 --> 00:18:15,210 I could just walk around and label them in order. 311 00:18:15,210 --> 00:18:18,380 All I needed to do is know where vertex one is. 312 00:18:18,380 --> 00:18:21,680 There's only n possibilities for that. 313 00:18:28,040 --> 00:18:31,540 There's n filled circles, which are where the vertices are. 314 00:18:31,540 --> 00:18:34,910 One of them is V1, so there's only n choices for it. 315 00:18:34,910 --> 00:18:40,340 You multiply all of these things together, n times 2 316 00:18:40,340 --> 00:18:42,390 to the order n, times 2 to the order n, 317 00:18:42,390 --> 00:18:44,670 that result is 2 to the some other order n. 318 00:18:47,320 --> 00:18:50,380 That's total number of choices. 319 00:18:50,380 --> 00:18:55,059 So that's a rough but fine upper bound. 320 00:18:55,059 --> 00:18:56,850 I'm not going to try to tune this constant. 321 00:18:56,850 --> 00:18:57,970 I guess it would be an open problem 322 00:18:57,970 --> 00:18:59,761 to get a really good bound on the constant. 323 00:18:59,761 --> 00:19:01,840 I'm not sure if even one has been worked out, 324 00:19:01,840 --> 00:19:04,660 but what I will show you is that this is pretty much tight, 325 00:19:04,660 --> 00:19:07,140 so you can't hope to do much better than this 326 00:19:07,140 --> 00:19:10,750 because there's a 2 to the omega n lower bound 327 00:19:10,750 --> 00:19:14,455 on the number of gluings. 328 00:19:17,220 --> 00:19:21,170 And that is this crazy example. 329 00:19:21,170 --> 00:19:24,860 I'll draw it also on the board. 330 00:19:24,860 --> 00:19:26,410 It's a little tricky to draw. 331 00:19:26,410 --> 00:19:32,500 It's a very spiky star, something like that. 332 00:19:32,500 --> 00:19:45,090 So I have e points, and n spikes, n convex corners. 333 00:19:45,090 --> 00:19:47,420 The convex angle, I think, is alpha. 334 00:19:47,420 --> 00:19:49,772 Let me match the notation. 335 00:19:49,772 --> 00:19:52,060 Yes, convex angle is alpha. 336 00:19:52,060 --> 00:19:56,060 The reflex angle here is beta, but otherwise it's 337 00:19:56,060 --> 00:19:57,020 completely symmetric. 338 00:19:57,020 --> 00:19:59,530 So all the reflex angles are beta, 339 00:19:59,530 --> 00:20:01,616 all the convex angles are alpha. 340 00:20:01,616 --> 00:20:03,630 I have n spikes. 341 00:20:03,630 --> 00:20:09,730 I want these points-- it's hard to draw, 342 00:20:09,730 --> 00:20:13,450 but I want them to be very, very close to the center. 343 00:20:13,450 --> 00:20:14,920 Take the limit. 344 00:20:14,920 --> 00:20:18,680 In the limit, alpha is 0. 345 00:20:18,680 --> 00:20:23,835 So alpha is going to be some very tiny amount epsilon. 346 00:20:23,835 --> 00:20:24,335 Beta. 347 00:20:27,280 --> 00:20:30,690 What's the limit of beta? 348 00:20:30,690 --> 00:20:32,920 180, 360? 349 00:20:32,920 --> 00:20:35,080 No, it's not 360. 350 00:20:35,080 --> 00:20:36,160 That's what's important. 351 00:20:39,210 --> 00:20:44,520 360 times 1 minus 1 over n, yeah. 352 00:20:44,520 --> 00:20:46,680 It's like 360 minus 360 over n. 353 00:20:51,050 --> 00:20:54,170 Believe it or not, this is a big number, 354 00:20:54,170 --> 00:20:56,380 in that it doesn't depend on epsilon. 355 00:20:56,380 --> 00:21:00,599 So it's going to be, what, a little bit smaller-- 356 00:21:00,599 --> 00:21:02,140 going to be some minus epsilon prime. 357 00:21:02,140 --> 00:21:04,170 But I really don't care about the epsilons. 358 00:21:04,170 --> 00:21:06,620 They're kind of irrelevant. 359 00:21:06,620 --> 00:21:10,140 Let me just cross them out, but they're really there. 360 00:21:10,140 --> 00:21:17,180 So alpha is basically 0, beta is a chunk less than 360. 361 00:21:17,180 --> 00:21:22,120 What this means is in the limit I can take one of these alphas 362 00:21:22,120 --> 00:21:25,147 and glue it into one of the betas, 363 00:21:25,147 --> 00:21:26,605 and it will still be less than 360. 364 00:21:26,605 --> 00:21:29,270 In fact I could glue n of the alpha. 365 00:21:29,270 --> 00:21:34,017 I could glue all of these spikes into one of these gaps. 366 00:21:34,017 --> 00:21:35,975 Remember, the limiting picture looks like this. 367 00:21:39,062 --> 00:21:40,270 That's maybe more convincing. 368 00:21:40,270 --> 00:21:42,520 It doesn't look that way here. 369 00:21:42,520 --> 00:21:43,940 This is nothing. 370 00:21:43,940 --> 00:21:47,380 Of course, I can fit arbitrarily many of them into this gap 371 00:21:47,380 --> 00:21:50,750 and it will still sum to less than 360. 372 00:21:50,750 --> 00:21:54,200 So this is kind of the key to why this example works. 373 00:21:56,960 --> 00:22:00,740 I've got tons a room for alphas in the complement of betas. 374 00:22:04,680 --> 00:22:09,390 Now, I would like to make this not only an exponential 375 00:22:09,390 --> 00:22:11,700 lower bound on the general case, but also 376 00:22:11,700 --> 00:22:13,960 on the edge-to-edge case, because that's 377 00:22:13,960 --> 00:22:16,460 a little bit stronger to say even edge-to-edge gluings there 378 00:22:16,460 --> 00:22:17,880 can be exponentially many. 379 00:22:17,880 --> 00:22:21,860 To do that, I'm going to take the midpoint of one 380 00:22:21,860 --> 00:22:24,600 of the edges, call that a vertex, 381 00:22:24,600 --> 00:22:29,590 and take the perimeter antipode, which is like here hopefully, 382 00:22:29,590 --> 00:22:30,404 more or less. 383 00:22:30,404 --> 00:22:32,570 So I want the left parameter and the right perimeter 384 00:22:32,570 --> 00:22:35,930 to be equal, also call that a vertex. 385 00:22:35,930 --> 00:22:38,351 And now one thing we know how to do is perimeter halving. 386 00:22:38,351 --> 00:22:40,850 Now, we were only supposed to do perimeter halving on convex 387 00:22:40,850 --> 00:22:43,850 polygons, but it turns out it will work on this polygon too. 388 00:22:43,850 --> 00:22:46,826 So I'm going to glue this half edge to this half edge, 389 00:22:46,826 --> 00:22:48,950 then I'm going to glue this edge to this edge, then 390 00:22:48,950 --> 00:22:51,770 this one to this one, and so on. 391 00:22:51,770 --> 00:22:54,550 So just do that gluing. 392 00:22:54,550 --> 00:22:58,660 And the only thing to worry about 393 00:22:58,660 --> 00:23:00,350 is that you glue two betas together. 394 00:23:00,350 --> 00:23:01,940 That would be more than 360. 395 00:23:01,940 --> 00:23:05,680 Anything else, beta to any number of alpha's is OK. 396 00:23:05,680 --> 00:23:09,344 At this point it is really helpful to draw a gluing tree, 397 00:23:09,344 --> 00:23:10,830 so let me do that. 398 00:23:25,410 --> 00:23:30,560 So gluing tree for perimeter halving is path. 399 00:23:30,560 --> 00:23:35,224 And do I give these guys names, probably x and y? 400 00:23:35,224 --> 00:23:37,110 Yeah, that's what I would call them, 401 00:23:37,110 --> 00:23:40,580 so naturally that's what I called them. 402 00:23:40,580 --> 00:23:44,350 We have x over here, we have y over here. 403 00:23:44,350 --> 00:23:46,690 And then we have the perimeter in between. 404 00:23:46,690 --> 00:23:48,420 So let's just check what happens. 405 00:23:48,420 --> 00:23:51,090 Here we get an alpha on one side-- 406 00:23:51,090 --> 00:23:54,805 I'm going to say the right side is the bottom, let's say. 407 00:23:54,805 --> 00:23:56,430 I'm not going to try to think about it. 408 00:23:56,430 --> 00:24:00,695 So there's an alpha, and that meets a beta. 409 00:24:00,695 --> 00:24:02,320 And then it just alternates from there. 410 00:24:02,320 --> 00:24:05,850 There's an alpha, it meets a beta, but on the other side. 411 00:24:05,850 --> 00:24:09,400 And a beta meets an alpha and so on. 412 00:24:09,400 --> 00:24:14,940 At the end, it's probably the reverse, like alpha, beta. 413 00:24:14,940 --> 00:24:19,200 I've drawn it up here at the very top. 414 00:24:19,200 --> 00:24:23,560 The alpha's red, betas are black so you can distinguish them. 415 00:24:23,560 --> 00:24:26,340 But that's clearly an OK gluing because it's just one alpha 416 00:24:26,340 --> 00:24:27,180 gluing to one beta. 417 00:24:27,180 --> 00:24:31,040 We know we can glue tons of alphas into one beta. 418 00:24:31,040 --> 00:24:32,097 That's one gluing. 419 00:24:32,097 --> 00:24:33,930 The fun part is that there are exponentially 420 00:24:33,930 --> 00:24:38,500 many of these gluings which look like this, where you take some 421 00:24:38,500 --> 00:24:43,080 of the betas and turn them into leaves, 422 00:24:43,080 --> 00:24:45,610 kind of squeeze them out. 423 00:24:45,610 --> 00:24:48,430 And the result is that you get two alphas gluing 424 00:24:48,430 --> 00:24:50,720 to a beta, which is fine. 425 00:24:50,720 --> 00:24:52,630 The beta glues to itself, which is fine. 426 00:24:52,630 --> 00:24:54,470 I mean, it's a vertex. 427 00:24:54,470 --> 00:24:58,060 It's comforting that it has an angle almost 360. 428 00:24:58,060 --> 00:25:00,800 Therefore, there's very little curvature out at that leaf, 429 00:25:00,800 --> 00:25:02,670 but we don't really need to check that. 430 00:25:02,670 --> 00:25:06,060 It is just necessary for this to work. 431 00:25:06,060 --> 00:25:10,560 Of course, beta is less than 360 by itself. 432 00:25:10,560 --> 00:25:12,720 Here's an example where I squeezed two of the betas 433 00:25:12,720 --> 00:25:15,270 right next to each other, then three alpha's 434 00:25:15,270 --> 00:25:18,130 come together and glue to a beta. 435 00:25:18,130 --> 00:25:21,480 But what's nice is we don't have to think about the polygon. 436 00:25:21,480 --> 00:25:23,020 We just think about the gluing tree. 437 00:25:23,020 --> 00:25:28,450 And we say, well if I pull this down-- so 438 00:25:28,450 --> 00:25:31,530 I end up with that-- that's going 439 00:25:31,530 --> 00:25:34,550 to be just fine as long as I also pull one on the top. 440 00:25:34,550 --> 00:25:36,900 I have to squeeze the same number of betas 441 00:25:36,900 --> 00:25:38,400 on the top and the bottom, otherwise 442 00:25:38,400 --> 00:25:39,820 these links won't match up. 443 00:25:39,820 --> 00:25:43,690 As long as I do that, I get a valid gluing. 444 00:25:43,690 --> 00:25:49,990 So what I'm going to do, I have n betas total. 445 00:25:49,990 --> 00:25:55,300 So I have n over 2 betas on the top 446 00:25:55,300 --> 00:25:59,650 and n over 2 betas on the bottom. 447 00:25:59,650 --> 00:26:08,020 I'm going to squeeze n over 4 on the top and n over 4 448 00:26:08,020 --> 00:26:10,510 on the bottom, so half of them. 449 00:26:16,160 --> 00:26:18,520 That way the lengths will match up, 450 00:26:18,520 --> 00:26:22,130 and I happen to know there's a lot of ways to do this. 451 00:26:22,130 --> 00:26:27,620 The actual number is n over 2 choose n over 4 for the top 452 00:26:27,620 --> 00:26:28,950 and the same for the bottom. 453 00:26:28,950 --> 00:26:31,760 So it's this squared, and I'm just 454 00:26:31,760 --> 00:26:33,960 going to tell you that is 2 to the theta n. 455 00:26:37,140 --> 00:26:42,090 Actually, I think you can be pretty precise. 456 00:26:42,090 --> 00:26:43,150 Can you? 457 00:26:43,150 --> 00:26:44,510 I've forgotten. 458 00:26:44,510 --> 00:26:50,410 Isn't n choose n over 2-- it's very close to 2 459 00:26:50,410 --> 00:26:53,104 to the n over 2, I believe. 460 00:26:53,104 --> 00:26:55,660 Is that right? 461 00:26:55,660 --> 00:26:58,010 But not exactly, yeah. 462 00:26:58,010 --> 00:27:00,181 All right, I'm going to be sloppy. 463 00:27:00,181 --> 00:27:01,760 It's 2 to the theta n. 464 00:27:01,760 --> 00:27:03,860 You could figure out what the constant is there. 465 00:27:03,860 --> 00:27:09,450 I think I have a bound written down, maybe. 466 00:27:09,450 --> 00:27:11,980 Oh, it is the power of 2, yeah. 467 00:27:11,980 --> 00:27:14,675 It is equal, I believe, according to my notes. 468 00:27:17,990 --> 00:27:21,470 So this is going to be 2 to the n 469 00:27:21,470 --> 00:27:25,415 over 4 squared, which is 2 to the n over 2 exactly. 470 00:27:30,250 --> 00:27:30,844 Yeah? 471 00:27:30,844 --> 00:27:31,760 AUDIENCE: [INAUDIBLE]? 472 00:27:37,260 --> 00:27:39,930 PROFESSOR: I only am allowed to squeeze betas, not alphas. 473 00:27:39,930 --> 00:27:42,650 But I can do whatever pattern I want on the top and separately 474 00:27:42,650 --> 00:27:45,150 any pattern I want on the bottom. 475 00:27:45,150 --> 00:27:47,100 Because what's key is by squeezing 476 00:27:47,100 --> 00:27:51,350 betas I preserve the parity, because when I squeeze away 477 00:27:51,350 --> 00:27:53,280 a beta I bring two alphas together. 478 00:27:53,280 --> 00:27:56,089 So the parity and who's matching whom on the top and the bottom 479 00:27:56,089 --> 00:27:56,880 is always the same. 480 00:27:56,880 --> 00:27:58,220 And the beta on the top will always 481 00:27:58,220 --> 00:28:00,270 be matching some number of alpha's on the bottom, 482 00:28:00,270 --> 00:28:01,887 and vice versa. 483 00:28:01,887 --> 00:28:03,970 So it doesn't matter what pattern I do on the top, 484 00:28:03,970 --> 00:28:05,360 or what pattern I do on the bottom. 485 00:28:05,360 --> 00:28:07,110 It just matters they have the same length, 486 00:28:07,110 --> 00:28:09,987 so I arbitrarily chose them to both be n over 4. 487 00:28:09,987 --> 00:28:11,570 Well, it wasn't arbitrary, but I chose 488 00:28:11,570 --> 00:28:12,790 it to be that because I knew there 489 00:28:12,790 --> 00:28:13,960 would be a lot of those choices. 490 00:28:13,960 --> 00:28:15,043 There are more, of course. 491 00:28:15,043 --> 00:28:18,680 Really I should sum this over all choices of n over 4, 492 00:28:18,680 --> 00:28:21,200 but this is good enough. 493 00:28:21,200 --> 00:28:23,325 That summation would not improve the bound by much. 494 00:28:30,870 --> 00:28:32,340 So that's sort of the bad news. 495 00:28:32,340 --> 00:28:33,910 These are really nasty polygons. 496 00:28:33,910 --> 00:28:35,960 They have exponentially many gluings. 497 00:28:35,960 --> 00:28:43,640 For fun, we actually did this for small n. 498 00:28:43,640 --> 00:28:45,230 It's been a while. 499 00:28:45,230 --> 00:28:48,440 This was some time ago that we made all these. 500 00:28:48,440 --> 00:28:50,260 I think it actually was before 2002, 501 00:28:50,260 --> 00:28:52,980 but that was when the paper appeared. 502 00:28:52,980 --> 00:28:56,390 So here is a four star, and these 503 00:28:56,390 --> 00:28:59,430 are I think all of the possible gluings. 504 00:28:59,430 --> 00:29:01,650 Maybe just some of them, it's been awhile, 505 00:29:01,650 --> 00:29:02,960 I could think about it. 506 00:29:05,815 --> 00:29:07,940 Not drawn as gluing trees here, but drawn as actual 507 00:29:07,940 --> 00:29:08,898 gulings on the polygon. 508 00:29:08,898 --> 00:29:10,820 Here instead of drawing the gluings 509 00:29:10,820 --> 00:29:13,280 on the outside, which is how they happen 510 00:29:13,280 --> 00:29:15,404 in the gluing three, I've drawn them on the inside, 511 00:29:15,404 --> 00:29:16,870 just because it's easier to draw. 512 00:29:16,870 --> 00:29:18,530 And then we built them in the same way 513 00:29:18,530 --> 00:29:20,988 that I built one like I showed you last time, where we just 514 00:29:20,988 --> 00:29:24,030 took a polygon, started taping edges together, 515 00:29:24,030 --> 00:29:27,740 and these are the roughly taped versions. 516 00:29:27,740 --> 00:29:30,122 And then you guess where the crease signs are, 517 00:29:30,122 --> 00:29:32,080 and then you can draw the crease lines on here. 518 00:29:32,080 --> 00:29:34,142 And two of them are drawn sort of 519 00:29:34,142 --> 00:29:36,350 worked out where exactly the crease lines have to be, 520 00:29:36,350 --> 00:29:40,030 according to getting all the edge links to match. 521 00:29:40,030 --> 00:29:41,600 And then you can make your polygons. 522 00:29:41,600 --> 00:29:47,082 That is n equals 4, then we did n equals 8. 523 00:29:47,082 --> 00:29:49,165 I guess we want n to be even here for convenience. 524 00:29:51,750 --> 00:29:54,740 And there's more, although still not a huge number. 525 00:29:54,740 --> 00:30:01,410 I think these are the top sides and these are the bottom sides. 526 00:30:01,410 --> 00:30:03,700 And you can see, in some cases it was a little tricky 527 00:30:03,700 --> 00:30:05,700 to tell where the creases are, because they were 528 00:30:05,700 --> 00:30:08,130 almost flat or possibly actually exactly flat. 529 00:30:08,130 --> 00:30:10,060 Like here they are flat. 530 00:30:10,060 --> 00:30:11,540 But it's a fun exercise. 531 00:30:11,540 --> 00:30:14,097 You can, whenever you have these gluings, 532 00:30:14,097 --> 00:30:15,180 reconstruct the polyhedra. 533 00:30:15,180 --> 00:30:18,180 Of course now that we have algorithms for Alexandroff's 534 00:30:18,180 --> 00:30:21,230 theorem, we could try plugging these into the programs 535 00:30:21,230 --> 00:30:26,290 and they should give us exact 3D polyhedra, from which we could 536 00:30:26,290 --> 00:30:29,252 figure out where the crease lines are. 537 00:30:29,252 --> 00:30:32,640 It would be a fun, small, mini-project, I guess, 538 00:30:32,640 --> 00:30:33,290 to do that. 539 00:30:33,290 --> 00:30:34,900 This is all from ages ago. 540 00:30:37,800 --> 00:30:44,140 At this point I want to move on to this result, which 541 00:30:44,140 --> 00:30:44,910 is the good news. 542 00:30:44,910 --> 00:30:47,118 This is sort of bad news that there are exponentially 543 00:30:47,118 --> 00:30:49,910 many different gluings. 544 00:30:49,910 --> 00:30:52,425 It's not so bad in that at least we can enumerate them 545 00:30:52,425 --> 00:30:53,550 in the same amount of time. 546 00:30:53,550 --> 00:30:54,934 We'll get to that later. 547 00:30:54,934 --> 00:30:56,600 While we're in the combinatorial streak, 548 00:30:56,600 --> 00:30:58,380 I want to prove that there's only 549 00:30:58,380 --> 00:31:00,790 a polynomial number of combinatorially 550 00:31:00,790 --> 00:31:04,250 distinct gluings for bounded sharpness polygons. 551 00:31:04,250 --> 00:31:07,050 So of course, this star polygon does not 552 00:31:07,050 --> 00:31:08,510 have bounded sharpness. 553 00:31:08,510 --> 00:31:14,160 We set beta to be very, very close to 360. 554 00:31:14,160 --> 00:31:16,830 It may be worth talking about this a little bit, 555 00:31:16,830 --> 00:31:21,020 because it wasn't exactly 360. 556 00:31:21,020 --> 00:31:24,870 It was bounded away from 360 by this value of 360 divided by n. 557 00:31:24,870 --> 00:31:26,910 Now I said that was a big number, 558 00:31:26,910 --> 00:31:30,680 because it was much, much bigger than alpha. 559 00:31:30,680 --> 00:31:32,780 Bigger than n times alpha even, because I 560 00:31:32,780 --> 00:31:35,410 can make alpha very close to 0. 561 00:31:35,410 --> 00:31:37,420 But it is not what we call bounded sharpness. 562 00:31:37,420 --> 00:31:41,120 Bounded sharpness was 360 minus a constant-- I really 563 00:31:41,120 --> 00:31:44,070 shouldn't have called it epsilon because it's confusing. 564 00:31:44,070 --> 00:31:47,540 Let me call it gamma just got another Greek letter. 565 00:31:50,310 --> 00:31:51,810 Gamma is not arbitrarily small. 566 00:31:51,810 --> 00:31:56,780 It is a constant value, whereas over here it's not constant. 567 00:31:56,780 --> 00:32:00,640 It's a constant divided by n, that's sub-constant. 568 00:32:00,640 --> 00:32:03,740 So this is not bounded sharpness, just to check. 569 00:32:03,740 --> 00:32:07,830 But if we have all the reflex angles, at most 360 570 00:32:07,830 --> 00:32:10,410 minus an actual constant bigger than 0, 571 00:32:10,410 --> 00:32:12,400 then we can get a polynomial bound 572 00:32:12,400 --> 00:32:15,740 on the number of combinatorially distinct gluings. 573 00:32:15,740 --> 00:32:17,167 So let me show that to you. 574 00:32:43,494 --> 00:32:45,410 Here's the cool thing about bounded sharpness. 575 00:32:53,190 --> 00:32:57,100 How many leaves can the gluing tree have? 576 00:32:57,100 --> 00:33:01,150 Each leaf is either an edge, like it's a fold point. 577 00:33:01,150 --> 00:33:05,120 In that case, the curvature is 180 degrees. 578 00:33:05,120 --> 00:33:07,310 Or it's a vertex. 579 00:33:07,310 --> 00:33:12,050 If it's a vertex, the curvature at that point 580 00:33:12,050 --> 00:33:16,094 is 360 minus the angle at that point. 581 00:33:16,094 --> 00:33:22,020 360 minus the angle, let's call it alpha. 582 00:33:22,020 --> 00:33:24,980 Now, we know that every angle alpha is at most 360 583 00:33:24,980 --> 00:33:27,040 minus gamma. 584 00:33:27,040 --> 00:33:35,470 So if this is going to be at least 360 minus gamma, 585 00:33:35,470 --> 00:33:36,390 which is just gamma. 586 00:33:39,070 --> 00:33:43,540 So every vertex, every leaf of the tree, 587 00:33:43,540 --> 00:33:46,370 has curvature at least gamma. 588 00:33:46,370 --> 00:33:48,100 Gamma is a constant. 589 00:33:48,100 --> 00:33:58,450 Total curvature is 720, exactly. 590 00:33:58,450 --> 00:34:05,150 Therefore, the number of leaves is at most 720 591 00:34:05,150 --> 00:34:09,480 over gamma, which is a constant. 592 00:34:12,880 --> 00:34:14,780 That's going to help. 593 00:34:14,780 --> 00:34:18,625 We don't have to worry about trees with n leaves. 594 00:34:18,625 --> 00:34:20,000 We only have to worry about trees 595 00:34:20,000 --> 00:34:23,679 with 20 leaves, some constant number of leaves. 596 00:34:23,679 --> 00:34:28,090 Again, as the bound on sharpness goes down, the number of leaves 597 00:34:28,090 --> 00:34:31,560 will go up in this inverse proportional way, 598 00:34:31,560 --> 00:34:33,690 but it's a constant. 599 00:34:33,690 --> 00:34:37,400 So at least for part one, we're golden. 600 00:34:37,400 --> 00:34:39,370 I mean, the number of gluing trees, 601 00:34:39,370 --> 00:34:43,060 I said over here-- where is it? 602 00:34:43,060 --> 00:34:45,440 If I have n nodes in my tree, I'll 603 00:34:45,440 --> 00:34:48,900 only have 2 to the order n trees. 604 00:34:48,900 --> 00:34:51,090 So if I can reduce the number of nodes in my tree, 605 00:34:51,090 --> 00:34:53,173 I will reduce the number of trees correspondingly. 606 00:34:56,940 --> 00:34:59,000 If there's only a constant number of nodes, 607 00:34:59,000 --> 00:35:00,983 there will be a constant number of trees. 608 00:35:00,983 --> 00:35:03,880 It doesn't matter that a constant gets exponentiated, 609 00:35:03,880 --> 00:35:06,520 it'll still be constant. 610 00:35:06,520 --> 00:35:08,570 So that's good news, except we bounded again 611 00:35:08,570 --> 00:35:11,410 the number of leaves, not the number of nodes. 612 00:35:11,410 --> 00:35:14,460 So we have to be a little bit careful, 613 00:35:14,460 --> 00:35:23,240 because in particular we can have degree 2 junctions, which 614 00:35:23,240 --> 00:35:25,400 are real junctions-- they might look like this 615 00:35:25,400 --> 00:35:27,820 where a vertex comes to an edge. 616 00:35:27,820 --> 00:35:30,100 There's got to be about n of those, 617 00:35:30,100 --> 00:35:32,250 because the vertices have to be somewhere. 618 00:35:32,250 --> 00:35:36,150 We're saying there aren't very many at the leaves. 619 00:35:36,150 --> 00:35:38,580 And therefore, at the degree three and higher junctions, 620 00:35:38,580 --> 00:35:40,559 there can't be very many. 621 00:35:40,559 --> 00:35:42,100 Maybe I haven't said this, but if you 622 00:35:42,100 --> 00:35:44,150 have a tree with L leaves, you'll 623 00:35:44,150 --> 00:35:49,210 only have at most L internal nodes, branching nodes. 624 00:35:49,210 --> 00:35:52,710 But degree two nodes, there could be arbitrarily many. 625 00:35:52,710 --> 00:35:59,510 So what we come to is, if I have L leaves in a tree, 626 00:35:59,510 --> 00:36:03,055 then I'll only get 2 to the order L gluings. 627 00:36:03,055 --> 00:36:04,305 This is what we need to prove. 628 00:36:08,622 --> 00:36:10,080 It will tell us that in particular, 629 00:36:10,080 --> 00:36:11,770 if we have a constant number of leaves, 630 00:36:11,770 --> 00:36:14,730 as comes from the bounded sharpens case, 631 00:36:14,730 --> 00:36:17,900 I will get-- constant number of gluings? 632 00:36:17,900 --> 00:36:20,480 That's not right. 633 00:36:20,480 --> 00:36:25,020 There's some polynomial on n times 2 to the order 634 00:36:25,020 --> 00:36:31,280 L. Ah, that's why. 635 00:36:36,090 --> 00:36:38,060 I should look at my notes occasionally. 636 00:36:38,060 --> 00:36:39,940 The right bound to n to the order L. 637 00:36:39,940 --> 00:36:43,210 In fact, what I wrote is an open problem. 638 00:36:43,210 --> 00:36:48,420 I think maybe it's n to the order 1 times 2 to the order L. 639 00:36:48,420 --> 00:36:52,386 This is what you'd call a fixed parameter tractable bound, 640 00:36:52,386 --> 00:36:53,760 but no such upper bound is known. 641 00:36:53,760 --> 00:36:55,926 That might be fun to work on in the problem session. 642 00:36:55,926 --> 00:36:58,250 It might not be difficult, just at the time 643 00:36:58,250 --> 00:37:00,000 I didn't know those bounds were important. 644 00:37:03,070 --> 00:37:05,720 So we still have to prove this, n 645 00:37:05,720 --> 00:37:15,840 to the order L. This is the part where my notes are wrong. 646 00:37:21,207 --> 00:37:23,290 Here's the idea, we have a small number of leaves, 647 00:37:23,290 --> 00:37:26,200 we're worried about these degree 2 junctions. 648 00:37:26,200 --> 00:37:30,420 But I claim, actually there isn't a lot going on. 649 00:37:33,690 --> 00:37:35,550 Because one of the great things we can do, 650 00:37:35,550 --> 00:37:38,890 over here we said for every dot, was it a vertex 651 00:37:38,890 --> 00:37:39,715 or was it an edge? 652 00:37:42,640 --> 00:37:46,490 We can't afford that anymore, because there's n dots still. 653 00:37:46,490 --> 00:37:48,880 We can't afford 2 to the order n. 654 00:37:48,880 --> 00:37:51,680 Where we can afford it is at the leaves, because there's only 655 00:37:51,680 --> 00:37:55,220 L of those, and at the branching nodes. 656 00:37:55,220 --> 00:37:59,320 So everything except these degree 2 problems 657 00:37:59,320 --> 00:38:00,580 we could specify. 658 00:38:00,580 --> 00:38:03,180 And really we could specify anything we want. 659 00:38:03,180 --> 00:38:07,040 So yeah, we could specify, is it a vertex or is it an edge? 660 00:38:07,040 --> 00:38:12,644 But we could make life even easier-- hm, 661 00:38:12,644 --> 00:38:14,800 I have an idea for solving this open problem. 662 00:38:14,800 --> 00:38:17,530 Do I want to solve it right now? 663 00:38:17,530 --> 00:38:18,520 Yeah, let's do it. 664 00:38:22,610 --> 00:38:25,126 Let me think for a second. 665 00:38:25,126 --> 00:38:26,910 I think that's going to work. 666 00:38:26,910 --> 00:38:29,160 OK, cool, cool. 667 00:38:29,160 --> 00:38:31,240 I needed to rewrite these notes anyway, 668 00:38:31,240 --> 00:38:34,560 so I might as well prove a stronger result. 669 00:38:34,560 --> 00:38:36,600 All right, so let me draw a picture. 670 00:38:42,287 --> 00:38:44,870 There's branching nodes, and I surely draw one of these longer 671 00:38:44,870 --> 00:38:47,300 so I can say, oh there's some degree two junctions here. 672 00:38:47,300 --> 00:38:49,640 Those are annoying, ignore those. 673 00:38:49,640 --> 00:38:52,950 For everything else-- the leaves and the branching 674 00:38:52,950 --> 00:38:56,530 nodes-- I'm going to specify the same binary thing. 675 00:38:56,530 --> 00:38:58,990 Is it a vertex, or is it an edge? 676 00:38:58,990 --> 00:39:02,160 But now there's only order L of them. 677 00:39:02,160 --> 00:39:05,610 There's L leaves, so there's at most L minus 1 internal nodes. 678 00:39:05,610 --> 00:39:09,710 Each of them has some degree, but the total number 679 00:39:09,710 --> 00:39:14,510 of these dots will be order L if I ignore the degree 2. 680 00:39:14,510 --> 00:39:23,320 So that's 2 to the order L vertex edge colorings, 681 00:39:23,320 --> 00:39:30,570 just like before except now with L, 682 00:39:30,570 --> 00:39:37,420 of leaves and branching nodes. 683 00:39:37,420 --> 00:39:39,023 Oh, I see the problem. 684 00:39:39,023 --> 00:39:39,523 Darn it. 685 00:39:44,730 --> 00:39:48,240 What I'd like to do is mimic the same proof and say, well 686 00:39:48,240 --> 00:39:53,141 choose where V1 is and then just label them around. 687 00:39:53,141 --> 00:39:54,640 There's a problem with that, though. 688 00:39:54,640 --> 00:39:55,530 Say V1 is here. 689 00:39:58,460 --> 00:39:59,840 Where's V2? 690 00:39:59,840 --> 00:40:02,430 Well, maybe this is an edge, maybe this is an edge. 691 00:40:02,430 --> 00:40:03,960 This, I have no idea. 692 00:40:03,960 --> 00:40:05,030 Is it an edge? 693 00:40:05,030 --> 00:40:06,310 Is it a vertex? 694 00:40:06,310 --> 00:40:07,860 I can't tell. 695 00:40:07,860 --> 00:40:11,230 At degree 2 junctions, I have a problem. 696 00:40:11,230 --> 00:40:13,770 That's kind of annoying. 697 00:40:13,770 --> 00:40:18,670 To fix that-- and so this is still going to be open, alas. 698 00:40:18,670 --> 00:40:23,870 To fix that I need to-- I really want to know which dot 699 00:40:23,870 --> 00:40:28,090 is which vertex for reasons to be determined. 700 00:40:28,090 --> 00:40:30,750 But in particular, that is part of number two. 701 00:40:33,980 --> 00:40:41,460 So I'm just going to give up and say, well there's 702 00:40:41,460 --> 00:40:45,805 2n different things that they could be, n vertices and edges. 703 00:40:48,940 --> 00:40:52,230 Do I want to do it that way? 704 00:40:52,230 --> 00:40:57,830 Maybe n choose order L. I'm just going to write down 705 00:40:57,830 --> 00:41:01,790 wherever I have a filled dot-- I guess this one is not filled. 706 00:41:01,790 --> 00:41:04,191 Maybe this one's filled, filled. 707 00:41:04,191 --> 00:41:06,690 I just going to write down, what is the vertex number there? 708 00:41:06,690 --> 00:41:17,480 This is maybe V3, V5, V20, V21, whatever, 709 00:41:17,480 --> 00:41:19,490 for each of the filled dots among the vertices 710 00:41:19,490 --> 00:41:23,850 that I can see, ignoring again the degree two junctions. 711 00:41:23,850 --> 00:41:26,965 There's order L of them. 712 00:41:26,965 --> 00:41:31,041 I just going to for each one pick out one of the labels. 713 00:41:31,041 --> 00:41:33,000 Again, the order is determined, so this 714 00:41:33,000 --> 00:41:34,560 is the right number of them. 715 00:41:34,560 --> 00:41:40,270 And this is n to the order L at most. 716 00:41:40,270 --> 00:41:42,187 So this is where I'm being a bit wasteful. 717 00:41:42,187 --> 00:41:44,270 It would be interesting to try to get around that. 718 00:41:47,300 --> 00:41:49,455 This was actual vertex labelings. 719 00:41:56,040 --> 00:41:59,200 So now, among the vertices I can see-- 720 00:41:59,200 --> 00:42:02,490 the degree three junctions, and the leaves, 721 00:42:02,490 --> 00:42:05,069 and higher degree junctions-- I know 722 00:42:05,069 --> 00:42:06,360 which vertices are glued there. 723 00:42:06,360 --> 00:42:10,325 I can also figure out which edges are glued there 724 00:42:10,325 --> 00:42:14,716 by similar labeling, although I don't think I actually care. 725 00:42:14,716 --> 00:42:19,610 No, I probably care, because it's part of number 2. 726 00:42:19,610 --> 00:42:23,110 So I do have to also label the open circles which 727 00:42:23,110 --> 00:42:25,150 edge is there. 728 00:42:25,150 --> 00:42:28,890 But a similar bound holds. 729 00:42:28,890 --> 00:42:29,405 What's left? 730 00:42:33,560 --> 00:42:35,676 What's left are the degree 2 vertices. 731 00:42:35,676 --> 00:42:37,050 I don't know anything about them. 732 00:42:40,690 --> 00:42:47,330 This is particularly tricky when I have some edge here. 733 00:42:47,330 --> 00:42:49,190 But let's first think about the case 734 00:42:49,190 --> 00:42:53,990 where I have a vertex, add a leaf, 735 00:42:53,990 --> 00:42:58,140 and I have these degree two junctions. 736 00:42:58,140 --> 00:43:01,392 And I don't know which edge is here, which vertex is here. 737 00:43:01,392 --> 00:43:03,100 In this case, because everything's small, 738 00:43:03,100 --> 00:43:04,350 I might be able to figure out. 739 00:43:04,350 --> 00:43:07,960 But here, where's the V3 to V4 transition? 740 00:43:07,960 --> 00:43:10,900 Could be here, or it could be here. 741 00:43:10,900 --> 00:43:13,040 It could be here. 742 00:43:13,040 --> 00:43:16,330 I can't afford to figure it out. 743 00:43:16,330 --> 00:43:20,720 Fortunately, I don't have to figure it out. 744 00:43:20,720 --> 00:43:21,580 It's not so obvious. 745 00:43:21,580 --> 00:43:23,920 From this picture you can't see what's going on, 746 00:43:23,920 --> 00:43:26,520 but this came from a polygon. 747 00:43:26,520 --> 00:43:30,290 This is an actual vertex, this is an actual vertex. 748 00:43:30,290 --> 00:43:37,450 So this edge length is the total perimeter from V3 to V5 749 00:43:37,450 --> 00:43:39,690 along the polygon. 750 00:43:39,690 --> 00:43:43,040 I know how long that is. 751 00:43:43,040 --> 00:43:48,760 So also if that was going clockwise from V3 752 00:43:48,760 --> 00:43:50,322 around the polygon-- actually, that's 753 00:43:50,322 --> 00:43:52,030 probably counter-clockwise in the polygon 754 00:43:52,030 --> 00:43:53,420 because everything's inside out. 755 00:43:53,420 --> 00:43:57,255 If I go the other way-- let's be relative-- from V3, 756 00:43:57,255 --> 00:44:00,560 I can measure out the same length. 757 00:44:00,560 --> 00:44:02,520 So in fact, I have some polygon-- maybe 758 00:44:02,520 --> 00:44:04,050 it looks like this, whatever. 759 00:44:04,050 --> 00:44:11,270 I go from V3 to V5, and I measure out that length. 760 00:44:11,270 --> 00:44:14,470 And I go the other way from V3, and I 761 00:44:14,470 --> 00:44:17,910 know this is getting glued to that. 762 00:44:17,910 --> 00:44:23,770 So I know where the vertices are from the lengths. 763 00:44:23,770 --> 00:44:26,270 I can figure out exactly what this picture must 764 00:44:26,270 --> 00:44:28,314 be when I have-- in this case, I happen 765 00:44:28,314 --> 00:44:30,230 to maybe get a vertex going to another vertex. 766 00:44:30,230 --> 00:44:34,310 In general, probably get some vertex gluing to some edge, 767 00:44:34,310 --> 00:44:35,992 and maybe vice versa. 768 00:44:35,992 --> 00:44:38,200 But if I can figure out exactly what that pattern is, 769 00:44:38,200 --> 00:44:42,660 I can figure out the label of these guys, 770 00:44:42,660 --> 00:44:46,015 because I know exactly what's happening there. 771 00:44:46,015 --> 00:44:46,640 So that's good. 772 00:44:46,640 --> 00:44:54,920 If it's a vertex to vertex edge in the gluing tree like this, 773 00:44:54,920 --> 00:44:58,460 I can figure out everything between that pair. 774 00:45:08,486 --> 00:45:10,737 Is that enough? 775 00:45:10,737 --> 00:45:11,236 Almost. 776 00:45:17,800 --> 00:45:22,116 So if I have a leaf where this is a vertex, which 777 00:45:22,116 --> 00:45:26,260 I was usually denoting by a filled circle, 778 00:45:26,260 --> 00:45:27,700 I have various degree 2 junctions 779 00:45:27,700 --> 00:45:31,500 which I ignore until I get to a degree three or higher 780 00:45:31,500 --> 00:45:33,600 junction. 781 00:45:33,600 --> 00:45:37,420 Now at this place, even just looking 782 00:45:37,420 --> 00:45:40,990 at this dot and this dot, I know at least one of them 783 00:45:40,990 --> 00:45:41,830 must be a vertex. 784 00:45:41,830 --> 00:45:45,440 Because I can't glue two edges together plus other stuff. 785 00:45:45,440 --> 00:45:46,610 I can glue at most one edge. 786 00:45:46,610 --> 00:45:48,810 So maybe this one's an edge, like in the picture 787 00:45:48,810 --> 00:45:50,360 that we did before. 788 00:45:50,360 --> 00:45:51,830 But one of them has to be a vertex. 789 00:45:51,830 --> 00:45:54,770 And then I can figure out exactly what's happening there, 790 00:45:54,770 --> 00:45:56,720 because I have this vertex to vertex thing. 791 00:45:56,720 --> 00:45:57,770 And I know the labels. 792 00:45:57,770 --> 00:46:01,884 I know this is V5 and this is V13, whatever. 793 00:46:01,884 --> 00:46:04,050 I know exactly what's happening on the right side, I 794 00:46:04,050 --> 00:46:05,560 measure backwards, I know exactly what's 795 00:46:05,560 --> 00:46:07,770 happening on the left side and who's going to what. 796 00:46:07,770 --> 00:46:10,350 So that determines everything. 797 00:46:10,350 --> 00:46:15,910 The problem is when I have an edge here, 798 00:46:15,910 --> 00:46:18,370 because then I don't know where it is along the edge. 799 00:46:18,370 --> 00:46:20,917 I can't measure lengths anymore, somewhere 800 00:46:20,917 --> 00:46:22,000 in the middle of the edge. 801 00:46:24,890 --> 00:46:33,010 And indeed, if I have something like this, 802 00:46:33,010 --> 00:46:35,690 where all of these angles-- I mean this for example 803 00:46:35,690 --> 00:46:41,030 is in a convex polygon, this could be a perimeter halving-- 804 00:46:41,030 --> 00:46:43,520 and it's not determined what's happening here 805 00:46:43,520 --> 00:46:46,860 because this is a rolling belt. 806 00:46:46,860 --> 00:46:48,730 I'll show you how undetermined it is. 807 00:46:48,730 --> 00:46:52,110 Suppose you have a bunch of vertices like this, 808 00:46:52,110 --> 00:46:58,690 and then some vertices like this. 809 00:46:58,690 --> 00:47:02,970 Depending on where I bend around for E5, 810 00:47:02,970 --> 00:47:04,950 these guys could be here. 811 00:47:04,950 --> 00:47:07,980 They could be here, or here, or here. 812 00:47:07,980 --> 00:47:12,720 They could be in the middle straddling this. 813 00:47:12,720 --> 00:47:17,720 In fact, there are about n squared different places 814 00:47:17,720 --> 00:47:20,780 where these guys could be, relative to these guys. 815 00:47:20,780 --> 00:47:24,370 Because there's going to be n transitions from-- if this is n 816 00:47:24,370 --> 00:47:28,500 and this is n-- n transitions from this versus that guy, 817 00:47:28,500 --> 00:47:30,880 then n transitions from these versus that guy, 818 00:47:30,880 --> 00:47:35,530 n transitions versus that guy, total of about n squared. 819 00:47:35,530 --> 00:47:39,440 Actually if this is n and this is n, it's exactly n squared. 820 00:47:39,440 --> 00:47:41,690 So we're not quite done, but I claim 821 00:47:41,690 --> 00:47:44,220 that there's really only order n squared left. 822 00:47:44,220 --> 00:47:46,020 It's always from the rolling belts. 823 00:47:46,020 --> 00:47:51,370 We know from last time there's at most three rolling belts, 824 00:47:51,370 --> 00:47:54,050 so at most quadratic per belt. 825 00:47:54,050 --> 00:47:59,660 So total outcome is polynomial for what's 826 00:47:59,660 --> 00:48:02,980 left, what we haven't specified, for how the degree 2 vertices 827 00:48:02,980 --> 00:48:03,520 behave. 828 00:48:03,520 --> 00:48:05,710 These are all degree 2 junctions. 829 00:48:05,710 --> 00:48:09,676 It's here, or they're here, we don't know. 830 00:48:09,676 --> 00:48:13,040 So if you want to get the full specification of what's where, 831 00:48:13,040 --> 00:48:14,657 you do all this work. 832 00:48:14,657 --> 00:48:16,240 And then for the degree two junctions, 833 00:48:16,240 --> 00:48:18,712 you have to deal with the rolling belts. 834 00:48:18,712 --> 00:48:20,170 The way to prove this is say, well, 835 00:48:20,170 --> 00:48:23,190 if I have a leaf that's a vertex, I can get rid of it 836 00:48:23,190 --> 00:48:24,510 and induct. 837 00:48:24,510 --> 00:48:27,020 In the end, I'll have at most four leaves 838 00:48:27,020 --> 00:48:29,440 because there's at most four fold points. 839 00:48:29,440 --> 00:48:32,810 So I have a constant number of leaves. 840 00:48:32,810 --> 00:48:34,400 You look at each belt, each of them 841 00:48:34,400 --> 00:48:40,020 is quadratic and polynomial. 842 00:48:40,020 --> 00:48:41,870 If you work out the bounds here-- we've 843 00:48:41,870 --> 00:48:43,670 tried to be a little more precise-- 844 00:48:43,670 --> 00:48:49,880 you could prove an overall bound of n to the 2L minus 2 845 00:48:49,880 --> 00:48:50,580 for L leaves. 846 00:48:53,220 --> 00:48:56,330 And we have slightly better bounds for L equals 4 847 00:48:56,330 --> 00:49:02,370 and L equals 3, but that's pretty good. 848 00:49:02,370 --> 00:49:05,910 But the proof I gave is at least n to the order L. 849 00:49:05,910 --> 00:49:09,770 We could n to the order L count different things here, 850 00:49:09,770 --> 00:49:12,210 and then some N to the constant at the end. 851 00:49:18,200 --> 00:49:20,330 This ends the combinatorial part. 852 00:49:20,330 --> 00:49:22,820 Now we're going to get to algorithms. 853 00:49:22,820 --> 00:49:25,420 So we've proved all of these things. 854 00:49:25,420 --> 00:49:27,070 Exponential upper and lower bounds 855 00:49:27,070 --> 00:49:29,290 for the general case and edge-to-edge case, 856 00:49:29,290 --> 00:49:32,800 and polynomial for bounded sharpness, 857 00:49:32,800 --> 00:49:35,750 or when you have a reasonable number of leaves in your tree. 858 00:50:08,300 --> 00:50:14,940 I'm going to start with this edge-to-edge gluing algorithm. 859 00:50:32,140 --> 00:50:39,350 This is going to use a technique called dynamic programming, 860 00:50:39,350 --> 00:50:43,590 which some of you have seen before, some of you haven't. 861 00:50:43,590 --> 00:50:45,190 It's a very simple idea. 862 00:50:45,190 --> 00:50:46,720 You take your problem that you want 863 00:50:46,720 --> 00:50:48,900 to solve-- which is I have a polygon-- 864 00:50:48,900 --> 00:50:52,146 and you split it up into sub-problems. 865 00:50:52,146 --> 00:50:54,830 You solve each of the sub-problems, 866 00:50:54,830 --> 00:50:57,570 and one of the sub-problems is actually the whole problem, 867 00:50:57,570 --> 00:50:59,500 and then you're done. 868 00:50:59,500 --> 00:51:02,080 In our case, a sub-problem is going 869 00:51:02,080 --> 00:51:05,950 to be some sub-chain from one vertex 870 00:51:05,950 --> 00:51:09,250 to another vertex of the polygon. 871 00:51:15,680 --> 00:51:18,640 So I have some polygon, and I just 872 00:51:18,640 --> 00:51:26,060 look at some interval of the boundary from VI to VJ. 873 00:51:26,060 --> 00:51:31,730 And the idea is, well suppose that VI is glued to VJ. 874 00:51:31,730 --> 00:51:34,070 How many different ways, or how should I 875 00:51:34,070 --> 00:51:35,170 glue the part in between? 876 00:51:38,540 --> 00:51:40,549 How should I glue this into itself? 877 00:51:40,549 --> 00:51:42,090 Because there's no crossings, there's 878 00:51:42,090 --> 00:51:45,900 going to be no gluings from inside to outside. 879 00:51:45,900 --> 00:51:47,510 So that's the sub-problem. 880 00:51:47,510 --> 00:51:53,700 And of course if I say from the interval from V1 to V1, 881 00:51:53,700 --> 00:51:55,500 that is the entire problem. 882 00:51:55,500 --> 00:51:57,440 Of course V1 is glued to V1. 883 00:51:57,440 --> 00:52:02,980 So in particular, the V1 to V1 sub-problem 884 00:52:02,980 --> 00:52:05,740 is what we want to solve. 885 00:52:05,740 --> 00:52:08,549 So this is our goal. 886 00:52:08,549 --> 00:52:10,090 So I'm going to tell you how to solve 887 00:52:10,090 --> 00:52:11,756 all of these sub-problems, and therefore 888 00:52:11,756 --> 00:52:13,960 how to solve what we actually want to solve. 889 00:52:13,960 --> 00:52:17,530 That's dynamic programming. 890 00:52:17,530 --> 00:52:22,992 So let's try to solve one of these sub-problems, VI to VJ. 891 00:52:22,992 --> 00:52:24,200 How are we going to solve it? 892 00:52:27,710 --> 00:52:31,900 So I'm going to draw a picture. 893 00:52:31,900 --> 00:52:33,789 It looks like this. 894 00:52:33,789 --> 00:52:35,580 This is now thinking about the gluing tree, 895 00:52:35,580 --> 00:52:39,070 so the polygon's on the outside here. 896 00:52:39,070 --> 00:52:41,960 That's one of the main reasons gluing trees were developed, 897 00:52:41,960 --> 00:52:43,450 just to describe this algorithm. 898 00:52:43,450 --> 00:52:45,540 This algorthim's actually quite old, 899 00:52:45,540 --> 00:52:49,030 1996 by [INAUDIBLE] and [INAUDIBLE]. 900 00:52:49,030 --> 00:52:51,970 The edge-to-edge case was before I joined this group. 901 00:52:51,970 --> 00:52:55,104 And then later together we did the general case, 902 00:52:55,104 --> 00:52:57,145 unbounded sharpness, which is what we'll do next. 903 00:52:59,737 --> 00:53:01,320 So this is at the heart of everything. 904 00:53:01,320 --> 00:53:04,170 So we have VO to VJ glued together. 905 00:53:04,170 --> 00:53:07,620 We want to know how to glue together the rest. 906 00:53:07,620 --> 00:53:11,290 Well, maybe some vertices get glued in here in addition 907 00:53:11,290 --> 00:53:15,890 to VI and VJ, maybe not. 908 00:53:15,890 --> 00:53:18,610 Let's think about what gets glued to this edge. 909 00:53:18,610 --> 00:53:21,629 There's the edge from VI to VI plus 1. 910 00:53:21,629 --> 00:53:23,420 And this is an edge-to-edge gluing, so what 911 00:53:23,420 --> 00:53:25,280 gets glued there is an actual edge. 912 00:53:27,790 --> 00:53:28,820 What edge could it be? 913 00:53:28,820 --> 00:53:33,256 Some edge over here, I don't know which one. 914 00:53:33,256 --> 00:53:34,950 The power of the dynamic programming 915 00:53:34,950 --> 00:53:36,330 is you don't need to know. 916 00:53:36,330 --> 00:53:41,490 It's some edge, VK, VK plus 1 gets glued there. 917 00:53:44,920 --> 00:53:47,710 There's only one of them, it's out there somewhere. 918 00:53:47,710 --> 00:53:49,406 It has to have matching edge length, 919 00:53:49,406 --> 00:53:51,280 but there could be many choices, all of which 920 00:53:51,280 --> 00:53:52,363 have matching edge length. 921 00:53:52,363 --> 00:53:54,220 Maybe all the edge lengths are the same, 922 00:53:54,220 --> 00:54:05,550 but there's at most n choices for that edge. 923 00:54:05,550 --> 00:54:08,940 It's actually at most J minus I choices plus 1. 924 00:54:08,940 --> 00:54:12,716 But there's at most n edges in here, 925 00:54:12,716 --> 00:54:14,590 so there's at most n different possibilities. 926 00:54:14,590 --> 00:54:16,820 Just try them all. 927 00:54:16,820 --> 00:54:18,640 Think about all of them. 928 00:54:18,640 --> 00:54:20,910 I haven't said here whether I'm doing-- or I have? 929 00:54:20,910 --> 00:54:22,962 I guess I've been pointing here. 930 00:54:22,962 --> 00:54:25,170 I really want to do both of these algorithms at once, 931 00:54:25,170 --> 00:54:28,210 but I'll start with this one, which is just find 932 00:54:28,210 --> 00:54:30,130 all the gluings in exponential time, which 933 00:54:30,130 --> 00:54:31,880 is optimal in the worst case because there 934 00:54:31,880 --> 00:54:33,296 can be exponentially many outputs. 935 00:54:37,330 --> 00:54:41,020 So try all n choices for VK VK plus 1. 936 00:54:41,020 --> 00:54:43,410 What happens when I do one of them? 937 00:54:43,410 --> 00:54:44,570 I might choose one of them. 938 00:54:49,570 --> 00:55:00,190 Well, the new picture will be-- so the topological picture 939 00:55:00,190 --> 00:55:03,400 is I still have VI glued to VJ. 940 00:55:06,000 --> 00:55:13,020 Then I also have here VK and VI plus 1 glued together. 941 00:55:13,020 --> 00:55:18,339 And I have VI also glued to VK plus 1. 942 00:55:18,339 --> 00:55:20,130 Now it's possible actually VK plus 1 and VJ 943 00:55:20,130 --> 00:55:22,864 are the same thing, in which case there's no loop here. 944 00:55:22,864 --> 00:55:24,530 And that's the case when no extra vertex 945 00:55:24,530 --> 00:55:25,710 got glued in there. 946 00:55:25,710 --> 00:55:29,266 But this is the generic situation. 947 00:55:29,266 --> 00:55:33,140 If this is link 0, then these guys are the same. 948 00:55:33,140 --> 00:55:36,530 So really what I have now are two different sub-problems. 949 00:55:36,530 --> 00:55:41,520 There's this thing, which is VI plus 1, dot, dot, VK. 950 00:55:41,520 --> 00:55:45,685 And there's this one which is VK plus 1 dot, dot, VJ. 951 00:55:48,760 --> 00:55:50,370 The idea with the sub-problems is 952 00:55:50,370 --> 00:55:52,120 to solve the sub-problems in order 953 00:55:52,120 --> 00:55:54,540 by increasing chain length. 954 00:55:54,540 --> 00:55:57,020 So start with very short ones. 955 00:55:57,020 --> 00:55:59,860 And I saw longer and longer ones using the previous results. 956 00:55:59,860 --> 00:56:02,160 If I've already computed the answers 957 00:56:02,160 --> 00:56:04,976 to VK plus 1 to VJ because that is smaller 958 00:56:04,976 --> 00:56:06,350 than the original-- look, there's 959 00:56:06,350 --> 00:56:08,480 two edges fewer at least. 960 00:56:08,480 --> 00:56:11,130 This thing is at least 2 smaller than the original chain 961 00:56:11,130 --> 00:56:12,720 because here's two edges. 962 00:56:12,720 --> 00:56:14,520 So I wanted to solve VI to VJ. 963 00:56:14,520 --> 00:56:17,690 I guessed what VK to VK plus 1 was, 964 00:56:17,690 --> 00:56:20,174 meaning I tried all the possibilities for each one. 965 00:56:20,174 --> 00:56:22,340 I say, well what are all the possibilities for this? 966 00:56:22,340 --> 00:56:24,620 What are all the possibilities for this? 967 00:56:24,620 --> 00:56:26,340 Take the cross-product. 968 00:56:26,340 --> 00:56:28,500 Just multiply those sets together. 969 00:56:28,500 --> 00:56:30,750 Those are all the possible gluings. 970 00:56:30,750 --> 00:56:32,050 And then I sum that. 971 00:56:32,050 --> 00:56:38,380 I take all the options for all the different values of K. 972 00:56:38,380 --> 00:56:40,010 And that's it. 973 00:56:40,010 --> 00:56:44,024 That output is all the possible gluings. 974 00:56:44,024 --> 00:56:45,690 So this should actually give another way 975 00:56:45,690 --> 00:56:47,600 to prove that the number of different gluings 976 00:56:47,600 --> 00:56:51,960 is only exponential, but this is just for the edge-to-edge case. 977 00:56:55,710 --> 00:56:58,270 Maybe I should write that down. 978 00:56:58,270 --> 00:57:10,020 So we have for each choice of K output-- 979 00:57:10,020 --> 00:57:18,660 let's say, and for each solution to the smaller 980 00:57:18,660 --> 00:57:21,280 sub-problem VK plus 1 to VJ. 981 00:57:21,280 --> 00:57:36,187 And then for each solution to VK plus 1 to VK output. 982 00:57:36,187 --> 00:57:37,020 This is very simple. 983 00:57:37,020 --> 00:57:40,190 This is just a product over various things. 984 00:57:40,190 --> 00:57:45,610 There's only order n choices here. 985 00:57:45,610 --> 00:57:47,690 This thing, it depends how many solutions there 986 00:57:47,690 --> 00:57:51,860 are to those sub-problems, but it's the product of the two. 987 00:57:51,860 --> 00:57:56,970 And then that's the total output. 988 00:57:56,970 --> 00:58:00,050 Believe me, this runs in exponential time. 989 00:58:00,050 --> 00:58:01,726 That's not very hard to prove. 990 00:58:01,726 --> 00:58:03,100 What's interesting is we can make 991 00:58:03,100 --> 00:58:06,830 the same algorithm with a little bit of tweaking 992 00:58:06,830 --> 00:58:09,280 get a polynomial time decision algorithm. 993 00:58:12,080 --> 00:58:14,010 That's cool. 994 00:58:14,010 --> 00:58:18,170 How do we make it a polynomial decision algorithm? 995 00:58:18,170 --> 00:58:21,350 I can't afford to store every solution for every sub-problem 996 00:58:21,350 --> 00:58:23,220 because there can be exponentially many. 997 00:58:23,220 --> 00:58:26,555 So I only get to store one solution for every sub-problem. 998 00:58:29,280 --> 00:58:30,470 So this is the great idea. 999 00:58:36,370 --> 00:58:55,830 Let's say for each sub-problem, let's say VI to VK only store 1000 00:58:55,830 --> 00:59:01,990 the solution that minimizes the amount 1001 00:59:01,990 --> 00:59:04,170 of stuff glued into VI VJ. 1002 00:59:10,260 --> 00:59:17,440 So the sum of the angles glued at VI, 1003 00:59:17,440 --> 00:59:22,190 which is the same thing as VJ because they are already 1004 00:59:22,190 --> 00:59:24,270 glued together. 1005 00:59:24,270 --> 00:59:25,810 That's what we were told. 1006 00:59:25,810 --> 00:59:27,840 So I had many choices here. 1007 00:59:27,840 --> 00:59:31,080 I had all the choices for K. I had all the choices 1008 00:59:31,080 --> 00:59:32,054 for up here. 1009 00:59:32,054 --> 00:59:33,470 I had all the choices for up here. 1010 00:59:33,470 --> 00:59:36,011 Well actually now I'm just going to think about one choice up 1011 00:59:36,011 --> 00:59:38,190 here, which is what is the choice that 1012 00:59:38,190 --> 00:59:40,600 minimizes the angle glued here? 1013 00:59:40,600 --> 00:59:42,260 And what is the choice over here that 1014 00:59:42,260 --> 00:59:44,650 minimizes the angle glued there? 1015 00:59:44,650 --> 00:59:45,800 Why the minimum? 1016 00:59:45,800 --> 00:59:48,140 Because some of these are wrong. 1017 00:59:48,140 --> 00:59:52,270 I should actually say output if it's Alexandroff. 1018 00:59:52,270 --> 00:59:54,490 We only want to output Alexandroff gluings. 1019 00:59:54,490 --> 00:59:56,050 We only want to output gluings where 1020 00:59:56,050 --> 00:59:58,530 the total sum of the angles is less than or equal to 360. 1021 00:59:58,530 --> 01:00:03,070 I need to check that for every one. 1022 01:00:03,070 --> 01:00:06,260 If I want to have the most chance of it being Alexandroff, 1023 01:00:06,260 --> 01:00:09,020 if I got the least possible angle glued here and glued 1024 01:00:09,020 --> 01:00:11,530 here, that's my best hope of it working. 1025 01:00:11,530 --> 01:00:14,700 Now I still have flexibility, which is I get to choose k. 1026 01:00:14,700 --> 01:00:17,580 There's still n choices for k, but everything else 1027 01:00:17,580 --> 01:00:19,510 is determined at that point. 1028 01:00:19,510 --> 01:00:23,730 Once I fix K I see, well does this work, yes or no? 1029 01:00:23,730 --> 01:00:26,560 If it works, that gives me one candidate 1030 01:00:26,560 --> 01:00:28,719 for how much material gets glued here. 1031 01:00:28,719 --> 01:00:30,260 It could be a lot, could be a little. 1032 01:00:30,260 --> 01:00:33,480 I try for all K, I take the smallest one. 1033 01:00:33,480 --> 01:00:37,010 So it's the same loop, except there's no four loops here. 1034 01:00:37,010 --> 01:00:38,750 It's just for every choice of K, I 1035 01:00:38,750 --> 01:00:42,490 look at the solution to VK plus 1 to VJ, the solution for VI 1036 01:00:42,490 --> 01:00:43,860 plus 1 to VK. 1037 01:00:43,860 --> 01:00:46,250 If it's Alexandroff, I don't output it. 1038 01:00:46,250 --> 01:00:50,710 But I check, is it the best solution so far in terms 1039 01:00:50,710 --> 01:00:55,150 of the total angle glued of VI and VJ. 1040 01:00:55,150 --> 01:00:57,720 I keep looping until I find the very best one, 1041 01:00:57,720 --> 01:00:59,600 and I output that one. 1042 01:00:59,600 --> 01:01:03,550 That would be the solution that I store. 1043 01:01:03,550 --> 01:01:08,700 The result is, the running time is actually polynomial, 1044 01:01:08,700 --> 01:01:12,930 because the number of sub-problems-- a sub-problem 1045 01:01:12,930 --> 01:01:14,880 is determined by two vertices. 1046 01:01:14,880 --> 01:01:16,800 There's only n of these, n of these. 1047 01:01:16,800 --> 01:01:21,040 So the number of sub-problems is n squared. 1048 01:01:21,040 --> 01:01:28,540 For each sub-problem I need to look at order n choices for K. 1049 01:01:28,540 --> 01:01:31,270 And so the total running time is n 1050 01:01:31,270 --> 01:01:37,950 squared times n, which is n cubed. 1051 01:01:37,950 --> 01:01:39,630 And that will tell you if there's 1052 01:01:39,630 --> 01:01:42,120 any hope of anything working, if there's 1053 01:01:42,120 --> 01:01:46,980 any gluing this will find one, because it's always 1054 01:01:46,980 --> 01:01:53,842 trying to minimize the angles that get glued together 1055 01:01:53,842 --> 01:01:54,800 That's is edge-to-edge. 1056 01:02:00,030 --> 01:02:01,520 Now we can generalize. 1057 01:02:01,520 --> 01:02:04,790 It's a little bit messy, but we can 1058 01:02:04,790 --> 01:02:07,060 generalize to arbitrary gluings. 1059 01:02:12,770 --> 01:02:15,150 Let me sketch a little bit how that goes. 1060 01:02:22,030 --> 01:02:27,450 So we've seen now this result for algorithms and this result 1061 01:02:27,450 --> 01:02:28,800 for algorithms. 1062 01:02:28,800 --> 01:02:31,000 And now I'm going to tell you about this result. 1063 01:02:31,000 --> 01:02:33,170 I wish there was a result here to tell you about, 1064 01:02:33,170 --> 01:02:33,921 but there isn't. 1065 01:02:33,921 --> 01:02:36,420 So this last part that I did where the decision algorithm is 1066 01:02:36,420 --> 01:02:39,160 very efficient, we don't know how to generalize that 1067 01:02:39,160 --> 01:02:42,065 to the general case, arbitrary gluings. 1068 01:02:42,065 --> 01:02:43,440 This only works for edge-to-edge. 1069 01:02:43,440 --> 01:02:46,060 We assumed a whole edge, VK VK plus 1 1070 01:02:46,060 --> 01:02:49,480 was glued to VI VI plus 1. 1071 01:02:49,480 --> 01:02:52,190 But the enumeration part where we said, 1072 01:02:52,190 --> 01:02:53,810 oh just give me all the solutions, 1073 01:02:53,810 --> 01:02:55,100 that we can get to work. 1074 01:02:55,100 --> 01:02:58,250 It's just slightly more complicated. 1075 01:02:58,250 --> 01:03:04,770 Let me tell you how it gets more complicated. 1076 01:03:04,770 --> 01:03:10,930 So one difference is that there are more kinds of sub-problems, 1077 01:03:10,930 --> 01:03:12,930 this is the heart of the problem. 1078 01:03:12,930 --> 01:03:18,510 We have the VI to VJ sub-problem just like before, that's easy. 1079 01:03:18,510 --> 01:03:23,550 And then we have the VI to EJ sub-problem. 1080 01:03:23,550 --> 01:03:28,830 So this one was VI was glued to VJ, very clear what that means. 1081 01:03:28,830 --> 01:03:33,455 Here we have VI is glued to an edge EJ. 1082 01:03:36,190 --> 01:03:39,880 The trouble with that is we don't know where on the edge 1083 01:03:39,880 --> 01:03:41,200 it's glued. 1084 01:03:41,200 --> 01:03:45,220 It's somewhere on the edge. 1085 01:03:45,220 --> 01:03:48,200 This is where things get trickier. 1086 01:03:48,200 --> 01:03:49,750 And there's also the symmetric case, 1087 01:03:49,750 --> 01:03:51,805 of course, where it's EI to VJ. 1088 01:03:51,805 --> 01:03:53,430 But we don't really need to worry about 1089 01:03:53,430 --> 01:03:54,305 that, it's symmetric. 1090 01:04:02,670 --> 01:04:05,080 So what does a solution look like? 1091 01:04:09,310 --> 01:04:12,560 So before, a solution was an entire gluing. 1092 01:04:12,560 --> 01:04:15,602 Now, because the gluings can be infinite. 1093 01:04:15,602 --> 01:04:17,560 There can be infinitely many different gluings. 1094 01:04:17,560 --> 01:04:20,050 I can't actually list every one explicitly. 1095 01:04:20,050 --> 01:04:22,140 I've actually got to explain ranges of gluings 1096 01:04:22,140 --> 01:04:24,880 if I have any hope of capturing all of them. 1097 01:04:24,880 --> 01:04:28,050 So what a solution is going to look like 1098 01:04:28,050 --> 01:04:40,226 is the combinatorial type of the gluing, which was this stuff. 1099 01:04:40,226 --> 01:04:41,600 You have an abstract gluing tree, 1100 01:04:41,600 --> 01:04:43,770 you get which vertices glue to what edges. 1101 01:04:43,770 --> 01:04:45,930 So you have pretty much the whole picture, 1102 01:04:45,930 --> 01:04:49,710 just not exactly where each vertex is glued to which edge. 1103 01:04:49,710 --> 01:04:55,010 Then I also will tell you a total angle 1104 01:04:55,010 --> 01:05:05,822 of material glued at VI so far. 1105 01:05:05,822 --> 01:05:07,280 In both these cases, I want to know 1106 01:05:07,280 --> 01:05:11,320 how much stuff in my gluing at VI 1107 01:05:11,320 --> 01:05:14,500 so I can tell whether it's Alexandroff. 1108 01:05:14,500 --> 01:05:22,760 And then in the case where I glue a vertex to an edge, what 1109 01:05:22,760 --> 01:05:24,760 I'm going to do is give you an interval. 1110 01:05:28,535 --> 01:05:33,020 The Interval's always going to be starting at 0, 1111 01:05:33,020 --> 01:05:38,260 and going to some value x. x is less than 1112 01:05:38,260 --> 01:05:42,815 or equal to the length of the edge, VJ. 1113 01:05:46,510 --> 01:05:50,420 And this is the interval along the edge where VI can glue. 1114 01:05:53,510 --> 01:05:55,790 So I'm going to tell you an actual interval 1115 01:05:55,790 --> 01:06:00,320 here from the edge EJ. 1116 01:06:00,320 --> 01:06:02,420 As long as you glue VI to somewhere between 1117 01:06:02,420 --> 01:06:04,810 there and there, this stuff works. 1118 01:06:04,810 --> 01:06:06,980 Whatever I specified works over there. 1119 01:06:06,980 --> 01:06:08,330 You can't go beyond some point. 1120 01:06:15,897 --> 01:06:17,230 That will turn out to be enough. 1121 01:06:32,420 --> 01:06:39,750 So while there's the VI to VJ case, it's less interesting. 1122 01:06:39,750 --> 01:06:43,110 Let's think about now if I want to actually solve 1123 01:06:43,110 --> 01:06:50,075 the VI to EJ case. 1124 01:06:53,370 --> 01:06:55,130 What could happen? 1125 01:06:55,130 --> 01:06:57,620 Before there was only one-- we looked 1126 01:06:57,620 --> 01:07:02,200 at what glues VI to VI plus 1 and it was one edge. 1127 01:07:02,200 --> 01:07:05,149 It was a little easier to think about. 1128 01:07:05,149 --> 01:07:06,690 Let's not think about the whole edge, 1129 01:07:06,690 --> 01:07:11,410 but let's think about locally what happens just after VI. 1130 01:07:11,410 --> 01:07:13,480 Something gets glued there. 1131 01:07:13,480 --> 01:07:15,999 Now it could be EJ actually gets glued there. 1132 01:07:15,999 --> 01:07:17,290 It could be we continue gluing. 1133 01:07:17,290 --> 01:07:19,380 That's kind of like zipping, although not 1134 01:07:19,380 --> 01:07:21,650 exactly what we were calling zipping before. 1135 01:07:21,650 --> 01:07:27,200 Here I call it zipping, good choice. 1136 01:07:27,200 --> 01:07:30,620 So one option is that you zip for a little while. 1137 01:07:30,620 --> 01:07:32,440 Now, how long would you zip? 1138 01:07:32,440 --> 01:07:33,930 A couple options. 1139 01:07:33,930 --> 01:07:35,760 You zip until you hit a vertex, you 1140 01:07:35,760 --> 01:07:38,240 can't stop in the middle of two edges. 1141 01:07:38,240 --> 01:07:40,160 So maybe you hit a vertex here first, 1142 01:07:40,160 --> 01:07:41,630 maybe you hit a vertex here first, 1143 01:07:41,630 --> 01:07:44,520 and the next vertex here is farther away. 1144 01:07:44,520 --> 01:07:46,450 So there's two pictures. 1145 01:07:46,450 --> 01:07:48,841 Let me draw the two pictures. 1146 01:07:48,841 --> 01:07:51,205 It could be hit you hit VI plus 1 first. 1147 01:07:56,320 --> 01:07:58,690 So here's EJ. 1148 01:07:58,690 --> 01:08:04,020 It could be you hit the vertex of EJ first. 1149 01:08:11,330 --> 01:08:13,380 In this case, you get a sub-problem 1150 01:08:13,380 --> 01:08:16,550 which is VI plus 1 to EJ. 1151 01:08:16,550 --> 01:08:18,910 These are glued to each other. 1152 01:08:18,910 --> 01:08:21,560 In this case, you get this vertex, which I think 1153 01:08:21,560 --> 01:08:28,830 is VJ gets glued to the edge EI, which is just 1154 01:08:28,830 --> 01:08:33,460 the symmetric case I was talking about here. 1155 01:08:33,460 --> 01:08:37,319 Edge EI is glued to Vertex VJ. 1156 01:08:37,319 --> 01:08:38,819 So those are smaller sub-problems. 1157 01:08:38,819 --> 01:08:40,964 You solve those, and then from that you 1158 01:08:40,964 --> 01:08:42,630 will see whether this actually gives you 1159 01:08:42,630 --> 01:08:44,700 a solution to the original sub-problem 1160 01:08:44,700 --> 01:08:47,250 you wanted to solve. 1161 01:08:47,250 --> 01:08:48,670 That's the zip case. 1162 01:08:48,670 --> 01:08:52,220 There's another case which we call tug. 1163 01:08:55,689 --> 01:08:59,720 In the tug case-- so that was supposing, 1164 01:08:59,720 --> 01:09:03,590 we'll maybe nothing else gets glued in here. 1165 01:09:03,590 --> 01:09:06,439 But maybe another vertex gets glued in there, that's the tug. 1166 01:09:06,439 --> 01:09:09,750 To pick a vertex, I pull it in. 1167 01:09:09,750 --> 01:09:17,149 So in that case we get a picture like this. 1168 01:09:20,770 --> 01:09:24,880 So here's EJ, here's VI, and now there's 1169 01:09:24,880 --> 01:09:29,060 some other vertex VK that gets glued in there. 1170 01:09:29,060 --> 01:09:29,779 Which vertex? 1171 01:09:29,779 --> 01:09:32,252 I don't know, try them all. 1172 01:09:32,252 --> 01:09:33,960 Just like before, before we were choosing 1173 01:09:33,960 --> 01:09:35,566 an edge that gets glued in. 1174 01:09:35,566 --> 01:09:37,149 Now it's not necessarily a whole edge, 1175 01:09:37,149 --> 01:09:41,020 but if there's any vertex that glues in, 1176 01:09:41,020 --> 01:09:42,720 pick who's the next one. 1177 01:09:42,720 --> 01:09:46,930 And now I get a sub-problem here which is VI to VK. 1178 01:09:46,930 --> 01:09:53,210 I get a sub-problem here which is VK to EJ. 1179 01:09:53,210 --> 01:09:56,610 I solve each of those, I take the cross-product, 1180 01:09:56,610 --> 01:10:01,680 I do that for all values of K just like I did here, 1181 01:10:01,680 --> 01:10:03,680 except the labels have changed a little bit, 1182 01:10:03,680 --> 01:10:04,970 and I find all the outputs. 1183 01:10:04,970 --> 01:10:09,390 And again, you can show that it's exponential time at most. 1184 01:10:09,390 --> 01:10:13,990 So that's an algorithm. 1185 01:10:13,990 --> 01:10:19,750 Now, it's exponential time, but really it's not so bad 1186 01:10:19,750 --> 01:10:24,680 because it's at most cubic like we had before. 1187 01:10:24,680 --> 01:10:26,360 But we're doing extra work, which 1188 01:10:26,360 --> 01:10:31,900 is something like the number of gluings dealt 1189 01:10:31,900 --> 01:10:37,590 with at each stage per sub-problem. 1190 01:10:37,590 --> 01:10:41,310 Now, it's not just the number of actual solutions, 1191 01:10:41,310 --> 01:10:44,150 because we generate all possible solutions 1192 01:10:44,150 --> 01:10:46,370 and then check whether they're Alexandroff. 1193 01:10:46,370 --> 01:10:50,940 So if you have some example that happens to be unique in the way 1194 01:10:50,940 --> 01:10:54,240 that it glues up, this bound will not actually be very good. 1195 01:10:54,240 --> 01:10:56,120 It's still going to consider lots of options. 1196 01:10:56,120 --> 01:11:02,730 But in the case of bounded sharpness, 1197 01:11:02,730 --> 01:11:05,275 where the number of gluings is only polynomial-- 1198 01:11:05,275 --> 01:11:07,290 and it's polynomial for a strong reason 1199 01:11:07,290 --> 01:11:10,320 that the trees can't get very complicated-- 1200 01:11:10,320 --> 01:11:13,290 then we can actually turn this into a polynomial algorithm. 1201 01:11:13,290 --> 01:11:15,880 This will be n cubed times that bound. 1202 01:11:15,880 --> 01:11:19,064 As long as your polygon is bounded sharpness, 1203 01:11:19,064 --> 01:11:21,730 you can show that at every stage of course the number of gluings 1204 01:11:21,730 --> 01:11:24,107 will also be polynomial. 1205 01:11:24,107 --> 01:11:25,690 And so then even the number of gluings 1206 01:11:25,690 --> 01:11:27,773 you have to consider and check will be polynomial. 1207 01:11:27,773 --> 01:11:29,970 So the whole thing will be polynomial time, 1208 01:11:29,970 --> 01:11:33,720 that is this result and this result. 1209 01:11:36,810 --> 01:11:39,042 So if your polygon is vaguely reasonable, 1210 01:11:39,042 --> 01:11:40,750 this is actually a really good algorithm. 1211 01:11:40,750 --> 01:11:42,208 This algorithm has been implemented 1212 01:11:42,208 --> 01:11:45,990 by two groups, one [INAUDIBLE] in mathematica 1213 01:11:45,990 --> 01:11:48,952 and another [INAUDIBLE], which sadly is not-- 1214 01:11:48,952 --> 01:11:50,660 his implementation used to be on the web, 1215 01:11:50,660 --> 01:11:53,400 I can't find it anymore. 1216 01:11:53,400 --> 01:11:56,640 But you get either implementation, 1217 01:11:56,640 --> 01:11:58,160 plug-in your polygon, and it just 1218 01:11:58,160 --> 01:12:00,850 lists all the possible gluings. 1219 01:12:00,850 --> 01:12:03,390 So that's all the theory for today. 1220 01:12:03,390 --> 01:12:06,110 Now I want to show you a whole bunch of gluings for fun. 1221 01:12:06,110 --> 01:12:08,810 Once you have all the stuff, we have these programs, 1222 01:12:08,810 --> 01:12:10,670 you get to play. 1223 01:12:10,670 --> 01:12:16,890 So our first play is not that. 1224 01:12:16,890 --> 01:12:18,800 That was the last play. 1225 01:12:18,800 --> 01:12:20,330 First thing, we saw this before. 1226 01:12:20,330 --> 01:12:23,090 I'll just remind you what it looks like 1227 01:12:23,090 --> 01:12:25,440 and tell you a little bit about what's going on here. 1228 01:12:25,440 --> 01:12:28,660 So this was the cube. 1229 01:12:28,660 --> 01:12:31,130 And then it's eventually going to fold into a cross. 1230 01:12:31,130 --> 01:12:33,360 The real study here is for the Latin Cross-- 1231 01:12:33,360 --> 01:12:35,710 which is the picture I keep drawing 1232 01:12:35,710 --> 01:12:39,790 at the beginning of lecture and which will now be unfolded-- 1233 01:12:39,790 --> 01:12:44,280 what other convex polyhedra can you glue that polygon into? 1234 01:12:44,280 --> 01:12:47,670 So it's like you're not told what the creases are. 1235 01:12:47,670 --> 01:12:50,940 You just want to look at gluings, the resulting creases. 1236 01:12:50,940 --> 01:12:53,774 This is one convex polyhedron you can make. 1237 01:12:53,774 --> 01:12:56,190 This is something that can come from Alexandroff's theorem 1238 01:12:56,190 --> 01:12:59,780 that you actually get a flat, doubly-covered convex polygon. 1239 01:12:59,780 --> 01:13:03,320 It's technically a polyhedron, according to Alexandroff. 1240 01:13:03,320 --> 01:13:07,800 These are all edge-to-edge gluings if the length two edges 1241 01:13:07,800 --> 01:13:11,070 are actually subdivided into two length one edges. 1242 01:13:11,070 --> 01:13:14,400 And this video only enumerates the edge-to-edge gluings, 1243 01:13:14,400 --> 01:13:17,355 because at this point we only had the edge-to-edge algorithm. 1244 01:13:17,355 --> 01:13:20,090 I forget, this video is '98, I think. 1245 01:13:20,090 --> 01:13:23,690 This algorithm was in '96, so they had just implemented that. 1246 01:13:23,690 --> 01:13:25,136 And then that's when I joined. 1247 01:13:25,136 --> 01:13:27,260 I was just starting out as a grad student and said, 1248 01:13:27,260 --> 01:13:29,030 OK let's make a video. 1249 01:13:29,030 --> 01:13:30,140 That would be cool. 1250 01:13:30,140 --> 01:13:33,160 So I think there's one more. 1251 01:13:33,160 --> 01:13:35,410 And this is the only one where we actually 1252 01:13:35,410 --> 01:13:37,380 have the animations. 1253 01:13:37,380 --> 01:13:39,505 This octahedron, this was tricky to find, 1254 01:13:39,505 --> 01:13:40,880 beceause at this point there were 1255 01:13:40,880 --> 01:13:42,920 no algorithms for Alexandroff's theorem. 1256 01:13:42,920 --> 01:13:46,080 So we found it by taking a piece of cardboard, 1257 01:13:46,080 --> 01:13:48,470 gluing it up, getting a protractor, 1258 01:13:48,470 --> 01:13:50,350 and measuring all the dihedral angles, 1259 01:13:50,350 --> 01:13:51,600 and then typing them in. 1260 01:13:51,600 --> 01:13:54,170 And Lo and behold, in that animation 1261 01:13:54,170 --> 01:13:58,090 they don't perfectly close up, but it's very close, 1262 01:13:58,090 --> 01:14:00,110 up to the measurement error of the protractor. 1263 01:14:00,110 --> 01:14:01,975 So for edge-to-edge gluings, there 1264 01:14:01,975 --> 01:14:03,642 are exactly five convex polyhedra 1265 01:14:03,642 --> 01:14:04,850 you can make from that cross. 1266 01:14:08,729 --> 01:14:10,520 But if you allow non-edge-to-edge gluings-- 1267 01:14:10,520 --> 01:14:13,130 and so some years later when we came up with that algorithm 1268 01:14:13,130 --> 01:14:16,710 and implemented it, we discovered there are 85 gluings 1269 01:14:16,710 --> 01:14:17,870 of the cross. 1270 01:14:17,870 --> 01:14:20,300 This is only six of them. 1271 01:14:20,300 --> 01:14:22,260 We're going to do it starting with the cube, 1272 01:14:22,260 --> 01:14:26,130 and then we're going to go in increasing order of faces. 1273 01:14:26,130 --> 01:14:30,000 So there's two flat, doubly-covered quadrilaterals. 1274 01:14:30,000 --> 01:14:32,730 They're different. 1275 01:14:32,730 --> 01:14:35,030 Then there is a bunch of tetrahedra that you can make. 1276 01:14:35,030 --> 01:14:36,071 None of them are regular. 1277 01:14:36,071 --> 01:14:40,540 One of them was edge-to-edge, I think it might be this one. 1278 01:14:40,540 --> 01:14:43,880 I think there's some more tetrahedra at the top there. 1279 01:14:43,880 --> 01:14:46,390 The blue labels here say what they are. 1280 01:14:46,390 --> 01:14:48,650 For each one of these we taped up 1281 01:14:48,650 --> 01:14:50,470 the-- we knew what the gluing was. 1282 01:14:50,470 --> 01:14:53,512 We taped it up, and then we played with it 1283 01:14:53,512 --> 01:14:55,470 until we figured out, this must be the creases. 1284 01:14:55,470 --> 01:14:57,344 Then we actually drew in that create pattern, 1285 01:14:57,344 --> 01:15:00,192 folded it up, and verified that is the right answer. 1286 01:15:00,192 --> 01:15:01,900 Because again, at this point no algorithm 1287 01:15:01,900 --> 01:15:04,260 for Alexandroff's theorem. 1288 01:15:04,260 --> 01:15:05,200 More tetrahedra. 1289 01:15:05,200 --> 01:15:07,610 Here we get to the five-sided polyhedra. 1290 01:15:07,610 --> 01:15:10,730 I think this one is edge-to-edge and is in the video. 1291 01:15:10,730 --> 01:15:14,119 It's a little hard to tell from the-- actually, 1292 01:15:14,119 --> 01:15:15,410 you can tell from the pictures. 1293 01:15:15,410 --> 01:15:17,240 Here there's two sevens. 1294 01:15:17,240 --> 01:15:18,580 That means seven glued to seven. 1295 01:15:18,580 --> 01:15:20,500 That means this is a fold point, this edge 1296 01:15:20,500 --> 01:15:21,630 is glued to that edge. 1297 01:15:21,630 --> 01:15:24,050 Over here, every edge has only one label, 1298 01:15:24,050 --> 01:15:26,000 where again this is considered two edges. 1299 01:15:26,000 --> 01:15:27,500 So this was the edge-to-edge gluing. 1300 01:15:32,490 --> 01:15:34,350 I think a couple more slides. 1301 01:15:34,350 --> 01:15:36,590 We get another pentahedron and then 1302 01:15:36,590 --> 01:15:42,990 starting to get hexahedra other than the cube, lots of them. 1303 01:15:42,990 --> 01:15:44,340 Then we start getting octahedra. 1304 01:15:44,340 --> 01:15:46,940 The last one in the video was octahedron. 1305 01:15:46,940 --> 01:15:51,141 It's not this one, this one has some fold points. 1306 01:15:51,141 --> 01:15:54,050 It must be-- these are all octahedra, 1307 01:15:54,050 --> 01:15:56,272 so it's one of these. 1308 01:15:56,272 --> 01:15:58,640 This guy. 1309 01:15:58,640 --> 01:16:01,220 Of course, it's hard to tell from a static image, 1310 01:16:01,220 --> 01:16:04,910 but yeah, obviously that was the octahedron from the video. 1311 01:16:04,910 --> 01:16:05,975 And that is all. 1312 01:16:05,975 --> 01:16:08,740 So actually, there's only 23 distinct polyhedra 1313 01:16:08,740 --> 01:16:12,680 you can make, but you can make them out of 85 gluings. 1314 01:16:12,680 --> 01:16:14,260 So 85 gluings. 1315 01:16:14,260 --> 01:16:18,330 If one of them is symmetric, the cube is symmetric. 1316 01:16:18,330 --> 01:16:19,650 So that's one. 1317 01:16:19,650 --> 01:16:22,500 And then the other 84, there's everything 1318 01:16:22,500 --> 01:16:25,170 and its reflectional inverse, because this polygon 1319 01:16:25,170 --> 01:16:26,660 is symmetric. 1320 01:16:26,660 --> 01:16:31,860 So it's 84 divided by 2, which is 42, a good number. 1321 01:16:31,860 --> 01:16:37,680 42 actual honest gluings plus the cube. 1322 01:16:37,680 --> 01:16:40,276 But those 42 gluings, a lot of them 1323 01:16:40,276 --> 01:16:42,150 generate the same polyhedron, because there's 1324 01:16:42,150 --> 01:16:44,710 only 23 distinct polyhedra in the end. 1325 01:16:44,710 --> 01:16:46,490 I don't have it here, it's on my web page. 1326 01:16:46,490 --> 01:16:48,290 You could look up all 85, and it says 1327 01:16:48,290 --> 01:16:50,000 which ones are the same as which ones. 1328 01:16:50,000 --> 01:16:51,500 And it was a real surprise when we were building them. 1329 01:16:51,500 --> 01:16:53,130 It was like, wait this looks identical 1330 01:16:53,130 --> 01:16:54,546 to this other polyhedron, and it's 1331 01:16:54,546 --> 01:16:56,280 glued in a very different way. 1332 01:16:56,280 --> 01:16:58,550 Sort of an extrasymmetry of that polyhedron, 1333 01:16:58,550 --> 01:16:59,960 as opposed to the cross itself. 1334 01:16:59,960 --> 01:17:00,880 It was pretty cool. 1335 01:17:03,510 --> 01:17:06,740 An interesting thing to note here 1336 01:17:06,740 --> 01:17:13,810 is that we only bisect the edges, right? 1337 01:17:13,810 --> 01:17:16,190 There's a lot of edge-to-edge stuff, 1338 01:17:16,190 --> 01:17:18,890 and then some of the edges get cut in half. 1339 01:17:18,890 --> 01:17:21,710 And in this case actually, they look mostly like fold points, 1340 01:17:21,710 --> 01:17:24,170 but that's not always the case. 1341 01:17:24,170 --> 01:17:28,970 It turns out, if you have a polygon were all the edge links 1342 01:17:28,970 --> 01:17:33,600 are the same like this and you look at non-edge-to-edge 1343 01:17:33,600 --> 01:17:35,496 gluings, and there are no rolling belts-- 1344 01:17:35,496 --> 01:17:36,870 because if there's rolling belts, 1345 01:17:36,870 --> 01:17:39,370 it's infinite because you're not going to have anything like 1346 01:17:39,370 --> 01:17:40,030 this. 1347 01:17:40,030 --> 01:17:46,890 Then it suffices to subdivide every edge in half. 1348 01:17:46,890 --> 01:17:49,070 And then every non-edge-to-edge gluing will become 1349 01:17:49,070 --> 01:17:50,540 an edge-to-edge gluing. 1350 01:17:50,540 --> 01:17:55,740 This is called the [INAUDIBLE] half-length theorem 1351 01:17:55,740 --> 01:17:56,687 in our book. 1352 01:17:56,687 --> 01:17:58,270 It was proved by this guy [INAUDIBLE], 1353 01:17:58,270 --> 01:18:01,070 who was one of the implementers of the algorithms 1354 01:18:01,070 --> 01:18:03,070 for enumerating all these gluings. 1355 01:18:03,070 --> 01:18:04,230 And he proved it afterward. 1356 01:18:04,230 --> 01:18:06,100 The code doesn't actually exploit that fact, 1357 01:18:06,100 --> 01:18:07,200 but it's kind of neat. 1358 01:18:07,200 --> 01:18:09,330 All you have to worry about are half edges 1359 01:18:09,330 --> 01:18:12,900 in this case where all the edge links are the same. 1360 01:18:12,900 --> 01:18:13,990 All right, that's a cross. 1361 01:18:13,990 --> 01:18:15,705 And it's kind of maybe even surprising 1362 01:18:15,705 --> 01:18:18,810 that there's only finitely many different gluings, 1363 01:18:18,810 --> 01:18:21,970 but there's no way to get a rolling belt here. 1364 01:18:21,970 --> 01:18:24,795 Let's look at-- oh, here are all the polyhedra 1365 01:18:24,795 --> 01:18:28,680 in a pretty 3D form. 1366 01:18:28,680 --> 01:18:31,240 Here is a polygon which is convex. 1367 01:18:31,240 --> 01:18:33,270 It is the equilateral triangle. 1368 01:18:33,270 --> 01:18:35,900 And so, no surprise, there a rolling belts here. 1369 01:18:35,900 --> 01:18:38,450 But here's the picture of how all the rolling belts fit 1370 01:18:38,450 --> 01:18:39,040 together. 1371 01:18:39,040 --> 01:18:41,400 In principle, you can extract this picture 1372 01:18:41,400 --> 01:18:44,160 from this algorithm. 1373 01:18:44,160 --> 01:18:47,070 Although combined with an algorithm for Alexandroff's 1374 01:18:47,070 --> 01:18:48,609 theorem, that's the tricky part. 1375 01:18:48,609 --> 01:18:50,150 So you have some very simple gluings, 1376 01:18:50,150 --> 01:18:51,490 like could could fold the triangle in half, 1377 01:18:51,490 --> 01:18:53,140 get this doubly-covered triangle, 1378 01:18:53,140 --> 01:18:54,680 you can make a regular tetrahedron, 1379 01:18:54,680 --> 01:18:57,230 or you can fold the triangle into a flat doubly-covered 1380 01:18:57,230 --> 01:18:59,152 rectangle like at the top. 1381 01:18:59,152 --> 01:19:00,985 And then there are rolling belts in between. 1382 01:19:00,985 --> 01:19:03,170 So this is one rolling belt, this 1383 01:19:03,170 --> 01:19:04,710 is another possible rolling belt, 1384 01:19:04,710 --> 01:19:06,960 another possible rolling belt each with a gluing tree. 1385 01:19:06,960 --> 01:19:08,730 They're not all drawn here. 1386 01:19:08,730 --> 01:19:11,290 And this is sort of the topology of all 1387 01:19:11,290 --> 01:19:15,720 of the possible gluings you could make, which is nice. 1388 01:19:15,720 --> 01:19:20,000 So a triangle is relatively simple. 1389 01:19:20,000 --> 01:19:24,740 The square is a little messier. 1390 01:19:24,740 --> 01:19:28,400 There's again a bunch of particularly nice gluings 1391 01:19:28,400 --> 01:19:34,390 like the [INAUDIBLE], the folding in half one way, 1392 01:19:34,390 --> 01:19:38,820 folding in half the other way, making a letter, 1393 01:19:38,820 --> 01:19:42,340 and some tetrahedra that are just drawn here. 1394 01:19:42,340 --> 01:19:44,221 They're in the middle. 1395 01:19:44,221 --> 01:19:45,970 And then there's these crazy rolling belts 1396 01:19:45,970 --> 01:19:47,120 for how they fit together. 1397 01:19:47,120 --> 01:19:51,100 So this is in unit square all the different gluings. 1398 01:19:51,100 --> 01:19:55,050 And one of the fun things, some of them are octahedra, 1399 01:19:55,050 --> 01:19:59,930 I have a list here. 1400 01:19:59,930 --> 01:20:03,020 But I don't know actually which one of these belts 1401 01:20:03,020 --> 01:20:03,830 has the octahedra. 1402 01:20:03,830 --> 01:20:05,540 It might be a couple of them. 1403 01:20:05,540 --> 01:20:10,300 And it turns out, for octahedra they actually figured out 1404 01:20:10,300 --> 01:20:13,470 an algorithm just for octahedra to solve Alexandroff's theorem. 1405 01:20:13,470 --> 01:20:17,040 This is again before Alexandroff theorem algorithms. 1406 01:20:17,040 --> 01:20:19,710 And they wanted to compute, well if I take all these polyhdra, 1407 01:20:19,710 --> 01:20:21,660 which one has the maximum volume? 1408 01:20:21,660 --> 01:20:23,630 So if I take a square paper, what's 1409 01:20:23,630 --> 01:20:26,560 the maximum volume shape you can make? 1410 01:20:26,560 --> 01:20:30,900 And there it is. 1411 01:20:30,900 --> 01:20:33,950 It's kind of fun. 1412 01:20:33,950 --> 01:20:35,820 One of those octahedra. 1413 01:20:35,820 --> 01:20:41,010 And this is a prettier picture of-- so here they actually 1414 01:20:41,010 --> 01:20:43,080 computed all the polyhedra. 1415 01:20:43,080 --> 01:20:45,100 Obviously not all infinitely many of them, 1416 01:20:45,100 --> 01:20:48,360 but various snapshots along each rolling belt. 1417 01:20:48,360 --> 01:20:50,550 And each of these rolling belts corresponds 1418 01:20:50,550 --> 01:20:52,960 to one of the circles over here. 1419 01:20:56,400 --> 01:20:57,790 And that's it. 1420 01:20:57,790 --> 01:21:00,370 Any questions? 1421 01:21:00,370 --> 01:21:03,250 So that's the end of fun with gluings. 1422 01:21:03,250 --> 01:21:06,770 We'll look at other kinds of gluing problems next class.