Aufgaben:Exercise 4.6: Product Code Generation: Difference between revisions

From LNTwww
Hussain (talk | contribs)
No edit summary
Fix interlanguage link: resolve redirect chain
 
(32 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{quiz-Header|Buchseite=Kanalcodierung/Grundlegendes zu den Produktcodes}}
{{quiz-Header|Buchseite=Channel_Coding/The_Basics_of_Product_Codes}}


[[File:P_ID3003__KC_A_4_6_v2.png|right|frame|Verwendete Komponentencodes]]
[[File:EN_KC_A_4_6.png|right|frame|Used component codes]]
Es soll ein Produktcode (42, 12) generiert werden, der auf folgenden Komponentencodes aufbaut:
A  $\rm product\:code \ (42, \ 12)$  shall be generated,  based on the following component codes:
* dem Hammingcode (7, 4, 3) $\Rightarrow C_1$,
* the Hamming code  $\rm HC \ (7, \ 4, \ 3)$  ⇒   $\mathcal{C}_1$,
* dem verkürzten Hamming–Code (6, 3, 3) $\Rightarrow C_2$.


* the truncated Hamming code $\rm HC \ (6, \ 3, \ 3)$   ⇒   $\mathcal{C}_2$.


Die entsprechenden Codetabellen sind rechts angegeben, wobei jeweils drei Zeilen unvollständig sind. Diese sollen von Ihnen ergänzt werden.


Das zu einem Informationsblock $\underline{u}$ gehörige Codewort ergibt sich allgemein entsprechend der Gleichung $\underline{x} = \underline{u} \cdot \mathbf{G}$. Wie auch in der [[Aufgabe Z4.6]] wird hier von folgenden Generatormatrizen ausgegangen:
Corresponding code tables are given on the right,  with three rows incomplete in each case.  These are to be completed by you.
:$${ \boldsymbol{\rm G}}_1
=  \begin{pmatrix}
1 &0 &0 &0 &1 &0 &1 \\
0 &1 &0 &0 &1 &1 &0 \\
0 &0 &1 &0 &0 &1 &1 \\
0 &0 &0 &1 &1 &1 &1
\end{pmatrix} \hspace{0.05cm},$$
:$${ \boldsymbol{\rm G}}_2
=  \begin{pmatrix}
1 &0 &0 &1 &1 &0  \\
0 &1 &0 &1 &0 &1  \\
0 &0 &1 &0 &1 &1 
\end{pmatrix} \hspace{0.05cm}.$$


In der gesamten Aufgabe gelte für den Informationsblock:
The code word belonging to an information block  $\underline{u}$  generally results according to the equation 
:$${ \boldsymbol{\rm U}}  
:$$\underline{x} = \underline{u} \cdot \mathbf{G}.$$
=  \begin{pmatrix}
As in  [[Aufgaben:Aufgabe_4.6Z:_Grundlagen_der_Produktcodes|$\text{Exercise 4.6Z}$]],  the following generator matrices are assumed here:
0 &1 &1 &0  \\
:$${ \boldsymbol{\rm G}}_1=  \begin{pmatrix}1 &0 &0 &0 &1 &0 &1 \\0 &1 &0 &0 &1 &1 &0 \\0 &0 &1 &0 &0 &1 &1 \\0 &0 &0 &1 &1 &1 &1\end{pmatrix} \hspace{0.05cm},\hspace{0.8cm}{ \boldsymbol{\rm G}}_2=  \begin{pmatrix}1 &0 &0 &1 &1 &0  \\0 &1 &0 &1 &0 &1  \\0 &0 &1 &0 &1 &1\end{pmatrix} \hspace{0.05cm}.$$Throughout the exercise,  apply to the information block::$${ \boldsymbol{\rm U}}=  \begin{pmatrix}0 &1 &1 &0  \\0 &0 &0 &0  \\1 &1 &1 &0\end{pmatrix} \hspace{0.05cm}.$$
0 &0 &0 &0  \\
1 &1 &1 &0  
\end{pmatrix} \hspace{0.05cm}.$$


Gesucht sind entsprechend der Nomenklatur auf der [[ersten Theorieseite]]:
Searched for according to the nomenclature in section  [[Channel_Coding/The_Basics_of_Product_Codes#Basic_structure_of_a_product_code|"Basic structure of a product code"]]:
* die Parity–Matrix $\mathbf{P}^{(1)}$ bezüglich des horizontalen Codes $C_1$,
* the parity-check matrix   $\mathbf{P}^{(1)}$   with respect to the horizontal code  $\mathcal{C}_1$,
* die Parity–Matrix $\mathbf{P}^{(2)}$ bezüglich des vertikalen Codes $C_2$,
* die Checks–on–Checks–Matrix $\mathbf{P}^{(12)}$.


* the parity-check matrix  $\mathbf{P}^{(2)}$  with respect to the vertical code  $\mathcal{C}_2$,


''Hinweis:
* the checks–on–checks matrix  $\mathbf{P}^{(12)}$.  
* Die Aufgabe gehört zum Kapitel [[Kanalcodierung/Grundlegendes_zu_den_Produktcodes| Grundlegendes zu den Produktcode]].






===Fragebogen===
 
 
<u>Hints:</u>
*This exercise belongs to the chapter&nbsp; [[Channel_Coding/The_Basics_of_Product_Codes|"Basics of Product Code"]].
 
*Reference is also  made to the section&nbsp; [[Channel_Coding/The_Basics_of_Product_Codes#Basic_structure_of_a_product_code|"Basic structure of a product code"]].
 
*The two component codes are also covered in the&nbsp; [[Aufgaben:Aufgabe_4.6Z:_Grundlagen_der_Produktcodes|$\text{Exercise 4.6Z}$]]&nbsp;.
 
 
 
 
 
===Questions===
<quiz display=simple>
<quiz display=simple>
{Welche Ergebnisse liefert die Zeilencodierung mit dem (7, 4, 3)&ndash;Code $C_1$?
{What are the results of row coding with the&nbsp; $(7, \ 4, \ 3)$ code&nbsp; $\mathcal{C}_1$?
|type="[]"}
|type="[]"}
+ Erste Zeile: $\underline{u} = (0, \, 1, \, 1, \, 0) \ \Rightarrow \ \underline{x} = (0, \, 1, \, 1, \, 0, \, 1, \, 0, \, 1)$.
+ 1. row: &nbsp; $\underline{u} = (0, \, 1, \, 1, \, 0) \ \Rightarrow \ \underline{x} = (0, \, 1, \, 1, \, 0, \, 1, \, 0, \, 1)$.
- Zweite Zeile: $\underline{u} = (0, \, 0, \, 0, \, 0) \ \Rightarrow \ \underline{x} = (1, \, 1, \, 1, \, 1, \, 1, \, 1, \, 1)$.
- 2. row: &nbsp; $\underline{u} = (0, \, 0, \, 0, \, 0) \ \Rightarrow \ \underline{x} = (1, \, 1, \, 1, \, 1, \, 1, \, 1, \, 1)$.
+ Dritte Zeile: $\underline{u} = (1, \, 1, \, 1, \, 0) \ \Rightarrow \ \underline{x} = (1, \, 1, \, 1, \, 0, \, 0, \, 0, \, 0)$.
+ 3. row: &nbsp; $\underline{u} = (1, \, 1, \, 1, \, 0) \ \Rightarrow \ \underline{x} = (1, \, 1, \, 1, \, 0, \, 0, \, 0, \, 0)$.


{Welche Ergebnisse liefert die Spaltencodierung mit dem (6, 3, 3)&ndash;Code $C_2$?
{What are the results of column coding with the&nbsp; $(6, \ 3, \ 3)$ code&nbsp; $\mathcal{C}_2$?
|type="[]"}
|type="[]"}
+ Erste Spalte: $\underline{u} = (0, \, 0, \, 1) \ \Rightarrow \ \underline{x} = (0, \, 0, \, 1, \, 0, \, 1, \, 1)$.
+ 1. column: &nbsp; $\underline{u} = (0, \, 0, \, 1) \ \Rightarrow \ \underline{x} = (0, \, 0, \, 1, \, 0, \, 1, \, 1)$.
+ Zweite Spalte: $\underline{u} = (1, \, 0, \, 1) \ \Rightarrow \ \underline{x} = (1, \, 0, \, 1, \, 1, \, 0, \, 1)$.
+ 2. column: &nbsp; $\underline{u} = (1, \, 0, \, 1) \ \Rightarrow \ \underline{x} = (1, \, 0, \, 1, \, 1, \, 0, \, 1)$.
- Dritte Spalte: $\underline{u} = (1, \, 0, \, 1) \ \Rightarrow \ \underline{x} = (1, \, 1, \, 0, \, 0, \, 1, \, 1)$.
- 3. column: &nbsp; $\underline{u} = (1, \, 0, \, 1) \ \Rightarrow \ \underline{x} = (1, \, 1, \, 0, \, 0, \, 1, \, 1)$.
+ Vierte Spalte: $\underline{u} = (0, \, 0, \, 0) \ \Rightarrow \ \underline{x} = (0, \, 0, \, 0, \, 0, \,0, \, 0)$.
+ 4. column: &nbsp; $\underline{u} = (0, \, 0, \, 0) \ \Rightarrow \ \underline{x} = (0, \, 0, \, 0, \, 0, \,0, \, 0)$.


{Welche Aussagen gelten für die Checks&ndash;on&ndash;Checks&ndash;Matrix?
{What statements apply to the checks&ndash;on&ndash;checks matrix?
|type="[]"}
|type="[]"}
+ Die erste Zeile lautet $(1, \, 0, \, 1)$ und die erste Spalte $(1, \, 1, \, 0)$.
+ The first row is&nbsp; $(1, \, 0, \, 1)$&nbsp; and the first column is&nbsp; $(1, \, 1, \, 0)$.
+ Die zweite Zeile lautet $(1, \, 0, \, 1)$ und die zweite Spalte $(0, \, 0, \, 0)$.
+ The second row is&nbsp; $(1, \, 0, \, 1)$&nbsp; and the second column is&nbsp; $(0, \, 0, \, 0)$.
- Die dritte Zeile lautet $(0, \, 0, \, 0)$ und die dritte Spalte $(0, \, 0, \, 0)$.
- The third row is&nbsp; $(0, \, 0, \, 0)$&nbsp; and the third column is&nbsp; $(0, \, 0, \, 0)$.
</quiz>
</quiz>


===Musterlösung===
===Solution===
{{ML-Kopf}}
{{ML-Kopf}}
'''(1)'''&nbsp; Richtig sind die <u>Lösungsvorschläge 1 und 3</u>:
'''(1)'''&nbsp; Correct are the&nbsp; <u>proposed solutions 1 and 3</u>:&nbsp; In general:&nbsp;
 
:$$\underline{x} = \underline{u} \cdot \mathbf{G}.$$
Allgemein gilt $\underline{x} = \underline{u} \cdot \mathbf{G}$. Daraus folgt für
From this follows for
* den ersten Zeilenvektor:
:* the first row vector:
:$$\begin{pmatrix}
:$$\begin{pmatrix}0 &1 &1 &0\end{pmatrix}  \cdot\begin{pmatrix}1 &0 &0 &0 &1 &0 &1 \\0 &1 &0 &0 &1 &1 &0 \\0 &0 &1 &0 &0 &1 &1 \\0 &0 &0 &1 &1 &1 &1\end{pmatrix}=\begin{pmatrix}0 &1 &1 &0 &1 &0 &1\end{pmatrix} \hspace{0.05cm},$$:* the second row vector::$$\begin{pmatrix}0 &0 &0 &0\end{pmatrix}  \cdot\begin{pmatrix}1 &0 &0 &0 &1 &0 &1 \\0 &1 &0 &0 &1 &1 &0 \\0 &0 &1 &0 &0 &1 &1 \\0 &0 &0 &1 &1 &1 &1\end{pmatrix}=\begin{pmatrix}0 &0 &0 &0 &0 &0 &0\end{pmatrix} \hspace{0.05cm},$$:* the third row vector::$$\begin{pmatrix}1 &1 &1 &0\end{pmatrix}  \cdot\begin{pmatrix}1 &0 &0 &0 &1 &0 &1 \\0 &1 &0 &0 &1 &1 &0 \\0 &0 &1 &0 &0 &1 &1 \\0 &0 &0 &1 &1 &1 &1\end{pmatrix}=\begin{pmatrix}1 &1 &1 &0 &0 &0 &0\end{pmatrix} \hspace{0.05cm}.$$'''(2)'''&nbsp; Correct are the&nbsp; <u>proposed solutions 1, 2 and 4</u>::$$\begin{pmatrix}0 &0 &1\end{pmatrix}  \cdot\begin{pmatrix}1 &0 &0 &1 &1 &0  \\0 &1 &0 &1 &0 &1  \\0 &0 &1 &0 &1 &1\end{pmatrix}=\begin{pmatrix}0 &0 &1 &0 &1 &1\end{pmatrix} \hspace{0.05cm},$$:$$\begin{pmatrix}1 &0 &1\end{pmatrix}  \cdot\begin{pmatrix}1 &0 &0 &1 &1 &0  \\0 &1 &0 &1 &0 &1  \\0 &0 &1 &0 &1 &1\end{pmatrix}=\begin{pmatrix}1 &0 &1 &1 &0 &1\end{pmatrix} \hspace{0.05cm}.$$
0 &1 &1 &0
\end{pmatrix}  \cdot  
  \begin{pmatrix}
1 &0 &0 &0 &1 &0 &1 \\
0 &1 &0 &0 &1 &1 &0 \\
0 &0 &1 &0 &0 &1 &1 \\
0 &0 &0 &1 &1 &1 &1  
\end{pmatrix}  
=\begin{pmatrix}
0 &1 &1 &0 &1 &0 &1  
\end{pmatrix} \hspace{0.05cm},$$
 
* den zweiten Zeilenvektor:
:$$\begin{pmatrix}
0 &0 &0 &0
\end{pmatrix}  \cdot  
  \begin{pmatrix}
1 &0 &0 &0 &1 &0 &1 \\
0 &1 &0 &0 &1 &1 &0 \\
0 &0 &1 &0 &0 &1 &1 \\
0 &0 &0 &1 &1 &1 &1  
\end{pmatrix}  
=\begin{pmatrix}
0 &0 &0 &0 &0 &0 &0  
\end{pmatrix} \hspace{0.05cm},$$
 
* den dritten Zeilenvektor
:$$\begin{pmatrix}
1 &1 &1 &0
\end{pmatrix}  \cdot  
  \begin{pmatrix}
1 &0 &0 &0 &1 &0 &1 \\
0 &1 &0 &0 &1 &1 &0 \\
0 &0 &1 &0 &0 &1 &1 \\
0 &0 &0 &1 &1 &1 &1
\end{pmatrix}  
=\begin{pmatrix}
1 &1 &1 &0 &0 &0 &0  
\end{pmatrix} \hspace{0.05cm}.$$
 
 
'''(2)'''&nbsp; Richtig sind die <u>Lösungsvorschläge 1, 2 und 4</u>:
:$$\begin{pmatrix}
0 &0 &1
\end{pmatrix}  \cdot  
  \begin{pmatrix}
1 &0 &0 &1 &1 &0  \\
0 &1 &0 &1 &0 &1  \\
0 &0 &1 &0 &1 &1
\end{pmatrix}  
=\begin{pmatrix}
0 &0 &1 &0 &1 &1  
\end{pmatrix} \hspace{0.05cm},$$
:$$\begin{pmatrix}
1 &0 &1
\end{pmatrix}  \cdot  
  \begin{pmatrix}
1 &0 &0 &1 &1 &0  \\
0 &1 &0 &1 &0 &1  \\
0 &0 &1 &0 &1 &1
\end{pmatrix}  
=\begin{pmatrix}
1 &0 &1 &1 &0 &1  
\end{pmatrix} \hspace{0.05cm}.$$


Zu dieser Teilaufgabe ist weiter anzumerken:
To this subtask is to be noted further:
* Die angegebene erste Spalte ist schon allein deshalb richtig, weil sie mit einer Zeile (der dritte) der Generatormatrix $\mathbf{G}_2$ übereinstimmt.
# The given first column is correct if only because it coincides with a row&nbsp; $($the third$)$&nbsp; of the generator matrix $\mathbf{G}_2$.
* Die dritte Spalte des 2D&ndash;Codewortes müsste mit der zweiten Spalte identisch sein, da jeweils vom gleichen Codewort $(1, \, 0, \, 1)$ ausgegangen wird.
# The third column of the two-dimensional code word should be identical to the second column,&nbsp; since the same code word&nbsp; $(1, \, 0, \, 1)$&nbsp; is assumed.
* Der angegebene Vektor $(1, \, 1, \, 0, \, 0, \, 1, \, 1)$ kann aber schon allein deshalb nicht richtig sein, da $C_2$ ebenso wie $C_1$ ein systematischer Code ist.
# However,&nbsp; the given vector&nbsp; $(1, \, 1, \, 0, \, 0, \, 1, \, 1)$&nbsp; cannot be correct if only because&nbsp; $\mathcal{C}_2$&nbsp; is a systematic code just like&nbsp; $\mathcal{C}_1$.
* Auch der verkürzte (6, 3, 3)&ndash;Hammingcode $C_2$ ist linear, so dass auch ohne Rechnung die Zuordnung $\underline{u} = (0, \, 0, \, 0) \ \Rightarrow \ \underline{x} = (0, \, 0, \, 0, \, 0, \, 0, \, 0)$ angebbar ist.
# Also the truncated&nbsp; $(6, \ 3, \ 3)$&nbsp; Hamming code $C_2$&nbsp; is linear,&nbsp; so that the assignment&nbsp; $\underline{u} = (0, \, 0, \, 0) \ \Rightarrow \ \ \underline{x} = (0, \, 0, \, 0, \, 0)$&nbsp; can be stated without calculation.




'''(3)'''&nbsp; [[File:P_ID3005__KC_A_4_6c_v1.png|right|frame|Vollständige Codetabellen]] Rechts sind die vollständigen Codetabellen des
[[File:EN_KC_A_4_6_c.png|right|frame|Complete code tables]]  
* Hammingcodes (7, 4, 3),
'''(3)'''&nbsp; Given on the right are the complete code tables
* verkürzten Hammingcodes (6, 3, 3)


* of the Hamming code $(7, \ 4, \ 3)$,&nbsp; and
* of the truncated Hamming code $(6, \ 3, \ 3)$.


angegeben. Man erkennt daraus (ohne dass das für diese Aufgabe von Interesse ist), dass die hier betrachteten Codes jeweils die Hamming&ndash;Distanz $d_{\rm min} = 3$ aufweise.


Die folgende kleine Grafik zeigt das Ergebnis der gesamten Codierung. Unten rechts ist die Checks&ndash;on&ndash;Checks&ndash;Matrix der Dimension $3 &times, 3$ zu erkennen.
One can see from this&nbsp; $($without it being of interest for this exercise$)$&nbsp; that the codes considered here each have Hamming distance&nbsp; $d_{\rm min} = 3$.


[[File:P_ID3012__KC_A_4_6d_v3.png|center|frame|Gesuchter Produktcode]]
[[File:P_ID3012__KC_A_4_6d_v3.png|left|frame|Wanted product code]]
<br><br>
*The left graph shows the result of the whole coding.


Bezüglich der Teilaufgabe (3) sind nur <u>die Lösungsvorschläge 1 und 2</u> richtig, wobei es Zufall ist, dass hier in der Checks&ndash;on&ndash;Checks&ndash;Matrix zwei Zeilen und zwei Spalten identisch sind.
*At the bottom right you can see the checks&ndash;on&ndash;checks matrix of dimension&nbsp; $3 &times 3$.
<br clear=all>
Concerning the subtask&nbsp; '''(3)'''&nbsp; the&nbsp; <u>suggested solutions 1 and 2</u>&nbsp; are correct:
*It is a coincidence that here in the checks&ndash;on&ndash;checks matrix two rows and two columns are identical.


Weiter ist anzumerken: Es ist egal, ob man die Zeilen 4 bis 6 der Gesamtmatrix über den Code $C_1$ gewinnt oder die Spalten 5 bis 7 über den Code $C_2$.
*It doesn't matter whether rows 4 to 6 of the total matrix are obtained using the code&nbsp; $\mathcal{C}_1$&nbsp; or columns 5 to 7 are obtained using the code&nbsp; $\mathcal{C}_2$.
{{ML-Fuß}}
{{ML-Fuß}}






[[Category:Aufgaben zu  Kanalcodierung|^4.2 Grundlegendes zu den Produktcodes^]]
[[Category:Channel Coding: Exercises|^4.2 About the Product Codes^]]
[[de:Aufgaben:Aufgabe 4.6: Generierung von Produktcodes]]

Latest revision as of 17:56, 16 March 2026

Used component codes

A  $\rm product\:code \ (42, \ 12)$  shall be generated,  based on the following component codes:

  • the Hamming code  $\rm HC \ (7, \ 4, \ 3)$  ⇒   $\mathcal{C}_1$,
  • the truncated Hamming code $\rm HC \ (6, \ 3, \ 3)$   ⇒   $\mathcal{C}_2$.


Corresponding code tables are given on the right,  with three rows incomplete in each case.  These are to be completed by you.

The code word belonging to an information block  $\underline{u}$  generally results according to the equation 

$$\underline{x} = \underline{u} \cdot \mathbf{G}.$$

As in  $\text{Exercise 4.6Z}$,  the following generator matrices are assumed here:

$${ \boldsymbol{\rm G}}_1= \begin{pmatrix}1 &0 &0 &0 &1 &0 &1 \\0 &1 &0 &0 &1 &1 &0 \\0 &0 &1 &0 &0 &1 &1 \\0 &0 &0 &1 &1 &1 &1\end{pmatrix} \hspace{0.05cm},\hspace{0.8cm}{ \boldsymbol{\rm G}}_2= \begin{pmatrix}1 &0 &0 &1 &1 &0 \\0 &1 &0 &1 &0 &1 \\0 &0 &1 &0 &1 &1\end{pmatrix} \hspace{0.05cm}.$$Throughout the exercise,  apply to the information block::$${ \boldsymbol{\rm U}}= \begin{pmatrix}0 &1 &1 &0 \\0 &0 &0 &0 \\1 &1 &1 &0\end{pmatrix} \hspace{0.05cm}.$$

Searched for according to the nomenclature in section  "Basic structure of a product code":

  • the parity-check matrix   $\mathbf{P}^{(1)}$   with respect to the horizontal code  $\mathcal{C}_1$,
  • the parity-check matrix  $\mathbf{P}^{(2)}$  with respect to the vertical code  $\mathcal{C}_2$,
  • the checks–on–checks matrix  $\mathbf{P}^{(12)}$.



Hints:



Questions

1 What are the results of row coding with the  $(7, \ 4, \ 3)$ code  $\mathcal{C}_1$?

1. row:   $\underline{u} = (0, \, 1, \, 1, \, 0) \ \Rightarrow \ \underline{x} = (0, \, 1, \, 1, \, 0, \, 1, \, 0, \, 1)$.
2. row:   $\underline{u} = (0, \, 0, \, 0, \, 0) \ \Rightarrow \ \underline{x} = (1, \, 1, \, 1, \, 1, \, 1, \, 1, \, 1)$.
3. row:   $\underline{u} = (1, \, 1, \, 1, \, 0) \ \Rightarrow \ \underline{x} = (1, \, 1, \, 1, \, 0, \, 0, \, 0, \, 0)$.

2 What are the results of column coding with the  $(6, \ 3, \ 3)$ code  $\mathcal{C}_2$?

1. column:   $\underline{u} = (0, \, 0, \, 1) \ \Rightarrow \ \underline{x} = (0, \, 0, \, 1, \, 0, \, 1, \, 1)$.
2. column:   $\underline{u} = (1, \, 0, \, 1) \ \Rightarrow \ \underline{x} = (1, \, 0, \, 1, \, 1, \, 0, \, 1)$.
3. column:   $\underline{u} = (1, \, 0, \, 1) \ \Rightarrow \ \underline{x} = (1, \, 1, \, 0, \, 0, \, 1, \, 1)$.
4. column:   $\underline{u} = (0, \, 0, \, 0) \ \Rightarrow \ \underline{x} = (0, \, 0, \, 0, \, 0, \,0, \, 0)$.

3 What statements apply to the checks–on–checks matrix?

The first row is  $(1, \, 0, \, 1)$  and the first column is  $(1, \, 1, \, 0)$.
The second row is  $(1, \, 0, \, 1)$  and the second column is  $(0, \, 0, \, 0)$.
The third row is  $(0, \, 0, \, 0)$  and the third column is  $(0, \, 0, \, 0)$.


Solution

(1)  Correct are the  proposed solutions 1 and 3:  In general: 

$$\underline{x} = \underline{u} \cdot \mathbf{G}.$$

From this follows for

  • the first row vector:
$$\begin{pmatrix}0 &1 &1 &0\end{pmatrix} \cdot\begin{pmatrix}1 &0 &0 &0 &1 &0 &1 \\0 &1 &0 &0 &1 &1 &0 \\0 &0 &1 &0 &0 &1 &1 \\0 &0 &0 &1 &1 &1 &1\end{pmatrix}=\begin{pmatrix}0 &1 &1 &0 &1 &0 &1\end{pmatrix} \hspace{0.05cm},$$:* the second row vector::$$\begin{pmatrix}0 &0 &0 &0\end{pmatrix} \cdot\begin{pmatrix}1 &0 &0 &0 &1 &0 &1 \\0 &1 &0 &0 &1 &1 &0 \\0 &0 &1 &0 &0 &1 &1 \\0 &0 &0 &1 &1 &1 &1\end{pmatrix}=\begin{pmatrix}0 &0 &0 &0 &0 &0 &0\end{pmatrix} \hspace{0.05cm},$$:* the third row vector::$$\begin{pmatrix}1 &1 &1 &0\end{pmatrix} \cdot\begin{pmatrix}1 &0 &0 &0 &1 &0 &1 \\0 &1 &0 &0 &1 &1 &0 \\0 &0 &1 &0 &0 &1 &1 \\0 &0 &0 &1 &1 &1 &1\end{pmatrix}=\begin{pmatrix}1 &1 &1 &0 &0 &0 &0\end{pmatrix} \hspace{0.05cm}.$$(2)  Correct are the  proposed solutions 1, 2 and 4::$$\begin{pmatrix}0 &0 &1\end{pmatrix} \cdot\begin{pmatrix}1 &0 &0 &1 &1 &0 \\0 &1 &0 &1 &0 &1 \\0 &0 &1 &0 &1 &1\end{pmatrix}=\begin{pmatrix}0 &0 &1 &0 &1 &1\end{pmatrix} \hspace{0.05cm},$$:$$\begin{pmatrix}1 &0 &1\end{pmatrix} \cdot\begin{pmatrix}1 &0 &0 &1 &1 &0 \\0 &1 &0 &1 &0 &1 \\0 &0 &1 &0 &1 &1\end{pmatrix}=\begin{pmatrix}1 &0 &1 &1 &0 &1\end{pmatrix} \hspace{0.05cm}.$$

To this subtask is to be noted further:

  1. The given first column is correct if only because it coincides with a row  $($the third$)$  of the generator matrix $\mathbf{G}_2$.
  2. The third column of the two-dimensional code word should be identical to the second column,  since the same code word  $(1, \, 0, \, 1)$  is assumed.
  3. However,  the given vector  $(1, \, 1, \, 0, \, 0, \, 1, \, 1)$  cannot be correct if only because  $\mathcal{C}_2$  is a systematic code just like  $\mathcal{C}_1$.
  4. Also the truncated  $(6, \ 3, \ 3)$  Hamming code $C_2$  is linear,  so that the assignment  $\underline{u} = (0, \, 0, \, 0) \ \Rightarrow \ \ \underline{x} = (0, \, 0, \, 0, \, 0)$  can be stated without calculation.


Complete code tables

(3)  Given on the right are the complete code tables

  • of the Hamming code $(7, \ 4, \ 3)$,  and
  • of the truncated Hamming code $(6, \ 3, \ 3)$.


One can see from this  $($without it being of interest for this exercise$)$  that the codes considered here each have Hamming distance  $d_{\rm min} = 3$.

Wanted product code



  • The left graph shows the result of the whole coding.
  • At the bottom right you can see the checks–on–checks matrix of dimension  $3 &times 3$.


Concerning the subtask  (3)  the  suggested solutions 1 and 2  are correct:

  • It is a coincidence that here in the checks–on–checks matrix two rows and two columns are identical.
  • It doesn't matter whether rows 4 to 6 of the total matrix are obtained using the code  $\mathcal{C}_1$  or columns 5 to 7 are obtained using the code  $\mathcal{C}_2$.