 Okay, so we've been talking about the weight distribution, okay, and here's the definition if you have an mk code, weight distribution usually represented by the library at full normal, and there are various ways of writing it, one is to say it's a bar x power n minus y power i, and what is a i? a i is the number of code words, number of code words with weight i, okay, so another nice representation for the same thing is summation over all code words x power n minus weight of u, y power over u, okay, and you might wonder why do you need bioreal polynomials for just representing a vector of weights, so the nice notion is that there's an equivalent identity which states that the weight distribution of the dual is given by this formula, so when you write it in terms of x comma y instead of x you put x plus y instead of y you put x minus y, then divide by the size of the code, you magically get the weight distribution of the dual, so this is called the equilibrium identity and we were proving it in the last class, we went kind of halfway through the proof and hopefully we'll finish the proof today and I think that's pretty much all that we'll do in this class. Is this okay, any questions? Did anybody try the proof? No, no time, you're too busy, okay, nobody even looked at it, so I'm going to give you a chance to look at it today, okay, so what is the, what is the main idea in the proof, there's a lemma that we used, right, what is the lemma? Summation minus 1 power u dot v when u is over the code and v is sum other than the vector, the summation has a very good behavior, what is the behavior of the summation? The size of c is v belongs to, sorry, v belongs to c power and the 0 else, okay, so this is quite a powerful result and this is something I didn't prove very clearly in the last class but I said it's kind of clear why this is true and there are lots of more sophisticated mathematical descriptions of this later on if you do some group algebra and all you might see something stuff, this is some very basic fact which we can be happy with, okay, so this is something we're going to use and how do we use this in the proof of my full uncertainty, okay, so we started with this summation, okay, so this is what, this is the rate distribution of the, of what, of the dual code, right, so the rate distribution of the dual code, I started with this and then I said, I'm going to sum over, did I put u or v here, maybe I put v here, 3, okay, and then I said, what is u which is v? It's fine, okay, and then I said I'll add over, wow, of course it doesn't matter, it's zero activity but just want to be consistent with what I did in the last class, I wanted to add over all the vectors in the, in the vector space, instead of doing just so c, c tab, and the same expression, but then we wanted to adjust it, right, so whatever adjustment we're going to do, we're going to sum over u and c minus 1 power u dot v, and then we'll have to derive by size of c, so, okay, and then, and then what did I do, I went from, I interchanged the order of the summation, and I said 1 over size c, sum over u and c, what? Sum over v into 0, 1, n minus 1 power u dot v minus weight of v, y power weight of v, okay, so what's the goal, the goal is to show that this is going to be equal to x plus y power n minus weight of u, yeah, all right, so you're going to start and tell me how to do it, I'm not going to do it too, okay, so let's see, take an attempt at it. So we'll look at all the possible ways in which we can get this person's particular score which, so on the answer, we know that it has to be, we know the form and which should be from the answer, and we somehow try to coordinate it. Let's see if we get somewhere, okay, Ignace, just hold on one minute before we try, we'll give you a hint, okay, so one way of doing it, which I think it's the way I know, I don't know that way, okay, so what we do is the following, so you set u to be, let's say u on u and v to be, we want v to be, and okay, so normally when we write it like this, each of these things is a bit, right, 0 or 1, okay, but then this weight of v is a bit troubling, yeah, how do you write weight of v in terms of bits, number of non-zero positions, but I want to write it using vi, okay, if you don't write using vi, the weight of v is not going to simplify very nicely for me, okay, yeah, so you have to now do this dual look at v, okay, the vi I will on the one hand say is a bit, 0 or 1, operations are modular too, on the other hand I'll also kind of view it as an integer, okay, for the powers, okay, just to look at the powers, I will view it as an integer, so when I do that, that dual view, it will kind of give me a nice expression and let me see how to do the manipulation, okay, right, so what I can do is I can write weight of v, basically summation vi, okay, so again I'm going to start going to show that this is a vi equality, okay, on the one hand you're thinking of vi as a vector with bits, everything should be modular too, right, so there's no question of 2 or 3 or anything else in the area, but I'm going to add it up like this and use it as a convenient tool in the simplification, there's nothing wrong in it, okay, if you find it, it's just that I'm writing with that, okay, so once you do that, it turns out whatever vector expression I have, I can write it in this form, okay, I put n summations, v1 equals, v1 equals 0 to 1, v2 equals 0 to 1, vn equals 0 to 1, okay, so again, remember when s is 0 to 1, what does it mean, it's just like the integer 0 and 1, it takes, at one point it takes value 0 as well as 1, I have to sum over those two possibilities, then I write minus 1 power what, u1 v1 plus u2 v2 plus so on to un vm, okay, so and then what am I going to do, x power, okay, so yeah, it's going to be n minus summation i equals 1 to n, vi, y power summation i equals 1 to n, vn, okay, so you notice here that this will satel, okay, I can write this as a product of n things, each thing depending only on the i thing, i equals 1, i equals 2, etc, so how do we do that, let's do that next, so we'll have the same information going along here, end of bug, okay, so let's go over the lecture and lecture by Prof. Nagendra, I don't know if you know, he was talking about how students today cannot, don't like manipulating expressions, they cannot manipulate expressions that are complex enough, they just immediately get tired, they don't, they want everything to be nice, quick answers, quickly type it in Matlab or Mathematica or something like that, so this looks like a readymade case for that, I'm sure I can ask you to do it, but none of you will put pencil into paper and try to simplify this, so I'm doing it myself, okay, so let's write product i equals 1 to n, what's your i power minus 1 power, ui vm, okay, and then x power, yeah I can write 1 minus vi, right, so that's the nice point about just treating it as a quick present, so the product, when I multiply all of them together, I'll get back the subscription, okay, with sigma, no, sigma is going, okay, and you put sigma vi equals 0 to 1 of this term, so the working product i equals 1, you want to take the summation inside? Yeah, we have to do it, but then you have to be sure that it's possible, right, can you take products and summation outside, is it commutative that way? Yeah, seems complicated, right, can I take the product outside and summation inside, that's the question, it turns out you can do it, that's because this is a special situation, okay, so always it's not true that the product will come out and the summation will go in, it's not true, sometimes you can exchange, yeah, so here the way the product is coming and all possible cases are there, that's the important thing, so of course it's an easy way to kind of justify this by example and let me try that for you, so if you have a0 a1 plus, no, a0, let me say xy, xy, xy, so if you have two variables, if four variables, let's say a0 a1, b0 b1, okay, and then you take the sum of all possible products two at a time, so you have a0 b0 plus a0 b1 plus a1 b0 plus a1 b1, okay, suppose you have a product like this, this is the same as a0 plus a1 times b0 plus b1, you see that, because all possible products are showing up in this product term, so if you look at each term it contains all the possible products of these n variables and each of those n variables is something, it's a little bit more complicated than before, but each of the n variables is minus 1 power ui vi, x power n minus vi, y power vi, so all this guy has arrived, okay, did I get that right? Yeah, so I think I should be a little bit more careful, so yeah, let me know about that, okay, anyway, so this minus 1 complicates things a little bit, so you have to worry about how the minus 1 is put, but anyway, so if you want you can group it around with one of them, okay, take that as a, take this as b kind of thing and then you'll get all these all possible products will show up, so once you have all possible products showing up, you can group them two at a time, or as many as possible values as you have at a time and then write it as a product like this, then all possible products will anyway also come by the same, in the same term, okay, so if you're not convinced, write out this possibility, okay, so we have a0 a1, b0 a1, c0 c1, okay, so you will have eight different terms showing up with three terms, right, if you look at this term a0 plus a1, thanks b0 plus b1, thanks c0 plus c1, you will get what, eight different terms and that will be all possible products of ADC with whatever position, so all possible products summed up of ADC is the same as the sum's multiplying, okay, so this is one peculiar situation that the product will actually come out, okay, so usually it doesn't happen, product comes out in one, in this particular situation, okay, so it turns out this way can be written as product i equals 1 to n and you put? Sigma v i equals 0 to 1. Sigma v i, no, no, no. Yeah, inside you have sigma v i equals 0 to 1 or minus one probability v i, x bar 1 minus v i. Yeah, so you have to put v i equal to 0 here and then v i equal to 1 here and add two times, okay. So when i put v i equal to 0 here, what do I get? x, then I put v i equal to 1 here, what will I get? Yeah, so what do you get? Is it okay? Why am I not feeling very good about this answer? Yeah, I think that's it. I think that's it, that's it. So this is the product, okay, so now I want to bring in weight of you, okay, so in terms of weight that are n terms, how many of them will be x plus y and how many of them will be x minus y? Yeah. Whenever u i is 0, I get a x plus y and whenever u i is 1, I get a x minus y, so if you do that, you see you get without too much problem for this to be equal to x plus y equals to the bar n minus both of you. And what is the problem? x minus y. Okay, and that's what I wanted to show. Okay, so that's the end of the proof. Then this way it seems like major magic that there are some sophisticated like a set of fancy group character arguments that will make it look a little bit more mundane, but nevertheless the first time I said I was quite impressed with this identity. I thought it was a really cool identity relating the the in a way it relates every code word, some property of every code word of C some property of every code word of C It says if you have so many code words of this much weight and C there should be so many code words of so much weight and C purpose. So that's a very strong connection between the code and its duality. It's not very obvious at all. Okay, so anyway, so this was named after Florence McWilliams. She's one of the preeminent coding theorists from quite a while back. Lots of interesting stories about her also. It's no time to delve into stories. That's the idea. Okay, so that's the result. We'll do a QED and finish that through. Okay, so let's do a couple of examples. Let me check how that will work out. I think I did this example maybe for the repetition code if you take M1 repetition code the C is the guy and so if you go to the dual dual should have M1 should be equal to X1 X1 and we know that is correct because the dual is what? M1 even weight code it has all the code words of even weight and this summation clearly will give you that. So anytime you have Y power i, i being odd that we cancel with the other term in the summation. Only the even guys will come and the division by two takes you back to the actual weight. Okay, so this is the same as i even 0.25 Is it okay? So that gives you the dual and I think there was there was this curious little code that we had, the 6.3 code that I had. So there was a 6.3 code and what was the weight distribution? What X power M plus 4 X power X power 6 4 X power 3 what power 3? Am I right? Do you remember this? And then 3 X power 4 X squared Is that right? Okay and we saw that the dual also had the same weight distribution. Right? Do we also have the same or the opposite? Exact same, right? So it's a curious little polynomial here. So what is the property of this polynomial? You do the transformation X plus Y X minus Y and then divide by A What do you get? We get the same polynomial. Let's see if we can check that. Sure, it has to be true but I think it's an interesting thing to check. It gives you something that has some invariant theories about polynomials if at all you learn about them later on at that point you might remind yourself that you saw this once before in a more benign context. So this is a very powerful notion. So let's do that. Let's do what we see of X plus Y minus Y X minus Y 3 X squared X squared, sorry. N minus I, right? So there are 4 coders of Y3 and 3 coders of Y4. So it's a curious little depending on your skill that it's kind of an algebra you might be able to do it very quickly or you can just take your time with it. It doesn't matter that I want you to check it but I think it's a nice little result that if you have like a nine standard means or a view of someone and you want to interest them, you can ask them to try this for more complex things you can do also but this is a nice little algebra problem. You don't have a pen. The first thing you should do is pull the X plus Y whole squared outside. Okay? And then in the next two times, pull X minus Y part 3 outside. And slowly do step by simplification like don't try to expand each term and then add up. You can also do that, it's not too painful but that might be smarter ways of doing it. Okay? So let me try this. So I'm going to pull X plus Y squared times X minus Y P out from here. So I'm going to get 4X plus 4Y 3X minus 3Y. Okay? All of you are absorbed in your own calculation. Okay? Go ahead and do that. I'm going to do it on the screen without any commentary so that we're not distracted. In case in case we even this is not a very nice yes, yes, good. Any did you observe something which you thought was this particular paranormal was any simpler because of any smart observation or no? It's just one of those identities right? It's like saying you must have all these formulae with X and Y, you can you must have a new formula, right? X plus Y plus X plus 4X plus Y for 3 X minus Y gives you this limitation. Okay? Anyway, I mean these are not there are much bigger theories. Like I said, this idea called invariant theory which captures all these things very well. That's something. Okay. So like I said what is the rate distribution useful for? It's useful of course in figuring out probability of error detection, probability of error correction sometimes. So like I said from a cold space point of view geometry point of view, if you're sitting at a cold the rate distribution tells you how many cold words are what distance are they? Okay. So in a way if you're transmitting a code word, the error vector that gets added can push you in so many different directions towards so many different code words. So that's the nice thing about rate distribution but having said that I should say but for most codes that we know today rate distribution is not that well known. For each element codes it turns out rate distributions are exactly known. For any MDS code rate distributions are known exactly but for many codes like VCH codes, lead molar codes there are lots of rate distribution problems that are open. Okay. So it's not but once again I should say these are not very hot problems today. Very classical coding theory problems. People have moved on to other kind of problems in coding theory but nevertheless there are still like dedicated groups of people who keep plugging away at it you know when they'll suddenly come up with a rate distribution of a VCH code which is so far unknown. So it's somewhat interesting once in a while to study. Okay. So that's that's all I wanted to say about rate distributions okay so let me see yeah I think that's it anything more to add yeah I think maybe we'll do this for example the 844 lead molar code right? We have the 844 lead molar code one nice property for this code is you said it yeah itself dual but it also I think it has one codeword of weight 0 and all the other codewords of weight 4 I think so it has 15 codewords of weight 4 and one codeword of weight 0 Is that correct that it sounds believable to you? Okay. Huh? We did the checking yesterday right? Did we do that? Yeah. Yeah. So it could be okay. For the Hamming code we did we saw that for the Hamming code it had some properties and the same thing. So let's look at the weight distribution it's going to be x4A plus 15 you also know that it's self dual okay so what should happen if I do the I should get the exact same thing so let's see if we can check that maybe it's possible to check that so if you do the transformation that you see it's what is it going to be? x plus y power 8 x plus y power 4 x minus y any ideas? Any ideas you think you can simplify this? Okay. Can this be equal to I think it's equal to this? Does that sound believable? It's believable right? So if you look at x power 8 you look at the x power 8 term the 16 is the coefficient it's not too bad and if you look at the y power 8 term what's happening? Can it be the same? Can it be the same? Okay. Then something is wrong in this What did I make a mistake for? So I guess this is not true for the 844 code It's 3, 2, it's 3, 1 right? So it's 3, 1 Maybe it's not all 15 Maybe it's like does it have 4 and I think it has 8 also right? I think it's 14 and then it has y power 8 It has the all 1's code word That's where in the read molar code has the all 1's code word also right? Then it also has 6 Does it have 6? Yeah it won't have 6 minimum distance is 4 So it will only have 0, 4 and 8 But it will have 8 also I think 8 is the mistake Sorry for that Then you have the y power 8 Right? If you have an 844 and minimum distance 4 A0 has to be 1 A1, A2, A3 has to be 0 A4 has to be something So A5, A6, A7 also has to be 0 If you have the all 1's code word I think all 1's is there in the read molar code It's there, so I guess that has to be true So of course you have the x-y power 8 Okay that's your outcome Now it's your outcome Something seriously wrong Self-poking Spoking This can be equal See if you look at the first and the last term You combine it You get only the even power terms From there you can It's not too bad So you can simplify if you like Okay but anyway This is a neat looking Identity that we have Just trying to see if there's a quick way of seeing this result Is this correct? Does it seem correct? But 3-1 code is it self-tool? It is self-tool, no? It comes out to this Okay, I think I've had the expression all wrong I need a 14 This has to work out Maybe there's a smart way of seeing it But Yeah I think it's just It's interesting This would be correct So So Any other code I'm just trying to see if there's some other code which is Very neat and I think it's okay I think it's just Okay Sorry I don't know What it's What it's What it's What angles What angles Yeah I mean So I mean It's asking me some question about How the polynomial behaves when X and Y is rotated You're viewing the X plus Y, X minus Y as a rotation Okay So Yeah I mean there's also this I think you know to be careful about these things Yeah these polynomials have that property If you rotate, keep rotating further and further Only for the self-tool course Not always If you keep rotating further and further You keep doing the same thing over and over What angles? Any other angle you put You won't get this But there could be polynomials which satisfy Other angles also I don't know I think there is Yeah I think there are Higher degree Okay so I think at this point in the course We have to decide what we want to do There are about 8 lectures left I think And then I think the last 2-3 classes I want to do problems And maybe give you one more assignment Also So that's there and we have Some 5-6 lectures left And we have to kind of Make up our mind as to what to do Okay So Now I'll stop there according to now This is not there and then we can talk about What we can do Okay