ntechnical language, you look at what you've got, you correct errors as best you can (if there are any), and then you decide on what 3-bit input was sent. So, for example, let's say you pick up at the decoder (111101). In that case, looking over at Figure 6.10, you see that this simply isn't one of the eight possible channel coder outputs. An error must have happened somewhere along the way. So you ask: which of the eight channel coder outputs of Figure 6.10 is closest to (111101)? In looking at all Channel Coding and Decoding: Part 1-Block Coding and Decoding the eight possible coder outputs, you decide that the closest one is (011101), because this differs from the received 6-bit set by only one bit. This is error correction, because, as best you can, you've corrected the channel error. Now, with the error corrected, and (011101) in hand, you use the look-up table of Figure 6.10 and decide that (1 01) was input to the coder, SO you output (101). The channel coder does exactly as described above. Only, being a thing rather than a person, it doesn't have common sense to refer to, SO it must be given some mathematical rules that allow it to work as if it demonstrated common sense. Here are details on how we can get the channel decoder to work in a manner that allows simple implementation. For starters, we have to introduce some mathematical terms. The first term is called the parity check matrix, H, and it works like this: if you give me a channel coder that has a generator matrix G, then the parity check matrix H is defined as the matrix that satisfies the equation: (6.9) where o refers to the all-zeros matrix. In other words, H is the matrix that when multiplied by G produces zip, zero, nada. For example, for the generator matrix of Equation (6.7), the corresponding parity check matrix is simply (6.10) which, for the example of G in Equation (6.2), means (6.11) You can check this out yourself by simply multiplying the G H, because when you'll do this you'll get 0, as prophesied. If you lack common sense, as a ch