>> Mohit Singh: Hi, everyone. It's good to have Mohammad Hajiaghayi visiting us from University of Maryland. He is here until tomorrow, and he will be speaking some graph minor algorithms. >> Mohammad Hajiaghayi: Yes. Thanks a lot for the introduction and for inviting me. Okay, so let's start with the talk, of course -- you will see the title of the talk and my name. Okay, so before going through that, I want to give just some introduction about the whole thing that I want to do. So here, what is like the separator technique for getting PTASs, or actually not just PTASs, getting approximation algorithms. Usually, you're considering the graph, you find a small separator for this graph, and then you cut that thing. Again, you are finding a small separator in each of these graphs, you cut it, until all pieces are small. This is essentially the idea of a list of algorithms, including the planar graphs, PTASs, Lipton, Tarjan, more general problems for H-minor-free graphs and also actually this work of Leighton and Rao or Arora, Rao, Vazirani. More precisely, so here, all of this separator decomposition, they are finding small separators, and they continue such that we get small pieces. Now, what do we want to do here? We want to do simplifying decomposition, essentially the same idea, but maybe we can do it more than that. So here, we want to have these two properties. We might have large interactions between these guys, but it is only a small separator, and the graph that we obtain, also, these are not small graphs. It might be very big graphs. The only catch is that they should be algorithmically simple. That's the thing that we call it, simplified or simplifying decomposition. So these can be arbitrarily large -- these can be arbitrarily large but algorithmically simple. That's essentially the whole goal, and the whole goal of this talk is that we can do this for what kind of graph? I mentioned some here, and then that would be, I think, the whole agenda, can you do it for more graphs, get the same thing or not? That's essentially the whole talk. You saw the abstract of the talk. Now, let's see a bit more detail, and I will, again, go from basic definitions very fast. I will go there, then I will say the main theorem and the applications of that. If we have time, I will go through the proof of them, which is a bit involved, I will say, but I think that should be enough for like the main thing that you want to get from this talk and why these are interesting. So the minors, we say that a graph G is a -- let me just do this. Hopefully, nothing will break down. If I just change this one to here, now I can go here. Now, we say that graph H is a minor of graph G if we can obtain H from G by these two applications. At each step, either you delete an edge or you contract an edge. And say, if the graph is connected, the minor, we have this definition that you can delete vertices, also, but if the graph is connected, you don't need to actually delete a vertex. You can always get the minor by these two operations, because any one that you want to delete, you will just contract it, and that's -- and we don't keep the -- and in the contraction, we don't keep the loops or multiple edges here. That will be destroyed, essentially. We will just get one edge. And this is the example. K3,3 is a minor of this graph. It's up to you to find it why that is the case, but that's the nice thing there. This graph is essentially -- I just call them map graphs of the US, but anyhow. These are all coming from this graph minors of Robertson, Seymour from 1983. We don't know what is the end. Still they are publishing I think some, so I think 23 of them have been published yet, but there still are maybe more to come. But the main thing is that, essentially, that's the 21, the main idea was to proving the Wagner's conjecture, that essentially -- that's the Wagner's conjecture. For every finite, there's a finite graph, one of its members is isomorphic to a minor of the other one. That was the whole idea, but lots of things came out of this graph minor. And in a sense, also, this is some kind of more algorithmically thinking of graph minors, this one that I am presenting you. Okay, other thing that we need to know is treewidth is the measure of similarity to a graph to a tree. That's enough for this talk. If you want to see the exact definition, treewidth of the graph is the smallest possibly width of a tree decomposition. And what is a tree decomposition? You have a graph, for each vertex of the graph, you try to smear this vertex into the -- somehow paint it into this tree, such that any two vertices that they have an edge, then their corresponding tree should share at least one vertex, or overlap on one vertex, and the maximum overlap, minus one would be the width of that, but that's the definition. You don't need to know. Such a definition, I will just ->>: [Indiscernible]. >> Mohammad Hajiaghayi: Yes, exactly. No, no, between what and what? >>: The nodes of the graph and the ->> Mohammad Hajiaghayi: No, no, this is arbitrarily 2D essentially. You can bond some. But essentially, for each node of the graph we have a subtree here that we smear. And we know that treewidth one or treewidth two are series-parallel graph, to leave us with N minus one or cliques, so that's a good way of these are like how far -- this is a measure of similarity to the graph. I mean, usually, we consider bonded treewidths. The only thing that you need to know about the bonded treewidth graph is that we can solve the problems easily in polynomial time for bonded treewidth graphs. That's the only thing that you need to know, and nothing more. So if it is a bonded treewidth like trees, we can solve all problems. We can solve them, essentially all problems for bonded treewidth graph algorithms. Okay. Here, we consider three algorithmic goals. We want to essentially have algorithms which are correct, fast -- by fast means polynomial, correct means optimal solutions. And we want to get hard problems, essentially NP-hard problems. Unfortunately, so far, we cannot get all of them at the same time, so we need to get any two of them, namely, if you get rid of the hard problems, cross out the hard problems, then it would be undergrad courses, essentially. So we don't want to do that, so we will do the cross out the other things. The correct things, we don't get the optimal solution, okay, we cannot just say that we don't get the optimal solution, but still we want to be near optimal. That's the thing that the approximation algorithm is coming, or PTASs, which are one plus epsilon for arbitrarily small epsilon. That will be the ideal case, essentially, PTASs. Not in terms of their running time, maybe, at least, but in terms of approximation, so they a polynomial [indiscernible]. The other thing that we can cross out is the fastness. So if you don't want to have the fast algorithm, okay, we cannot tolerate to not have any conditions on that, but we don't want algorithm like into decay. So usually if you have some algorithm-like problem, you can -- like say vertex cover of size K, for example, or dominating set of size K, you can just -- if you say this is the K vertices, you can just get these K vertices and then try all the things. Then the running time would be N to decay or N to decay plus one. That's not good. We want to get it F(K) times N. That's the thing that we call it, fixed-parameter algorithm. I mean, maybe 2 to the K, but still F(K) times N to some current [time] which is independent of -- so is it clear so far? Any questions? Let me know. Okay, now let's go to the algorithms. So this is the simplifying graph decomposition, the first thing that I mentioned. I will mention some applications of it, but actually they are quite nice. Some of these applications that I mentioned, these are open problems that the people worked a lot on that. But this simplification -- treewidth decomposition, it is almost trivially, essentially, to source. Okay. Now what is that? The first one is this one. Any H-minor free graph, the vertices or edges, actually, both are important -- can be provisioned into K pieces, such that deleting any one piece results in a bounded treewidth graph. For arbitrary K, you can do that, so you give me the K, I will do these things, and this gives essentially polynomial time algorithm for several problems, and even PTASs when we put K equal to one over epsilon. And this treewidth actually is bounded by K, so it's linear in K, actually. So that's essentially the theorem you will see, so you can see here, for some you will delete this one. Then the graph, each of them, if you delete, you partition this thing. Each of them, edge set or vertex set, if you delete, then you get a bounded treewidth graph. >>: So K [indiscernible] bounded treewidth. >> Mohammad Hajiaghayi: Yes [indiscernible]. >>: [Indiscernible]. This is in similar spirit. >> Mohammad Hajiaghayi: Of the Baker things, yes. But, I mean, that's essentially -- the one that, no, it is like very abstract things. You don't -- and actually, the interesting thing, that works -- for example, there is something that works even for more than H-minor-free graphs. It is called [owed] H-minor-free graphs. This is class, again, more general than -- that's the largest one that we can get. That, we cannot get it for arbitrary K we cannot get it, but for two, we can get it. So again, maybe for some graphs you can get it, for current understanding, you cannot get it for arbitrary K, but that's still good for us. You can solve the problem. Especially, these are like -- let's go with the big problem, like chromatic number. The problem is inapproximate N to the one minus epsilon, this is a very hard problem, but I want to solve it very easily on this graph, get a true approximation. It's like amazing. Even for tree coloring, we don't have -- we have only polynomial time guarantees, so in terms of approximations, it's quite weak. But these can solve the problem, essentially, in a very good way. So we have this graph, as I mentioned. We have this generalization. That theorem that I mentioned, for the case of K equals two, that can be generalizable for odd H-minor-free graphs. So consider like, essentially, I would mention [indiscernible] or H-minor-free graph. And then just use that theorem. We are using that theorem for the vertex set. So what was that theorem so that you can decompose the graph? The vertex said you can partition it into two sets, such that any of these graphs has bounded treewidths. Now, what do you do? These are -- have trees, say, or here this is a special case, it is trees. But for each of them, essentially, these are two trees. We can find the best coloring for them. Because they are bounded treewidth graphs, we can -- dynamic programming can easily solve them. Then you will just solve them, and then what you do, you will essentially say, here, for this one you are using the color one to K. This one, you are using it one to K prime. Then you will use the color one to K for the first one and then K plus one to K plus K prime for the second one. And this is a simple two approximation for the problem, because optimum should do each of them, and each of them is at least optimum, so this is a ->>: Is there any information about the edges between the two? >> Mohammad Hajiaghayi: It can be arbitrary. Here, the edges are -- you may use something more. Again, if you want to use the more practical things, maybe you can just do this one, get this one, and then try to do some kind of local search, see whether you can remove one of these colors and still use the colors, if you want to use the edges in between, also if you want to use it better. So you have the guarantee of two. Still you are doing some local search, you may get a better solution. >>: For instance, can we say theoretically that there will not be a complete graph between the two, like there will not be ->> Mohammad Hajiaghayi: Maybe you can do that. So far, we don't have any guarantee, but that's another thing that you may consider it, because the whole graph is an H-minor-free graph. But in general, maybe it is -- because the whole thing that I want -- actually, this is not the case. For H-minor-free graphs, for odd H-minor-free graphs, that can be a complete bipartite graph. >>: Like between the two partitions for all -- >> Mohammad Hajiaghayi: So that's the interesting thing about the odd H-minor-free graphs, because the complete graphs, these are something that you cannot have it for the H-minor-free graphs, complete graph of large size, because that the meaning of H-minor-free-ness. However, bipartite complete graph, you can have it for odd H-minor-free graphs, and that's the interesting thing, that this problem can be generalized even for that, and then we can get a true approximation. Essentially, as I mentioned, these are very -- and this is especially nice because of this Hadwiger's conjecture, because these people, like in math, if you heard, the whole idea that the graph is, I don't know, K H-minor-free graphs, then you can color the -- properly color the vertices with H minus one colors. So here, I say, this is algorithmically thinking of that. I don't care how many -- maybe they couldn't even prove this Hadwiger's for I don't know. For C times H, I don't think that there is any proof even for that one. But here, I say, there is no need to prove. Anything that Hadwiger is the best, I can get twice that. That's like, in a sense, algorithmically, maybe even stronger, that thing. Again, not exact things, but two times that. Even for some graphs, it might be optimum was much less than H minus one, but we catch that one. So that's the thing that you can compare this with. Okay, and you will get back. Let's see another thing, the independent set, essentially. So here you can get a PTAS, so you want to find independent set. You want to find maximum number of vertices such that there is no edge between them. How do you do that? You can get a PTAS again in H-minor-free graph. Now, you get equal to K equal to one over epsilon. For each I, you just delete that one, the graph has bounded treewidth, find the maximum independent set and you just take the max of them. And this is easy to see essentially the algorithm that you will try everything here. It is important that for one of these Is you know that OPT has at most one over epsilon here, or one over K here. If you exclude that one, the rest, we solve it optimally, so we get it, a PTAS. Another interesting thing actually that comes out of this one, these are all actually we are using here also the vertex version of that, because we decompose the vertex. Another thing that you need to, for example, use the H set is it's in both of them, actually. You can do for this unique game conjecture. You can do -- for H-minor-free graphs, you can solve it for this thing for H-minor-free graphs. And another thing that actually was simpler than that is the max cut. So max cut for planar graphs, you can solve it optimally. However, we don't know even for bounded genus graph that you can solve it optimally, but this is the algorithm that solves it for H-minor-free graphs. Why? Again, consider the max cut. Now you just do it for the edge sets of the max cuts, so you know that one of them, like if you divide it into K sets, one of them has less than one over K of the things, and you know that the max cut is always the constant fraction of the optimum. So if you make this number of cases large enough, you know that, essentially, if you add all those guys, essentially, here, you don't change the optimum. So you solve for the rest of the graph your max cut. Maybe you will add that part, also, to get essentially epsilon more. Again, this is like a very important problem, we get the PTAS, but it like trivially comes from this theorem. Okay, so that's -- there were some examples, as we mentioned, and both vertex version and edge version are important things here. Now, what about let's consider other problems. Actually, that's again, this came out of the more computer science set of problems. For example, dominating set or edge dominating set, all of these problems. These are the problems that are closed under contractions. What's the meaning of that closed under contraction? It means that if you contract an edge, the size does not go up, but if you delete an edge, the size may go up. Like, for example, dominating sets. If you consider one edge, if you contract one edge, the size does not go up, because you can probably include both. If both of them are included, you can just include it. It may go down. However, if you delete an edge, it may go up, because this vertex could dominate this one. No, it cannot dominate it. You need to add one more. And this one, essentially, the whole idea that we consider like the close under contraction, only. We don't want to just delete. We want to somehow contract. And this is the theorem that actually, if we have the time, I will give some ideas of the proof. This is complicated, but this is actually a very nice one. Again, can solve lots of problems. So any H-minor-free graph, if edges can be partitioned into K pieces such that contracting any one piece results in a bounded treewidth graph. Here, again, by contracting means contract this vertex and then remove any multiple edges. >>: But what is one of your -- keep it as a single vertex. >> Mohammad Hajiaghayi: Yes. When you contract one edge, just two vertices would be one vertex, and that edge, if they're loop or some multiple edges, you will just remove and keep one if there is multiple edges. >>: So contracting a piece would mean take a whole subgraph? >> Mohammad Hajiaghayi: No, doing it one by one. Consider each edge contracted, so that this edge would be one -- now, both endpoints would be one, and the neighbors of these would be the union of the neighbors of these guys. That's exactly the meaning of contraction. It's actually -the first one has been done by [Steiner tree], but that thing that he mentioned was not that clean, essentially, so in his paper, that's not the ideal -- he was considering this one. He considered some kind of -- instead of contracting, he was considering compressed, and it was not such a theorem, so he used it during some getting the PTASs, but we had it at the same time at 2005 for the deletion version, so we could just figure it out. And then later, in his journal version, he refers to the exact assessment from us. That was essentially his paper, that he mentioned formally these things, and these things, as I mentioned, he doesn't prove such a theorem. He's getting it -- the idea is there, but you need to get it for this one. But that you could generate it for H-minor-free graphs, apex-minor-free graphs, and finally, that, we could get it for H-minor-free graphs. That was in fact in 2011, and that's essentially, so far is the best thing that you can do for this graph. Again, let's see some of these applications. So essentially here, before we had the deletion. Now we have a contraction, and the same thing again. Any K, you can do that. >>: Basically, it's like the deleted graph. It's severity of one more vertex. >> Mohammad Hajiaghayi: What do you mean, one more vertex? >>: Like, if you delete this part, this black [molds] will go away, right? But if you contract them, there will be single black [mold]. >> Mohammad Hajiaghayi: No, there is not one single one, because you may have this edge set here. One edge might be here, one edge might be here. You contract here, here and contract it here. So there is no one vertex. If there was one vertex, that was trivial, essentially. So you have some edges. These edges might be one edge here, one edge here, one edge here, and these are indeed this case. So you may contract here, here, here, and there is no one vertex. There was one vertex here? That was [legal]. >>: But connector piece, if it was a connected graph? >> Mohammad Hajiaghayi: Yes, then it would be one thing. But then maybe here, a connected graph, here, a connected graph and here, a connected graph. I said this, you contract it, then you have a bounded treewidth graph. And that's actually going nontrivial. This happens, at least it was [indiscernible] a few applications of that, essentially. So this is the -- okay. So let me give now a fixed-parameter algorithm via this contraction decomposition, and we'll see how useful are these theorems and how powerful. So consider the K-cut problem. Remove fewest edges to make at least K-connected components in the graph. Okay, now I want to say that this problem is fixed-parameter tractable in H-minor-free graph. Before saying that, in this paper, they had a [indiscernible]. They were working essentially for two years to get this result, specifically for this thing. But when they -- K [naming] was involved also in that work that we had it, but when we finally could prove that, then essentially they left it. They could use some of their ideas to generalize some things for the arbitrary graphs for K cut. We can get it. But this result was the main thing that they were working for a long time to get it, and it was completely nontrivial, but it is trivial, using this result. So [indiscernible] says this problem can be solved in H-minor-free graph, fixed-parameter tractable. How? We know that the average degree of H-minor-free graphs is C of H times -- H times -- essentially, it's constant, as long as H is constant. So I want to say that the optimum is at most C of H times K. Why? Consider the minimum degree vertex. Delete all its neighbors. How many you will pay at most? You will pay C of H. Consider it [null], in this graph, when you delete it, the graph, it's because it's an H-minor-free graph, it's limited H-minor-free graph. So there is another vertex now it has a CH. Cut that one. Cut, cut, until you have it K vertex. So at most it is C of H times K. Now, how can I do that? I can just use that theorem, contraction decomposition theorem, with C of H plus one layer. One more layer. And now, if you have one more layer, you know that OPT in one of these layers does not have any edge, because the size of OPT was CH times K, the OPT that deletes the number of -so what is OPT? OPT is some essentially algorithm that deletes some of the edges. Now, you know that in one of these layers, so the number of layers is CHK plus one. One of them does not delete anything. Now, if it doesn't not delete, it means that we can contract it in the cut problem. We just contract that one. Then you contract that layer, the graph has bounded treewidth. Now, we can solve the problem exactly on that one, so the running time would be essentially. So this, you can do it in polynomial time. Here, everything, the number of layers that you will get is CH of K plus one. This problem, on the bounded treewidth graph can be solved in two to the K times N. Here, essentially, it is linear in K, so I put a just K here, and just plus N to the order one essentially for this contraction, which is independent of K, so you can get two the K times N. You can get it for this problem. >>: But you know which one you want -- you will have to run this algorithm CHK plus one times -- contract each one of the ->> Mohammad Hajiaghayi: Exactly, so you will do it. All of them, you will -- have at most -- I mean, CHK plus. That running time is nothing, comparing this one. This is like K times that, which is still two to the K. So that's essentially the whole algorithm. As I mentioned, that was important. Now, let's see another problem. For the bisection, this is actually -- [Yuri Fagey] had a paper for bisection for general graph that was in I think 2006, maybe, or something like this. He couldn't solve the problem. Essentially, he just considered for very special case. Even he considered balance cuts or something like this, but the main thing is essentially for bisection. So here, and he tried actually to get it a fixed-parameter algorithm actually for them. Now, I want to solve this problem. This is, again, another application of this. So what is the bisection? You want to divide the graph into two equal parts, like the number of vertices are odd -- sorry, are even -- otherwise, you can generate this for all Ks, but I say, that's even. Okay, this is also another interesting thing that, I mean, this problem is closed under not -- it closed not only -- okay. This is something, you can ignore it for now. But this problem is easy on bounded treewidth graphs, even for vertex weighted. What's the meaning of vertex weighted? It means that each vertex has some weight. Now you want to bisect existing -- such that the weight of here and the weight of here are equal, if it is possible. >>: Equal parts means like equal number of vertices? >> Mohammad Hajiaghayi: Equal number of vertices. >>: So it just means you divide the graph into equal number of vertices, yes. >> Mohammad Hajiaghayi: Vertices, yes. So we want to get some kind of balanced cut, some balance, that you don't want to get it here. Usually, it is very important, to balance this type of thing, you can really care. You know the depth of this tree that you have it would be log N or something like this. >>: So what's the optimization problem, equal ->> Mohammad Hajiaghayi: So you want to? >>: Graphing to equal parts ->> Mohammad Hajiaghayi: A minimum number of edges deleted. We want a minimum edges deleted, such as you can do it. Now, I want to solve this problem, again, for H-minor-free graph. So use the contraction, decomposition with OPT plus one layers. Again, the bisection, because it's a cut problem, so this is essentially that's the main thing, so cut problems are very good for this kind of algorithm, so you can contract it, like in one layer, it does not have anything -because it does not have anything, it means that you can contract it. In the OPT, it is a bit contracted. Then you will solve it and monitor this graph. Then you get to the OPT this thing, algorithm. As I mentioned, [Yuri] tried to get. That was the main thing that was in [indiscernible] for general graph, but I think that is a bit far from that. Okay, so that, I mentioned it. Yes. Okay, now that's another problem. PTASs for traveling salesmen problem. In a weighted Hminor-free graph, that was a problem that Grohe essentially mentioned, can we solve this problem, get a PTAS for this. And several other problems, like the PTASs for minimum size, Cedge-connected submultigraph, that's the main thing that one edge you can use it several times. That's the meaning of that. And fixed-parameter for K-cut, that I mentioned it. Let me just page down. Okay, so that's another thing that we showed that, that any minimization problem with the following property has the PTAS on H-minor-free graphs. What is the properties that you need to have? Should we close under contractions, that if you contract an H, then size should not go up? It should go only down. It should be polynomial on graphs of bounded treewidths. Again, lots of problems trivially satisfies these two properties. The one that is a bit nontrivial is this one, that there is a spanner for this. What is the meaning of a spanner? It means that you can map this graph G to another graph G prime that has these two properties. The weight of G prime is almost in the same order of OPT G prime, not that it exists G, it is possible that G is a very big graph, but OPT of G is very small. Here, I want to say this is called some kind [internalization], essentially you want to do it or in the different fields they call it the different things, essentially. In streaming, that will be corresponding to some sketches, essentially, that you want to have it. So you want to get this big thing, you want to have some sketch such that in this graph -- OPT should be remaining almost the same here and there, and the whole graph, the weight of the graph should be down to almost the same size of G prime, and that was known, for example, of traveling salesmen for long time. And the last one that you need to on that, if you obtain some solution for the contracted graph, you have contracted some edges and you got some solution. Now, if you decontract -- so if you want to consider, if you find a solution for this graph, now you want to find a solution for the bigger graph, what do you need to do? You need to only pay at most some constant times the weight of the edges that you have contracted. So you don't need more than -- again, almost of them, you may pay it, maybe a constant number of times, but not more than that. That's, again, also satisfied for lots of problems. So let's see an example here. So that was the TSP problem. So PTASs for traveling salesman problem in weighted H-minorfree graphs. The problem, as I mentioned, it was a decayed opening. So okay, so for banded tree-width graphs, there exists such an algorithm that you can do that, and there are some spanners. These are very famous spanners for these things. Now, the only thing that you need to do that is from these things. If you see, we had everything here except these map things. I will just say the map things. That's essentially good. So when you have a solution, you found a solution for the contracted graph. Now, you want to open the things and get a TSP for the traveling salesman for the original graph. So the issue is that, I mean, when you contract this one, then you don't have that particular things, essentially. You have some connection, but you don't have that TSP anymore. But essentially, this thing that -- the timer, it is there. So then, how do you do that when you uncontract these things? So, essentially, for those edges that you will -- when you decontract, like decontract these things, some vertices in these things have all the degree. You can add essentially an Euler tour of cost of two times weight of this graph, plus this perfect matching that on the odd vertices you will add it, and everything that here we will page will be corresponding to the size of S, so not more than S. So you can pay a constant times S. And then this graph becomes Eulerian, and then you can find the tour, essentially, there. And everything would be corresponding to S, so you can do that one and then you can get a PTAS for that, again, trivial. This is something that Phil didn't have it explicitly in his things, but that actually you can do it much. Okay, and the main button here for this problem that we have is that we need some spanner results for more, so if we don't have it for several problems. So the main trust of [Moore] is getting more spanners for more important problems. Okay. So here, the rest of it, I want to just give you some ideas about the proof of this theorem. Again, I cannot give the whole idea, but I want to say some of this idea, how come we can prove these things. Yes. >>: So a [planar class], these -- what is a counterpart for these theorems, when it was known, this theorem [indiscernible]. >> Mohammad Hajiaghayi: Yes, that was the -- implicitly, that was in Phil Klein's work that you can get. >>: But it does -- it is not a graph minor -- >> Mohammad Hajiaghayi: No. There is nowhere -- that's a new thing essentially. But, again, so this one, essentially, there were some [bakers] technique that was there for a long time, but that was not that explicit that here it is -- it is not that general for H-minor-free graphs you can get it. So here, let me just start with some -- I think maybe I can just say some of the things on the board before going through this one for banded genus graphs. Okay, so let me just mention the idea essentially for the work, so can we just -- maybe just use it here. I can use some of these things. I don't need that much of these things. Okay, so you can see it here, I think. So for planar graphs, what do we do that, essentially, if we want to get these things. I want to just give you some ideas about planar graphs and say how we can generalize it for -- so for planar graphs, you have some -- I would say for planar graphs, consider always that's essentially there's other things that we get it from just by dimension. Planar graphs, in essence, if you want to consider them, just consider degrees. They are something like square root of N by square root of N grid. So this is square root of N by square roof of N grid that you are doing it. Now, I want to say the deletion problem, and then we will see what will happen for the contraction. So for the deletion one, essentially, we are doing that. For any K that you give me, this, I will get these partitions by this one. So I will consider, like for example, if you give me K equal to three, then I will consider those, the first layer are those that are zero mode tree, so this one, one, two, and this is one again, zero. The second one that I am considering it is one, one here. This is the third one, is two and two. So these are the three partitions that I want to get it. And now, if I want to delete vertices or edges, that would be -- if you want to delete vertices or edges, what do I do? Essentially, I am just doing for the deletion. And, for example, if I want to delete this layer, I will just -- for the edge version, I will delete all of these edges. And here, I am deleting these edges. Maybe I have something like this. So these are the edges that I delete to get the result. Now, each of them has essentially bounded three widths that you can get it. So in essence, you can consider that we are doing some BFS from this vertex, if you consider some -- so connecting it to here, say. You are doing essentially BFS layers like an [indiscernible] K for any I, you will just do that and you will delete this thing. If you want to delete vertices, then, for example, you just delete it with vertices. Now, if you want to do the contraction version, that's a bit more subtle, but in this case, essentially, you will consider if you want to do for contraction. What will you do? You will delete on the dual of this graph, and note that one of the things -- we can first join it to bounded genus graphs. Bounded genus graphs, still, they have the dual, but H-minorfree graphs, they don't have any dual. That's essentially, and that's likely -- this result, that was just for H-minor-free graphs. We had all the results all for H-minor-free graphs. Just getting it for H-minor-free graphs, that was the effect. Its [apparently] very complicated, like this is nontrivial, exactly, to go from bounded genus graph to a general graph. But say, what will happen essentially for this one -- do we have any other pen, or not? I will consider essentially these things. So it is not that. So let me just do this one. I will consider the dual of this graph, so I want to say this one now for the -- now, I wanted to consider the same problem. No, I will consider the dual of this graph. So that's a dual, essentially, that you will consider it for this graph. And in the dual, you delete these edges, the same edges that you have deleted in the deletion version, you are doing it for the contraction version, and now let's see what will happen when you contract it, so then you will continue. Now, let's see, essentially, I will delete these edges, but instead of delete, and one important thing actually is that this is important, the treewidths of a graph and its dual are equal, so that's an important thing. The treewidths of a graph and its dual are equal. So here, let's see, when I delete here, what will happen in the primer? That's actually a very good thing that you will see how will happen. So let me essentially -- so what does it mean? It means that like here, for example, I want to delete all of these edges. Here, I want to delete all of these edges in the dual. Let's see what will happen if I - when you delete this thing, it means that in the primer you will contract them, so what will be the shape? So these edges I will contract, essentially. This one, this one, this one, this one, so that the shape that would be here, so I have the layer zero, I have it here. Then the layer two, I don't have it, essentially, so everything will essentially will be collapsed into one vertex. Then here, those edges, you will keep it, so the zero guy again, you will keep it here, so then these edges again have such a things. Then you will continue again for one guy, and then, again, for this last guy, solution, you contract it. So that's the thing that essentially happens for these things. In this layer, you will delete it there, it means you are contracting here, and void has [indiscernible], because when you delete there, then it should have the same treewidths of these contracted things, so these contracted things, essentially, it should have the same treewidths. Because of that deletion version, it knew that it has bounded treewidths, so here it should have bounded treewidths. And if you want to see, also, you can see directly also here, because this is essentially called one sum of a set of a graph that each of them has bounded treewidths, so it should have the -- here, that was for the grid. You should be a bit more careful. So this one essentially is ideal for the planar graph. That was the whole idea that we can get it from. Now, I want to see -- for bounded genus graph, like for planar graph, one thing also can happen. Should I draw maybe something here? For example, I mentioned that you can consider the grid, but in a sense, I mean, you should consider some special cases, also, for this planar graph. Let me just draw something here for planar graph. The issue that you may have it is something like this may happen. Maybe I should be here, I could say. So, actually, in the planar graph case, it might be the case that inside one of these things -- this is still planar, actually. Inside this, you may have another large grid also here. This is still a planar graph. Maybe also here. >>: Is this disconnected from? >> Mohammad Hajiaghayi: No, these are not disconnected. It might be connected, actually. So it might be connected. Now, let's see what will happen. So here, if we contract this guy, so it might be the case that we contract these guys. So when we contract this guy, something like this will happen, when you do the same thing, so you will get this graph, essentially, then you will get this contracted graph. That will be corresponding to contracting all of these parts, essentially. I will contract all of these parts. Then, that would be corresponding to this vertex, and then the continuation of the graph would be like this. However, there is a catch here. What will happen to these guys? These guys, they may come again here. They will form another. From these guys, in a sense, you also get another -- so the whole boundary of this would be contracted here, and then from that you start again with the big clique. And for this guy, again, this is corresponding to this guy. This is corresponding to this guy. Also, you get another clique here. Note that this cannot happen. If this large and this is large, the treewidths of this is large. Again, another thing that you need to know. In a K by K grid, so I'm writing it here, so K by K grid has treewidths K or order K. So this has a large treewidths, because it is a large grid. This is also another one which is a large grid that exists. However, there is a catch here. So if this happens, this does not have a bounded treewidth. However, this does not happen, because when you do this BFS, you go through them, and also here you will contract some of them. You will contract here, and also here you will contract it. So what will happen for the planar graph, when you do these things, you will get the whole thing becomes like a tree, essentially. You start from these things, but everything becomes like a tree. You will come from here, and then you have here some things and then you will here. From this case, you get the tree vertices that are going, and now for each of them you will continue these things. >>: You have [indiscernible]. >> Mohammad Hajiaghayi: Yes, one shot will be like that. I don't recurve. But I will say, in one shot, something like this happens, and here, essentially the whole thing that happened was just the path, but in general case, it would be not a path. It would be a tree. Still, that theorem that I mentioned, it is correct. You can just that theorem. But if you want to also use directly -if you don't want to use that duality theorem, if you want to use it directly, again, you can say that the whole graph is one sum, so the whole tree is one sum and the treewidths of each piece is bounded. If you know that if you have one sum -- one sum means essentially three of these things together. Still, the treewidths would be the maximum treewidths that you have, so the treewidths would be bounded. Okay, so this one's for planar graphs. However, I want to say -so now let's go for bounded genus graphs. So for bounded genus graphs, we prove this bound. I want to give the idea of what will happen for bounded genus graphs. So the good thing that can happen in this case is that when you -- like when we are coming here, when we contracted, then everyone would be a separate branch, and that would be a tree. The issue is that this is not correct for bounded genus graphs. Because of the handles, what is a bounded genus graph. You have some surface, and then they may come together. The issue is that this guy and this guy, you might have a handle here, and they will come together. And then this theorem, you cannot say this is a tree and you can't do that. However, it's still you can say that because of the handles, the number of times that this will happen would be essentially proportional to the number of handles. So if this happens, then you can -- then it is, again, not bad. You can't say that. If you have a handle, you can't just -- this vertex, you can't just -- maybe you can't put two separate vertex here, and then maybe put one vertex here. And, essentially, so that this is a constant number of vertices, that you somehow split it, still the treewidths go by up at most G, the number of handles. So that's the idea, the things -- I mean, first, it was the first move that we had it, actually, it was a combinatorial paper, that was a bit more complicated things that you had it here. But to generalize it for, that was essentially so that this was the thing that you need to know something about the graph theory on topology, essentially, that if essentially there is some concept of [face] which is small, then you can decompose the graph, but if it is large, then you will get it. So if it is small, then you can split it. If not, it means that there should be some kind of cylinder, and from this cylinder, you will cut it. That was the first move that you had. That was a bit more complicated. But the one that we had it, actually, we could generalize it also these things for the general graph, is the one that I mentioned here, essentially, that this thing that will happen, and you can just split these guys, essentially, and when you split these guys, you disconnect it, and then you can get essentially three extra edges and the treewidths will go by as most G, plus G, essentially. The bound here is better, actually. Now, for H-minor-free graphs -for H-minor-free graphs, then we don't have any duality or anything. By the way, one I wanted to say is something also more general, you can prove it here. So I want to say that actually this is the one that you need it for H-minor-free graphs, so I will just mention the main idea and then we are essentially done here. So I will say that you can even do it with more general than that theorem that here I mentioned it. So here I need something even more general for planar graphs to prove for H-minor-free graph. In a sense, I need to strengthen the induction hypothesis that I actually can come up -- what do I say here? This theorem is a nontrivial theorem, that it took us some one or two years to prove this thing. I will say don't start here, so here, in a sense, in both of these cases, you could do these things with one vertex. Essentially, we have done some BFS from one vertex. Here, I want to say that this theorem is correct. If somebody, somehow, precolored for you not a vertex, a set of edges already in the graph is precolored. Good? So some of the edges, somebody came and this is -- essentially, that started from that paper that I mentioned for bounded genus graphs. So this is more general. You consider a planar graph. Some edges, somebody has precolored for you like with the color one or something. What's the meaning of that? It means that, for example, you cannot put -- so this K colors that you have it, somebody came and came and said, these edges should be in the color K. You cannot change that. Then the question is that can you still extend the rest of the things, so I showed you can get the result or not. That's essentially the end, some interest. That's the thing that we proved, essentially, here. Instead, as long as we start with the tight precolored edges -- what's the meaning of? Tight means two things that you need to have it. First, the number of components should be bounded. Again, I think this might be generalizable more than that, but even generalizing this part is not easy. And the other thing is that treewidths of radius R neighborhoods is F of R. So for any R neighborhoods of this guy that you will consider -- say there's only one connected component. For any R neighborhood, if you have this guarantee that you can get it F of R, then it should be bounded. So this called the tight precolored, so I want to just quickly mentioned that while -- so assume this theorem is correct for this case. Now, let me just say there are things for the H-minor-free graph and then finish it. Okay. So for H-minorfree graph, that's essentially the main theorem that we are using. That's essentially graph minor I think 16 that they proved this theorem, that any, essentially, H-minor-free graph can be written, in a sense, as a clique sum that each of them is almost bounded genus graph. So we proved almost for bounded genus graph. No, essentially, that clique sum. The clique sum is the part that kills you, essentially, and almost [embedded] means essentially bounded genus graph, maybe extra few apices that are going -- again, these are a constant number of them, and a few vortices. Vortices mean non-planarity, but these non-planarity, they have bonded [pass reads]. So still, you can do good things for them. So these are not the main things. The only thing that kills us for this result -- the previous result, as I mentioned, for the bounded genus graph, we had it in [SODA]. In two cases, several [indiscernible], we knew that was the thing, is this clique sum. So the clique sum, what is the meaning of clique sum? Clique sum of these two graphs means that you have two complete graphs. You say that, I will say, gee, the clique sum of these two, you put these complete graphs, you put them together, and just in some order you will do that, and then you identify these things. So far, everything is good, but you may delete some edges. So this deletion is the one that we didn't have the difficulty for that deletion version of the problem, because you delete these edges, and if they are not there, then it is fine. However, this is essentially -- that's the thing. When we want to prove this theorem for general case, when you want to delete some of these things, at some point, like in the previous graph, that was essentially the thing. So in the previous graph, here, you may color this edge and you may color this edge, but when you color it, it means that you want to contract them. But when you put them together, then this edge just disappears. And you needed to contract this edge because that was maybe very long path. You want to contract this edge so essentially it becomes one vertex and has a bounded treewidth, but you don't have this edge anymore, and this is the one that essentially kills all the arguments. So because of that, essentially, you need to do lots of complicated stuff to essentially -- that's the way that we obtain it. Now, this is just the general idea, and then we are done. So this is like the clique sum, you can consider it again as a tree. So this is a big graph. This is the first apex-minor-free graph. And then from that, there are the few -- there are the children of these things. Again, there are bounded treewidth graphs, and no, almost embeddable graphs. From, again, there are some children of that and so on and so forth. However, the catch is that from this big guy, when you want to do that, this big guy, when you color the edges, you may have some edges colored. This edge, when it comes to clique sum, with this child of that, this has some precolored things, because you somehow colored it in the parent. You want to keep the color of this guy. That's the thing that that [height] thing is important, that something somebody forced you that you should color this edge with these things. And then, again, these things forces something on the children of that. This is important. That will mean not summed up, because if summed up, then everything in the thing would be a mess, everything would be precolored. You don't have any flexibility. But you can show that, essentially, only three edges will go in the next level that are precolored. But these three edges would be corresponding to path, essentially, to something that we will show. So, essentially, for each of them, we will realize some path that -- for each of these clique sums that it is deleted. If it there, we are fine. If that edge is deleted here, it's not really existing the graph. I will find the path corresponding to that such that I can contract it and get that structure. That's essentially the whole idea of that you need to do these things, and you will find the shortest path, and it's called test structure. And this is the nice theorem -- I just mentioned this nice theorem and that. This is actually a nice thing. I say that treewidths of radius -- this is a very important thing, actually. It might have some other application. Treewidths of radius R neighborhood of, order one, shortest path is F of R. So if you have F of R things in, say, in planar graphs or even the planar graph, the treewidths of shortest path, R neighborhood of that is bounded by F of R. And the danger is this one. So, essentially, one says this cannot happen, because you might have one path. So if it is not the shortest path, what will happen? You may come -- this guy is coming here. This is just some path between this guy. So you cannot say this one for arbitrary path is correct, because if you consider this, consider the two neighborhoods of this guy, like any vertex which is at the distance two of this guy. Then, it will be the whole grid, so it is not as small. The only thing is that if it is the shortest path between two vertex, then you can do these things. And why? Because you cannot have such things anymore, because if that was the shortest path, you could just use this edge, and that's essentially the whole idea for -- this will be used on that precolored stuff, essentially, that we use shortest path, and that is also -- we are done. These are the main open questions, essentially. So the main open questions that we could prove this one for odd H-minorfree graphs or deletions and for H-minor-free graphs for contraction, what else we can do that? Can we do that for other graphs. I think this is not -- I don't see by any means these are the boundaries. I think you might get for random graphs or other types of graphs. You get these theorems, and these theorems are very useful, because lots of the times, the people try to prove something, but when they try to prove it, then it would be dirty, because this would be in the proof, this decomposition. I want to bring it outside of the proof, say prove this one, then you apply these applications for that. That's essentially the thing that we have done so far, bring the main structural theorem out of that and say, okay, the rest is the one that you know, and this is the main thing. Having do it for more things, and of course for spanner things, as I mentioned, for spanners, still, we need something to apply these things for lots of other contractions. That's it. >>: Questions? >>: One of the [things] I wanted to ask is for any given graph, any plane, the smallest minor, smallest graph, which says that it's a minor-free graph for that graph? >> Mohammad Hajiaghayi: Yes, I think I mean to say -- I'm not so sure it is currently practical, but you can just essentially -- you can do that, because for any graph, there is an algorithm for that, essentially. So you will just try all graphs, the small graph, and you can only consider the cliques, essentially. And for each clique, you will see, can you find the disjoint path for this vertex, and this problem can be solved in polynomial time. This is one of the most nontrivial things in this graph minor. If I give a set of pairs, can I find disjoint paths from S1 to T1, S2 to T2, S3 to T3? If you can solve that problem, then the problem that you mentioned would be essentially -- that comes essentially as a somehow generalization of these things. Still, it's not completely trivial, but that's essentially the idea that -- so you can do it. >>: I guess for graph of N nodes, it's definitely KN plus one minor free, right? >> Mohammad Hajiaghayi: Yes. >>: But is there? >> Mohammad Hajiaghayi: Okay, so one other thing I should have mentioned. So all of these algorithms I mentioned, that's the beauty of these things. You really don't need to know that minor free. You just apply -- this algorithm, as I mentioned, what was the algorithm? Essentially, you just do BFS from one vertex, so that was essentially all of them were these practical algorithms. This is the one that if you want to implement algorithms, this is the one that you should implement. Consider one vertex, do the BFS. Then either layer, you will delete it. Most probably, for lots of I will say practical problems, when you contract this one or delete these things, it should have a bounded treewidth. >>: The constant for the algorithm would depend on the edge? >> Mohammad Hajiaghayi: Yes, but I'm not so sure that would be a bad algorithm. These are all worst case. But if you wanted the practical case, it might be very -- you can get -- what was that? >>: Theoretically final constant graph? A small graph. >> Mohammad Hajiaghayi: Yes, theoretically, yes. Theoretically, you need to do that thing, and I'm not so sure the running time is good, if you want to get it. But the issue is that, I mean, the whole idea is just analyzing this algorithm, very simple algorithm for this graph decomposition. You consider one vertex, do the BFS, and cut the layers [indiscernible] K. And most probably, I will say lots of these graphs, maybe all of them, have a small treewidths. Then you will solve it. Maybe a few, they don't have a small treewidth. Then you do approximation algorithm maybe on them, and I will say these are not very bad, essentially. Or do any other technique on that. That's a heuristic that all this work that gives that heuristic, essentially. So you don't need to know any about spanner free graph. So just analyzing that for this algorithm it's a good heuristic, essentially, in practice. Good? Okay. I am sorry that I finished 20 minutes sooner.