Difference between revisions of "Aufgaben:Exercise 1.13: Binary Erasure Channel Decoding"

From LNTwww
Line 85: Line 85:
 
===Solution===
 
===Solution===
 
{{ML-Kopf}}
 
{{ML-Kopf}}
'''(1)'''   Der Empfangsvektor lautet $\underline{y} = (1, {\rm E}, 0, 1, 0, 0, {\rm E})$. Ausgelöscht wurden also die Codesymbole an den Positionen 2 und 7.  
+
'''(1)'''   The received vector is $\underline{y} = (1, {\rm E}, 0, 1, 0, 0, {\rm E})$. Thus, the code symbols at positions 2 and 7 were erased.  
 
+
Based on the given parity-check matrix
Ausgehend von der vorgegebenen Prüfmatrix
 
  
 
:$${ \boldsymbol{\rm H}} = \begin{pmatrix} 1 &1 &1 &0 &1 &0 &0\\ 0 &1 &1 &1 &0 &1 &0\\ 1 &1 &0 &1 &0 &0 &1 \end{pmatrix}$$
 
:$${ \boldsymbol{\rm H}} = \begin{pmatrix} 1 &1 &1 &0 &1 &0 &0\\ 0 &1 &1 &1 &0 &1 &0\\ 1 &1 &0 &1 &0 &0 &1 \end{pmatrix}$$
  
des Hammingcodes erhält man für Vektor und Matrix
+
of the Hamming code is obtained for vector and matrix
  
* hinsichtlich aller ''korrekt übertragenen Codesymbole'' (Index $\rm K$), die dem Codewortfinder bekannt sind:
+
* with respect to all ''correctly transmitted code symbols'' (index $\rm K$) known to the code word finder:
  
 
:$$\underline{z}_{\rm K} = (1, 0, 1, 0, 0)\hspace{0.05cm},\hspace{0.3cm}{ \boldsymbol{\rm H}}_{\rm K} = \begin{pmatrix} 1 &1 &0 &1 &0\\ 0 &1 &1 &0 &1\\ 1 &0 &1 &0 &0 \end{pmatrix} \hspace{0.05cm},$$
 
:$$\underline{z}_{\rm K} = (1, 0, 1, 0, 0)\hspace{0.05cm},\hspace{0.3cm}{ \boldsymbol{\rm H}}_{\rm K} = \begin{pmatrix} 1 &1 &0 &1 &0\\ 0 &1 &1 &0 &1\\ 1 &0 &1 &0 &0 \end{pmatrix} \hspace{0.05cm},$$
  
*hinsichtlich der beiden ''ausgelöschten Codesymbole'' $z_{2}$ und $z_{7}$ (Index $\rm E$), die zu ermitteln sind:
+
 
 +
*with respect to the two ''erased code symbols'' $z_{2}$ and $z_{7}$ (index $\rm E$) to be determined:
  
 
:$$\underline{z}_{\rm E} = (z_2, z_7)\hspace{0.05cm},\hspace{0.3cm}{ \boldsymbol{\rm H}}_{\rm E} = \begin{pmatrix} 1 &0\\ 1 &0\\ 1 &1 \end{pmatrix} \hspace{0.05cm}.$$
 
:$$\underline{z}_{\rm E} = (z_2, z_7)\hspace{0.05cm},\hspace{0.3cm}{ \boldsymbol{\rm H}}_{\rm E} = \begin{pmatrix} 1 &0\\ 1 &0\\ 1 &1 \end{pmatrix} \hspace{0.05cm}.$$
  
Die Bestimmungsgleichung lautet somit:
+
The equation of determination is thus:
  
 
:$${ \boldsymbol{\rm H}}_{\rm E} \cdot \underline{z}_{\rm E}^{\rm T}= { \boldsymbol{\rm H}}_{\rm K} \cdot \underline{z}_{\rm K}^{\rm T}\hspace{0.3cm}
 
:$${ \boldsymbol{\rm H}}_{\rm E} \cdot \underline{z}_{\rm E}^{\rm T}= { \boldsymbol{\rm H}}_{\rm K} \cdot \underline{z}_{\rm K}^{\rm T}\hspace{0.3cm}
 
\Rightarrow \hspace{0.3cm} \begin{pmatrix} 1 &0\\ 1 &0\\ 1 &1 \end{pmatrix} \cdot \begin{pmatrix} z_2 \\ z_7 \end{pmatrix} = \begin{pmatrix} 1 &1 &0 &1 &0\\ 0 &1 &1 &0 &1\\ 1 &0 &1 &0 &0 \end{pmatrix} \cdot \begin{pmatrix} 1 \\ 0 \\ 1 \\ 0 \\ 0 \end{pmatrix} = \begin{pmatrix} 1 \\ 1 \\ 0 \end{pmatrix} \hspace{0.05cm}.$$
 
\Rightarrow \hspace{0.3cm} \begin{pmatrix} 1 &0\\ 1 &0\\ 1 &1 \end{pmatrix} \cdot \begin{pmatrix} z_2 \\ z_7 \end{pmatrix} = \begin{pmatrix} 1 &1 &0 &1 &0\\ 0 &1 &1 &0 &1\\ 1 &0 &1 &0 &0 \end{pmatrix} \cdot \begin{pmatrix} 1 \\ 0 \\ 1 \\ 0 \\ 0 \end{pmatrix} = \begin{pmatrix} 1 \\ 1 \\ 0 \end{pmatrix} \hspace{0.05cm}.$$
  
Daraus ergeben sich drei Gleichungen für die beiden Unbekannten $z_{2}$ und $z_{7}$:
+
This results in three equations for the two unknowns $z_{2}$ and $z_{7}$:
  
 
:$${\rm (a)}\ z_{2} = 1,$$
 
:$${\rm (a)}\ z_{2} = 1,$$
Line 113: Line 113:
  
  
Somit liefert der Codewortfinder $\underline{z} = (1, 1, 0, 1, 0, 0, 1)$ &nbsp; ⇒ &nbsp; <u>Lösungsvorschlag 2</u>.
+
Thus, the codeword finder returns $\underline{z} = (1, 1, 0, 1, 0, 0, 1)$ &nbsp; ⇒ &nbsp; <u>Suggested solution 2</2</u>.
 +
 
  
  
 +
'''(2)'''&nbsp;  Looking at the given matrix $\boldsymbol{\rm H}_{\rm K}$, we see that it coincides with the first four columns of the parity-check matrix $\boldsymbol{\rm H}$.
 +
*The erasures thus affect the last three bits of the received word &nbsp; ⇒ &nbsp; $\underline{z}_{\rm E} = (z_{5}, z_{6}, z_{7})    &nbsp; ⇒ &nbsp;    \underline{y} = (1, 1, 0, 1, {\rm E}, {\rm E}, {\rm E})$.
 +
*The erasure matrix reads:
  
'''(2)'''&nbsp;  Betrachtet man die vorgegebene Matrix $\boldsymbol{\rm H}_{\rm K}$, so erkennt man, dass diese mit den ersten vier Spalten der Prüfmatrix $\boldsymbol{\rm H}$ übereinstimmt.
 
*Die Auslöschungen betreffen also die letzten drei Bit des Empfangswortes &nbsp; ⇒ &nbsp; $\underline{z}_{\rm E} = (z_{5}, z_{6}, z_{7})    &nbsp; ⇒ &nbsp;    \underline{y} = (1, 1, 0, 1, {\rm E}, {\rm E}, {\rm E})$.
 
*Die Erasure–Matrix lautet:
 
 
   
 
   
 
:$${ \boldsymbol{\rm H}}_{\rm E} = \begin{pmatrix} 1 &0 &0\\ 0 &1 &0\\ 0 &0 &1 \end{pmatrix} \hspace{0.05cm}.$$
 
:$${ \boldsymbol{\rm H}}_{\rm E} = \begin{pmatrix} 1 &0 &0\\ 0 &1 &0\\ 0 &0 &1 \end{pmatrix} \hspace{0.05cm}.$$
  
Richtig sind demzufolge die <u>Aussagen 1, 2 und 4</u>.
+
Correct are therefore the <u>statements 1, 2 and 4</u>.
  
  
  
'''(3)'''&nbsp; Man erhält nach einigen Matrizenmultiplikationen:  
+
'''(3)'''&nbsp; One obtains after some matrix multiplications:  
 
:$${ \boldsymbol{\rm H}}_{\rm K} \cdot \underline{z}_{\rm K}^{\rm T} = \begin{pmatrix} 1 &1 &1 &0\\ 0 &1 &1 &1\\ 1 &1 &0 &1 \end{pmatrix} \cdot \begin{pmatrix} 1 \\ 1 \\ 0 \\ 1 \end{pmatrix} = \begin{pmatrix} 0 \\ 0 \\ 1 \end{pmatrix} \hspace{0.05cm},\hspace{1cm}
 
:$${ \boldsymbol{\rm H}}_{\rm K} \cdot \underline{z}_{\rm K}^{\rm T} = \begin{pmatrix} 1 &1 &1 &0\\ 0 &1 &1 &1\\ 1 &1 &0 &1 \end{pmatrix} \cdot \begin{pmatrix} 1 \\ 1 \\ 0 \\ 1 \end{pmatrix} = \begin{pmatrix} 0 \\ 0 \\ 1 \end{pmatrix} \hspace{0.05cm},\hspace{1cm}
 
{ \boldsymbol{\rm H}}_{\rm E} \cdot \underline{z}_{\rm E}^{\rm T} = \begin{pmatrix} 1 &0 &0\\ 0 &1 &0\\ 0 &0 &1 \end{pmatrix} \cdot \begin{pmatrix} z_5 \\ z_6 \\ z_7 \end{pmatrix} = \begin{pmatrix} z_5 \\ z_6 \\ z_7 \end{pmatrix} \hspace{0.05cm}.$$
 
{ \boldsymbol{\rm H}}_{\rm E} \cdot \underline{z}_{\rm E}^{\rm T} = \begin{pmatrix} 1 &0 &0\\ 0 &1 &0\\ 0 &0 &1 \end{pmatrix} \cdot \begin{pmatrix} z_5 \\ z_6 \\ z_7 \end{pmatrix} = \begin{pmatrix} z_5 \\ z_6 \\ z_7 \end{pmatrix} \hspace{0.05cm}.$$
 
   
 
   
Durch Gleichsetzen folgt $z_{5} = 0, \ z_{6} = 0, \ z_{7} = 1$ &nbsp; ⇒ &nbsp; <u>Lösungsvorschlag 2</u>.
+
By equating it follows $z_{5} = 0, \ z_{6} = 0, \ z_{7} = 1$ &nbsp; ⇒ &nbsp; <u>Suggested solution 2</u>.
 
 
  
  
'''(4)'''&nbsp; Der Matrizenvergleich zeigt, dass die ersten drei Spalten von $\boldsymbol{\rm H}$ und $\boldsymbol{\rm H}_{\rm K}$ identisch sind.
 
* Die vierte Spalte von $\boldsymbol{\rm H}_{\rm K}$ ist gleich der fünften Spalte der Prüfmatrix.
 
*Daraus folgt für den Vektor $z_{\rm E} = (z_{4}, z_{6}, z_{7})$ und weiter für den Empfangsvektor $\underline{y} = (1, 1, 0, {\rm E}, 0, {\rm E}, {\rm E})$ &nbsp; ⇒ &nbsp; <u>Lösungsvorschlag 1 und 3</u>.
 
  
 +
'''(4)'''&nbsp; The matrix comparison shows that the first three columns of $\boldsymbol{\rm H}$ and $\boldsymbol{\rm H}_{\rm K}$ are identical.
 +
* The fourth column of $\boldsymbol{\rm H}_{\rm K}$ is equal to the fifth column of the parity-check matrix.
 +
*From this follows for the vector $z_{\rm E} = (z_{4}, z_{6}, z_{7})$ and further for the received vector $\underline{y} = (1, 1, 0, {\rm E}, 0, {\rm E}, {\rm E})$ &nbsp; ⇒ &nbsp; <u>Suggested solutions 1 and 3</u>.
  
  
'''(5)'''&nbsp;  Analog zur Teilaufgabe (3) erhält man nun:
+
'''(5)'''&nbsp;  Analogous to subtask (3), we now obtain:
 
   
 
   
 
:$${ \boldsymbol{\rm H}}_{\rm K} \cdot \underline{z}_{\rm K}^{\rm T} = \begin{pmatrix} 1 &1 &1 &1\\ 0 &1 &1 &0\\ 1 &1 &0 &0 \end{pmatrix} \cdot \begin{pmatrix} 1 \\ 1 \\ 0 \\ 0 \end{pmatrix} = \begin{pmatrix} 0 \\ 1 \\ 0 \end{pmatrix} \hspace{0.05cm},\hspace{1cm}
 
:$${ \boldsymbol{\rm H}}_{\rm K} \cdot \underline{z}_{\rm K}^{\rm T} = \begin{pmatrix} 1 &1 &1 &1\\ 0 &1 &1 &0\\ 1 &1 &0 &0 \end{pmatrix} \cdot \begin{pmatrix} 1 \\ 1 \\ 0 \\ 0 \end{pmatrix} = \begin{pmatrix} 0 \\ 1 \\ 0 \end{pmatrix} \hspace{0.05cm},\hspace{1cm}
 
{ \boldsymbol{\rm H}}_{\rm E} \cdot \underline{z}_{\rm E}^{\rm T} = \begin{pmatrix} 0 &0 &0\\ 1 &1 &0\\ 1 &0 &1 \end{pmatrix} \cdot \begin{pmatrix} z_4 \\ z_6 \\ z_7 \end{pmatrix} = \begin{pmatrix} 0 \\ z_4 + z_6 \\ z_4 + z_7 \end{pmatrix} \hspace{0.05cm}.$$
 
{ \boldsymbol{\rm H}}_{\rm E} \cdot \underline{z}_{\rm E}^{\rm T} = \begin{pmatrix} 0 &0 &0\\ 1 &1 &0\\ 1 &0 &1 \end{pmatrix} \cdot \begin{pmatrix} z_4 \\ z_6 \\ z_7 \end{pmatrix} = \begin{pmatrix} 0 \\ z_4 + z_6 \\ z_4 + z_7 \end{pmatrix} \hspace{0.05cm}.$$
 
   
 
   
* Setzt man nun die beiden Spaltenvektoren gleich, so erhält man nur mehr zwei Gleichungen für die drei Unbekannten &nbsp; ⇒ &nbsp; <u>Lösungsvorschlag 4</u>.
+
*If we now set the two column vectors equal, we obtain only two equations for the three unknowns &nbsp; ⇒ &nbsp; <u>Suggested solution 4</u>.
*Oder anders ausgedrückt: &nbsp; Ist die Anzahl der Auslöschungen des BEC–Kanals größer als der Rang der Matrix $\boldsymbol{\rm H}_{\rm E}$, so ergibt sich keine eindeutige Lösung des resultierenden Gleichungssystems.
+
*Or in other words: &nbsp; If the number of extinctions of the BEC channel is larger than the rank of the matrix $\boldsymbol{\rm H}_{\rm E}$, then no unique solution of the resulting system of equations results.
  
  
  
[[File:P_ID2540__KC_A_1_13f.png|right|frame|Codetabelle des systematischen $(7, 4, 3)$–Hamming–Codes]]
+
[[File:P_ID2540__KC_A_1_13f.png|right|frame|Code table of the systematic $(7, 4, 3)$ Hamming code]]
'''(6)'''&nbsp; Zur Lösung dieser Aufgabe beziehen wir uns wieder auf den systematischen Hamming–Code $(7, 4, 3)$ entsprechend der angegebenen Prüfgleichung und der angegebenen Codetabelle.  
+
'''(6)'''&nbsp; To solve this exercise, we again refer to the systematic Hamming code $(7, 4, 3)$ according to the given parity-check equation and code table.  
*Die Informationsbit sind schwarz dargestellt und die Prüfbit rot.  
+
*The information bits are shown in black and the parity bits in red.  
*Die minimale Distanz dieses Codes beträgt $d_{\rm min} = 3$.
+
*The minimum distance of this code is $d_{\rm min} = 3$.
 
<br clear=all>
 
<br clear=all>
Weiter nehmen wir an, dass stets das gelb hinterlegte Codewort $\underline{x} = (1, 1, 0, 1, 0, 0, 1)$ gesendet wurde. Dann gilt:
+
Further we assume that always the code word $\underline{x} = (1, 1, 0, 1, 0, 0, 1)$ with yellow background was sent. Then holds:
  
*Ist die Anzahl&nbsp; $n_{\rm E}$&nbsp; der Auslöschungen kleiner als&nbsp; $d_{\rm min} = 3$, so ist eine Decodierung nach der hier beschriebenen Methode immer möglich &nbsp; ⇒ &nbsp; siehe beispielsweise Teilaufgabe '''(1)''' mit&nbsp; $n_{\rm E}= 2$.
+
*If the number&nbsp; $n_{\rm E}$&nbsp; of erasures is smaller than&nbsp; $d_{\rm min} = 3$, decoding by the method described here is always possible &nbsp; ⇒ &nbsp; see for example subtask '''(1)''' with&nbsp; $n_{\rm E}= 2$.
  
*Auch für&nbsp; $n_{\rm E} = d_{\rm min} = 3$&nbsp; ist manchmal eine Decodierung möglich, wie in der Teilaufgabe '''(3)''' gezeigt. In der Codetabelle gibt es nur ein einziges Codewort, das zum Empfangsvektor&nbsp; $\underline{y} = (1, 1, 0, 1, {\rm E}, {\rm E}, {\rm E})$&nbsp; passen könnte, nämlich das  gelb hinterlegte Codewort&nbsp; $\underline{x} = (1, 1, 0, 1, 0, 0, 1)$ .
+
*Also for&nbsp; $n_{\rm E} = d_{\rm min} = 3$&nbsp; decoding is sometimes possible, as shown in subtask '''(3)'''. In the code table, there is only one codeword that could match the received vector&nbsp; $\underline{y} = (1, 1, 0, 1, {\rm E}, {\rm E}, {\rm E})$&nbsp; namely the codeword highlighted in yellow&nbsp; $\underline{x} = (1, 1, 0, 1, 0, 0, 1)$ .
  
*Dagegen konnte&nbsp; $\underline{y} = (1, 1, 0, {\rm E}, 0, {\rm E}, {\rm E})$&nbsp; entsprechend Teilaufgabe '''(4)''' nicht decodiert werden. In der Codetabelle erkennt man neben&nbsp; $(1, 1, 0, 1, 0, 0, 1)$&nbsp; mit&nbsp; $(1, 1, 0, 0, 0, 1, 0)$&nbsp; ein weiteres Codewort (grün hinterlegt), das durch die&nbsp; $n_{\rm E} = 3$&nbsp; Auslöschungen bezüglich Bit 4, 6 und 7 zum Empfangswort&nbsp; $\underline{y}$&nbsp; wird. Dieser Fall, wenn die&nbsp; $n_{\rm E} = d_{\rm min}$&nbsp; Auslöschungen genau die&nbsp; $d_{\rm min}$&nbsp; unterschiedlichen Bit zweier Codeworte betreffen, führt zu einer Matrix&nbsp; $\mathbf{H}_{\rm E}$&nbsp; mit einem Rang kleiner&nbsp; $d_{\rm min}$.
+
*In contrast&nbsp; $\underline{y} = (1, 1, 0, {\rm E}, 0, {\rm E}, {\rm E})$&nbsp; according to subtask '''(4)''' could not be decoded. In the code table, besides&nbsp; $(1, 1, 0, 1, 0, 0, 1)$&nbsp; with&nbsp; $(1, 1, 0, 0, 0, 1, 0)$&nbsp; one can recognize another code word (highlighted in green), which becomes the received word&nbsp; $\underline{y}$&nbsp; due to the&nbsp; $n_{\rm E} = 3$&nbsp; erasures concerning bit 4, 6 and 7. This case, when the&nbsp; $n_{\rm E} = d_{\rm min}$&nbsp; extinctions affect exactly the&nbsp; $d_{\rm min}$&nbsp; different bits of two codewords, leads to a matrix&nbsp; $\mathbf{H}_{\rm E}$&nbsp; with rank smaller&nbsp; $d_{\rm min}$.
  
*Ist&nbsp; $\boldsymbol{\rm H}_{\rm E} > d_{\rm min}$, so ist die Anzahl&nbsp; $n - n_{\rm E}$&nbsp; der nicht ausgelöschten Bit kleiner als die Anzahl&nbsp; $k$&nbsp; der Informationsbit. In diesem Fall kann das Codewort natürlich nicht decodiert werden.
+
*If&nbsp; $\boldsymbol{\rm H}_{\rm E} > d_{\rm min}$, the number&nbsp; $n - n_{\rm E}$&nbsp; of bits not erased is smaller than the number&nbsp; $k$&nbsp; of information bits. In this case, of course, the codeword cannot be decoded.
  
  
Das heißt: &nbsp; Zutreffend sind die <u>Aussagen 1, 3 und 4</u>.
+
That is: &nbsp; Applicable are the <u>statements 1, 3 and 4</u>.
 
{{ML-Fuß}}
 
{{ML-Fuß}}
  

Revision as of 23:14, 16 July 2022

Decoding at the BEC

We assume here the model in section  "Decoding at the Binary Erasure Channel"  (BEC configuration highlighted in green):

  • Each information word  $\underline{u}$  is encoded blockwise and yields the codeword  $\underline{x}$. Let the block code be linear and completely given by its parity-check matrix  $\boldsymbol{\rm H}$.
  • During transmission  $n_{\rm E}$  bits of the codeword are erased   ⇒  "Binary Erasure Channel"  (BEC). The codeword  $\underline{x}$  thus becomes the received word  $\underline{y}$.
  • If the number  $n_{\rm E}$  of erasures is less than the  "minimum distance"  $d_{\rm min}$  of the code, it is possible to reconstruct from  $\underline{y}$  the codeword  $\underline{z} = \underline{x}$  without error, and thus the correct information word  $\underline{v} = \underline{u}$ is also obtained.


For exercise description, let us now consider the Hamming codeword  $\underline{x} = (0, 1, 0, 1, 1, 0, 0)$  and the received word  $\underline{y} = (0, 1, {\rm E} , {\rm E}, 1, 0, 0).$

  • The third and fourth bit were thus erased by the channel.
  • The codeword finder thus has the exercise to determine the vector  $z_{\rm E} = (z_{3}, z_{4})$ with $z_{3}, \ z_{4} \in \{0, 1\}$  to be determined. This is done according to the equation
$${ \boldsymbol{\rm H}}_{\rm E} \cdot \underline{z}_{\rm E}^{\rm T}= { \boldsymbol{\rm H}}_{\rm K} \cdot \underline{z}_{\rm K}^{\rm T}\hspace{0.05cm}.$$
  • In the present example:
$$\underline{z}_{\rm K} = (0, 1, 1, 0, 0)\hspace{0.05cm},\hspace{0.3cm}{ \boldsymbol{\rm H}}_{\rm K} = \begin{pmatrix} 1 &1 &1 &0 &0\\ 0 &1 &0 &1 &0\\ 1 &1 &0 &0 &1 \end{pmatrix} \hspace{0.05cm}, \hspace{0.3cm}{ \boldsymbol{\rm H}}_{\rm E} = \begin{pmatrix} 1 &0\\ 1 &1\\ 0 &1 \end{pmatrix} \hspace{0.05cm}.$$
  • This equation gives two equations of determination for the bits to be determined, whose solution leads to the result  $z_{3} = 0$  and  $z_{4} = 1$ .




Hints:

  • This exercise belongs to the chapter  "Decoding of Linear Block Codes".
  • The algorithm for mapping the received word  $\underline{y}$  to the correct codeword  $\underline{z} = \underline{x}$  is described in detail in the  "Theory section" .
  • We would like to remind again that in BEC decoding we use the first decoder block  $\underline{y} → \underline{z}$  as  codeword finder  since wrong decisions are excluded here. Each received word is decoded correctly, or it may not be decoded at all.
  • In the BSC model, on the other hand, decoding errors cannot be avoided. Accordingly, we refer to the corresponding block there as  code word estimator.



Questions

1

  $\underline{y} = (1, {\rm E}, 0, 1, 0, 0, {\rm E})$ was received. Which sequence does the codeword finder decide to use?

$\underline{z} = (1, 0, 0, 1, 0, 0, 0),$
$\underline{z} = (1, 1, 0, 1, 0, 0, 1),$
$\underline{z} = (1, 0, 0, 1, 0, 0, 1).$

2

What are the consequences of the red entries for  $\boldsymbol{\rm H}_{\rm K}$  and  $z_{\rm K}$  (see graphic on the information page)?

The erasure vector is  $\underline{z}_{\rm E} = (z_{5}, z_{6}, z_{7}).$
The received word is  $\underline{y} = (1, 1, 0, 1, {\rm E}, {\rm E}, {\rm E}).$
$\boldsymbol{\rm H}_{\rm E}$  is a  $2 \times 3$ matrix.
$\boldsymbol{\rm H}_{\rm E}$  is a  $3 \times 3$ matrix.

3

Now apply  $\underline{y} = (1, 1, 0, 1, {\rm E}, {\rm E}, {\rm E}).$ Which codeword is selected?

$\underline{z} = (1, 1, 0, 1, 1, 1, 0),$
$\underline{z} = (1, 1, 0, 1, 0, 0, 1),$
$\underline{z} = (1, 1, 0, 0, 0, 1, 0).$
For the present  $\underline{y}$  no unique decoding is possible.

4

What are the consequences of the green entries for  $\boldsymbol{\rm H}_{\rm K}$  and  $z_{\rm K}$  (see graphic on the information page)?

The received word is  $\underline{y} = (1, 1, 0, {\rm E}, 0, {\rm E}, {\rm E}).$
$\boldsymbol{\rm H}_{\rm K}$  differs from subquestion (2) in the last row.
$\boldsymbol{\rm H}_{\rm K}$  differs from subquestion (2) in the last column.

5

Now apply  $\underline{y} = (1, 1, 0, {\rm E}, 0, {\rm E}, {\rm E}).$ Which codeword is selected?

$\underline{z} = (1, 1, 0, 1, 1, 1, 0),$
$\underline{z} = (1, 1, 0, 1, 0, 0, 1),$
$\underline{z} = (1, 1, 0, 0, 0, 1, 0).$
For the present  $\underline{y}$  no unique decoding is possible.

6

Which statements result for the correction capability at the BEC? $n_{\rm E}$  indicates in the following the number of erasures.

For  $n_{\rm E} < d_{\rm min}$  unique decoding is always possible.
For  $n_{\rm E} = d_{\rm min}$  unique decoding is always possible.
For  $n_{\rm E} = d_{\rm min}$  sometimes a unique decoding is possible.
For  $n_{\rm E} > d_{\rm min}$  unique decoding is never possible.


Solution

(1)  The received vector is $\underline{y} = (1, {\rm E}, 0, 1, 0, 0, {\rm E})$. Thus, the code symbols at positions 2 and 7 were erased. Based on the given parity-check matrix

$${ \boldsymbol{\rm H}} = \begin{pmatrix} 1 &1 &1 &0 &1 &0 &0\\ 0 &1 &1 &1 &0 &1 &0\\ 1 &1 &0 &1 &0 &0 &1 \end{pmatrix}$$

of the Hamming code is obtained for vector and matrix

  • with respect to all correctly transmitted code symbols (index $\rm K$) known to the code word finder:
$$\underline{z}_{\rm K} = (1, 0, 1, 0, 0)\hspace{0.05cm},\hspace{0.3cm}{ \boldsymbol{\rm H}}_{\rm K} = \begin{pmatrix} 1 &1 &0 &1 &0\\ 0 &1 &1 &0 &1\\ 1 &0 &1 &0 &0 \end{pmatrix} \hspace{0.05cm},$$


  • with respect to the two erased code symbols $z_{2}$ and $z_{7}$ (index $\rm E$) to be determined:
$$\underline{z}_{\rm E} = (z_2, z_7)\hspace{0.05cm},\hspace{0.3cm}{ \boldsymbol{\rm H}}_{\rm E} = \begin{pmatrix} 1 &0\\ 1 &0\\ 1 &1 \end{pmatrix} \hspace{0.05cm}.$$

The equation of determination is thus:

$${ \boldsymbol{\rm H}}_{\rm E} \cdot \underline{z}_{\rm E}^{\rm T}= { \boldsymbol{\rm H}}_{\rm K} \cdot \underline{z}_{\rm K}^{\rm T}\hspace{0.3cm} \Rightarrow \hspace{0.3cm} \begin{pmatrix} 1 &0\\ 1 &0\\ 1 &1 \end{pmatrix} \cdot \begin{pmatrix} z_2 \\ z_7 \end{pmatrix} = \begin{pmatrix} 1 &1 &0 &1 &0\\ 0 &1 &1 &0 &1\\ 1 &0 &1 &0 &0 \end{pmatrix} \cdot \begin{pmatrix} 1 \\ 0 \\ 1 \\ 0 \\ 0 \end{pmatrix} = \begin{pmatrix} 1 \\ 1 \\ 0 \end{pmatrix} \hspace{0.05cm}.$$

This results in three equations for the two unknowns $z_{2}$ and $z_{7}$:

$${\rm (a)}\ z_{2} = 1,$$
$${\rm (b)}\ z_{2} = 1,$$
$${\rm (c)}\ z_{2} + z_{7} = 0 \ \Rightarrow \ z_{7}= 1.$$


Thus, the codeword finder returns $\underline{z} = (1, 1, 0, 1, 0, 0, 1)$   ⇒   Suggested solution 2</2.


(2)  Looking at the given matrix $\boldsymbol{\rm H}_{\rm K}$, we see that it coincides with the first four columns of the parity-check matrix $\boldsymbol{\rm H}$.

  • The erasures thus affect the last three bits of the received word   ⇒   $\underline{z}_{\rm E} = (z_{5}, z_{6}, z_{7})   ⇒   \underline{y} = (1, 1, 0, 1, {\rm E}, {\rm E}, {\rm E})$.
  • The erasure matrix reads:


$${ \boldsymbol{\rm H}}_{\rm E} = \begin{pmatrix} 1 &0 &0\\ 0 &1 &0\\ 0 &0 &1 \end{pmatrix} \hspace{0.05cm}.$$

Correct are therefore the statements 1, 2 and 4.


(3)  One obtains after some matrix multiplications:

$${ \boldsymbol{\rm H}}_{\rm K} \cdot \underline{z}_{\rm K}^{\rm T} = \begin{pmatrix} 1 &1 &1 &0\\ 0 &1 &1 &1\\ 1 &1 &0 &1 \end{pmatrix} \cdot \begin{pmatrix} 1 \\ 1 \\ 0 \\ 1 \end{pmatrix} = \begin{pmatrix} 0 \\ 0 \\ 1 \end{pmatrix} \hspace{0.05cm},\hspace{1cm} { \boldsymbol{\rm H}}_{\rm E} \cdot \underline{z}_{\rm E}^{\rm T} = \begin{pmatrix} 1 &0 &0\\ 0 &1 &0\\ 0 &0 &1 \end{pmatrix} \cdot \begin{pmatrix} z_5 \\ z_6 \\ z_7 \end{pmatrix} = \begin{pmatrix} z_5 \\ z_6 \\ z_7 \end{pmatrix} \hspace{0.05cm}.$$

By equating it follows $z_{5} = 0, \ z_{6} = 0, \ z_{7} = 1$   ⇒   Suggested solution 2.


(4)  The matrix comparison shows that the first three columns of $\boldsymbol{\rm H}$ and $\boldsymbol{\rm H}_{\rm K}$ are identical.

  • The fourth column of $\boldsymbol{\rm H}_{\rm K}$ is equal to the fifth column of the parity-check matrix.
  • From this follows for the vector $z_{\rm E} = (z_{4}, z_{6}, z_{7})$ and further for the received vector $\underline{y} = (1, 1, 0, {\rm E}, 0, {\rm E}, {\rm E})$   ⇒   Suggested solutions 1 and 3.


(5)  Analogous to subtask (3), we now obtain:

$${ \boldsymbol{\rm H}}_{\rm K} \cdot \underline{z}_{\rm K}^{\rm T} = \begin{pmatrix} 1 &1 &1 &1\\ 0 &1 &1 &0\\ 1 &1 &0 &0 \end{pmatrix} \cdot \begin{pmatrix} 1 \\ 1 \\ 0 \\ 0 \end{pmatrix} = \begin{pmatrix} 0 \\ 1 \\ 0 \end{pmatrix} \hspace{0.05cm},\hspace{1cm} { \boldsymbol{\rm H}}_{\rm E} \cdot \underline{z}_{\rm E}^{\rm T} = \begin{pmatrix} 0 &0 &0\\ 1 &1 &0\\ 1 &0 &1 \end{pmatrix} \cdot \begin{pmatrix} z_4 \\ z_6 \\ z_7 \end{pmatrix} = \begin{pmatrix} 0 \\ z_4 + z_6 \\ z_4 + z_7 \end{pmatrix} \hspace{0.05cm}.$$
  • If we now set the two column vectors equal, we obtain only two equations for the three unknowns   ⇒   Suggested solution 4.
  • Or in other words:   If the number of extinctions of the BEC channel is larger than the rank of the matrix $\boldsymbol{\rm H}_{\rm E}$, then no unique solution of the resulting system of equations results.


Code table of the systematic $(7, 4, 3)$ Hamming code

(6)  To solve this exercise, we again refer to the systematic Hamming code $(7, 4, 3)$ according to the given parity-check equation and code table.

  • The information bits are shown in black and the parity bits in red.
  • The minimum distance of this code is $d_{\rm min} = 3$.


Further we assume that always the code word $\underline{x} = (1, 1, 0, 1, 0, 0, 1)$ with yellow background was sent. Then holds:

  • If the number  $n_{\rm E}$  of erasures is smaller than  $d_{\rm min} = 3$, decoding by the method described here is always possible   ⇒   see for example subtask (1) with  $n_{\rm E}= 2$.
  • Also for  $n_{\rm E} = d_{\rm min} = 3$  decoding is sometimes possible, as shown in subtask (3). In the code table, there is only one codeword that could match the received vector  $\underline{y} = (1, 1, 0, 1, {\rm E}, {\rm E}, {\rm E})$  namely the codeword highlighted in yellow  $\underline{x} = (1, 1, 0, 1, 0, 0, 1)$ .
  • In contrast  $\underline{y} = (1, 1, 0, {\rm E}, 0, {\rm E}, {\rm E})$  according to subtask (4) could not be decoded. In the code table, besides  $(1, 1, 0, 1, 0, 0, 1)$  with  $(1, 1, 0, 0, 0, 1, 0)$  one can recognize another code word (highlighted in green), which becomes the received word  $\underline{y}$  due to the  $n_{\rm E} = 3$  erasures concerning bit 4, 6 and 7. This case, when the  $n_{\rm E} = d_{\rm min}$  extinctions affect exactly the  $d_{\rm min}$  different bits of two codewords, leads to a matrix  $\mathbf{H}_{\rm E}$  with rank smaller  $d_{\rm min}$.
  • If  $\boldsymbol{\rm H}_{\rm E} > d_{\rm min}$, the number  $n - n_{\rm E}$  of bits not erased is smaller than the number  $k$  of information bits. In this case, of course, the codeword cannot be decoded.


That is:   Applicable are the statements 1, 3 and 4.