The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

THE THEORY OF ERROR - CORRECTING CODES ... Expurgating by throwing away code words. Suppose the binary code K contains code words of both odd and even weight.

Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by , 2016-02-10 00:45:03

THE THEORY OF ERROR - CORRECTING CODES

THE THEORY OF ERROR - CORRECTING CODES ... Expurgating by throwing away code words. Suppose the binary code K contains code words of both odd and even weight.

THE THEORY OF ERROR - CORRECTING CODES

LABORATORY WORK NUMBER 5.
THE METHODS OF CONSTRUCTION OF NEW CODES FROM OLD *

TASK
To construct new codes from old , using the parity check matrices of old codes.

THEORY AND EXAMPLES

a) Adding an overall parity check bit.
Let K be an [n , k, d] - code in which some code words have odd weight. We construct a
new code by adding a 0 at the end of every code word of K with even weight, and a 1 at
the end of every code word with odd weight. This technique, of adding more check
symbols is generally called extending a code.

Example. Find the parameters and parity check matrix of the extended Hamming [7, 4, 3 ]
code.
The command ExtendedCode[H] gives the parity check matrix of extended code.

H = HammingMatrix@3D

ExH = ExtendedCode@HD
i0 0 0 1 1 1 1y

0110011
k1 0 1 0 1 0 1{
i1 1 1 1 1 1 1 1y

00011110
01100110
k1 0 1 0 1 0 1 0{

Length@ExH@@1DDD H* The parameters of the extended code *L

DimensionCode@ExHD
DistanceCode@ExHD
8
4
4

b) Puncture a code by deleting coordinates.
The inverse process to extending a code K is called puncturing, and consists of deleting one
or more coordinates from each code word.

Example. Puncture the Hamming [7, 4, 3] code by deleting the last coordinate. Find the
parameters and the parity check matrix of this code.
The command PuncturedCode[H,n] gives the parity check matrix of the punctured code.

H

PuH = PuncturedCode@H, 7D
Length@PuH@@1DDD

DimensionCode@PuHD

DistanceCode@PuHD
i0 0 0 1 1 1 1y

0110011
k1 0 1 0 1 0 1{
101101
J0 1 1 1 1 0N
6
4
2

c) Expurgating by throwing away code words.
Suppose the binary code K contains code words of both odd and even weight. Then we
expurgate K by throwing away the code words of odd weight .

Example. Expurgate Hamming [7, 4, 3] code by throwing away the code words of odd weight
.
find the parity check matrix and the parameters of new code. The command
ExpurgatingCode[H]
gives the parity check matrix of expurgated code.

H

ExpurH = ExpurgatingCode@HD
i0 0 0 1 1 1 1y

0110011
k1 0 1 0 1 0 1{
i1 1 1 1 1 1 1y

0001111
0110011
k1 0 1 0 1 0 1{

Length@ExpurH@@1DDD
DimensionCode@ExpurHD
DistanceCode@ExpurHD
7
3
4

d) Augmenting by adding new code words.
To augment a code is by adding the all-ones vector (1, 1, ... , 1), provided it is not already
in the code. This is the same as adding a row of 1‘s to the generator matrix. The command
AugmentedCode[H] gives the parity check matrix of augmented code.

[email protected], 1, 1, 1, 1, 1, 1<, 2D
81, 0, 0, 0<
We see that the expurgated code has no vector ( 1, 1, 1, 1, 1, 1)

Example . To augment the code from Ex 3. Find the parameters and parity check matrix of
this code.
M = AugmentedCode@ExpurHD
i1 1 0 1 0 0 1y

1011010

k0 1 1 1 1 0 0{
Now we check, if this code is the equivalent of the Hamming code.

EquivalentCode@M, 85, 6, 3, 7, 2, 1, 4<D H = HammingMatrix@3D
i0 0 0 1 1 1 1y i0 0 0 1 1 1 1y

0110011 0110011

k1 0 1 0 1 0 1{ k1 0 1 0 1 0 1{
PROBLEMS

1*. Let the code K be a extended [15, 11, 3] Hamming code. Find the parameters and parity
check matrix of the code K.

2*. Puncture the code K (the code from the problem 1 ) by deleting the first coordinate. Find
the parameters and the parity check matrix of the code. Prove that this code is the
equivalent of the Hamming code. Find the permutation which generate this isomorphism.

3*. To augment a rectangular 3 × 3 code is by adding the all-ones vector ( 1, 1, ... , 1) .
Find the parameters of the code .

4*. Find the parameters of the extended code ( the code from the problem 3 ).

5**. Which code is the better one? The expurgated Hamming [15,11,3] code or the
rectangular 3 × 5 code. Explain your answer.


Click to View FlipBook Version