In coding theory ( computer science ), a group code is a special coding that can be used for error detection and correction . A group (algebraic structure) is used for coding .
Coding
A group code is a block code , which means that all code words have the same length (in the following we denote the length of the code words ).

Any Abelian group is used as the alphabet for coding , usually the cyclic group of order two, as its two elements can be identified with bits 0 and 1.


The source-coded words are the elements of the group . (All words with symbols from length )



An injective homomorphism is chosen to code the group . The image of is a subset of .




is the group code. the associated coding function.

In contrast to “arbitrary” codings, each code word does not have to be specified (saved) separately, but it is sufficient to define a generating system of the group . The coding of the remaining elements can then be calculated using their representation as the sum of generating elements.



Examples
example 1
group
Source coding:
generating system: , ,

Coding: , ,

Now be a word in source coding. To calculate the coding , proceed as follows:


One represents as the sum of generating elements:
and then calculates the sum of the codes of the same
Example 2
Group , the Klein group of four
+ |
0 |
1 |
x |
x + 1
|
0 |
0 |
1 |
x |
x + 1
|
1 |
1 |
0 |
x + 1 |
x
|
x |
x |
x + 1 |
0 |
1
|
x + 1 |
x + 1 |
x |
1 |
0
|
Source coding:
generating system: , , ,


Coding: , , ,


Now be a word in source coding.
, ,



properties
Group codes have the following properties:
- The code words form a group
- In the case of a binary group code, the distance distribution is the same for all code words and also the same as the weight distribution.
- Each group code contains the " zero vector " as a valid code word.
- The weight of a group code is defined as the smallest code word weight ( Hamming weight ) apart from that of the zero vector.
- In the case of binary group codes, the Hamming distance corresponds to the weight of the code.
See also