Loading [MathJax]/jax/output/HTML-CSS/fonts/TeX/fontdata.js

Difference between revisions of "Aufgaben:Exercise 4.11: Analysis of Parity-check Matrices"

From LNTwww
 
(23 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{quiz-Header|Buchseite=Kanalcodierung/Grundlegendes zu den Low–density Parity–check Codes}}
+
{{quiz-Header|Buchseite=Channel_Coding/The_Basics_of_Low-Density_Parity_Check_Codes}}
  
[[File:P_ID3067__KC_A_4_11_v2.png|right|frame|Produktcode und dessen Beschreibung durch die Prüfmatrix]]
+
[[File:EN_KC_A_4_11_v2.png|right|frame|Product code described by the parity-check matrix  H]]
In nebenstehender Grafik ist oben ein Produktcode angegeben, der durch folgende Prüfgleichungen gekennzeichnet ist:
+
In the adjacent graphic,  a product code is indicated at the top,  which is characterized by the following parity-check equations:
:$$p_1 \hspace{-0.15cm} \ = \ \hspace{-0.15cm} u_1 \oplus u_2\hspace{0.05cm},\hspace{0.3cm}
+
:$$p_1 \hspace{-0.15cm} \ = \ \hspace{-0.15cm} u_1 \oplus u_2\hspace{0.05cm},$$
p_2 = u_3 \oplus u_4\hspace{0.05cm},$$
+
:$$p_2 = u_3 \oplus u_4\hspace{0.05cm},$$
:$$p_3 \hspace{-0.15cm} \ = \ \hspace{-0.15cm} u_1 \oplus u_3\hspace{0.05cm},\hspace{0.3cm}
+
:$$p_3 \hspace{-0.15cm} \ = \ \hspace{-0.15cm} u_1 \oplus u_3\hspace{0.05cm},$$
p_4 = u_2 \oplus u_4\hspace{0.05cm}.$$
+
:$$p_4 = u_2 \oplus u_4\hspace{0.05cm}.$$
  
Darunter sind die Prüfmatrizen H1, H2 und H3 angegeben. Zu prüfen ist, welche der Matrizen den gegebenen Produktcode entsprechend der Gleichung x_=u_HT richtig beschreiben, wenn von folgenden Definitionen ausgegangen wird:
+
Below are given the check matrices  H1, H2  and  H3.  To be checked:  Which of the matrices correctly describe the given product code according to the equation  x_=u_HT  assuming the following definitions:  
* dem Codewort x_=(u1,u2,u3,u4,p1,p2,p3,p4),
+
* the code word  x_=(u1,u2,u3,u4,p1,p2,p3,p4),
* dem Codewort x_=(u1,p1,u2,p2,u3,p3,u4,p4).
 
  
 +
* the code word  x_=(u1,p1,u2,p2,u3,p3,u4,p4).
  
Alle H&ndash;Matrizen beinhalten weniger Einsen als Nullen. Dies ist ein Kennzeichen der so genannten <i>Low&ndash;density Parity&ndash;check Codes</i> (kurz: LDPC&ndash;Codes). Bei den praxisrelevanten LDPC&ndash;Codes ist der Einsen&ndash;Anteil allerdings noch geringer als bei diesen Beispielen.
 
  
Weiterhin ist für die Aufgabe anzumerken:
+
All&nbsp; H&nbsp; matrices contain fewer&nbsp; "ones"&nbsp; than&nbsp; "zeros".&nbsp; This is a characteristic of the so-called&nbsp; "low&ndash;density parity&ndash;check codes"&nbsp; (short: &nbsp;LDPC codes).&nbsp; In the case of LDPC codes relevant to practice,&nbsp; however,&nbsp; the share of&nbsp; "ones"&nbsp; is still significantly lower than in these examples.
* Ein (n, k)&ndash;Blockcode ist systematisch, wenn die ersten $k \ \rm Bit$ des Codewortes das Informationswort u_ beinhaltet. Mit der Codewortdefinition x_=(u1,u2,u3,u4,p1,p2,p3,p4) muss dann die Prüfmatrix H mit einer k &times k&ndash;Diagonalmatrix enden.
+
 
* Ein <i>regulärer Code</i> (hinsichtlich LDPC&ndash;Anwendung) liegt vor, wenn das Hamming&ndash;Gewicht aller Zeilen &nbsp;&#8658;&nbsp; $w_{\rm Z}$ und das Hamming&ndash;Gewicht aller Spalten &nbsp;&#8658;&nbsp; $w_{\rm S}$ jeweils gleich ist. Andernfalls spricht man von einem <i>irregulären LDPC&ndash;Code</i>.
+
Furthermore, note for the exercise:
* Die Prüfmatrix H eines herkömmlichen linearen (n, k)&ndash;Blockcodes besteht aus exakt m=nk Zeilen und n Spalten. Bei den LDPC&ndash;Codes lautet dagegen die Forderung: m &#8805; n - k. Das Gleichheitszeichen trifft dann zu, wenn die m Prüfgleichungen statistisch unabhängig sind.
+
* An&nbsp; (n, k)&nbsp; $\underline{x} = \underline{u} \cdot \mathbf{H}^{\rm T}&nbsp; block code is systematic if the first&nbsp;k&nbsp; bits of the code word&nbsp;\underline{x}$&nbsp; contains the information word&nbsp; u_.&nbsp; With the code word&nbsp; x_=(u1,u2,u3,u4,p1,p2,p3,p4)&nbsp; the parity-check matrix&nbsp; H&nbsp; must then end with a&nbsp; k &times k diagonal matrix.
* Aus der Prüfmatrix H lässt sich eine untere Schranke für die Coderate R angeben:
+
 
:$$R \ge 1 - \frac{{\rm E}[w_{\rm S}]}{{\rm E}[w_{\rm Z}]}
+
* A&nbsp; "regular code"&nbsp; $($with respect to the LDPC application)&nbsp; exists,&nbsp; if the Hamming weight of all rows &nbsp; &#8658; &nbsp; $w_{\rm R}$ and the Hamming weight of all columns &nbsp; &#8658; &nbsp; $w_{\rm C}$ are equal in each case.&nbsp; Otherwise,&nbsp; one speaks of an&nbsp; "irregular LDPC code".
\hspace{0.5cm}{\rm mit}\hspace{0.5cm}
+
 
{\rm E}[w_{\rm S}] =\frac{1}{n} \cdot  \sum_{i = 1}^{n}w_{\rm S}(i)
+
* The parity-check matrix&nbsp; H&nbsp; of a conventional linear&nbsp; (n, k)&nbsp; block code consists of exactly&nbsp; m=nk&nbsp; rows and&nbsp; n&nbsp; columns.&nbsp; For LDPC codes,&nbsp;  the requirement is &nbsp; m &#8805; n - k.&nbsp; The equal sign is true if the&nbsp; m&nbsp; parity-check equations are statistically independent.
\hspace{0.5cm}{\rm und}\hspace{0.5cm}
+
 
{\rm E}[w_{\rm Z}] =\frac{1}{m} \cdot  \sum_{j = 1}^{ m}w_{\rm Z}(j)
+
* From the parity-check matrix&nbsp; H&nbsp; a lower bound for the code rate&nbsp; R&nbsp; can be given:
 +
:$$R \ge 1 - \frac{{\rm E}[w_{\rm C}]}{{\rm E}[w_{\rm R}]}
 +
\hspace{0.5cm}{\rm with}\hspace{0.5cm}
 +
{\rm E}[w_{\rm C}] =\frac{1}{n} \cdot  \sum_{i = 1}^{n}w_{\rm C}(i)
 +
\hspace{0.5cm}{\rm and}\hspace{0.5cm}
 +
{\rm E}[w_{\rm R}] =\frac{1}{m} \cdot  \sum_{j = 1}^{ m}w_{\rm R}(j)
 
\hspace{0.05cm}.$$
 
\hspace{0.05cm}.$$
  
# Diese Gleichung gilt für reguläre und irreguläre LDPC&ndash;Codes gleichermaßen, wobei den regulären Codes ${\rm E}[w_{\rm S}] = w_{\rm S}$ und ${\rm E}[w_{\rm Z}] = w_{\rm Z}$ berücksichtigt werden kann.
+
*This equation applies equally to regular and irregular LDPC codes,&nbsp; where for regular codes holds&nbsp; ${\rm E}[w_{\rm C}] = w_{\rm C}$&nbsp; and&nbsp; ${\rm E}[w_{\rm R}] = w_{\rm R}$.
 +
 
 +
 
 +
 
 +
 
 +
 
 +
<u>Hints:</u>
 +
* This exercise belongs to the chapter&nbsp; [[Channel_Coding/The_Basics_of_Low-Density_Parity_Check_Codes|"Basics of the Low&ndash;density Parity&ndash;check codes"]].
  
 +
* Reference is made in particular to the page&nbsp; [[Channel_Coding/The_Basics_of_Low-Density_Parity_Check_Codes#Some_characteristics_of_LDPC_codes|"Some characteristics of LDPC codes"]].
  
''Hinweis:''
 
* Die Aufgabe gehört zum Kapitel [[Kanalcodierung/Grundlegendes_zu_den_Low%E2%80%93density_Parity%E2%80%93check_Codes| Grundlegendes zu den Low&ndash;density Parity&ndash;check]]
 
  
  
===Fragebogen===
+
===Questions===
 
<quiz display=simple>
 
<quiz display=simple>
{Welche Prüfmatrix beschreibt den vorgegebenen Produktcode (obere Skizze)?
+
{Which parity-check matrix describes the given product code according to the sketch above?
 
|type="[]"}
 
|type="[]"}
+ H1 unter der Voraussetzung $\underline{x} = (u_1, \, u_2, \, u_3, \, u_4, \, p_1, \, p_2, \, p_3, \, p_4}$.
+
+ H1&nbsp; given&nbsp; $\underline{x} = (u_1, \, u_2, \, u_3, \, u_4, \, p_1, \, p_2, \, p_3, \, p_4)$.
- H1 unter der Voraussetzung x_=(u1,p1,u2,p2,u3,p3,u4,p4).
+
- H1&nbsp; given&nbsp; x_=(u1,p1,u2,p2,u3,p3,u4,p4).
+ H2 unter der Voraussetzung x_=(u1,p1,u2,p2,u3,p3,u4,p4).
+
+ H2&nbsp; given&nbsp; x_=(u1,p1,u2,p2,u3,p3,u4,p4).
- H3 unter der Voraussetzung x_=(u1,p1,\u2,p2,u3,p3,u4,p4).
+
- H3&nbsp; given&nbsp; $\underline{x} = (u_1, \, p_1, \, u_2, \, p_2, \, u_3, \, p_3, \, u_4, \, p_4)$.
  
{Für die restlichen Teilaufgaben soll stets von x_=(u1,u2,u3,u4,p1,p2,p3,p4) ausgegangen werden. Welche Aussagen gelten für die Prüfmatrix H1?
+
{For the remaining subtasks we shall always assume&nbsp; x_=(u1,u2,u3,u4,p1,p2,p3,p4). <br>Which statements are valid for the parity-check matrix&nbsp; H1?
 
|type="[]"}
 
|type="[]"}
+ Der Code ist systematisch.
+
+ The code is systematic.
- Der Code ist regulär
+
- The code is regular.
- Für die Coderate gilt R>1/2.
+
- For the code rate holds&nbsp; R>1/2.
+ Für die Coderate gilt R=1/2.
+
+ For the code rate holds&nbsp; R=1/2.
  
{Welche Aussagen gelten für die Prüfmatrix H3?
+
{What statements hold for the parity-check matrix&nbsp; H3?
 
|type="[]"}
 
|type="[]"}
- Es ist kein Zusammenhang zwischen H1 und H3 erkennbar.
+
- No relation between&nbsp; H1&nbsp; and&nbsp; H3&nbsp; is discernible.
+ H3&ndash;Zeilen sind Linearkombinationen von je zwei H1&ndash;Zeilen.
+
+ The&nbsp; H3&nbsp; rows are linear combinations of two&nbsp; H1&nbsp; rows each.
+ Die vier Prüfgleichungen gemäß H3 sind linear unabhängig.
+
+ The four parity-check equations according to&nbsp; H3&nbsp; are linearly independent.
  
{Welche Aussagen gelten für den durch H3 gekennzeichneten Code?
+
{Which statements apply to the code denoted by&nbsp; H3&nbsp;?
 
|type="[]"}
 
|type="[]"}
- Der Code ist systematisch.
+
- The code is systematic.
+ Der Code ist regulär.
+
+ The code is regular.
+ Für die Coderate gilt R &#8805; 1/2.
+
+ For the code rate holds&nbsp; R &#8805; 1/2.
+ Die Coderate ist R=1/2.
+
+ For the code rate holds&nbsp; R=1/2.
 
</quiz>
 
</quiz>
  
===Musterlösung===
+
===Solution===
 
{{ML-Kopf}}
 
{{ML-Kopf}}
'''(1)'''&nbsp;  
+
'''(1)'''&nbsp; Correct are the&nbsp; <u>solutions 1 and 3</u>:
'''(2)'''&nbsp;  
+
*With the code word definition &nbsp; x_=(u1,u2,u3,u4,p1,p2,p3,p4),&nbsp; the parity-check matrix&nbsp; H1&nbsp; denotes the following check equations:
'''(3)'''&nbsp;  
+
:$$u_1 \oplus u_2 \oplus p_1 = 0\hspace{0.05cm},\hspace{0.3cm}
'''(4)'''&nbsp;  
+
u_3 \oplus u_4 \oplus p_2 = 0\hspace{0.05cm},\hspace{0.3cm}
'''(5)'''&nbsp;  
+
u_1 \oplus u_3 \oplus p_3 = 0\hspace{0.05cm},\hspace{0.3cm}
 +
u_2 \oplus u_4 \oplus p_4 = 0\hspace{0.05cm}.$$
 +
*This corresponds exactly to the assumptions made above.
 +
 
 +
*The same result is obtained for&nbsp; H2&nbsp; and the code word definition &nbsp;  x_=(u1,p1,u2,p2,u3,p3,u4,p4).
 +
 
 +
 
 +
With the same code word definition x_=(u1,p1,u2,p2,u3,p3,u4,p4) the other parity-check matrices do not yield a meaningful set of equations:
 +
* According to parity-check matrix H1:
 +
:$$u_1 \oplus p_1 \oplus u_3 = 0\hspace{0.05cm},\hspace{0.3cm}
 +
u_2 \oplus p_2 \oplus p_3 = 0\hspace{0.05cm},\hspace{0.3cm}
 +
u_1 \oplus u_2 \oplus u_4 = 0\hspace{0.05cm},\hspace{0.3cm}
 +
p_1 \oplus p_2 \oplus p_4 = 0\hspace{0.05cm};$$
 +
* corresponding to parity-check matrix H3:
 +
:$$u_1 \hspace{-0.12cm}\oplus\hspace{-0.06cm} p_2 \hspace{-0.12cm}\oplus\hspace{-0.06cm} u_3  \hspace{-0.12cm}\oplus\hspace{-0.06cm} p_4 \hspace{-0.05cm} = \hspace{-0.05cm} 0\hspace{0.05cm},\hspace{0.15cm}
 +
u_1 \hspace{-0.12cm}\oplus\hspace{-0.06cm} p_2  \hspace{-0.12cm}\oplus\hspace{-0.06cm} p_3  \hspace{-0.12cm}\oplus\hspace{-0.06cm}u_4  \hspace{-0.05cm} = \hspace{-0.05cm}  0\hspace{0.05cm},\hspace{0.15cm}
 +
p_1  \hspace{-0.12cm}\oplus\hspace{-0.06cm} u_2  \hspace{-0.12cm}\oplus\hspace{-0.06cm} u_3  \hspace{-0.12cm}\oplus\hspace{-0.06cm}u_4  \hspace{-0.05cm} = \hspace{-0.05cm}  0\hspace{0.05cm},\hspace{0.15cm}
 +
p_1 \hspace{-0.12cm}\oplus\hspace{-0.06cm} u_2 \hspace{-0.12cm}\oplus\hspace{-0.06cm} p_3  \hspace{-0.12cm}\oplus\hspace{-0.06cm} p_4  \hspace{-0.05cm} = \hspace{-0.05cm}  0\hspace{0.05cm}.$$
 +
 
 +
 
 +
'''(2)'''&nbsp; Correct are the&nbsp; <u>proposed solutions 1 and 4</u>:
 +
* The code is systematic because&nbsp; H1 &nbsp;ends with a&nbsp; 4 &times 4&nbsp; diagonal matrix.
 +
 
 +
*For a regular (LDPC) code,&nbsp; there should be an equal number of&nbsp; "ones"&nbsp; in each row and in each column.
 +
 
 +
*The first condition is satisfied&nbsp; (wR=3),&nbsp; but not the second.&nbsp; Rather,&nbsp; there is&nbsp; (equally often)&nbsp; one&nbsp; "one"&nbsp; or two&nbsp; "ones"&nbsp; per column &nbsp; &#8658; &nbsp; E[wC]=1.5.
 +
 
 +
* For an irregular code,&nbsp; the lower bound for the code rate is:
 +
:$$R \ge 1 - \frac{{\rm E}[w_{\rm C}]}{{\rm E}[w_{\rm R}]}
 +
= 1 - \frac{1.5}{3} = 1/2
 +
\hspace{0.05cm}.$$
 +
 
 +
* Because of the given code structure&nbsp; (k=4&nbsp; information bits,&nbsp; m=4&nbsp; check bits &nbsp; &#8658; &nbsp; n=8&nbsp; encoded bits)&nbsp; the code rate can also be given in the conventional form:&nbsp; R=k/n &nbsp; &#8658; &nbsp; Correct is solution 4 in contrast to answer 3.
 +
 
 +
 
 +
 
 +
'''(3)'''&nbsp; The&nbsp; H3&nbsp; rows result from linear combinations of&nbsp; H1&nbsp; rows:
 +
* The first&nbsp; H3&nbsp; row is the sum of row 1 and row 4.
 +
 
 +
* The second&nbsp; H3&nbsp; row is the sum of row 2 and row 3.
 +
 
 +
* The third&nbsp; H3&nbsp; row is the sum of row 1 and row 3.
 +
 
 +
* The fourth&nbsp; H3&nbsp; row is the sum of row 2 and row 4.
 +
 
 +
 
 +
By linear combinations,&nbsp; the four linearly independent equations with respect&nbsp; to H1&nbsp; now become four linearly independent equations with respect to&nbsp; H3 &nbsp; <br>&#8658; &nbsp;  Therefore,&nbsp; the&nbsp; <u>proposed solutions 2 and 3</u>&nbsp; are correct.
 +
 
 +
 
 +
'''(4)'''&nbsp; Here,&nbsp; <u>solutions 2, 3, and 4</u>&nbsp; are correct:
 +
* If the code described by&nbsp; H3&nbsp; were systematic,&nbsp; H3&nbsp; should end with a&nbsp; 4 &times 4&nbsp; diagonal matrix.&nbsp; This is not the case here.
 +
 
 +
* The Hamming weights of all rows are equal&nbsp; (wR=4)&nbsp; and also all columns each have the same Hamming weight&nbsp; $(w_{\rm C} = 2)$ &nbsp; &#8658; &nbsp; the code is regular.
 +
 
 +
* This gives&nbsp; R &#8805; 1 - 2/4 = 1/2&nbsp; for the code rate.&nbsp;
 +
 
 +
*But since the four rows of&nbsp; H3&nbsp; also describe four independent equations,&nbsp; the equal sign &nbsp; &#8658; &nbsp; R=1/2&nbsp; also holds.
 
{{ML-Fuß}}
 
{{ML-Fuß}}
  
Line 76: Line 142:
  
  
[[Category:Aufgaben zu  Kanalcodierung|^4.4 Grundlegendes zu den Low–density Parity–check Codes^]]
+
[[Category:Channel Coding: Exercises|^4.4 Low–density Parity–check Codes^]]

Latest revision as of 18:20, 19 December 2022

Product code described by the parity-check matrix  H

In the adjacent graphic,  a product code is indicated at the top,  which is characterized by the following parity-check equations:

p1 = u1u2,
p2=u3u4,
p3 = u1u3,
p4=u2u4.

Below are given the check matrices  H1, H2  and  H3.  To be checked:  Which of the matrices correctly describe the given product code according to the equation  x_=u_HT  assuming the following definitions:

  • the code word  x_=(u1,u2,u3,u4,p1,p2,p3,p4),
  • the code word  x_=(u1,p1,u2,p2,u3,p3,u4,p4).


All  H  matrices contain fewer  "ones"  than  "zeros".  This is a characteristic of the so-called  "low–density parity–check codes"  (short:  LDPC codes).  In the case of LDPC codes relevant to practice,  however,  the share of  "ones"  is still significantly lower than in these examples.

Furthermore, note for the exercise:

  • An  (n, k)  x_=u_HT  block code is systematic if the first  k  bits of the code word  x_  contains the information word  u_.  With the code word  x_=(u1,u2,u3,u4,p1,p2,p3,p4)  the parity-check matrix  H  must then end with a  k×k diagonal matrix.
  • A  "regular code"  (with respect to the LDPC application)  exists,  if the Hamming weight of all rows   ⇒   wR and the Hamming weight of all columns   ⇒   wC are equal in each case.  Otherwise,  one speaks of an  "irregular LDPC code".
  • The parity-check matrix  H  of a conventional linear  (n, k)  block code consists of exactly  m=nk  rows and  n  columns.  For LDPC codes,  the requirement is   mnk.  The equal sign is true if the  m  parity-check equations are statistically independent.
  • From the parity-check matrix  H  a lower bound for the code rate  R  can be given:
R1E[wC]E[wR]withE[wC]=1nni=1wC(i)andE[wR]=1mmj=1wR(j).
  • This equation applies equally to regular and irregular LDPC codes,  where for regular codes holds  E[wC]=wC  and  E[wR]=wR.



Hints:


Questions

1

Which parity-check matrix describes the given product code according to the sketch above?

H1  given  x_=(u1,u2,u3,u4,p1,p2,p3,p4).
H1  given  x_=(u1,p1,u2,p2,u3,p3,u4,p4).
H2  given  x_=(u1,p1,u2,p2,u3,p3,u4,p4).
H3  given  x_=(u1,p1,u2,p2,u3,p3,u4,p4).

2

For the remaining subtasks we shall always assume  x_=(u1,u2,u3,u4,p1,p2,p3,p4).
Which statements are valid for the parity-check matrix  H1?

The code is systematic.
The code is regular.
For the code rate holds  R>1/2.
For the code rate holds  R=1/2.

3

What statements hold for the parity-check matrix  H3?

No relation between  H1  and  H3  is discernible.
The  H3  rows are linear combinations of two  H1  rows each.
The four parity-check equations according to  H3  are linearly independent.

4

Which statements apply to the code denoted by  H3 ?

The code is systematic.
The code is regular.
For the code rate holds  R1/2.
For the code rate holds  R=1/2.


Solution

(1)  Correct are the  solutions 1 and 3:

  • With the code word definition   x_=(u1,u2,u3,u4,p1,p2,p3,p4),  the parity-check matrix  H1  denotes the following check equations:
u1u2p1=0,u3u4p2=0,u1u3p3=0,u2u4p4=0.
  • This corresponds exactly to the assumptions made above.
  • The same result is obtained for  H2  and the code word definition   x_=(u1,p1,u2,p2,u3,p3,u4,p4).


With the same code word definition x_=(u1,p1,u2,p2,u3,p3,u4,p4) the other parity-check matrices do not yield a meaningful set of equations:

  • According to parity-check matrix H1:
u1p1u3=0,u2p2p3=0,u1u2u4=0,p1p2p4=0;
  • corresponding to parity-check matrix H3:
u1p2u3p4=0,u1p2p3u4=0,p1u2u3u4=0,p1u2p3p4=0.


(2)  Correct are the  proposed solutions 1 and 4:

  • The code is systematic because  H1  ends with a  4×4  diagonal matrix.
  • For a regular (LDPC) code,  there should be an equal number of  "ones"  in each row and in each column.
  • The first condition is satisfied  (wR=3),  but not the second.  Rather,  there is  (equally often)  one  "one"  or two  "ones"  per column   ⇒   E[wC]=1.5.
  • For an irregular code,  the lower bound for the code rate is:
R1E[wC]E[wR]=11.53=1/2.
  • Because of the given code structure  (k=4  information bits,  m=4  check bits   ⇒   n=8  encoded bits)  the code rate can also be given in the conventional form:  R=k/n   ⇒   Correct is solution 4 in contrast to answer 3.


(3)  The  H3  rows result from linear combinations of  H1  rows:

  • The first  H3  row is the sum of row 1 and row 4.
  • The second  H3  row is the sum of row 2 and row 3.
  • The third  H3  row is the sum of row 1 and row 3.
  • The fourth  H3  row is the sum of row 2 and row 4.


By linear combinations,  the four linearly independent equations with respect  to H1  now become four linearly independent equations with respect to  H3  
⇒   Therefore,  the  proposed solutions 2 and 3  are correct.


(4)  Here,  solutions 2, 3, and 4  are correct:

  • If the code described by  H3  were systematic,  H3  should end with a  4×4  diagonal matrix.  This is not the case here.
  • The Hamming weights of all rows are equal  (wR=4)  and also all columns each have the same Hamming weight  (wC=2)   ⇒   the code is regular.
  • This gives  R12/4=1/2  for the code rate. 
  • But since the four rows of  H3  also describe four independent equations,  the equal sign   ⇒   R=1/2  also holds.