Difference between revisions of "Aufgaben:Exercise 1.08Z: Equivalent Codes"

From LNTwww
m (Text replacement - "Category:Aufgaben zu Kanalcodierung" to "Category:Channel Coding: Exercises")
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{quiz-Header|Buchseite=Kanalcodierung/Allgemeine Beschreibung linearer Blockcodes
+
{{quiz-Header|Buchseite=Channel_Coding/General_Description_of_Linear_Block_Codes
  
 
}}
 
}}
  
[[File:P_ID2394__KC_Z_1_8.png|right|frame|Vier  $(6, 3)$–Blockcodes]]
+
[[File:P_ID2394__KC_Z_1_8.png|right|frame|Four  $(6, 3)$  block codes]]
  
In der Grafik sind die Zuordnungen  $\underline{u} \rightarrow \underline{x}$  für verschiedene Codes angegeben, die im Folgenden jeweils durch die Generatormatrix  $\boldsymbol{\rm G}$  und die Prüfmatrix  $\boldsymbol{\rm H}$  charakterisiert werden:
+
In the graph,  the mappings  $\underline{u} \rightarrow \underline{x}$  for different codes are given,  each characterized below by the generator matrix  $\boldsymbol{\rm G}$  and the parity-check matrix  $\boldsymbol{\rm H}$,  respectively:
  
 
*${\boldsymbol{\rm Code \ A}}$:
 
*${\boldsymbol{\rm Code \ A}}$:
Line 19: Line 19:
 
:$${ \boldsymbol{\rm G}}_{\rm D} = \begin{pmatrix} 1 &0 &0 &1 &0 &1\\ 0 &1 &0 &1 &0 &0\\ 0 &0 &1 &0 &1 &0 \end{pmatrix} \hspace{0.05cm},\hspace{0.5cm}{ \boldsymbol{\rm H}}_{\rm D} = \begin{pmatrix} 1 &1 &0 &1 &0 &0\\ 0 &0 &1 &0 &1 &0\\ 1 &0 &0 &0 &0 &1 \end{pmatrix} \hspace{0.05cm}.$$
 
:$${ \boldsymbol{\rm G}}_{\rm D} = \begin{pmatrix} 1 &0 &0 &1 &0 &1\\ 0 &1 &0 &1 &0 &0\\ 0 &0 &1 &0 &1 &0 \end{pmatrix} \hspace{0.05cm},\hspace{0.5cm}{ \boldsymbol{\rm H}}_{\rm D} = \begin{pmatrix} 1 &1 &0 &1 &0 &0\\ 0 &0 &1 &0 &1 &0\\ 1 &0 &0 &0 &0 &1 \end{pmatrix} \hspace{0.05cm}.$$
  
In dieser Aufgabe soll untersucht werden, welche dieser Codes bzw. Codepaare
+
This task is to investigate which of these codes or code pairs are
  
*systematisch sind,
+
*are systematic,
*identisch sind  (das heißt:   Verschiedene Codes haben gleiche Codeworte),
+
*are identical  (that is:   Different codes have same code words),
*äquivalent sind  (das heißt:   Verschiedene Codes haben gleiche Codeparameter).
+
*are equivalent  (that is:   Different codes have same code parameters).
  
  
  
  
 +
Hints :
  
 +
*This exercise belongs to the chapter  [[Channel_Coding/General_Description_of_Linear_Block_Codes|"General Description of Linear Block Codes"]].
  
''Hinweise'' :
+
*Reference is made in particular to the sections  [[Channel_Coding/General_Description_of_Linear_Block_Codes#Systematic_Codes|"Systematic Codes"]]   and   [[Channel_Coding/General_Description_of_Linear_Block_Codes#Identical_Codes|"Identical Codes"]].
  
*Die Aufgabe gehört zum Kapitel  [[Channel_Coding/Allgemeine_Beschreibung_linearer_Blockcodes|Allgemeine Beschreibung linearer Blockcodes]].
+
*Note that the specification of a parity-check matrix  $\boldsymbol{\rm H}$  is not unique.  If one changes the order of the parity-check equations, this corresponds to a swapping of rows.
*Bezug genommen wird insbesondere auf die Seiten  [[Channel_Coding/Allgemeine_Beschreibung_linearer_Blockcodes#Systematische_Codes|Systematische Codes]]  sowie  [[Channel_Coding/Allgemeine_Beschreibung_linearer_Blockcodes#Identische_Codes|Identische Codes]].
 
*Anzumerken ist, dass die Angabe einer Prüfmatrix  $\boldsymbol{\rm H}$  nicht eindeutig ist.  
 
*Verändert man die Reihenfolge der Prüfgleichungen, so entspricht dies einer Vertauschung von Zeilen.
 
  
  
  
===Fragebogen===
+
===Questions===
  
 
<quiz display=simple>
 
<quiz display=simple>
{Welche der nachfolgend aufgeführten Codes sind systematisch?
+
{Which of the codes listed below are systematic?
 
|type="[]"}
 
|type="[]"}
 
+ Code &nbsp;$\rm A$,
 
+ Code &nbsp;$\rm A$,
Line 49: Line 48:
 
+ Code &nbsp;$\rm D$.
 
+ Code &nbsp;$\rm D$.
  
{Welche der vorgegebenen Codepaare sind identisch?
+
{Which of the given code pairs are identical?
 
|type="[]"}
 
|type="[]"}
 
 
+ Code &nbsp;$\rm A$&nbsp; und Code &nbsp;$\rm B$,
+
+ Code &nbsp;$\rm A$&nbsp; and&nbsp; code &nbsp;$\rm B$,
- Code &nbsp;$\rm B$&nbsp; und Code &nbsp;$\rm C$,
+
- Code &nbsp;$\rm B$&nbsp; and&nbsp; code &nbsp;$\rm C$,
- Code &nbsp;$\rm C$&nbsp; und Code &nbsp;$\rm D$.
+
- Code &nbsp;$\rm C$&nbsp; and&nbsp; code &nbsp;$\rm D$.
  
  
{Welche der gegebenen Codepaare sind äquivalent, aber nicht identisch?
+
{Which of the given code pairs are equivalent but not identical?
 
|type="[]"}
 
|type="[]"}
- Code &nbsp;$\rm A$&nbsp; und Code &nbsp;$\rm B$,
+
- Code &nbsp;$\rm A$&nbsp; and&nbsp; code &nbsp;$\rm B$,
+ Code &nbsp;$\rm B$&nbsp; und Code &nbsp;$\rm C$,
+
+ Code &nbsp;$\rm B$&nbsp; and&nbsp; code &nbsp;$\rm C$,
- Code &nbsp;$\rm C$&nbsp; und Code &nbsp;$\rm D$.
+
- Code &nbsp;$\rm C$&nbsp; and&nbsp; code &nbsp;$\rm D$.
  
{Wie unterscheiden sich die Generatormatrizen&nbsp; $G_{\rm B}$&nbsp; und&nbsp; $G_{\rm C}$?
+
{How do the generator matrices&nbsp; $G_{\rm B}$&nbsp; and&nbsp; $G_{\rm C}$&nbsp; differ?
 
|type="[]"}
 
|type="[]"}
- Durch verschiedene Linearkombinationen verschiedener Zeilen.
+
- By different linear combinations of different rows.
- Durch zyklische Vertauschung der Zeilen um &nbsp;$1$&nbsp; nach unten.
+
- By cyclic shifting of rows by &nbsp;$1$&nbsp; down.
+ Durch zyklische Vertauschung der Spalten um &nbsp;$1$&nbsp; nach rechts.
+
+ By cyclic shifting of columns by &nbsp;$1$&nbsp; to the right?
  
  
{Bei welchen Codes gilt&nbsp; ${ \boldsymbol{\rm H}} \cdot { \boldsymbol{\rm G}}^{\rm T} = \boldsymbol{0}$?
+
{For which codes applies&nbsp; ${ \boldsymbol{\rm H}} \cdot { \boldsymbol{\rm G}}^{\rm T} = \boldsymbol{0}$?
 
|type="[]"}
 
|type="[]"}
 
+ Code &nbsp;$\rm A$,
 
+ Code &nbsp;$\rm A$,
Line 83: Line 82:
 
</quiz>
 
</quiz>
  
===Musterlösung===
+
===Solution===
 
{{ML-Kopf}}
 
{{ML-Kopf}}
'''(1)'''&nbsp; Richtig sind die <u>Antworten  1, 3 und 4</u>:
+
'''(1)'''&nbsp; Correct are the&nbsp; <u>answers 1, 3 and 4</u>:
*Für einen systematischen (6, 3)–Blockcode muss gelten:
+
*For a systematic&nbsp; $(6, 3)$&nbsp; block code,&nbsp; the following must hold:
  
 
:$$\underline{x} = ( x_1, x_2, x_3, x_4, x_5, x_6) = ( u_1, u_2, u_3, p_1, p_2, p_{3}) \hspace{0.05cm}.$$
 
:$$\underline{x} = ( x_1, x_2, x_3, x_4, x_5, x_6) = ( u_1, u_2, u_3, p_1, p_2, p_{3}) \hspace{0.05cm}.$$
  
Diese Bedingung erfüllen Code A, Code C und Code D, nicht aber Code B.
+
*This condition is satisfied by code&nbsp; $\rm A$, code&nbsp; $\rm C$, and code&nbsp; $\rm D$, but not by code&nbsp; $\rm B$.
  
  
  
'''(2)'''&nbsp; Richtig ist nur <u>Antwort  1</u>:
+
'''(2)'''&nbsp; Correct is only&nbsp; <u>answer 1</u>:
*Nur Code A und Code B sind identische Codes. Sie beinhalten genau die gleichen Codeworte und unterscheiden sich nur durch andere Zuordnungen $\underline{u} \rightarrow \underline{x}$.  
+
*Only code&nbsp; $\rm A$&nbsp; and code&nbsp; $\rm B$&nbsp; are identical codes.&nbsp; They contain exactly the same code words and differ only by other assignments&nbsp; $\underline{u} \rightarrow \underline{x}$.
*Wie in der Musterlösung zur [[Aufgaben:1.08_Identische_Codes|Aufgabe A1.8 (3)]] angegeben, gelangt man von der Generatormatrix ${ \boldsymbol{\rm G}}_{\rm B}$ zur Generatormatrix ${ \boldsymbol{\rm G}}_{\rm A}$   
+
:*allein durch Vertauschen/Permutieren von Zeilen, oder
+
*As indicated in the solution to&nbsp; [[Aufgaben:Exercise_1.08:_Identical_Codes|"Exercise 1.8 (3)"]],&nbsp; one gets from the generator matrix&nbsp; ${ \boldsymbol{\rm G}}_{\rm B}$&nbsp; to the generator matrix&nbsp; ${ \boldsymbol{\rm G}}_{\rm A}$   
:*durch Ersetzen einer Zeile durch die Linearkombination zwischen dieser Zeile und einer anderen.
+
:*by swapping/permuting rows alone,&nbsp; or
 +
:*by replacing a row with the linear combination between that row and another.
  
  
  
'''(3)'''&nbsp; Richtig ist somit allein <u>Antwort 2</u>:
+
'''(3)'''&nbsp; Thus,&nbsp; the correct answer is&nbsp; <u>answer 2</u>&nbsp; alone:
*Code A und Code B sind mehr als äquivalent, nämlich identisch.  
+
*Code&nbsp; $\rm A$&nbsp; and code&nbsp; $\rm B$&nbsp; are more than equivalent,&nbsp; namely identical.
*Code C und D unterscheiden sich zum Beispiel auch durch die minimale Hamming–Distanz $d_{\rm min} = 3$ bzw. $d_{\rm min} = 2$ und sind somit auch nicht äquivalent.
+
*Code B und Code C zeigen dagegen  gleiche Eigenschaften, beispielsweise gilt für beide $d_{\rm min} = 3$. Sie beinhalten aber andere Codeworte.
+
*Code&nbsp; $\rm C$&nbsp; and code&nbsp; $\rm D$&nbsp; also differ,&nbsp; for example,&nbsp; by the minimum Hamming distance&nbsp; $d_{\rm min} = 3$&nbsp; and&nbsp; $d_{\rm min} = 2$,&nbsp; respectively,&nbsp; and are thus also not equivalent.
  
 +
*Code&nbsp; $\rm B$&nbsp; and code&nbsp; $\rm C$&nbsp; show the same properties,&nbsp; for example&nbsp; $d_{\rm min} = 3$&nbsp; holds for both.&nbsp; However,&nbsp; they contain different code words.
  
  
  
'''(4)'''&nbsp; Richtig ist <u>Antwort 3</u>:
 
  
*Die letzte Spalte von ${ \boldsymbol{\rm G}}_{\rm B}$ ergibt die erste Spalte von ${ \boldsymbol{\rm G}}_{\rm C}$.
+
'''(4)'''&nbsp; Correct is&nbsp; <u>answer 3</u>:
*Die erste Spalte von ${ \boldsymbol{\rm G}}_{\rm B}$ ergibt die zweite Spalte von ${ \boldsymbol{\rm G}}_{\rm C}$.
 
*Die zweite Spalte von ${ \boldsymbol{\rm G}}_{\rm B}$ ergibt die dritte Spalte von ${ \boldsymbol{\rm G}}_{\rm C}$, usw.
 
  
 +
*The last column of&nbsp; ${ \boldsymbol{\rm G}}_{\rm B}$&nbsp; gives the first column of&nbsp; ${ \boldsymbol{\rm G}}_{\rm C}$.
 +
*The first column of&nbsp; ${ \boldsymbol{\rm G}}_{\rm B}$&nbsp; gives the second column of&nbsp; ${ \boldsymbol{\rm G}}_{\rm C}$.
 +
*The second column of&nbsp; ${ \boldsymbol{\rm G}}_{\rm B}$&nbsp; gives the third column of&nbsp; ${ \boldsymbol{\rm G}}_{\rm C}$, etc.
  
  
'''(5)'''&nbsp; Alle Aussagen treffen zu</u>:
+
 
*Die Bedingung ${ \boldsymbol{\rm H}} \cdot { \boldsymbol{\rm G}}^{\rm T} = \boldsymbol{0}$ gilt für alle linearen Codes.
+
'''(5)'''&nbsp; All statements are true</u>:
 +
*The condition&nbsp; ${ \boldsymbol{\rm H}} \cdot { \boldsymbol{\rm G}}^{\rm T} = \boldsymbol{0}$&nbsp; holds for all linear codes.
  
 
{{ML-Fuß}}
 
{{ML-Fuß}}
Line 125: Line 127:
  
  
[[Category:Channel Coding: Exercises|^1.4 Beschreibung linearer Blockcodes
+
[[Category:Channel Coding: Exercises|^1.4 Linear Block Code Description
  
 
^]]
 
^]]

Latest revision as of 18:00, 23 January 2023

Four  $(6, 3)$  block codes

In the graph,  the mappings  $\underline{u} \rightarrow \underline{x}$  for different codes are given,  each characterized below by the generator matrix  $\boldsymbol{\rm G}$  and the parity-check matrix  $\boldsymbol{\rm H}$,  respectively:

  • ${\boldsymbol{\rm Code \ A}}$:
$${ \boldsymbol{\rm G}}_{\rm A} = \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},\hspace{0.5cm}{ \boldsymbol{\rm H}}_{\rm A} = \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}.$$
  • ${\boldsymbol{\rm Code \ B}}$:
$${ \boldsymbol{\rm G}}_{\rm B} = \begin{pmatrix} 0 &0 &1 &0 &1 &1\\ 1 &0 &0 &1 &1 &0\\ 0 &1 &1 &1 &1 &0 \end{pmatrix} \hspace{0.05cm},\hspace{0.5cm} { \boldsymbol{\rm H}}_{\rm B} = \begin{pmatrix} 1 &0 &1 &0 &1 &0\\ 1 &1 &0 &1 &0 &0\\ 0 &1 &1 &0 &0 &1 \end{pmatrix} \hspace{0.05cm}.$$
  • ${\boldsymbol{\rm Code \ C}}$:
$${ \boldsymbol{\rm G}}_{\rm C} = \begin{pmatrix} 1 &0 &0 &1 &0 &1\\ 0 &1 &0 &0 &1 &1\\ 0 &0 &1 &1 &1 &1 \end{pmatrix} \hspace{0.05cm},\hspace{0.5cm}{ \boldsymbol{\rm H}}_{\rm C} = \begin{pmatrix} 1 &0 &1 &1 &0 &0\\ 0 &1 &1 &0 &1 &0\\ 1 &1 &1 &0 &0 &1 \end{pmatrix} \hspace{0.05cm},$$
  • ${\boldsymbol{\rm Code \ D}}$:
$${ \boldsymbol{\rm G}}_{\rm D} = \begin{pmatrix} 1 &0 &0 &1 &0 &1\\ 0 &1 &0 &1 &0 &0\\ 0 &0 &1 &0 &1 &0 \end{pmatrix} \hspace{0.05cm},\hspace{0.5cm}{ \boldsymbol{\rm H}}_{\rm D} = \begin{pmatrix} 1 &1 &0 &1 &0 &0\\ 0 &0 &1 &0 &1 &0\\ 1 &0 &0 &0 &0 &1 \end{pmatrix} \hspace{0.05cm}.$$

This task is to investigate which of these codes or code pairs are

  • are systematic,
  • are identical  (that is:   Different codes have same code words),
  • are equivalent  (that is:   Different codes have same code parameters).



Hints :

  • Note that the specification of a parity-check matrix  $\boldsymbol{\rm H}$  is not unique.  If one changes the order of the parity-check equations, this corresponds to a swapping of rows.


Questions

1

Which of the codes listed below are systematic?

Code  $\rm A$,
Code  $\rm B$,
Code  $\rm C$,
Code  $\rm D$.

2

Which of the given code pairs are identical?

Code  $\rm A$  and  code  $\rm B$,
Code  $\rm B$  and  code  $\rm C$,
Code  $\rm C$  and  code  $\rm D$.

3

Which of the given code pairs are equivalent but not identical?

Code  $\rm A$  and  code  $\rm B$,
Code  $\rm B$  and  code  $\rm C$,
Code  $\rm C$  and  code  $\rm D$.

4

How do the generator matrices  $G_{\rm B}$  and  $G_{\rm C}$  differ?

By different linear combinations of different rows.
By cyclic shifting of rows by  $1$  down.
By cyclic shifting of columns by  $1$  to the right?

5

For which codes applies  ${ \boldsymbol{\rm H}} \cdot { \boldsymbol{\rm G}}^{\rm T} = \boldsymbol{0}$?

Code  $\rm A$,
Code  $\rm B$,
Code  $\rm C$,
Code  $\rm D$.


Solution

(1)  Correct are the  answers 1, 3 and 4:

  • For a systematic  $(6, 3)$  block code,  the following must hold:
$$\underline{x} = ( x_1, x_2, x_3, x_4, x_5, x_6) = ( u_1, u_2, u_3, p_1, p_2, p_{3}) \hspace{0.05cm}.$$
  • This condition is satisfied by code  $\rm A$, code  $\rm C$, and code  $\rm D$, but not by code  $\rm B$.


(2)  Correct is only  answer 1:

  • Only code  $\rm A$  and code  $\rm B$  are identical codes.  They contain exactly the same code words and differ only by other assignments  $\underline{u} \rightarrow \underline{x}$.
  • As indicated in the solution to  "Exercise 1.8 (3)",  one gets from the generator matrix  ${ \boldsymbol{\rm G}}_{\rm B}$  to the generator matrix  ${ \boldsymbol{\rm G}}_{\rm A}$
  • by swapping/permuting rows alone,  or
  • by replacing a row with the linear combination between that row and another.


(3)  Thus,  the correct answer is  answer 2  alone:

  • Code  $\rm A$  and code  $\rm B$  are more than equivalent,  namely identical.
  • Code  $\rm C$  and code  $\rm D$  also differ,  for example,  by the minimum Hamming distance  $d_{\rm min} = 3$  and  $d_{\rm min} = 2$,  respectively,  and are thus also not equivalent.
  • Code  $\rm B$  and code  $\rm C$  show the same properties,  for example  $d_{\rm min} = 3$  holds for both.  However,  they contain different code words.



(4)  Correct is  answer 3:

  • The last column of  ${ \boldsymbol{\rm G}}_{\rm B}$  gives the first column of  ${ \boldsymbol{\rm G}}_{\rm C}$.
  • The first column of  ${ \boldsymbol{\rm G}}_{\rm B}$  gives the second column of  ${ \boldsymbol{\rm G}}_{\rm C}$.
  • The second column of  ${ \boldsymbol{\rm G}}_{\rm B}$  gives the third column of  ${ \boldsymbol{\rm G}}_{\rm C}$, etc.


(5)  All statements are true:

  • The condition  ${ \boldsymbol{\rm H}} \cdot { \boldsymbol{\rm G}}^{\rm T} = \boldsymbol{0}$  holds for all linear codes.