1 Introduction
New information and communication technologies or NICTs require today a norm increasingly strict in terms of quality of service. The diversity and the increasing volumes of data exchanged/processed also require increasingly fast and reliable systems.
In these constraints related to information processing, we need to take into account the increased sensitivity of technologies in front of external disruptive sources. It’s about especially to protect information against environmental damage during transmission.
In seeking to improve this quality of service in terms of communication, the present article lists the results which can be increase the reliability in the data transmission system. These are the fruits of the indepth study on our two articles entitled: "Part of a set and subexceeding function (encoding and Decoding) [15]" in 2017 and "Encoding of Partition Set Using Subout Function [14] "in 2018.
Given a finitedimensional set , the first article discusses the encoding (decoding) of any subset of . For the second, it presents the encoding (decoding) of any partition of the set .
The purpose of this article is to build new error correcting code using the results in the two abovementioned articles.
Given an integer such that , we can build two errorcorrecting codes and which are respectively and linear codes.
In the last section of this article, we give the decoding algorithm of these codes using Groebner basis.
2 Preliminaries
Let be a positive integer, denotes the set of positive integers less or equal to and the zero element, i.e.
2.1 The necessary ones on the study of subexceeding functions
Definition 2.1.
(see [15]) Let be a positive integer and let be a map from to . This function is said subexceeding if for all in , we have
We denote by the set of all subexceeding functions on , i.e.
(2.1) 
Remark 2.1.
A subexceeding function can be represented by the word of alphabet . So, we describe by its images .
Definition 2.2.
(see [15]) Let and be two integers such that . We define by the subset of such that
(2.2) 
Here, is the set of all subexceeding function of with a quasiincreasing sequence of image formed by all elements of .
Example 2.1.
Take 4 and 3. We find that the function is really in because is a quasiincreasing sequence formed by all the elements of . But if we take , even if the sequence is quasiincreasing, because (without 2 among the ).
Following the definition 2.2, we denote by the set defined as follows:
(2.3) 
Theorem 2.2.
( See [15])
Let and be two integers such that .

For , we always find that is a set of singleton:

For , we also find that is a set of singleton:

For any integer such that , we can construct all subexceeding functions of as follows:

Take all the elements of and add the integer at the end,

Take all the elements of and add the integer at the end
To better presentation of this construction, we adopt the following writing:
Here, means that we add the integer at the end of all element of .

From this theorem, we have the iteration table of the elements of :
0  1  2  3  4  …  
0  0  
1  00  01  

001  
2  000  011  012  

0001  0012  
3  0000  0011  0112  0123  
0111  0122  

00001  00012  00123  
00011  00112  01123  
00000  00111  01112  01223  01234  
4  01111  00122  01233  
01122  
01222  
⋮ 
Proposition 2.1.
See [15]
Let and be two integers such that . So, we have the following relations
From this Proposition, we have the cardinal table of as
0  1  2  3  4  …  
0  1  
1  1  1  
2  1  2  1  
3  1  3  3  1  
4  1  4  6  4  1  
⋮ 
Thus constructed, this table is none other than the Pascal triangle.
2.2 Some notion about errorcorrecting codes
When sending a message (data) through a transmission channel (by downloading data from Internet for example), errors can occur. Our goal is to be able to detect or correct these errors. The principle of coding is as follows: after cutting our message into blocks of bits, we will apply the same algorithm on each block:

by adding check bits at the end of all block

or by completely modifying the blocks, but avoiding that two different blocks are transformed into a single block.
Notation 2.3.
Definition 2.3.
[A numerical code](see [1])

A binary linear code is the image of an injective linear application from to . The parameter is called the dimension and is called the length of this code. So, we say that is a code of parameters or linear code.

The set is called the image of and the elements of are called the codewords(as opposed to the original elements of which are called messages).
Remark 2.2.
A binary linear code of parameters or linear code is a subspace of of dimension .
Definition 2.4.
(see [1])

The minimum distance of a code is defined as,
(2.4) Here presents the Hamming distance between and .

A linear code with length , dimension and minimum distance is called a linear code.
Definition 2.5.
(see [1])

We define by error detection capacity for the code , the maximum number of errors which we can be detected for a wrong code word. This integer is denoted by .

We call by correction capacity of the code the maximum number of errors which we can be corrected for a wrong code word. This integer is denoted by
Theorem 2.4.
(see [13]) For an linear code, that is to say a code of length and of dimension with a minimal distance , we have:
(2.5) 
Theorem 2.5.
(see [13]) Let be a linear code, we have
Here is the weight of the codeword , i.e. the number of nonzero bits of .
Theorem 2.6.
(see [13])
Let be a linear code. There is a linear application from to such that the image of is . So, we can represent the application by where is the representative matrix of by the canonical bases of .
Here is called the generating matrix of .
Definition 2.6.
(see [13]) A linear code is called systematic if the encoding consists in adding bits at the end of the message. For a linear code, The generating matrix is of the form , where is the unit matrix with rows and columns and a matrix with rows and columns.
Definition 2.7.
(see [1]) A parity check matrix for a binary linear code is the matrix such that if and only if .
3 Main result:
errorcorrecting code from the study on the subexceeding function
In this section, we present our linear errorcorrecting code from subexceeding function.
Recall that for a positive integer , a function from to is said to be subexceeding if for any integer in , we always have the inequality .
Thus, the subexceeding term amounts to saying that the image of an integer by an application is always an integer smaller or equal to this one.
Theorem 3.1.
Let be a positive integer and let be an application from to . Then the application is a subexceeding function if and only if .
This theorem tells us that all message of bits on which begins with 0 is a subexceeding function.
Proof.
We say that the image of an integer in by the application is always equal to 0 or 1. Thus, by the condition , we have for all . So, is a subexceeding function. ∎
Now, let’s examine the subset for the set of subexceeding functions in all application from in . That is to say the subset for the set of bits messages on .
Referring to the theorem (2.2), we can have all the elements of (see the table below). Moreover, from the proposition (2.1), we find
(3.1) 
The table below shows the elements of for each value of and some integer .
Proposition 3.1.
Let be a positive integer and denote by the matrix of row and column such that
(3.2) 
Reminding that is the set of subexceeding functions of length such that
Then, the product gives the word such that
(3.3) 
Notation 3.2.
Now let’s denote by the matrix
(3.4) 
Example 3.3.
For 3, we have:
For , we have:
Theorem 3.4.
(Main theorem: The codes )
Let be a positive integer and let be the linear application from to such that
(3.5) 
where is the message of bits such that and is the matrix
where is the matrix defined in the equation (3.3).
Thus, the application forms a systematic linear errorcorrecting code denoted by . The minimum distance of is 3 and for the minimum distance of is 4.
Proof.
First, since is a matrix of rows and
columns whose rows are linearly independent vectors, so the application
is injective from to . Thus, is a vector space over of dimension . Then forms a systematic linear errorcorrecting code of dimension and length .Now, let be the message such as and note by its image by the application .
Since is a systematic code, a codeword of length can be distributed into two vector and . That is to say , . Here, the vector is the original message () and is the vector (control bits) such that .
So, for any integer in , we have
So, two cases are possible:

If the weight of is even
In this case, the code word is: .
(Ex: for , if we have ) 
If the weight of
is odd
In this case, the code word is: where is the opposite of .
(Ex: for , if we have )
Now,

Take ,
(3.6) Thus, the minimum distance for the code is 3.

for ,
(3.7) Thus, the minimum distance for the code is 4.
∎
Example 3.5.
For , from the main theorem (3.4), we have
Example 3.6.
For ,from the main theorem (3.4), we have
(3.8) 
Theorem 3.7.
(The code ).
Let be an integer such that and let’s take the system where (see the equation 3.3). So, we can build a linear systematic code with generator matrix
(3.9) 
witch is denoted by .
The code has minimum distance 5 and for , the code has minimum distance 6.
The generating matrix of this code has the form
(3.10) 
Proof.
Since is a subspace over , any linear combination between the code words gives a code in of weight equal to 4.
Then, for a message in , the code word generated by the matrix (ie ) has a weight:

Pour ,
(3.11) So we have a code 2corrector with a minimal distance .

For ,
(3.12) So we have a code corrector with a minimal distance .
∎
Example 3.8.
Le code .
Now take the four (4) vectors in which are:
(3.13) 
The code is as follows:
(3.14) 
Example 3.9.
The code .
Now take the five (5) vectors in which are:
(3.15) 
The code is thus as follows:
(3.16) 
The code words of are:
(3.17) 
4 Study of the Weight of the codes and
Denote respectively by and the set of all elements of the code and who have a weight equal to .
Theorem 4.1.
For , the set of the weight of the words of this code form the set
(4.1) 

For all weight in ,

For the integer such that , The set have cardinality,

For the integer such that , the set have cardinality
Proof.
As defined above, a received code word in can be split into two word, ie where is the message sent and which is the control code. Furthermore
So for a such that , we have and
Furthermore, for a such that , we have because . then
For the integer such that , we have,
So, the set have cardinality
∎
Example 4.2.
Take the code , The set is
So, . We have
As , we have
Theorem 4.3.
For , the set of the weight of the words of this code form the set
(4.2) 

For all weight in ,

For all weight in ,
the set have cardinality, 
For all weight in , the set have cardinality
where .
Proof.
We know that for a code in , this word have the form where and that
So for a such that , we have and
Furthermore, for a such that , we have because . then
For all weight in , we have,
So, the set have cardinality
∎
Example 4.4.
5 Decoding for the error correcting codes and
After considering the parameters necessary for the study of these codes, we present here the appropriate decoding algorithms.
5.1 The dual codes of and
Theorem 5.1.
Example 5.2.
For the code and the generator matrix is respectively
and
So the dual code and have respectively his generator matrix:
and
As the columns of (or ) are linearly independent, so for a codeword that contains exactly one error, the decoding will be easy by looking at the syndrome.
Definition 5.1.
Let be an element of linear code such that where for all . we define the monomial of by
Comments
There are no comments yet.