 Okay everyone, welcome to the 7th GSS. Is this 7 or 8? So we've finished those 7, the politicians and conspirators. Okay, some number. Okay, so Chris will be talking again this semester. Let's give him the winner this semester so far. Unless some of you want to step up again. I'm always waiting for... So today Chris will talk about Shannon's... Shannon. So that's what we'll talk about today. Shannon, this is just an information theory problem, kind of, well, at its motivation and not at its heart. So in information theory, what usually you have is you have two people. You want to send information from one to the other across some sort of noisy channel where the data can get maybe corrupted somehow, jumbled around natural coding questions or hammering codes where some number of bits could be flipped in your message and you want to be able to recover the original message. In Shannon capacity, I think the best way to understand it is to imagine trying to communicate between two people if one person has really messy handwriting. So maybe, I don't know, this person also can only write maybe five different symbols. You know, they can write an A. They can write an O. They can also like, you know, kind of write a P maybe. Oh, it's your line, Dad. They can also write a Y. Maybe this is a Y. And also, I don't know, a Q. But if you didn't see me say what these were, it would be very easy to confuse some of these symbols with each other, maybe if they were written a lot sloppier than I'm writing right now. Just imagine grading your students how it works. So the thing is that we can confuse some of these symbols. And I told, if I said, if I sent you, you know, like A, this weird P, you know, well, you don't know maybe, is this an A, a Q, an O. So really, our question is handwriting is really messy and we can't tell. So if I want to be able to communicate with someone else and, you know, make sure that they're able to recover my message perfectly, we should only use symbols that cannot be confused with each other. So let's draw on this guy, you know, how we can confuse the symbols. So for example, A and O could be confused, probably. This guy, easy to confuse. These guys can be confused. Those guys confuse, those guys confuse. Well, I'm not really going to confuse O and I think that's a Y. I'm not really going to confuse P and Q because the tails go the other way. I'm also not going to confuse A and Q or Y and A. So in fact, this is my confusability graph right here. So we can ask the question, how much information can we send? So we want to only use symbols which can't be confused. The question is, how much information can we send? And we send, if your range is using bit as a general thing for symbol, not actually 0, 1. We're going to use symbols that cannot be confused. So we're going to send messages which only use these symbols. But as I said, if I sent you an A, you're not going to know whether it's an A and Q or an O. So do we arrange it ahead of time that if you see something that looks like an A and Q and O, you're actually going to be in Q. So for example, we could send messages where we decide we're only ever going to send the letters A and P. I can't even tell what that is. Only send letters A and P. And now if you get a message, well, I'm not going to ever confuse the A and P. So I can just know, well, if it looks like an A, it's the A. If it looks like the P, it's a P. But what if I see an O? The O looks like an A and a P. Okay, well, this is the bit of a nuisance. We're basically, this graph is the idea of these are the only two symbols which can be confused. If I only send you A and P's, you're never going to think that an A is a P and a P is an A. You're only getting a symbol with A and P's. So this is a thing if you're, so what you're talking about is some like bit flipping in some sense. And in that case, we could, if we had bit flipping, we could just modify this graph. Well, if I see an O, I'm going to confuse it with these. And then you might say, well, then I could kind of confuse an A with a P, right? Well, then we'll just draw another edge. And it still fits into this framework of the edges tell you these symbols can be confused. So in this case, I can only pick two symbols to use and avoid all confusion, right? So pick two symbols, two symbols to non-adjacent symbols, and the P started rather worse. Okay, so how many messages can I send? So you can send two to the end messages, two to the end messages, or we'll say on average each entry communicates two pieces of information, which is exactly true, we don't even need to say on average, each entry can be one of two, that's two pieces of information. Can we do better? Well, with this naive approach, no, I pick the two symbols, I'm only going to send information using those two. I can't do better than two to the end messages or on average having each bit. But what if I added some redundancy into how I'm actually going to send these guys? So instead of just saying each entry in this message is its own symbol, what if I say group them together into chunks of size two? So why don't we say our message is the following thing, where each pair is a symbol here. Namely, I get a message and I'm going to interpret each pair as its own thing. Well, how much information can we send now, again using the same model? Well, let's look at the following set. I'm going to write this down. O, O in some of these A. I think this is the Q. Let's do that. We have the A and the weird P. We have the Y and the A and the P and the Y. So I've written down five pairs here. And let's look at these guys and notice that between N and two pairs, we can either distinguish the first symbol or distinguish the second symbol. Namely, just looking at these guys. Well, I can't tell the O apart from the A. However, I can tell the O apart from the Q based on this picture over here. So if I were giving these two pairs, I would be able to tell them apart. I have five pairs. Using this N models, we can send five to the... Well, we heard them in the pairs, right? So N over two messages. By using this type of encoding scheme, adding this redundancy. Or on average, each individual entry communicates square root of five. And the thing to notice is that square root of five is certainly bigger than two. So by adding redundancy, we were actually able to send more information by doing this. And this is essentially what you have to pass against. It's the maximum amount of information you can do by grouping things together into long strings. So I wanted to find this formula. It's really just a graph theory problem. And each pointed out that this is not actually a discrete math seminar. So I'm probably obligated to define what a graph is, right? Okay, let's do it. I mean, honestly, you guys have probably all seen graphs, but we'll still define it. So really graphs go back, a bit of history to Descartes. That's not how you saw Descartes. I think there's an S in there. They really go back to Descartes with the invention of the Cartesian product, right? So we have two sets, X and Y. And their Cartesian product, X cross Y, is, you know, all pairs X, Y. X is in X. Y is in Y. Lovely. And we have a function, function from X to Y. And the graph of the function F, well, that's just a set of all pairs X, F of X, such that X is in X. So we know tons of graphs, right? For example, this is the graph of F of X equals X. You know, this is the graph. F of X equals X squared. Alright, so we define the graphs. Not the graphs we're talking about. Thanks, Grace. We have graphs. Let's actually do a bit of graph there. So what were we saying before? We have a graph G, which is the, we have a G graph, and we're going to send, to send messages using the vertices G as our symbol set. I have U adjacent to V in G. This means that U and V are confusing. Confusible, Able, Able. Which is exactly what we had earlier. Earlier we had the five-cycle, which described our confusability graph. So what does it mean, just in the first setting, to be able to send a message, you know, each entry meaning its own thing? Well, that meant that we just chose an independent set and used that as our sentence, right? So with groups of size one, so pairing them up into sizes just like themselves, most information, let's say most average info per bit, that was just the independence number. We chose an independent set to begin with. We were only allowed to use those entries because they don't have any edges between them. And therefore on average, actually exactly in this case, each coordinate of my message actually conveys alpha of G bits, because that's how many options it had. What if we grouped into size two? What does it mean for two pairs to be adjacent in some sense? If I have a pair u1, v1, and a pair u2, v2, these are confusable. So we would have to have u1 equals u2. Well, let's say the following, let's say u1 adjacent to u2, or equal. And v1 adjacent to v2, or equal. That would say that I would not be able to tell these two things apart. So what I could do is I could form actually a graph product. This is essentially letting itself to a graph product, and it's something that we call the strong product. So let's define it quickly. So if I have two graphs, G and H, the strong product, which we denote like this, with a little box with an x in it. I can explain why that is later. It's formed as follows. Well, the verts is simply the Cartesian product of the two vertex sets. And we have that u1, let's say u1, u2 is adjacent to v1, v2. If and only if, well, let's say here, I guess, for each i, ui is either adjacent to vi, or ui equals ui. So that's exactly our graph product. So for those of you logicians, this is similar to the direct product of graphs. Except put a loop in every vertex first, and then get rid of the loops after. For those of you who don't like it, or you could also say it's the Cartesian product union with the direct product. So let's do a little example. Let's explain this symbol here. Why is it that simple? Well, if we take the path on two vertices and multiply it by the path on two vertices, this gives us the symbol. And this is actually somewhat, not everyone does this, but some people do. For example, the Cartesian product in graphs is one times the number like this, and that's exactly what p2 times p2 would look like. Also, the direct product with the normal x. That's p2 times p2. Well, not everyone does that. Everyone understand this graph product. Okay, so using this graph product, on average, how much information can we convey if I just group in pairs? Well, now I should be using an independent set in the square of the graph, g. So the average amount of information, info, or I guess most average info per bit, well, I can send not many messages-ish, right? Or, sorry, squared here. I'm using pairs. That's how many choices I have. But each pair takes up two slots, right? So I should actually take the square root here. Yeah. Sorry, just to clarify, can you say most? Could you illustrate any cases where you forget and know that's information? Well, I mean, here's the thing is, I group in the pairs, but I'm really stupid about it, right? I'm just not optimal. Also, when I say here the most info, I'm kind of just selected to send only a single bit, right? So when I'm saying most, I mean what's the optimal thing I can do by this type of strategy? And we can generalize this. Namely, if you group in the pair, if you group into strings of length n, an average amount of information, the best you could do, well, you pick an independent set in the end guide, extend this naturally. But then each one of these symbols actually takes up n of your slots. So we should take them. And now we can define Shannon capacity. Yeah. Is there any reason why we want all of those words that if you get one single bean of the same length? There's no reason, a priori. I mean, this is... My guess? No. So I can justify why it's basically going to be best to do it with all the same. It has to deal with some either super or submodulently. I forget which one's which. That says, yeah, somehow I could... I won't give you a formal proof, but I think you can turn what I'm going to say into a proof that's best to use the same length. Or at least it's not going to hurt you. Well, for certain lengths. For some lengths it might hurt you. Shannon capacity. That's not how you spell that. We denote it by a big theta of g. I have no idea why. And it's defined to be the supremum overall at alpha of the nth strong product of g with itself. So it's exactly this theoretical maximum of how much information average information can be sent permanent in this type of setting. Okay. This is what most likely you could turn into a proof. I want to claim that... I'm not going to give a formal proof of this, but I also want to claim it's the same as the limit. And this is because this function is actually either sub or super or multiplicative. I always forget what all these things mean. Anyway, I don't have to take a test. So let's just notice that if I take the independence number of, say, g to the power of some k plus l, well, what's going to happen here? This is bigger than or equal to the independence number g to the k times the independence number of g. Now, why is this true? In general, if I just say alpha of the strong product of g and h is bigger than or equal to product of their independence numbers, this is fairly clear because I can take an independence number in g, an independent set in g, an independent set in h, and if I take those strong products, I'm not going to get any edges. This is because an independent set, strong product with an independent set is another independent set. I can't get any edges here. And it's going to have size of that product. That justifies sub or super multiplicity. And in that case, the sub is the same as a limit. And I think this also says that if for some reason, if I were only using a bounded number of sizes, right, so if for some reason there were a reason to use a bounded number of sizes, I could actually do better by basically using this property. Although I guess that doesn't answer the question for an infinite number of sizes. What we just demonstrated was that if I look at the Shannon capacity of C5, our first example showed that this is at least the square root of 5, and this is because the independence number of C5 squared is 5. Now, this may be surprising at first because we know that the independence number of C5 is just 2. So there are cases in which this independent number can become strictly big. It's really weird. So the first question is what is, this is actually an open question for like 12. It's very difficult to come up with any upper bounds on this thing on the Shannon capacity. So before going into a couple of bounds, I just want to mention the following fact. We don't know if the Shannon capacity is computable. We have no idea. There is not even like a 2 approximation now as far as I'm aware. I think if n is the number of vertices, I think you can give them order log n approximation. But there is no constant approximation even known to this thing that can be done in any amount of time, not just poly time. So is there an example of a graph where iterating this product procedure, it's known that it's never becomes multiplicative? It isn't. So is there a graph where it's not a super, not a max? It is not known. We do not know. There's an interesting way of candidates but no one knows. And that family of candidates, we actually know that this is true but this is equal to 5 will prove this. But if you ask me about thing of C7, we don't know what that is still. And we have a bound and if the upper bound is correct, then that would be an example. Because the upper bound i can't be right. But no one knows. Anyway, so it's not known to be computable. The weirder thing is it has been shown that if I say alright, my algorithm is as follows I am going to compute the first 10,000 hours of you know the graph and take the best one. It's known that that can't ever work for any value of 10,000. Namely, you can construct graphs. So if you look at the graph of alpha g to the end 1 over n and this is n, do whatever you want. Maybe it stays the same here and then it jumps up here and then it stays the same for a while and then it jumps up a lot and then it stays the same for a long ass time and then it's nice to jump up here. In fact, for any finite number of these intervals and also essentially gaps, you can construct a graph with dud which does that. Oh, so you don't even know once you see that doesn't help you. It doesn't. I can make this be exactly the same for as long as I want to and then have it jump up afterwards. Oh yeah, it's bad. There are lots of conjectures and we don't know anything. I never hope to come up with upper bounds. So let me mention a general upper bound. So general way to construct upper bounds. Let's say you met it. Let's let f be a function from this is the space of all finite graphs. So let's say I have some function and I want to try to come up with a way to argue that this function is in fact an upper bound on the Shannon capacity. Well, might seem hard to do that but in fact we only need two properties. So f of g is bigger than or equal to the Shannon capacity of g if two things are true. One, well, of course has to be bigger than or equal to the independent sumber. It's fairly trivial, right? Because this is bigger than or equal to the independent sumber. And the second property is that it's so called sub-tensorizes. Sub-tensorizes. I guess the reason we call this tensorize is sometimes the strong product is referred to as the tensor product. Reason being if I look at the adjacency matrix of the strong product of g and h that's the same as the tensor product of the two adjacency matrices. So sometimes this is called the tensor product. Why does this tell me that f is in fact an upper bound on Shannon? Well, it's pretty easy. Proof. But I know that this is less than or equal to by the first property n of f of g to the power of n. And then also f sub-tensorizes by induction super over n f of g. And every single upper bound known on the Shannon capacity follows this. The funny thing is the Shannon capacity itself does not follow this rule. So basically we don't understand anything about the Shannon capacity. Questions so far? We know what Shannon of C5 is. There we go. We know what it is for a certain class of graphs that we'll prove right. So let's give an upper bound. I want to claim that it's upper bounded by the following thing. We're going to rewrite the independence number of g as follows. We're going to write it as actually an integer program. And then we'll relax it and show that actually this relaxation is upper bound on Shannon by following this rule. So I can write the independence number as the maximum sum of xv, xv over text subject to the following if I sum over all the vertices in a clique. So for every c in a clique that's at most one because an independent set can have at most one vertex of every clique. And then lastly is that xv is either 0 or 1. So xv here is just telling us whether or not it's inside of the independent set or not and this is just summing up. And it is an independent set because for every edge, well those are cliques, I have at most one of the two. Fortunately this is hard. Let's give a relaxation. The most natural thing to do is to say I don't like integer programs, I like linear programs. So let's relax this to just saying that xv has to be bigger than or equal to 0. And upon doing that we call it the fractional independence number. They are not the same. So what we do is is that the independent number is less than or equal to the fractional independence number just because we have fewer conditions to satisfy. It doesn't have to be an integer in each of these sides. You're looking to use that. No, okay. I want to claim what is xv? Sorry, what is xv? xv is any number. The real number is right, so I'm maximizing over all of the xv's. So really I'm maximizing over all xv subject to the following constraints. I also want to claim that actually alpha sub f of g subtensurizes. Then we'd be okay, right? So I want to claim that alpha f g times h is at most alpha f of g alpha f of h. In fact there are people, but let's just group less for a little tip. So how can we do this? Wait, is this the one I want to do? Wait, is this, okay. How do we do this? Right, so let's fix. We have some xv, v and v here. We have some yv, v of g, yv, v and v of h here. Right, these are the optimal settings for this guy, and I want to construct a setting for this. Oh, I do want to do a vice versa, don't I? I don't like that. Okay. Okay. Sure. Let's take the dual of this program. I don't like working with this. So the dual, alright, I'm following around a bit, called the fractional creep cover number. Here's the min. Again we're going to sum over all c a clique of some number assigned to c. With the following constraint, I want it to be the case that I've summed over all c's containing a vertex of yc. This should be at least one, and then finally all of these yc's. This is the natural relaxation of actual clique cover number which is the same as chromatic number of the complement, and by linear programming duality these are actually the same number. So let's just replace it by clique cover. We're not going to have a lot of time to do anything. Maybe I should skip this. Actually let's skip this, so I don't have much time. Anyway, I don't know why I did all of this. Okay, it's true. Let's see what's in the top. C5G is at most the fractional clique cover number of G. Does this help us for C5? Well, you can actually compute this pretty easily for C5 and actually the fractional clique cover number of C5 is five minutes. It's not going to help you out. So now we know that the answer is somewhere between square root of five and five-halves. It's not too far off. So how can we actually prove that the Shannon capacity of C5 is square root of five? It requires a magic person named Lobos and his invention of the following. Lobos stage. So we first need a definition. So if I take a bunch of vertices, let's say in some r to the n, such that v is a vertex of my graph, we say this is an orthogonal representation of G if they're all unit vectors and if I look at their inner product so xu with xv, this is going to be zero whenever uv happens to be in is not an engine. So in some sense I have an embedding of my graph into the unit sphere in some dimension. You can always assume that n is say the number of vertices of G because there will be n vectors, so it always lies in some subspace of dimension where non-edges have to go to orthogonal pairs. So it's a good question just when these guys even exist. And here's the bound that Lobos gives. Theta, let's define little theta of G. This is, oh, also I guess I need also another definition. This is easy but we'll just use this notation. H in rn is a handle if it's just a unit vector. We'll explain why we like to call them handles in a second. All right. This is defined to be the minimum over all minimum over all of these of the maximum over all the vertices of my graph one over the inner product of xv. What's n? Do you just pick a sufficiently large n that I have to do? Yeah, n is, yeah, really we're minimizing over all n is the number of vertices of the graph. I mean there are n vectors, right? So does one of these always exist if there are n vertices? Yeah, I could just apply them all to a standard basis, right? Because G has n vertices so one, it does exist in dimension n and two you can always assume it's in dimension n because just take their stand. So if I want to have some teaching to start a hip and only hip, right? You can have the case where two vectors of all of them are there. Yeah, that won't hurt us. I think it has been shown that if you're going to be optimal for the theta function, it needs to be if it only hip, but I'm not 100% sure. But no, we're just saying if there is not an edge they have to be a real problem. I don't really care if there are edges and they still are, I don't really care. Okay. So we now define this weird function is it's an upper bound on the Shannon capacity and if I plug in C5 I get square root of 5. So the first claim we should make is that little theta is bigger than or equal to big theta. Which makes no sense. But little is bigger than big so whatever. Okay. So we need to do two things, right? We need to first show that it is in fact a bound on the independent number that it subtensurizes. Let's do subtensurizing first. So if I say that I have some, you know, X, V, V and V of G and I have some Y, V, V of G, sorry, H. Let's say that these are orthogonal reps of their respective graphs and I also have a handle handles little G and little H such that, you know, Shannon, sorry, the Voss theta of G is similar for H. You know, they're similar things. So I want to claim that I can get a good orthogonal. I want to claim I can get good values for G times H. Well, the easy thing is well if I look at X, V, tensor Y, let's say X, U, tensor Y, V such that U comma V. This is, why is that? If I'm not an edge in G times H then I must not be an edge in one of the two graphs which means that that respective component of my tensor product will give me a zero and there's still unit vectors because I'm tensoring unit vectors. So this is an orthogonal representation and then we're going to take the handle for this orthogonal representation just to be G tensor H. And what's going to happen if I plug it in? Well, the maximum over, I guess U in V of G, V in V of H of one over inner product of these tensors squared Y V of G tensor H squared, well I can say this is less than or equal to one over, sorry, in V of G one over X V with G squared of right, tensor products factor over inner products and this guy right here is V of G. And this just kind of solidifies what we also like to call the tensor product. I have another question. So looking at this definition of little theta I want to maximize this reciprocal. So let's explain what it's doing. Okay. So what are we doing is we have some handle some vector H and this is our handle. Now this will explain why we call it a handle. What is this? This is a projection. So this is a projection, right? This is a projection of these vertices onto this handle. So somewhere out here I have a bunch of vectors corresponding to G. This is the orthogonal rep of G. And if I project them and look at just the length of their projection that's going to be the inner product square of the two of them because they're both unit vectors. I guess square projection. And what is this saying if I'm maximizing of one over that says I want all of these things to be large. So in other words this handle says I want this orthogonal representation but I want them all to be roughly pointing in the same direction. And this H is that same direction. So that's kind of the philosophy behind this. So essentially you're embedding them into some sort of spherical cap. I mean, happy with that? Yeah, I was putting the H on the wrong part. Because if you maximize over the handle you can just make it orthogonal and that will blow up the reciprocal. Exactly because I've never fixed the dimension of my problem. So we still need to prove that it's actually an upper bound on the independent and that's pretty straightforward. Let's say A is a subset of vertices that is independent. I want to do the following. We have our handle and we have our reciprocal representation. If I look at the norm of H squared, well let's start with one. I can write that as the norm of my handle squared. But now what's the case if I look at the vertices in A I know that XB such that V is in A this is orthonormal because it's the independent set so I know that they're pairwise orthogonal and they're all normal vectors. So what could I do with this vector H is I could project it down onto this orthogonal set. Because I'm just looking at the norm this is going to be bigger than or equal to the sum overall of V in A the inner product of A XB squared. Actually on orthonormal basis I would have equality here but I don't actually I just have an orthogonal set so I'm just going to throw out some turns and they're all positive so I don't care. Great. But now what is this thing? All of these are bigger than or equal to one over theta. Simply because what happens here the maximum of one over those that's I guess bigger than or equal to theta and less than or equal to theta there we go less than or equal to theta and you get bigger than or equal to theta okay this is size of A over theta and we're done. Yeah, I'm sorry is H the hand of that's minimized? Yeah, so what I'm using here is that the XB and the H are minimizing everything. They're the optimal solutions. You know that the min is actually attained because it's right where you can pretend that we're always in dimension and so just use compactness and you're good. We don't have an infinite dimensional problem. Okay, so it is a bound on chain. So how do you get theta of C5 discovered? Well the philosophy is called the umbrella idea. Call it the umbrella proof. Let's start by drawing C5 in the plane in just kind of the natural way right I could draw pentagon in the plane a regular pentagon and now I'm going to think of my handle as the Z vector as the Z vector. Well this is going to be bad. This is not a normal representation but I can think about pulling these vectors out folding down my umbrella until these two vectors become orthogonal. That's going to happen at some point because this is bigger than 90 degrees and they're going to end up as the same vector if I keep doing it forever. Eventually they will end up being orthogonal. So I'm going to have an orthonormal representation and then you have to do a lot of really annoying trigonometry and it turns out that when this becomes an orthogonal representation the Z coordinate of each of these vectors we have something, something and then the 4, 3, 5. This follows from like spherical cosine laws. I'm not going to do that. So that means that 1 over xv with h squared, well h here is just e3 and this is, oh wait sorry, not the 4, 1 over the 4. You guys should correct me. Come on, you know what I'm going to say. There we go, that makes sense. How could I be the 4 through the 5 of a unit vector? Come on. This is, so you get that little theta of c5 is at most square root of 5 you know that it's bigger than or equal to big theta of c5 and we already knew that this is bigger than or equal to square root of 5. So we're good. We can also get interesting things such as a little thing, the LoVos theta function applied to any graph is at most that fractional peak cover number as well. So it actually does strictly better in those cases. Let me just write down the best found for any odd cycle. Yeah. Okay. Turns out little theta of cn n is odd. We actually know the answer for all n even, it's n over 2. I didn't finish the peak cover number thing, but that'll give it to you. This is equal to n times the cosine of pi over n 1 plus the cosine of pi. And there we go. This is not done by the same technique. You have to do a lot more work to get this. It's not known that this is actually the Shannon capacity, but this answer is if this is the right answer for Shannon. This would be an example of where you have a maximum there. This can't be achieved at any finite point. Sorry, your question. It's not clear that those are transcendental though. Yeah, you can prove it. All you have to do is show that it's not root, right? All you have to do is just show that any power is not an integer and then you're good. Because Shannon is not root, right? So if it's achieved, so you don't even have to say transcendental. Yeah, even easier. I don't know if that counts at all. Anything that isn't, you know, automatic. Of course, if I plugged in n equals 5 there, I would also claim that that's transcendental. I guess not, though. Whatever. You have a question? So, based on that, there's no real satisfactory reason why it's coincidentally coincided with the second offensive products. Yeah, there is no good reason. As far as I'm aware, I could be wrong about this, but we do not even have an example of a graph whose Shannon capacity is not determined by either its independent number or the independent number of its square. We don't even have an example where it's determined by, say, the independent number of its cube. We know nothing about this parameter in its first grade. There is no graph where, let's say, the sword in the Venice Comastice suit you go to the first two? No, there is. But we don't know that it's equal to. That's all I'm saying. Oh, it is equal to us. Yeah, that was ICAC. We don't know. So there are certainly ones where it's bigger than I think you... Actually, I'm not sure if the constructions tell you where you start that last table, but that's the answer. I'm unsure of that. Okay, so I want to pose a question. Are these two things equal? This will be my last 10 minutes. No? No. They're not equal, but it actually took a while to come up with a coverage on it. I mean, isn't it automatic because a little theta is subsidizing and... Right, but that wasn't known. It wasn't known when Lobos... Oh, it was a little base theta. Right, so at the point Lobos ended his thing with a bunch of questions. One of them is if this was true. They got substantially weaker. The second one was whether or not big theta subtensorizes. I will actually ask if it actually tensorizes because Lobos said he can prove it actually tensorizes. Not too hard. And then he just kept getting weaker and weaker, but at that time it wasn't actually known that there was that big theta does not subtensorize. Subtensorizes. That's easy to prove. It wasn't known if it subtensorized. Until we come to the only other general bound, the hammers bound as it's called. And let's talk about this quickly. It's pretty fast and we'll give a counter example to this. Although I won't prove part of it. So let's do the following. Let's fix a field f and what we want to do is we want to come up with a bunch of matrices. We have a graph and let's think about matrices whose rows and columns are indexed by the vertices. Let's kind of try to replicate this idea of the orthogonality. We're going to say that m fits g if the following is true. One, the diagonal entries are non-zero. And two, uv is equal to mvu is zero whenever there's a matrix. This is similar to the orthogonality but not actually because I'm not requiring that the matrix itself is a graph matrix. In fact, this matrix would be not so. The claim is oops, I went to find the parameter. Hammer's then defined let's call it h of g with respect to the field f and this is the minimum m that fits g over the field f of the rank. Look at all the matrices which fit g over this f. Look at the rank over that field. This is an upper bound on channel. So first, sub-tensorizing is easy. Why? Well, because if I take the tensor product of two of these guys if this fits g and this fits h well then this guy fits their tensor product, that's easy because zero times anything is zero. The diagonals are going to be non-zero because we're over a field. And also the rank of the tensor product well that tensor. And it's an upper bound on the independence number because if I gave you an independent set in the big matrix say that this a that's an independent set well what does this have to look like? On the diagonal we have not zeros and on the off diagonal there are no edges so we must have zeros. So I have a matrix of rank size of a inside of there that's the independence number. So the rank must be at least the independence number. Happy? So all of this, you know, all of my hand waving implies that in fact this is big. My last five minutes let's give a counter example to this. In fact you can come up with counter examples over most fields you can also come up with them over the reels but I'm just going to give you one over M with this guy over here. So let's define I'm going to call it J J stands for Johnson as it comes from Johnson's. The vertices is going to be all subsets of size P plus one coming from bracket N and we're going to say that S is adjacent to T for two of these subsets if and only if the size of their intersection is not zero. Really I don't care it's P plus one but just anything not divisible by P. Yeah, so if you want to let's bracket N the set of integers one through N how do you do this? Well we just have to come up with a good matrix over F P and let's just take the incidence matrix. So let's say that M is the matrix where I have to think about which way I want to do this I think I want right so here I'm going to write bracket N choose P plus one and over here so rows are indexed by bracket N columns are indexed by all the subsets so this is the same as V of J and P and we put a one only if it's contained in S right? What happens if I look at M transpose times M where we're taking the inner products of all of the columns so this is going to be indexed bracket N P plus one by bracket N choose P plus one and the entry the say ST entry is going to be the size of S intersect T but we're over F P modulo P so let's just check that this guy does in fact fit the graph well on the diagonal this is always one so we're good there on the off diagonal well if UV is not an edge that means that the intersection of S and T is zero mod P so we get a zero so this matrix does in fact fit G over F P and what's its rank? well the rank of M transpose M well that's the same as the rank of M and M has at most N rows so in fact there can be a huge discrepancy between the LaVos data function and the Hamer's minimum rank here although in general the Hamer's minimum rank is awful first thing it's always an integer that's no fun second thing is the LaVos data function it turns out that you can actually write it down as a semi-definite program so at least in theory you can compute the polynomial time the Hamer's minimum rank is technically computable but not going to be any fun definitely an MPR problem I don't have a proof of that but it's definitely MPR over most fields like you have to solve a giant system of polynomial equations basically other things that the data function satisfies that Hamer's doesn't when the data function was less than or equal to the fractional clique cover number it's not true about Hamer's it's less than or equal to the clique cover not the fractional version namely because we said clique fractional clique cover of say C5 you know that this is 5 halves but I know that Hamer's of C5 is at least theta of C5 which is root 5 but Hamer's is an integer that's 3 so that's a bit bad it is less than clique cover number but I'm out of time right son when does this sound you don't know anyway there are lots of weird things last thing I'll pitch a recent paper of Boris in mind where we have a generalization of the Hamer's bound which does everything you would want so in fact our generalization is in fact less than the fractional clique cover number and the Hamer's bound also subtensorizes but it does intensifies the generalization does intensifies it's fun so I'll just put a little paper and there it is last question is what's theta of C7 nice to thank you for this again it's not something my one good question is I am