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

From LNTwww
Noah (talk | contribs)
No edit summary
Fix interlanguage link: resolve redirect chain
 
(16 intermediate revisions by 3 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:P_ID3013__KC_Z_4_7_v1.png|right|frame|Nebenklassenanführer für den betrachteten Code  $\rm HC \  (7, \ 4, \ 3)$]]
[[File:EN KC T 4 2 S2b v2 neu.png|right|frame|Syndrome table for code  $\mathcal{C}_1$]]  
Die Syndromdecodierung wurde bereits im Kapitel  [[Channel_Coding/Decodierung_linearer_Blockcodes| Decodierung linearer Blockcodes]]  ausführlich behandelt. Bei allen Hammingcodes, die ja bekanntlich perfekt sind, ergibt sich hiermit ein gleich gutes Decodierergebnis wie mit der (im allgemeinen) deutlich komplizierteren Maximum–Likelihood–Decodierung.
The syndrome decoding was already treated in detail in the chapter  [[Channel_Coding/Decoding_of_Linear_Block_Codes| "Decoding of Linear Block Codes"]].   


Bei der Syndromdecodierung geht man wie folgt vor:
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.
* Man bildet aus dem Empfangsvektor  $\underline{y}$  der Länge  $n$  und der Prüfmatrix  $\mathbf{H}$  das Syndrom:
:$$\underline{s} = \underline{y} \cdot { \boldsymbol{\rm H}}^{\rm T} \in {\rm GF}(2^m)
  \hspace{0.05cm},  \hspace{0.5cm}{\rm Anmerkung\hspace{-0.10cm}:} \hspace{0.15cm}m = n-k \hspace{0.05cm}. $$


* Das Empfangswort  $\underline{y} = \underline{x} \ {\rm (Codewort)} + \underline{e} \ {\rm (Fehlervektor)}$  ist nicht notwendigermaßen ein Element von  ${\rm GF}(2^m)$, sicher aber ein Element von  ${\rm GF}(2^n)$  und es gilt wegen  $\underline{x} \cdot \mathbf{H}^{\rm T} = \underline{0}$  gleichermaßen:
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}. $$
:$$\underline{s} = \underline{e} \cdot { \boldsymbol{\rm H}}^{\rm T}\hspace{0.05cm}. $$


* Viele Fehlermuster  $\underline{e}$  führen zum gleichen Syndrom  $\underline{s}$. Man fasst nun diejenigen Fehlermuster mit gleichem Syndrom  $\underline{s}_{\mu}$  zur Nebenklasse  ${\it \Psi}_{\mu}$  zusammen.
* 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}$".


* Als Nebenklassenanführer  $\underline{e}_{\mu}$  bezeichnet man denjenigen Fehlervektor, der innerhalb der Klasse  ${\it \Psi}_{\mu}$  das geringste Hamming–Gewicht aufweist und dementsprechend am wahrscheinlichsten ist.
* 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.




Die  obige Tabelle zeigt die Liste der Nebenklassenanführer  $\underline{e}_{\mu}$  für die einzelnen  $\underline{s}_{\mu}$  beim Hammingcode  $\rm HC \ (7, \ 4, \ 3)$. Diese Tabelle wird für die Teilaufgabe '''(1)''' benötigt.
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)'''.


Eine ähnliche Tabelle soll für den verkürzten Hammingcode  $\rm HC \ (6, \ 3, \ 3)$  erstellt werden. Dieser wurde bereits in der  [[Aufgaben:4.6_Produktcode%E2%80%93Generierung| Aufgabe 4.6]]  sowie der  [[Aufgaben:4.6Z_Grundlagen_der_Produktcodes| Aufgabe 4.6Z]]  benutzt und ist durch seine Generatormatrix gegeben:
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}}  
:$${ \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}.$$
=  \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}.$$


Im Gegensatz zum originalen  $\rm   (7, \ 4, \ 3)$–Hammingcode ist der verkürzte  $\rm   (6, \ 3, \ 3)$–Hammingcode nicht perfekt, so dass sich nicht für alle möglichen  $\underline{s}_{\mu}$  ein Einfehler–Nebenklassenanführer  $\underline{e}_{\mu}$  finden lässt.
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 34: 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"]].




''Hinweise:''
* Die Aufgabe bezieht sich auf das Kapitel&nbsp; [[Channel_Coding/Grundlegendes_zu_den_Produktcodes| Grundlegendes zu den Produktcodes]]&nbsp; und ist als Ergänzung zur&nbsp; [[Aufgaben:4.7_Produktcode%E2%80%93Decodierung| Aufgabe A4.7]]&nbsp; gedacht.
* Ähnliche Aufgabenstellungen wurden in der&nbsp; [[Aufgaben:1.11_Syndromdecodierung| Aufgabe 1.11]]&nbsp; und der&nbsp; [[Aufgaben:1.11Z_Nochmals_Syndromdecodierung| Aufgabe 1.11Z]]&nbsp; im Kapitel&nbsp; [[Channel_Coding/Decodierung_linearer_Blockcodes|Decodierung linearer Blockcodes]]&nbsp; behandelt.
* Der Zusammenhang zwischen Generatormatrix&nbsp; $\mathbf{G}$&nbsp; und Prüfmatrix&nbsp; $\mathbf{H}$&nbsp; von systematischen Codes ist im Kapitel&nbsp; [[Channel_Coding/Allgemeine_Beschreibung_linearer_Blockcodes| Allgemeine Beschreibung linearer Blockcodes]]&nbsp; angegeben.




 
===Questions===
===Fragebogen===
<quiz display=simple>
<quiz display=simple>
{Das Empfangswort sei&nbsp; $\underline{y} = (0, \, 1, \, 1,\, 0, \, 1, \, 1, \, 0)$, das Syndrom&nbsp; $\underline{s} = (0, \, 1, \, 1)$. Für welches Codewort&nbsp; $\underline{x}$&nbsp; von&nbsp; $\mathcal{C}_1$&nbsp; entscheidet sich der Syndromdecoder?
{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="()"}
- Das wahrscheinlichste Codewort ist&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)$.
+ Das wahrscheinlichste Codewort ist&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)$.
- Das wahrscheinlichste Codewort ist&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)$.


{Welche Aussagen gelten für die Prüfmatrix&nbsp; $\mathbf{H}$&nbsp; des verkürzten Codes&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="[]"}
- Es handelt sich um eine&nbsp; $4 &times 6$&ndash;Matrix.
- This is a&nbsp; $4 &times 6$&nbsp; matrix.
+ Die erste Zeile dieser Matrix lautet: &nbsp;$\ 110100$.
+ The first row of this matrix is&nbsp; "$110100$".
+ Die zweite Zeile dieser Matrix lautet: &nbsp;$\ 101010$.
+ The second row of this matrix is&nbsp; "$101010$".
+ Die dritte Zeile dieser Matrix lautet: &nbsp;$\ 011001$.
+ The third row of this matrix is&nbsp; "$011001$".


{Welches Syndrom&nbsp; $\underline{s}$&nbsp; ergibt sich für das Fehlermuster&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)$?
|type="()"}
|type="()"}
+ $\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}_0 = (0, \, 0, \, 0)$,
Line 65: Line 61:
- $\underline{e} = (0, \, 0, \, 0, \, 0, \, 0, \, 0) \ \Rightarrow \ \underline{s} = \underline{s}_7 = (1, \, 1, \, 1)$.
- $\underline{e} = (0, \, 0, \, 0, \, 0, \, 0, \, 0) \ \Rightarrow \ \underline{s} = \underline{s}_7 = (1, \, 1, \, 1)$.


{Welche der folgenden Aussagen stimmen bezüglich der Einfehlermuster?
{Which of the following statements are true regarding single-error patterns?
|type="[]"}
|type="[]"}
+ Einfehlermuster &nbsp; $\underline{e} = (1, \, 0, \, 0, \, 0, \, 0, \, 0)$ &nbsp; &#8658; &nbsp; Syndrom $\underline{s}_6 = (1, \, 1, \, 0)$,
+ single-error pattern &nbsp; $\underline{e} = (1, \, 0, \, 0, \, 0, \, 0, \, 0)$ &nbsp; &#8658; &nbsp; syndrome $\underline{s}_6 = (1, \, 1, \, 0)$,
+ Einfehlermuster &nbsp; $\underline{e} = (0, \, 1, \, 0, \, 0, \, 0, \, 0)$ &nbsp; &#8658; &nbsp; Syndrom $\underline{s}_5 = (1, \, 0, \, 1)$,
+ single-error pattern &nbsp; $\underline{e} = (0, \, 1, \, 0, \, 0, \, 0, \, 0)$ &nbsp; &#8658; &nbsp; syndrome $\underline{s}_5 = (1, \, 0, \, 1)$,
+ Einfehlermuster &nbsp; $\underline{e} = (0, \, 0, \, 1, \, 0, \, 0, \, 0)$ &nbsp; &#8658; &nbsp; Syndrom $\underline{s}_3 = (0, \, 1, \, 1)$,
+ single-error pattern &nbsp; $\underline{e} = (0, \, 0, \, 1, \, 0, \, 0, \, 0)$ &nbsp; &#8658; &nbsp; syndrome $\underline{s}_3 = (0, \, 1, \, 1)$,
+ Einfehlermuster &nbsp; $\underline{e} = (0, \, 0, \, 0, \, 1, \, 0, \, 0)$ &nbsp; &#8658; &nbsp; Syndrom $\underline{s}_4 = (1, \, 0, \, 0)$,
+ single-error pattern &nbsp; $\underline{e} = (0, \, 0, \, 0, \, 1, \, 0, \, 0)$ &nbsp; &#8658; &nbsp; syndrome $\underline{s}_4 = (1, \, 0, \, 0)$,
+ Einfehlermuster &nbsp; $\underline{e} = (0, \, 0, \, 0, \, 0, \, 1, \, 0)$ &nbsp; &#8658; &nbsp; Syndrom $\underline{s}_2 = (0, \, 1, \, 0)$,
+ single-error pattern &nbsp; $\underline{e} = (0, \, 0, \, 0, \, 0, \, 1, \, 0)$ &nbsp; &#8658; &nbsp; syndrome $\underline{s}_2 = (0, \, 1, \, 0)$,
+ Einfehlermuster &nbsp; $\underline{e} = (0, \, 0, \, 0, \, 0, \, 0, \, 1)$ &nbsp; &#8658; &nbsp; Syndrom $\underline{s}_1 = (0, \, 0, \, 1)$,
+ single-error pattern &nbsp; $\underline{e} = (0, \, 0, \, 0, \, 0, \, 0, \, 1)$ &nbsp; &#8658; &nbsp; syndrome $\underline{s}_1 = (0, \, 0, \, 1)$,


{Welche der folgenden Fehlermuster führen zum Syndrom&nbsp; $\underline{s}_7 = (1, \, 1, \, 1)$?
{Which of the following error patterns lead to the syndrome&nbsp; $\underline{s}_7 = (1, \, 1, \, 1)$?
|type="[]"}
|type="[]"}
- $\underline{e} = (1, \, 1, \, 0, \, 0, \, 0, \, 0)$,
- $\underline{e} = (1, \, 1, \, 0, \, 0, \, 0, \, 0)$,
Line 82: Line 78:
</quiz>
</quiz>


===Musterlösung===
===Solution===
{{ML-Kopf}}
{{ML-Kopf}}
'''(1)'''&nbsp; Richtig ist der <u>Lösungsvorschlag 2</u>:
'''(1)'''&nbsp; Correct is the&nbsp; <u>proposed solution 2</u>:
*Aus der [[Aufgaben:4.7Z_Syndromdecodierung_%E2%80%93_Prinzip| Syndromtabelle]] auf der Angabenseite &ndash; gültig für den $\rm (7, \ 4, \ 3)$&ndash;Hammingcode &ndash; kann man ablesen, dass das Syndrom $\underline{s} = \underline{s}_3 = (0, \, 1, \, 1)$ mit dem Fehlermuster $\underline{e} = (0, \, 0, \, 1, \, 0, \, 0, \, 0, \, 0)$ korrespondiert. Damit ist das Codewort
*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)$$
 
am wahrscheinlichsten und der Syndromdecoder gibt dieses als Ergebnis aus.
 
 
'''(2)'''&nbsp; Richtig sind die <u>Lösungsvorschläge 2, 3 und 4</u>:
*Die Prüfmatrix $\mathbf{H}$ des verkürzten $\rm (6, \ 3)$&ndash;Hammingcodes $C_2$ hat $m = n - k = 3$ Zeilen und $n$ Spalten. Es handelt sich demzufolge um eine $3 &times 6$&ndash;Matrix &nbsp; &#8658; &nbsp; die Aussage 1 ist falsch.


*Da es sich auch bei $\mathcal{C}_2$ um einen systematischen Code handelt, kann die Generatormatrix $\mathbf{G}$ in folgender Form dargestellt werden:
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}.$$


*Somit kann für die Prüfmatrix geschrieben werden:
:$${ \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}.$$


*Hierbei bezeichnet $\mathbf{I}_3$ eine $3 &times 3$&ndash;Diagonalmatrix, die typisch ist für den systematischen Code.


*Die Lösungsvorschläge 2, 3 und 4 sind somit richtig:
'''(2)'''&nbsp; Correct are the&nbsp; <u>solutions 2, 3, and 4</u>:
:* Zeile 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;
:* Zeile 2: &nbsp; $\ 101010$,
:* Zeile 3: &nbsp; $\ 011001$.


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


'''(3)'''&nbsp; Richtig ist der <u>Lösungsvorschlag 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:
*Nach den Aussagen im Kapitel [[Channel_Coding/Decodierung_linearer_Blockcodes| Decodierung linearer Blockcodes]] kann für das Syndrom auch $\underline{s} = \underline{e} \cdot \mathbf{H}^{\rm T}$ geschrieben werden.  
:$${ \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}.$$
*Damit erhält man für den fehlerfreien Fall &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>Alle Aussagen</u> stimmen, wie aus der Musterlösung zur letzten Teilaufgabe zu ersehen ist:  
'''(4)'''&nbsp; <u>All statements</u>&nbsp; are true,&nbsp; as can be seen from the sample solution to the last subtask:  
*Die Zeilen der transponierten Prüfmatrix ergeben von oben nach unten gelesen, die jeweiligen Syndrome für die Fehlermuster $\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; Richtig sind die <u>Lösungsvorschläge 2, 3 und 4</u>:
'''(5)'''&nbsp; Correct are the&nbsp; <u>solutions 2, 3, and 4</u>:
*Die erste Aussage ist falsch, da die beiden ersten Zeilen der transponierten Prüfmatrix $\mathbf{H}^{\rm T}$ aufsummiert $(1, \, 1, \, 0) + (1, \, 0, \, 1) = (0, \, 1, \, 1) = \underline{s_3} &ne; \underline{s}_7$ ergibt.  
*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$.
*Die Aussagen 2, 3 und 4 sind dagegen richtig:
*The statements 2, 3 and 4&nbsp;are correct:
:* Erste und letzte Zeile: $\ (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$,
:* zweite und fünfte Zeile: $\ (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$,
:* Die Summe über alle Zeilen ergibt ebenfalls $\underline{s}_7$, da es in jeder Matrixspalte genau drei Einsen gibt.
:* 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 162: 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.