Aufgaben:Exercise 4.7Z: Principle of Syndrome Decoding: Difference between revisions

From LNTwww
No edit summary
Fix interlanguage link: resolve redirect chain
 
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{quiz-Header|Buchseite=Channel_Coding/The_Basics_of_Product_Codes}}
{{quiz-Header|Buchseite=Channel_Coding/The_Basics_of_Product_Codes}}


[[File:EN_KC_Z_4_7_neu.png|right|frame|Coset leader for the code under consideration  $\rm HC \ (7, \ 4, \ 3)$]]
[[File:EN KC T 4 2 S2b v2 neu.png|right|frame|Syndrome table for code  $\mathcal{C}_1$]]  
The syndrome decoding was already treated in detail in the chapter  [[Channel_Coding/Decoding_of_Linear_Block_Codes| "Decoding of Linear Block Codes"]] . With all Hamming codes, which are as well known perfect, this gives a decoding result as good as with the (generally) clearly more complicated maximum likelihood decoding.
The syndrome decoding was already treated in detail in the chapter  [[Channel_Coding/Decoding_of_Linear_Block_Codes| "Decoding of Linear Block Codes"]].   
 
With all Hamming codes,  which are as well known perfect,  this gives a decoding result as good as with the  $($generally$)$ clearly more complicated maximum likelihood decoding.


For syndrome decoding one proceeds as follows:
For syndrome decoding one proceeds as follows:
* One forms the syndrome from the received vector  $\underline{y}$  of length  $n$  and the parity-check matrix  $\mathbf{H}$ :
* One forms the syndrome from the received vector  $\underline{y}$  of length  $n$  and the parity-check matrix  $\mathbf{H}$:
:$$\underline{s} = \underline{y} \cdot { \boldsymbol{\rm H}}^{\rm T} \in {\rm GF}(2^m)
:$$\underline{s} = \underline{y} \cdot { \boldsymbol{\rm H}}^{\rm T} \in {\rm GF}(2^m)\hspace{0.05cm},  \hspace{0.5cm}{\rm Note\hspace{-0.10cm}:} \hspace{0.15cm}m = n-k \hspace{0.05cm}. $$
  \hspace{0.05cm},  \hspace{0.5cm}{\rm Note\hspace{-0.10cm}:} \hspace{0.15cm}m = n-k \hspace{0.05cm}. $$


* The received word  $\underline{y} = \underline{x} \ {\rm (code\:word)} + \underline{e} \ {\rm (error\:vector)}$  is not necessarily an element of  ${\rm GF}(2^m)$, but certainly an element of  ${\rm GF}(2^n)$  and it holds because of  $\underline{x} \cdot \mathbf{H}^{\rm T} = \underline{0}$  equally:
* The received word  $\underline{y} = \underline{x} \ {\rm (code\:word)} + \underline{e} \ {\rm (error\:vector)}$  is not necessarily an element of  ${\rm GF}(2^m)$,  but certainly an element of  ${\rm GF}(2^n)$  and it holds because of   $\underline{x} \cdot \mathbf{H}^{\rm T} = \underline{0}$   equally:
:$$\underline{s} = \underline{e} \cdot { \boldsymbol{\rm H}}^{\rm T}\hspace{0.05cm}. $$
:$$\underline{s} = \underline{e} \cdot { \boldsymbol{\rm H}}^{\rm T}\hspace{0.05cm}. $$


* Many error patterns  $\underline{e}$  lead to the same syndrome  $\underline{s}$. One now groups those error patterns with the same syndrome  $\underline{s}_{\mu}$  to the coset  ${\it \Psi}_{\mu}$ .
* Many error patterns  $\underline{e}$  lead to the same syndrome  $\underline{s}$. One now groups those error patterns with the same syndrome  $\underline{s}_{\mu}$  to the  "coset  ${\it \Psi}_{\mu}$".
 
* The coset leader  $\underline{e}_{\mu}$  is the error vector that has the lowest Hamming weight within the class  ${\it \Psi}_{\mu}$  and is accordingly the most probable.
 


The table above shows the list of minor class leaders  $\underline{e}_{\mu}$  for each  $\underline{s}_{\mu}$  in the Hamming code  $\rm HC \ (7, \ 4, \ 3)$. This table is needed for the subtask '''(1)'''.
* The  "coset leader"  $\underline{e}_{\mu}$  is the error vector that has the lowest Hamming weight within the class  ${\it \Psi}_{\mu}$  and is accordingly the most probable.


A similar table is to be created for the truncated Hamming code  $\rm HC \ (6, \ 3, \ 3)$ . This has already been used in the  [[Aufgaben:Exercise_4.6:_Product_Code_Generation| "Exercise 4.6"]]  and the  [[Aufgaben:Exercise_4.6Z:_Basics_of_Product_Codes| "Exercise 4.6Z"]]  and is given by its generator matrix:
:$${ \boldsymbol{\rm G}}
=  \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}.$$


Unlike the original  $\rm (7, \ 4, \ 3)$ Hamming code, the shortened  $\rm (6, \ 3, \ 3)$– Hamming code is not perfect, so a single-w
The table above shows the list of the class leaders  $\underline{e}_{\mu}$  for each  $\underline{s}_{\mu}$  in the Hamming code  $\rm HC \ (7,  4,  3)$. This table is needed for the subtask  '''(1)'''.
error coset leader  $\underline{s}_{\mu}$  cannot be found for all possible  $\underline{e}_{\mu}$ .


A similar table is to be created for the truncated Hamming code  $\rm HC \ (6,  3,  3)$.  This has already been used in the  [[Aufgaben:Exercise_4.6:_Product_Code_Generation|$\text{Exercise 4.6}$]]  and the  [[Aufgaben:Exercise_4.6Z:_Basics_of_Product_Codes| $\text{Exercise 4.6Z}$]]  and is given by its generator matrix:
:$${ \boldsymbol{\rm G}}=  \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}.$$


Unlike the original  $\rm (7,  4,  3)$  Hamming code,  the shortened  $\rm (6,  3,  3)$  Hamming code is not perfect, so a single-error coset leader  $\underline{s}_{\mu}$  cannot be found for all possible  $\underline{e}_{\mu}$.




Line 37: Line 30:




<u>Hints:</u>
* The exercise refers to the chapter&nbsp; [[Channel_Coding/The_Basics_of_Product_Codes| "Basic Product Codes"]]&nbsp; and is intended as a supplement to&nbsp; [[Aufgaben:Exercise_4.7:_Product_Code_Decoding|$\text{Exercise 4.7}$]].
* Similar task settings were covered in&nbsp; [[Aufgaben:Exercise_1.11:_Syndrome_Decoding| $\text{Exercise 1.11}$]]&nbsp; and&nbsp; [[Aufgaben:Exercise_1.11Z:_Syndrome_Decoding_again|$\text{Exercise 1.11Z}$]]&nbsp; from chapter&nbsp; [[Channel_Coding/Decoding_of_Linear_Block_Codes|"Decoding Linear Block Codes"]].


* The relationship between generator matrix&nbsp; $\mathbf{G}$&nbsp; and parity-check matrix&nbsp; $\mathbf{H}$&nbsp; of systematic codes is given in chapter&nbsp; [[Channel_Coding/General_Description_of_Linear_Block_Codes|"General Description of Linear Block Codes"]].


Hints:
* The exercise refers to the chapter&nbsp; [[Channel_Coding/The_Basics_of_Product_Codes| "Basic Product Codes"]]&nbsp; and is intended as a supplement to&nbsp; [[Aufgaben:Exercise_4.7:_Product_Code_Decoding| "Exercise 4.7"]]&nbsp;.
* Similar exercises were covered in the&nbsp; [[Aufgaben:Exercise_1.11:_Syndrome_Decoding| "Exercise 1.11"]]&nbsp; and the&nbsp; [[Aufgaben:Exercise_1.11Z:_Syndrome_Decoding_again| "Exercise 1.11Z"]]&nbsp; chapter&nbsp; [[Channel_Coding/Decoding_of_Linear_Block_Codes|"Decoding Linear Block Codes"]]&nbsp;.
* The relationship between generator matrix&nbsp; $\mathbf{G}$&nbsp; and parity-check matrix&nbsp; $\mathbf{H}$&nbsp; of systematic codes is given in chapter&nbsp; [[Channel_Coding/General_Description_of_Linear_Block_Codes|"General Description of Linear Block Codes"]]&nbsp;.




Line 48: Line 42:
===Questions===
===Questions===
<quiz display=simple>
<quiz display=simple>
{The received word be&nbsp; $\underline{y} = (0, \, 1, \, 1,\, 0, \, 1, \, 0)$, the syndrome&nbsp; $\underline{s} = (0, \, 1, \, 1)$. For which code word&nbsp; $\underline{x}$&nbsp; of&nbsp; $\mathcal{C}_1$&nbsp; does the syndrome decoder decide?
{The received word be&nbsp; $\underline{y} = (0, \, 1, \, 1,\, 0, \, 1, \, 0)$,&nbsp; the syndrome&nbsp; $\underline{s} = (0, \, 1, \, 1)$.&nbsp; For which code word&nbsp; $\underline{x}$&nbsp; of&nbsp; $\mathcal{C}_1$&nbsp; does the syndrome decoder decide?
|type="()"}
|type="()"}
- The most likely codeword is&nbsp; $\ \underline{x} = (1, \, 1, \, 1, \, 0, \, 1, \, 1, \, 0)$.
- The most likely code word is&nbsp; $\ \underline{x} = (1, \, 1, \, 1, \, 0, \, 1, \, 1, \, 0)$.
+ The most likely codeword is&nbsp; $\ \underline{x} = (0, \, 1, \, 0, \, 0, \, 1, \, 1, \, 0)$.
+ The most likely code word is&nbsp; $\ \underline{x} = (0, \, 1, \, 0, \, 0, \, 1, \, 1, \, 0)$.
- The most likely codeword is&nbsp; $\ \underline{x} = (0, \, 1, \, 0, \, 0, \, 1, \, 1, \, 1)$.
- The most likely code word is&nbsp; $\ \underline{x} = (0, \, 1, \, 0, \, 0, \, 1, \, 1, \, 1)$.


{What statements hold for the parity-check matrix&nbsp; $\mathbf{H}$&nbsp; of the truncated code&nbsp; $\mathcal{C}_2$?
{What statements hold for the parity-check matrix&nbsp; $\mathbf{H}$&nbsp; of the truncated code&nbsp; $\mathcal{C}_2$?
|type="[]"}
|type="[]"}
- This is a&nbsp; $4 &times 6$&ndash;matrix.
- This is a&nbsp; $4 &times 6$&nbsp; matrix.
+ The first row of this matrix is: &nbsp;$\ 110100$.
+ The first row of this matrix is&nbsp; "$110100$".
+ The second row of this matrix is: &nbsp;$\ 101010$.
+ The second row of this matrix is&nbsp; "$101010$".
+ The third row of this matrix is: &nbsp;$\ 011001$.
+ The third row of this matrix is&nbsp; "$011001$".


{What syndrome&nbsp; $\underline{s}$&nbsp; results for the error pattern&nbsp; $\underline{e} = (0, \, 0, \, 0, \, 0, \, 0, \, 0)$?
{What syndrome&nbsp; $\underline{s}$&nbsp; results for the error pattern&nbsp; $\underline{e} = (0, \, 0, \, 0, \, 0, \, 0, \, 0)$?
Line 86: Line 80:
===Solution===
===Solution===
{{ML-Kopf}}
{{ML-Kopf}}
'''(1)'''&nbsp; Correct is <u>proposed solution 2</u>:
'''(1)'''&nbsp; Correct is the&nbsp; <u>proposed solution 2</u>:
*From the [[Aufgaben:Exercise_4.7Z: _Principle_of_Syndrome_Decoding| "Syndrome table"]] on the information page &ndash; valid for the $\rm (7, \ 4, \ 3)$&ndash;Hamming code &ndash; it can be read that the syndrome $\underline{s} = \underline{s}_3 = (0, \, 1, \, 1)$ corresponds to the error pattern $\underline{e} = (0, \, 0, \, 1, \, 0, \, 0, \, 0, \, 0)$. Thus the code word
*From the&nbsp; [[Aufgaben:Exercise_4.7Z: _Principle_of_Syndrome_Decoding| "syndrome table"]]&nbsp; on the information page &ndash; valid for the&nbsp; $\rm (7, 4, 3)$&nbsp; Hamming code &ndash; it can be read that the syndrome &nbsp; $\underline{s} = \underline{s}_3 = (0, \, 1, \, 1)$&nbsp; corresponds to the error pattern &nbsp; $\underline{e} = (0, \, 0, \, 1, \, 0, \, 0, \, 0, \, 0)$. Thus the code word
:$$\underline{x} = \underline{y} \hspace{0.15cm}+ \hspace{0.15cm}  \underline{y} = (0, 1, 1, 0, 1, 1, 0)  \hspace{0.15cm}+ \hspace{0.15cm}(0, 0, 1, 0, 0, 0, 0)
:$$\underline{x} = \underline{y} \hspace{0.15cm}+ \hspace{0.15cm}  \underline{y} = (0, 1, 1, 0, 1, 1, 0)  \hspace{0.15cm}+ \hspace{0.15cm}(0, 0, 1, 0, 0, 0, 0)\hspace{0.15cm}= \hspace{0.15cm}(0, 1, 0, 0, 1, 1, 0)$$
\hspace{0.15cm}= \hspace{0.15cm}(0, 1, 0, 0, 1, 1, 0)$$
 
most likely and the syndrome decoder will output this as the result.
 
 
 
'''(2)'''&nbsp; Correct are <u>solutions 2, 3, and 4</u>:
*The parity-check matrix $\mathbf{H}$ of the truncated $\rm (6, \ 3)$&ndash;Hamming code $C_2$ has $m = n - k = 3$ rows and $n$ columns. Consequently, it is a $3 &times 6$&ndash;matrix &nbsp; &#8658; &nbsp; statement 1 is false.
 


*Since $\mathcal{C}_2$ is also a systematic code, the generator matrix $\mathbf{G}$ can be represented in the following form:
is most likely and the syndrome decoder will output this as the result.
:$${ \boldsymbol{\rm G}}
=  \begin{pmatrix}
1 &0 &0 &1 &1 &0  \\
0 &1 &0 &1 &0 &1  \\
0 &0 &1 &0 &1 &1 
\end{pmatrix}
= \left (  { \boldsymbol{\rm I}}_3 ;  \hspace{0.15cm} { \boldsymbol{\rm P}} \right )
\hspace{0.5cm}{\rm mit }\hspace{0.5cm}
{ \boldsymbol{\rm P}}
=  \begin{pmatrix}
1 &1 &0  \\
1 &0 &1  \\
0 &1 &1 
\end{pmatrix}
\hspace{0.05cm}.$$


*So it can be written for the parity-check matrix:
:$${ \boldsymbol{\rm H}}
=  \left ( { \boldsymbol{\rm P}}^{\rm T} ;  \hspace{0.15cm} { \boldsymbol{\rm I}}_3  \right )
=  \begin{pmatrix}
1 &1 &0  &1 &0  &0\\
1 &0 &1  &0 &1  &0\\
0 &1 &1  &0 &0  &1
\end{pmatrix}
\hspace{0.05cm}.$$


*Here $\mathbf{I}_3$ denotes a $3 &times 3$ diagonal matrix typical of the systematic code.


*Proposed solutions 2, 3, and 4 are therefore correct:
'''(2)'''&nbsp; Correct are the&nbsp; <u>solutions 2, 3, and 4</u>:
:* Row 1: &nbsp; $\ 110100$,
*The parity-check matrix&nbsp; $\mathbf{H}$&nbsp; of the truncated&nbsp; $\rm (6, 3)$&nbsp; Hamming code&nbsp; $C_2$&nbsp; has&nbsp; $m = n - k = 3$&nbsp; rows and&nbsp; $n$&nbsp; columns.&nbsp;
:* Row 2: &nbsp; $\ 101010$,
:* row 3: &nbsp; $\ 011001$.


*Consequently,&nbsp; it is a&nbsp; $3 &times 6$&nbsp; matrix &nbsp; &#8658; &nbsp; statement 1 is false.


'''(3)'''&nbsp; Correct is <u>proposed solution 1</u>:
*Since&nbsp; $\mathcal{C}_2$&nbsp; is also a systematic code,&nbsp; the generator matrix&nbsp; $\mathbf{G}$&nbsp; can be represented&nbsp; in the following form:
*According to the statements in the chapter [[Channel_Coding/Decoding_of_Linear_Block_Codes| "Decoding of Linear Block Codes"]], $\underline{s} = \underline{e} \cdot \mathbf{H}^{\rm T}$ can be written.  
:$${ \boldsymbol{\rm G}}=  \begin{pmatrix}1 &0 &0 &1 &1 &0  \\0 &1 &0 &1 &0 &1  \\0 &0 &1 &0 &1 &1\end{pmatrix}= \left (  { \boldsymbol{\rm I}}_3 ;  \hspace{0.15cm} { \boldsymbol{\rm P}} \right )\hspace{0.5cm}{\rm mit }\hspace{0.5cm}{ \boldsymbol{\rm P}}=  \begin{pmatrix}1 &1 &0  \\1 &0 &1  \\0 &1 &1\end{pmatrix}\hspace{0.05cm}.$$
*Thus, for the error-free case &nbsp; &#8658; &nbsp; $\underline{e} = (0, \, 0, \, 0, \, 0, \, 0, \, 0)$:
*So it can be written for the parity-check matrix::$${ \boldsymbol{\rm H}}=  \left ( { \boldsymbol{\rm P}}^{\rm T} ;  \hspace{0.15cm} { \boldsymbol{\rm I}}_3  \right )=  \begin{pmatrix}1 &1 &0  &1 &0  &0\\1 &0 &1  &0 &1  &0\\0 &1 &1  &0 &0  &1\end{pmatrix}\hspace{0.05cm}.$$
:$$\underline{s}= \left ( 0, \hspace{0.03cm} 0, \hspace{0.03cm}0, \hspace{0.03cm}0, \hspace{0.03cm}0, \hspace{0.03cm}0 \right ) \cdot
*Here&nbsp; $\mathbf{I}_3$&nbsp; denotes a&nbsp; $3 &times 3$&nbsp; diagonal matrix typical of the systematic code.*<u>Proposed solutions 2, 3, and 4</u>&nbsp; are therefore correct::* Row 1: &nbsp; $110100$,:* Row 2: &nbsp; $101010$,:* Row 3: &nbsp; $011001$.'''(3)'''&nbsp; Correct is the&nbsp; <u>proposed solution 1</u>:*According to the statements in the chapter&nbsp; [[Channel_Coding/Decoding_of_Linear_Block_Codes| "Decoding of Linear Block Codes"]] &nbsp; &rArr; &nbsp;  $\underline{s} = \underline{e} \cdot \mathbf{H}^{\rm T}$&nbsp; can be written.*Thus,&nbsp; for the error-free case &nbsp; &#8658; &nbsp; $\underline{e} = (0, \, 0, \, 0, \, 0, \, 0, \, 0)$::$$\underline{s}= \left ( 0, \hspace{0.03cm} 0, \hspace{0.03cm}0, \hspace{0.03cm}0, \hspace{0.03cm}0, \hspace{0.03cm}0 \right ) \cdot\begin{pmatrix}1 &1 &0 \\1 &0 &1 \\0 &1 &1 \\1 &0 &0 \\0 &1 &0 \\0 &0 &1\end{pmatrix}=\left ( 0, \hspace{0.03cm} 0, \hspace{0.03cm}0 \right ) = \underline{s}_0.$$
  \begin{pmatrix}
1 &1 &0 \\
1 &0 &1 \\
0 &1 &1 \\
1 &0 &0 \\
0 &1 &0 \\
0 &0 &1
\end{pmatrix}=
\left ( 0, \hspace{0.03cm} 0, \hspace{0.03cm}0 \right ) = \underline{s}_0.$$






'''(4)'''&nbsp; <u>All statements</u> are true, as can be seen from the sample solution to the last subtask:  
'''(4)'''&nbsp; <u>All statements</u>&nbsp; are true,&nbsp; as can be seen from the sample solution to the last subtask:  
*The rows of the transposed parity-check matrix, read from top to bottom, give the respective syndromes for the error patterns $\underline{e} = (1, \, 0, \, 0, \, 0, \, 0, \, 0), \hspace{0.05cm} \text{ ... } \hspace{0.05cm} , \ \underline{e} = (0, \, 0, \, 0, \, 0, \, 0, \, 1)$.
*The rows of the transposed parity-check matrix,&nbsp; read from top to bottom,&nbsp; give the respective syndromes for the error patterns $\underline{e} = (1, \, 0, \, 0, \, 0, \, 0, \, 0), \hspace{0.05cm} \text{...} \hspace{0.05cm} , \ \underline{e} = (0, \, 0, \, 0, \, 0, \, 0, \, 1)$.






'''(5)'''&nbsp; Correct are <u>solutions 2, 3, and 4</u>:
'''(5)'''&nbsp; Correct are the&nbsp; <u>solutions 2, 3, and 4</u>:
*The first statement is false because the first two rows of the transposed parity-check matrix  $\mathbf{H}^{\rm T}$ summed $(1, \, 1, \, 0) + (1, \, 0, \, 1) = (0, \, 1, \, 1) = \underline{s_3} &ne; \underline{s}_7$ results in.
*The first statement is false because the sum of the first two rows of the transposed parity-check matrix results in &nbsp; $\mathbf{H}^{\rm T}$ summed $(1, \, 1, \, 0) + (1, \, 0, \, 1) = (0, \, 1, \, 1) = \underline{s_3} &ne; \underline{s}_7$.
*Statements 2, 3 and 4, on the other hand, are correct:
*The statements 2, 3 and 4&nbsp;are correct:
:* First and last row: $\ (1, \, 1, \, 0) + (0, \, 0, \, 1) = (1, \, 1, \, 1) = \underline{s}_7$,
:* First and last row: $\ (1, \, 1, \, 0) + (0, \, 0, \, 1) = (1, \, 1, \, 1) = \underline{s}_7$,
:* second and fifth row: $\ (1, \, 0, \, 1) + (0, \, 1, \, 0) = (1, \, 1, \, 1) = \underline{s}_7$,
:* second and fifth row: $\ (1, \, 0, \, 1) + (0, \, 1, \, 0) = (1, \, 1, \, 1) = \underline{s}_7$,
:* The sum over all rows also gives $\underline{s}_7$, since there are exactly three ones in each matrix column.
:* The sum over all rows also gives&nbsp;  $\underline{s}_7$,&nbsp;  since there are exactly three&nbsp; "ones"&nbsp;  in each matrix column.
{{ML-Fuß}}
{{ML-Fuß}}


Line 166: Line 116:


[[Category:Channel Coding: Exercises|^4.2 About the Product Codes^]]
[[Category:Channel Coding: Exercises|^4.2 About the Product Codes^]]
[[de:Aufgaben:Aufgabe 4.7Z: Zum Prinzip der Syndromdecodierung]]

Latest revision as of 17:58, 16 March 2026

Syndrome table for code  $\mathcal{C}_1$

The syndrome decoding was already treated in detail in the chapter  "Decoding of Linear Block Codes"

With all Hamming codes,  which are as well known perfect,  this gives a decoding result as good as with the  $($generally$)$ clearly more complicated maximum likelihood decoding.

For syndrome decoding one proceeds as follows:

  • One forms the syndrome from the received vector  $\underline{y}$  of length  $n$  and the parity-check matrix  $\mathbf{H}$:
$$\underline{s} = \underline{y} \cdot { \boldsymbol{\rm H}}^{\rm T} \in {\rm GF}(2^m)\hspace{0.05cm}, \hspace{0.5cm}{\rm Note\hspace{-0.10cm}:} \hspace{0.15cm}m = n-k \hspace{0.05cm}. $$
  • The received word  $\underline{y} = \underline{x} \ {\rm (code\:word)} + \underline{e} \ {\rm (error\:vector)}$  is not necessarily an element of  ${\rm GF}(2^m)$,  but certainly an element of  ${\rm GF}(2^n)$  and it holds because of   $\underline{x} \cdot \mathbf{H}^{\rm T} = \underline{0}$   equally:
$$\underline{s} = \underline{e} \cdot { \boldsymbol{\rm H}}^{\rm T}\hspace{0.05cm}. $$
  • Many error patterns  $\underline{e}$  lead to the same syndrome  $\underline{s}$. One now groups those error patterns with the same syndrome  $\underline{s}_{\mu}$  to the  "coset  ${\it \Psi}_{\mu}$".
  • The  "coset leader"  $\underline{e}_{\mu}$  is the error vector that has the lowest Hamming weight within the class  ${\it \Psi}_{\mu}$  and is accordingly the most probable.


The table above shows the list of the class leaders  $\underline{e}_{\mu}$  for each  $\underline{s}_{\mu}$  in the Hamming code  $\rm HC \ (7, 4, 3)$. This table is needed for the subtask  (1).

A similar table is to be created for the truncated Hamming code  $\rm HC \ (6, 3, 3)$.  This has already been used in the  $\text{Exercise 4.6}$  and the  $\text{Exercise 4.6Z}$  and is given by its generator matrix:

$${ \boldsymbol{\rm G}}= \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}.$$

Unlike the original  $\rm (7, 4, 3)$  Hamming code,  the shortened  $\rm (6, 3, 3)$  Hamming code is not perfect, so a single-error coset leader  $\underline{s}_{\mu}$  cannot be found for all possible  $\underline{e}_{\mu}$.




Hints:



Questions

1 The received word be  $\underline{y} = (0, \, 1, \, 1,\, 0, \, 1, \, 0)$,  the syndrome  $\underline{s} = (0, \, 1, \, 1)$.  For which code word  $\underline{x}$  of  $\mathcal{C}_1$  does the syndrome decoder decide?

The most likely code word is  $\ \underline{x} = (1, \, 1, \, 1, \, 0, \, 1, \, 1, \, 0)$.
The most likely code word is  $\ \underline{x} = (0, \, 1, \, 0, \, 0, \, 1, \, 1, \, 0)$.
The most likely code word is  $\ \underline{x} = (0, \, 1, \, 0, \, 0, \, 1, \, 1, \, 1)$.

2 What statements hold for the parity-check matrix  $\mathbf{H}$  of the truncated code  $\mathcal{C}_2$?

This is a  $4 &times 6$  matrix.
The first row of this matrix is  "$110100$".
The second row of this matrix is  "$101010$".
The third row of this matrix is  "$011001$".

3 What syndrome  $\underline{s}$  results for the error pattern  $\underline{e} = (0, \, 0, \, 0, \, 0, \, 0, \, 0)$?

$\underline{e} = (0, \, 0, \, 0, \, 0, \, 0, \, 0) \ \Rightarrow \ \underline{s} = \underline{s}_0 = (0, \, 0, \, 0)$,
$\underline{e} = (0, \, 0, \, 0, \, 0, \, 0, \, 0) \ \Rightarrow \ \underline{s} = \underline{s}_1 = (0, \, 0, \, 1)$,
$\underline{e} = (0, \, 0, \, 0, \, 0, \, 0, \, 0) \ \Rightarrow \ \underline{s} = \underline{s}_7 = (1, \, 1, \, 1)$.

4 Which of the following statements are true regarding single-error patterns?

single-error pattern   $\underline{e} = (1, \, 0, \, 0, \, 0, \, 0, \, 0)$   ⇒   syndrome $\underline{s}_6 = (1, \, 1, \, 0)$,
single-error pattern   $\underline{e} = (0, \, 1, \, 0, \, 0, \, 0, \, 0)$   ⇒   syndrome $\underline{s}_5 = (1, \, 0, \, 1)$,
single-error pattern   $\underline{e} = (0, \, 0, \, 1, \, 0, \, 0, \, 0)$   ⇒   syndrome $\underline{s}_3 = (0, \, 1, \, 1)$,
single-error pattern   $\underline{e} = (0, \, 0, \, 0, \, 1, \, 0, \, 0)$   ⇒   syndrome $\underline{s}_4 = (1, \, 0, \, 0)$,
single-error pattern   $\underline{e} = (0, \, 0, \, 0, \, 0, \, 1, \, 0)$   ⇒   syndrome $\underline{s}_2 = (0, \, 1, \, 0)$,
single-error pattern   $\underline{e} = (0, \, 0, \, 0, \, 0, \, 0, \, 1)$   ⇒   syndrome $\underline{s}_1 = (0, \, 0, \, 1)$,

5 Which of the following error patterns lead to the syndrome  $\underline{s}_7 = (1, \, 1, \, 1)$?

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


Solution

(1)  Correct is the  proposed solution 2:

  • From the  "syndrome table"  on the information page – valid for the  $\rm (7, 4, 3)$  Hamming code – it can be read that the syndrome   $\underline{s} = \underline{s}_3 = (0, \, 1, \, 1)$  corresponds to the error pattern   $\underline{e} = (0, \, 0, \, 1, \, 0, \, 0, \, 0, \, 0)$. Thus the code word
$$\underline{x} = \underline{y} \hspace{0.15cm}+ \hspace{0.15cm} \underline{y} = (0, 1, 1, 0, 1, 1, 0) \hspace{0.15cm}+ \hspace{0.15cm}(0, 0, 1, 0, 0, 0, 0)\hspace{0.15cm}= \hspace{0.15cm}(0, 1, 0, 0, 1, 1, 0)$$

is most likely and the syndrome decoder will output this as the result.


(2)  Correct are the  solutions 2, 3, and 4:

  • The parity-check matrix  $\mathbf{H}$  of the truncated  $\rm (6, 3)$  Hamming code  $C_2$  has  $m = n - k = 3$  rows and  $n$  columns. 
  • Consequently,  it is a  $3 &times 6$  matrix   ⇒   statement 1 is false.
  • Since  $\mathcal{C}_2$  is also a systematic code,  the generator matrix  $\mathbf{G}$  can be represented  in the following form:
$${ \boldsymbol{\rm G}}= \begin{pmatrix}1 &0 &0 &1 &1 &0 \\0 &1 &0 &1 &0 &1 \\0 &0 &1 &0 &1 &1\end{pmatrix}= \left ( { \boldsymbol{\rm I}}_3 ; \hspace{0.15cm} { \boldsymbol{\rm P}} \right )\hspace{0.5cm}{\rm mit }\hspace{0.5cm}{ \boldsymbol{\rm P}}= \begin{pmatrix}1 &1 &0 \\1 &0 &1 \\0 &1 &1\end{pmatrix}\hspace{0.05cm}.$$
  • So it can be written for the parity-check matrix::$${ \boldsymbol{\rm H}}= \left ( { \boldsymbol{\rm P}}^{\rm T} ; \hspace{0.15cm} { \boldsymbol{\rm I}}_3 \right )= \begin{pmatrix}1 &1 &0 &1 &0 &0\\1 &0 &1 &0 &1 &0\\0 &1 &1 &0 &0 &1\end{pmatrix}\hspace{0.05cm}.$$
  • Here  $\mathbf{I}_3$  denotes a  $3 &times 3$  diagonal matrix typical of the systematic code.*Proposed solutions 2, 3, and 4  are therefore correct::* Row 1:   $110100$,:* Row 2:   $101010$,:* Row 3:   $011001$.(3)  Correct is the  proposed solution 1:*According to the statements in the chapter  "Decoding of Linear Block Codes"   ⇒   $\underline{s} = \underline{e} \cdot \mathbf{H}^{\rm T}$  can be written.*Thus,  for the error-free case   ⇒   $\underline{e} = (0, \, 0, \, 0, \, 0, \, 0, \, 0)$::$$\underline{s}= \left ( 0, \hspace{0.03cm} 0, \hspace{0.03cm}0, \hspace{0.03cm}0, \hspace{0.03cm}0, \hspace{0.03cm}0 \right ) \cdot\begin{pmatrix}1 &1 &0 \\1 &0 &1 \\0 &1 &1 \\1 &0 &0 \\0 &1 &0 \\0 &0 &1\end{pmatrix}=\left ( 0, \hspace{0.03cm} 0, \hspace{0.03cm}0 \right ) = \underline{s}_0.$$


(4)  All statements  are true,  as can be seen from the sample solution to the last subtask:

  • The rows of the transposed parity-check matrix,  read from top to bottom,  give the respective syndromes for the error patterns $\underline{e} = (1, \, 0, \, 0, \, 0, \, 0, \, 0), \hspace{0.05cm} \text{...} \hspace{0.05cm} , \ \underline{e} = (0, \, 0, \, 0, \, 0, \, 0, \, 1)$.


(5)  Correct are the  solutions 2, 3, and 4:

  • The first statement is false because the sum of the first two rows of the transposed parity-check matrix results in   $\mathbf{H}^{\rm T}$ summed $(1, \, 1, \, 0) + (1, \, 0, \, 1) = (0, \, 1, \, 1) = \underline{s_3} ≠ \underline{s}_7$.
  • The statements 2, 3 and 4 are correct:
  • First and last row: $\ (1, \, 1, \, 0) + (0, \, 0, \, 1) = (1, \, 1, \, 1) = \underline{s}_7$,
  • second and fifth row: $\ (1, \, 0, \, 1) + (0, \, 1, \, 0) = (1, \, 1, \, 1) = \underline{s}_7$,
  • The sum over all rows also gives  $\underline{s}_7$,  since there are exactly three  "ones"  in each matrix column.