Parity check matrix for binary linear code

abstract-algebracoding-theorylinear algebra

Let $G = \left( \matrix{ 1 \ 0 \ 1 \ 0 \ 1 \ 1 \\ 0 \ 1 \ 1 \ 1 \ 1 \ 0 \\ 0 \ 0 \ 0 \ 1 \ 1 \ 1 } \right)$ be a generator matrix for a $[6,3]$ binary linear code, C.

How can I find a parity check matrix for C?

I know that first, one has to find a row reduced echelon generator matrix for C. But how to continue?

Best Answer

Well, one way to achieve this is to bring the generator matrix to standard form $(I\mid A)$, where $I$ is the identity matrix.

Starting with the matrix $G$, permute the columns 3 and 4 (technically you then consider an equivalent code) and then bring the first three columns to the identity matrix: $$G' = \left(\begin{array}{llllll} 1 & 0 & 0 & 1 & 1 & 1\\ 0 & 1 & 0 & 1 & 0 & 1 \\ 0 & 0 & 1 & 0 & 1 & 1 \end{array}\right).$$ The partity check matrix is then $H' = (-A^t\mid I)$. By swapping the columns 3 and 4 you are back in your original code.