 Hello everyone, welcome to lecture on Introduction to Linear Block Codes. At the end of this session, students will be able to identify one type of forward error correction and also able to calculate code words for different linear block codes. Now before starting with the actual session, let's pause the video and think about what is an error control coding. It means that while transmitting a data from sender to receiver side, some extra bits or you can say that redundancy bits are added to the data and at the receiver side it allows to detect and correct the error occurred during the transmission in the data boards. Now what is a mean back forward error correction? As I said, while transmitting a data, some extra bits are added to the data. So that bits are called as redundant bits. So because of this, this allows at the receiver side to detect the errors and correct it by itself by the receiver end. So there is no need of retransmission of the data from the sender side. So because of this, your receiver is capable to recover the data from the error. So because of that extra redundancy bits. So there are some different categories of forward error correction code. Likewise, block codes, cyclic codes, convolutional codes, real Solomon codes and turbo codes. So from that, today we are going to see the what is mean by block codes. So first let's see what is a linear block codes. Linear block codes means that there are data information is divided into different blocks of length k bits means if you are having lots of data. So it is not possible to transmit the continuous data. So in this one, we transmit the data in different blocks, which is having a size of k bits. So that is called as a data words. These data words is then coded into the block of length n bits that is called as a code words means whatever the blocks you generated of size k bits, these are the encoded and you are getting the code word, which is having a size of a length n bits. So where you can say that the n is always greater than k. So n equals to k plus r that r is nothing but the additional extra bits you added into your data word, which is also called as a redundancy bits or you can say that these are the nothing but the parity bits, which is used to check the error and correct it at the receiver side by the receiver itself. So there are some vector notations are used in the linear block codes, likes for data words m equals to nothing but the in the row format row vector m1 m2 up to k bits that is mk and for the code word is similar to in the row vector format that is nothing but the u up to u1 u2 up to un because we are having a code word of length n. Now figure one shows the linear representation of linear block codes. So you can see there is a input which is having a message or you can say data word of size k bits, center block is nothing but the channel encoder which encode your data word into the code word which is of having a size of n bits so output of the encoder is nothing but the coded message which is having a size of n bits. So from this you can say that we have a 2 raise to k distinct messages and also we are having a 2 raise to n distinct code words. So you can say that you are having a one set of code word of 2 raise to n so from that you are having a subset of 2 raise to k which is a unique one. So you can say that there is always one unique code word is assigned to the each data word. So that code rate is nothing but equals to k by n because we are having a complete space is of 2 raise to n and for that you are having a subset of 2 raise to k so code rate is equals to k raise to n. Now previously we seen that we are generating a code word for single data word. So there is always possibilities that you are having a different blocks and number of blocks. So for each data word block you have to generate a code word so that can be represented in the matrix form. So that code matrix is can be generated by multiplying your data matrix with generator matrix. So what is a generator matrix that we are going to see in the next session. So first let us see what is mean by matrix code matrix and data matrix. So u equals to m into g from that u is nothing but your code matrix in which you are having different code vectors like we previously saw the code vectors which is in the form of row vector u 1 u 2 up to u n. So u equals to m into g m is nothing but your data matrix like we already seen for the data word there is a row vector m 1 m 2 up to m k into multiply with the g that is nothing but the generator matrix. So let us see example for example you are having a linear block code of 7 comma 4. So from that 7 is nothing but your n which is having a length of code word and 4 is nothing but the k which is nothing but the length of your data word. So total data word possible in this linear block code is nothing but 2 raise to 4 which is nothing but the 16. So code rate for this is you already seen the formula k by n which is nothing but the 4 by 7. Now let us see the actual example. So the generator matrix for a 6 comma 3 block code is given below. So this is a generator matrix which is having 3 rows and 6 columns. Find out all code words for this code. Now you have to find out the code word for this generator matrix. You are going to find the code word for data words. So you first need to find how many data words possible for this block code. So here you can see that there are n equals to 6 and k equals to 3. So from this always the format is n comma k. So n is 6 and k is 3. So likewise we have data words possibilities that 2 raise to k. 2 raise to k equals to what 8. So there are 8 data words possible. So these are the data words starting from 0 0 0 to 1 1 1. So 2 raise to 8 is total 1 2 3 4 5 6 7 8 data words are there. Now we have data words. So for these data words we are going to find the code words by using this generator matrix. So let us go by 1. We know that we already have formula code matrix equals to data matrix into generator matrix. This is in the matrix form. Now let us go vector form. So for row vector 1 that is u 1 that is code vector 1 is obtained by multiplying data vector 1 into generator matrix. So let us take a first row vector of a data matrix. This is a data matrix. From that we taken a first row vector which is having values m 1 m 2 m 3 that is 0 0 0 is multiplied with generator matrix. We already a generator max matrix is given. So this row is multiplied with this generator matrix. Now we know the multiplication of matrix row and matrix. This row is multiplied with this column. Again this row is multiplied with this column. Again this row multiplied with this column. Likewise we have to multiply this row for every column of this generator matrix. So from this multiplication we can see 0 into this 0 1 plus this 0 into 0 plus this 0 into 0. So total you are getting is how much this is a 0. Similarly for second column first this row and second column is multiplied. So 0 into 0 plus this 0 multiplied with this 1 plus this 0 is multiplied with this 0. So total you are getting is 0. Similarly we are going to do for all the columns 3rd, 4th, 5th and 6th. Finally we are getting that u 1 equals to what? 0 0 0 0 0. Now this is a code word for message vector 1. This as I said every data word having a unique code word. So this code word is for this data word. Similarly we are going to find the code word for this second data vector. So for this second data vector which is having value m 1 m 2 m 3 that is 0 0 1 is multiplied with this generator matrix. So from that multiplication 0 multiplied with this 1, 0 is multiplied with this 1, 1 is multiplied with this 0. So this total gives you 0. Again second column 0 multiplied with this 0 plus 0 multiplied with this 1 plus 1 multiplied with this 0. So total gives you 0. And the third column if you see 0 is multiplied with this 0 plus this 0 is multiplied with this 0 and 1 is multiplied with 1 equals to 1. So final code word for this u 2 is what? 0 0 1 1 1. So this is a code word which is for data vector this 0 0 1. Likewise you are going to find all the code words for all these 8 data words. So these are the 8 code words for 8 data words. Now let us take again one example which is having a block code of 7 comma 4 generator matrix is given. So this in this 7 is nothing but your n and 4 is nothing but k. So from that we have to first find out how many data words are possible in this one. So there are 2 raise to 4 equals to 16 data words are possible. And we know the procedure to find the code words by multiplying your data vector into generator matrix. From that you are going to find the code word for each data words. So these are the 16 possible data words. So for individual one you are going to find the code words. So these are the 16 code words. You can calculate that one and verify this one. These are the references. Thank you.