1. Introduction
Cyclic codes are a special class in coding theory and have been a primary field of study since its inception, for instance see [
1,
2,
3,
4,
5,
6,
7,
8]. These codes have been traditionally described over finite fields; however, many important nonlinear codes over finite fields relate, via the Gray map, to linear codes over finite chain rings. Let 
R be a finite chain ring. Theoretically, cyclic codes which have arbitrary length, 
N, over 
R correspond with ideals of 
. Let 
p be the characteristic of the residue field of 
R. When 
, 
 has unique factorization into irreducible polynomials; this is the key to examining the ideals of 
 and then constructing cyclic codes over 
R. However, 
 does not factor uniquely if 
, and such cases produce what are defined repeated-root cyclic codes over 
R. Such codes were first described by Berman [
9] in 1967. In the literature, there is not much research on the study of repeated-root cyclic codes over finite rings, see  [
10,
11,
12,
13,
14,
15]. The basic purpose of this manuscript is to find unique representation for all repeated-root cyclic codes of length, 
N, over a Galois ring—
 of characteristic 
 and residue degree 
In [
11], Abualrub et al. introduced minimal degree polynomials to describe cyclic codes over 
 with length 2
e. Doughtry et al. [
12] expanded the results to cyclic codes over 
 of length, 
N. They utilized discrete Fourier transform (DFT) in proving that 
 is mapped isomorphically to a direct product of rings with the form 
, where 
 and 
 is the p-adic valuation. Kiah et al. [
13] considered cyclic codes over 
 which have length 
. Finally, by a different method from that of [
12], Jasbir et al. [
14] obtained minimal degree polynomials generating cyclic over 
 based on the concept of Gröbner basis.
In the present article, we generalize the approach of Doughtry et al. [
12], and determine a unique representation of cyclic codes of any finite length, 
N, over 
 in terms of polynomials with minimal degrees. The generating polynomials are constructed by a different method (i.e., DFT) and have more explicit structural forms than those given in [
14]. This explicit construction for generators polynomial allows us to describe dual codes, and establish Hamming distance. The article is sectioned as follows. In 
Section 3, we make use of the (unique) p-adic expression of elements of 
 to construct a unique description of cyclic codes of length 
. The obtained structure allows us to compute their dual codes and Hamming distance. In 
Section 4, we employ DFT to express cyclic codes of length 
 in terms of that of length 
 over Galois extensions of 
. This means, it suffices to investigate cyclic codes of length 
 over Galois rings. Consequently, dual codes and Hamming distance are completely determined. Moreover, we obtain the enumeration of cyclic codes with length, 
N, and we give the precise number of cyclic codes when 
.
  2. Preliminaries
This section presents some facts and mentions the background used in the subsequent sections.
  2.1. Galois Ring
Suppose that 
p is prime, and suppose 
 is Galois extension of degree 
r over 
. This ring extension, 
, is called a Galois ring with 
 elements [
16], and 
, where 
f is a basic polynomial of degree 
r in the 
 irreducible modulo 
p. The maximal ideal in 
 is principal and of the form 
. Indeed, every ideal is principal to 
, where 
. There is 
a of order 
 such that 
. The set 
 is called the Teichmuller set which is a set of closet representatives modulo 
. Suppose 
c is an element of 
; then, 
c can be uniquely written (p-adic expression) as:
        where 
 are elements in 
. Moreover, 
c is a unit if and only if 
. The set 
 is mapped onto 
 under the canonical map 
 between 
 and 
. The group of automorphisms 
 of 
R is a cyclic group with order 
r. Furthermore, 
, where 
 is the Frobenius correspondence. For more details, see [
17,
18].
Proposition 1 ([
18]). 
Let  be any positive integer; then, there is a basic polynomial in  of degree  which divides as . Proposition 2 ([
18]). 
Let  be a basic irreducible polynomial over  of degree ; then,  is a Galois ring which contains  as sub-ring and denoted by .   2.2. Cyclic Codes
Let R be a finite ring. A cyclic code is a linear code over R which is invariant under cyclic shifts. Each codeword of length, N, written as a vector, , traditionally corresponds to a polynomial form , thus, we can identify a code, C, as a set, with polynomial forms for its codewords. This means, in ,  represents the cyclic shift of .
Proposition 3 ([
19,
20]). 
A linear code C is cyclic over R with length, N, if and only if C is an ideal of the ring . Assume  is the finite ring ,  is the ring , and  is usual map (modulo p) between  and . We define the following codes for any cyclic code, C, over .
Definition 1. We call  the ith torsional code for C; particularly,  is called the residue code for C.
 Proposition 4 ([
12]). 
Suppose that C is a cyclic code with length  over R, and . Thus,  is a cyclic code over  of length  andwhere . Furthermore,- (i)
- . 
- (ii)
- If  and , then . 
- (iii)
- . 
- (iv)
- . 
 Definition 2. If C is a cyclic code over R, as , then we call  the ith torsional degree for 
 The above notations shall keep their meanings through the paper, and , .
  3. Cyclic Codes of Length 
Throughout this section, we aim to uniquely represent any cyclic code over , with length . Using this representation, we were able to obtain Hamming distances and describe dual codes. Moreover, we determine the number of these codes, i.e., the ideals of .
  3.1. The Representation of Cyclic Codes
Next, the subsequent theorem gives us a unique representation for C.
Theorem 1. Suppose that C is a cyclic code over R of length . Therefore, C can be expressed uniquely as:where  is a unit or zero, and .  Proof.  As 
C is an ideal in 
, from [
12], 
, where 
 when 
 for some 
 and 
 otherwise. By the p-adic expression (
1) of elements of 
R, 
 is expressed by:
          
          where 
. Moreover, the inner sum in (
3) can be rewritten as:
          
          where 
 is a unit or zero, and 
. Let
          
          then, we obtain the results. The uniqueness of the polynomials 
 is direct from Equation (
1).    □
 Definition 3. Assume C is a cyclic code of length  over R. By the representation of C, we mean the unique generating polynomials obtained in Theorem 1.
 We then give several results that can be derived from Theorem 1. These results illustrate the relationship between  and polynomials which have  as their leading coefficients.
Proposition 5. Let  be representation for C,  if  and  otherwise.
 Proof.  By the construction of 
 in Theorem 1, it is clear that
          
□
 Corollary 1. Assume that  and  is the polynomial described in Theorem 1. Thus,  and its leading coefficient is .
 Proof.  Note that  from Proposition 5, and by the construction in Theorem 1,  has  as its leading coefficient.    □
 The proof of the following corollary comes from Proposition 5 and Corollary 1.
Corollary 2. Let , then  is the minimum degree of polynomials in C which have leading coefficients .
 Remark 1. To simplify the representation of C, let . Then,where .  Example 1. Let ,  and . Suppose C is a cyclic code with length 8 over  spanned by  and . One can easily check  and  verify the hypothesis in Theorem 1. Thus,  is the representation of C.
 Example 2. If  and C is a cyclic code over R with length 4 spanned by  and , then, by Theorem 1,  is the representation of 
   3.2. Hamming Distance
For 
, the Hamming weight, 
wt, of 
c is the number of nonzero components of 
c. The Hamming distance, 
, between 
c and 
 is defined as
        
Let 
C be a nonzero linear code; then, the Hamming distance 
 is
        
Theorem 2. If C is a cyclic code over R with length , then  Proof.  As 
, we have 
. So, it is sufficient to give the Hamming distance of 
 in order to determine the Hamming distance for 
C. Now, since 
 and 
 have equal number of nonzero components, so 
. Therefore,
          
The Hamming distance, 
, is fully characterized in [
3,
21].   □
   3.3. Dual Codes
Let 
 and 
 in 
; then, 
 (usual dot product). Furthermore, 
x and 
y are said orthogonal when 
. Now, suppose that 
C is a linear code over 
R, the dual code of 
C is defined as:
Next, we mention the following already known results in [
2,
19,
20,
22].
Proposition 6. Suppose that R is a finite chain ring of order . Then,where . In addition,  has order , where ; that is,  Proposition 7. The dual code of a cyclic code is cyclic.
 Theorem 3. If C is a cyclic code over R of length , then  has a unique representation,where  if  and  otherwise. Furthermore, , .  Proof.  As 
C is a cyclic code over 
R with length 
, then, by Proposition 7, 
 is also cyclic with the same length; so, by Theorem 1 and Remark 1, 
 has a representation
          
          where 
 and 
 is the 
ith torsion degree of 
. Based on definition of 
, 
, 
, 
. Now, since 
 (Proposition 6), from Proposition 4,
          
This implies .    □
   4. Cyclic Codes of Length 
Throughout this section, we denote 
 and 
. Define 
 by:
Proposition 8 (Hensel’s shifting [
20]). 
Assume f is a monic polynomial in  and  in , where  are co-prime polynomials over , so there are  in  with  and . Remark 2. Hensel’s Lemma is a critical tool in the study of finite commutative chain rings, which ensures that factorization over  lifts to that over . We assume  so that p has an inverse modulo , i.e.,  for some positive integer, . It follows that  has a nth primitive root of unity and so does . Then, Hensel’s Lemma implies that  contains a primitive th root α; thus,  over . For every j, , there is only one i,  with . The polynomial  is said to be minimal polynomial for  in .
 Suppose that  is the order of p modulo  and I is a set of all -cyclotomic closet representatives modulo . Suppose also  is —cyclotomic closet modulo  of b, and . Assume  is a th primitive root in .
  4.1. Discrete Fourier Transform (DFT)
Discrete Fourier transform (DFT) is used when the codes length, 
N, is an arbitrary number not necessarily a power of primes; in our case, 
 and 
. This method has been widely utilized to investigate linear codes over finite rings, for instance see [
1,
4,
5,
12,
23,
24]. Next, we use DFT as an important key to describe the structure for cyclic codes over 
.
Definition 4 (DFT). 
Assume  and  the corresponding polynomial. The DFT of  iswhere and . Moreover, the Mattson–Solomon of  to be the polynomial:Note that .
 We then illustrate that c can be obtained from the Mattson–Solomon polynomial of c.
Lemma 1. Let , and let  be its Mattson–Solomon polynomial. Thus,where ∗ means component-wise multiplication.  Proof.  Suppose 
. So,
          
Note that 
, when 
 (mod 
). From the definition of 
,
          
□
   4.2. The Representation of Cyclic Codes over R
Since 
, then 
 and 
 are elements of 
, and thus by Equation (
8), 
. Now,
        
        where 
 is the extension of the Frobenius automorphism 
 from 
 onto 
 by setting 
 and the subscript are calculated modulo 
. Now, let
        
By component-wise addition and multiplication, A admits the structure of a ring. Moreover, one can see that .
Theorem 4. Suppose that γ is a map  such that . Thus, γ is an isomorphism. In addition, suppose C is a cyclic code over R of length, N,where  which is a cyclic code over  with length .  Proof.  Let 
, defined by 
. Suppose 
 and 
 are in 
 such that their degrees are less than 
N. It follows that
          
          and
          
Now, if 
 = 
, we have by Lemma 1, 
, where 
. This implies that 
, and thus 
 is one-to-one. Note that
          
Therefore,  is a bijection, and hence  is an isomorphism. As  is a ring isomorphism, the second part is direct.    □
 Lemma 2. For every , assume  is the minimal polynomial of  and  satisfies . Then,
- (i)
-  is invertible when . 
- (ii)
-  but . 
 Proof.  (i) Assuming 
, then
          
 However, we have 
 if 
i is not in 
, and hence 
 is not unit. Thus, 
 is a unit if 
. 
(ii) Because 
,
          
However, from (i) we have that  is invertible if . So, , when  is a unit of . It follows that . Suppose that . Hence, there is  with , and thus  i.e.,  but this is impossible, and the proof is finished.    □
 Suppose that 
C is a cyclic code over 
R with length, 
N. Theorem 4 claims that 
, 
 is a cyclic code over 
 of length 
. Then, by Remark 1,
        
        where 
. Let 
i be fixed and 
, we denote 
 the multiplication of all minimal polynomials for 
 with 
. Note that Lemma 2 indicates
        
        where 
 is invertible. Set
        
        where 
.
Theorem 5. If C is a cyclic code over R of length, N, then Moreover, this representation is unique.
 Proof.  If 
, then 
; hence, 
. Moreover, for every 
i, 
, 
. By Equations (
13) and (
14), 
. Thus, 
 generate 
C (Theorem 4). The last part is direct from the uniqueness of 
’s (Remark 1).    □
 Corollary 3. If , then , where .
 Proof.  From Theorem 4, , and . The result is concluded by computing the multiplication of .    □
 From Theorem 5, we have the proof of the following.
Corollary 4. The enumeration of cyclic codes over R of length, N, iswhere  is the enumeration of distinct cyclic codes over  with length .  Theorem 6. Let ; then, the enumeration of cyclic codes over R of length, N, iswhere , such that .  Proof.  From Corollary 4, we only need to determine 
, 
. Moreover, by (Corollary 3.9, [
13]),
          
          where 
, 
. Thus, the result follows.    □
   4.3. Torsion Codes and Hamming Distance
This subsection deals with torsion codes for cyclic codes over R, and their Hamming distances.
Lemma 3. Suppose  and  with . Thus, .
 Proof.  If 
, then 
, 
, 
. Since 
, 
. It follows that, 
, where 
 is unit. Moreover, if 
, (see Theorem 5), and if 
, then—for 
—
 by Equation (
13); thus, 
, which leads to 
, i.e., 
. Hence, 
 from Equation (
14).    □
 Theorem 7. Assume , .
 Proof.  Since , . On the other hand, assume , then  from the definition of . In light of Lemma 3, . Now, there exist  and  in  satisfying , where  or  (division algorithm). Because , so  from the minimality of . This means that , and hence . Thus, .    □
 Theorem 8. If C is a cyclic code over R of length, N, then  Proof.  A similar argument to that of Theorem 2, where leads to , is present, where  (Theorem 7).    □
   4.4. Dual Codes
Let 
 maintain the same definition as in Theorem 5. Assume also 
 is the constant term of 
, where 
. Because 
, 
. Thus, 
’s are invertible and leading coefficients for 
. Suppose
        
Note that 
 is monic polynomial with 
. So,
        
In other words, the polynomials 
 are monic co-prime divisors of 
 over 
R. As 
, 
, which gives 
. Hence, 
. Therefore, 
 is the multiplication of all minimal polynomials for 
, satisfying
        
By Lemma 2,
        
        where 
 is a unit. Set
        
        where 
 and let 
 as in Theorem 3.
Theorem 9. If C is a cyclic code over R with length, N, then In addition, , where .
 Proof.  Note that 
, 
 is a cyclic code over 
 of length 
. Suppose that 
. Then, 
. Moreover, we have 
. So, 
, and then
          
Thus, by an argument similar to that of Theorem 5, we have
          
          where 
 is known in (
20) and 
. From Corollary 3 and from the formula 
, we obtain 
, where 
.    □
 To sum up, the section presents an algorithm for creating a structure for cyclic codes with length  using those of length . The following steps might be helpful in this regard.
- (1)
- Obtain , I and , . 
- (2)
- For every , find  if i is fixed. 
- (3)
- Use Equation ( 13- ) to compute  - ,  - . 
- (4)
- By using , determine , where . 
- (5)
- Finally, obtain  -  by the formula ( 14- ). 
We next give some examples clarifying the above steps.
Example 3. Suppose  and . Then, , ,  and . Let  and  be cyclic codes over  and  with length 2, respectively. First, find  for . Because ,where α is satisfying  (primitive root). Since , so , and hence Second, determine  with . As  and , it follows that As  since ,  Example 4. Let  and  be cyclic codes of length 2 over  and , respectively. We will construct a cyclic code C over  with length 6 by  and . First, note that  and , then Simple calculation yields, Furthermore, . Hence, Next, we construct . Observe that  and , so  Remark 3. Similar processes can be used to describe the generators of dual codes—that is, replace  with , .
 Example 5. Consider  and  as in Example 3. We want to construct  for C given in Equation (21). First note that Let i be fixed, then consider  instead of  and . If , by the definition of , then Since , thenwhere . On the other hand, suppose that , Note that one can easily verify that  and .
 Example 6. Suppose we have the same  as in Example 4. The aim is to find  of C presented in Equation (22). Observe that Assume that , then for  we have Since , thenwhere . Next, let ,    5. Conclusions
In the present paper, we utilized the discrete Fourier transform (DFT) approach to uniquely express a representation for cyclic codes over . By using this representation, we were be able to find dual codes and Hamming distances. In addition, we gave the enumeration of cyclic codes of length, N, in terms of that of length , . When , the exact number of such codes is provided.