Next Article in Journal
Finite-Time Dissipative Fault Estimate and Event-Triggered Fault-Tolerant Synchronization Control for Discrete Semi-Markov Jumping Neural Networks
Previous Article in Journal
Assessing Complexity in Physiological Systems Through Biomedical Signals Analysis II
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

On Double Cyclic Codes over Finite Chain Rings for DNA Computing

1
Department of Mathematics, Faculty of Science, Aligarh Muslim University, Aligarh 202002, India
2
Institute of Mathematical Sciences, Faculty of Science, Universiti Malaya, Kuala Lumpur 50603, Malaysia
3
Department of Mathematical Sciences, College of Science, Princess Nourah bint Abdulrahman University, P.O. Box 84428, Riyadh 11671, Saudi Arabia
*
Author to whom correspondence should be addressed.
Entropy 2025, 27(12), 1187; https://doi.org/10.3390/e27121187
Submission received: 18 October 2025 / Revised: 20 November 2025 / Accepted: 20 November 2025 / Published: 22 November 2025
(This article belongs to the Section Information Theory, Probability and Statistics)

Abstract

Let e be a fixed positive integer and n 1 , n 2 be odd positive integers. The main objective of this article is to investigate the algebraic structure of double cyclic codes of length ( n 1 , n 2 ) over the finite chain ring R e   =   F 4 e + v F 4 e , where v 2 = 0 . Building upon this structural framework, we further demonstrate the construction of DNA codes derived from these double cyclic codes over R e . In addition, we provide the necessary and sufficient criteria showing that these codes possess reversibility and reverse-complement properties over R e . Furthermore, we introduce a generalized Gray map that extends the classical Gray map from the ring F 2 + v F 2 with v 2 = 0 to the ring R e , showing a direct correspondence between elements of R e and DNA sequences over S = { A , T , G , C } utilizing double cyclic codes. To illustrate the applicability of our results, we present some examples demonstrating the effectiveness of the mapping in generating reversible and reverse-complement DNA codes from algebraic structures over the ring R e .

1. Introduction

Deoxyribonucleic acid (DNA) serves as the genetic material in nearly all plant and animal species, whereas some viruses utilize either DNA or RNA instead. The transmission of hereditary information across generations occurs through the mechanism of DNA replication. Furthermore, as demonstrated by DNA fingerprinting methods, DNA is essential for both recognizing individual traits and comprehending the evolutionary links across species. Each of the two strands that make up DNA’s double helix shape is made up of nucleotide polymers. A deoxyribose sugar, a phosphate group, and a nitrogenous base such as adenine (A), thymine (T), cytosine (C), or guanine (G) are components of every nucleotide. The 5′ and 3′ ends of the strands are polar terminals that are chemically different. The Watson–Crick complement (WCC) rule states that adenine pairs with thymine and cytosine pairs with guanine for the bases of the two DNA strands. To indicate that A ¯ = T , T ¯ = A , G ¯ = C , and C ¯ = G , we use x ¯ to represent the complement of a base x. The DNA strand 5 - ACTGGCA - 3 , for instance, is coupled with the strand 3 - TGACCGT - 5 , which, after reorientation, may also be expressed as 5 - TGCCAGT - 3 . Adleman [1] conducted a pioneering experiment in DNA computing in 1994, showing how to solve a seven-node directed Hamiltonian route problem using DNA molecules. Many scholars have since built on this work and used DNA computing approaches to solve a range of mathematical problems [2,3,4,5,6,7,8]. In the context of designing DNA codes, a number of crucial limitations have been found to demonstrate the codes’ dependability and biological viability. These consist of the constant GC-content constraint, the reverse constraint, the reverse-complement constraint, and the Hamming constraint for a minimum distance d. The reverse of x is defined as x r = ( x n , x n 1 , , x 1 ) for each codeword x = ( x 1 , x 2 , , x n ) , where x i { A , T , G , C } , the complement is defined as x ¯ = ( x 1 ¯ , x 2 ¯ , , x n ¯ ) , where x i ¯ represents the Watson–Crick complement, and x r c = x r ¯ = ( x n ¯ , x n 1 ¯ , , x 1 ¯ ) for the reverse-complement. The Hamming distance, represented by d H ( x , y ) , between two codewords, x and y, is the number of places at which the respective symbols differ.
Early studies of DNA code design focused on the structural similarities between four-element algebraic systems and the DNA alphabet. As a result, early research concentrated on sets of four elements that had an algebraic structure. In [9], Gaborit and King investigated approaches for constructing DNA codes through additive and linear codes defined on the four-element finite field. Four combinatorial restrictions that define a high-quality DNA code were suggested by them. We follow the definition of a DNA code from [10]. A code is said to be a DNA code C D N A if it satisfies at least one of the following constraints:
(i)
Hamming distance constraint: For a given minimum distance d, d H ( x , y ) d for each x , y C D N A with x y .
(ii)
Reverse constraint: For any x , y C D N A , including x = y , has d H ( x , y r ) d .
(iii)
Reverse-complement constraint: For any x , y C D N A , d H ( x , y r c ) d , including x = y .
(iv)
Fixed GC-content constraint: The number of guanine (G) and cytosine (C) bases in each codeword x C D N A must be equal.
The design of linear and cyclic codes of odd length over F 4 that are appropriate for DNA computing was examined by Abualrub et al. [11]. Since then, there has been a lot of interest in the research of cyclic codes in relation to DNA computing. Cyclic DNA codes over the finite ring F 2 + u F 2 with u 2 = 1 were studied by Siap et al. [12]. Subsequently, Guenda and Gulliver [13] concentrated on odd-length cyclic codes over the finite ring F 2 + u F 2 with u 2 = 0 . Four elements make up this finite commutative chain ring: 0, 1, u, and 1 + u . Its maximal ideal u and characteristic is 2. The DNA bases and the ring elements were found to match one-to-one in the following manner: 0 A , 1 G , u T , and 1 + u C . They constructed cyclic codes that met the GC-content and reverse-complement constraints using this mapping. This study was further expanded to include cyclic DNA codes of even length across the same ring by Liang and Wang [10], who focused on the prerequisites for reversibility and reverse-complement limitations. A few years later, the scope of DNA code investigations in coding theory was extended to more complex algebraic systems, such as finite rings like F 4 + v F 4 with v 2 = v , F 2 + u F 2 + v F 2 + u v F 2 with u 2 = 0 , v 2 = v , u v = v u , and F 2 [ u ] / u 4 1 , (see Bayram et al. [14], Zhu and Chen [15], Yildiz and Siap [16], respectively). Subsequent research has focused on examining cyclic DNA codes constructed over various finite rings by Liu and Liu [17] and Prakash et al. [18]. In recent years, Dinh et al. [19] presented F 4 R S -cyclic codes of block length ( α , β , γ ) , a unique method for creating DNA codes by investigating cyclic codes over mixed alphabets. In this case, S = F 4 + u F 4 + v F 4 with u 2 = u , v 2 = v , u v = v u = 0 , and R = F 4 + u F 4 with u 2 = u . These codes can be viewed as S [ x ] -submodules of F 4 [ x ] / x α 1 × R [ x ] / x β 1 × S [ x ] / x γ 1 . They determined the circumstances in which separable cyclic codes meet the reversible and reverse-complement constraints and investigated the structural characteristics of these codes over F 4 R S .
In this study, we use double cyclic codes, a new kind of linear code, to study DNA codes. According to research by Dinh et al. [20], these codes are comparable to cyclic codes over mixed alphabets. Recent developments on mixed-ring and double-circulant constructions further support the relevance of our approach. Shi et al. [21] analyzed structural properties of Z 2 Z 4 -additive quasi-cyclic codes, while Wang and Shi [22] investigated Gray images of cyclic codes over Z p 2 and Z p Z p 2 . In addition, Shi et al. [23] established bounds on the minimum distance of double-circulant cubic residue codes, emphasizing the significance of Z p Z p 2 -linear and double-circulant structures. However, our focus is on codes of block length ( n 1 , n 2 ) across a single alphabet. Codewords that may be divided into two pieces so that a simultaneous cyclic shift of both portions yields another codeword inside the same code are known as double cyclic codes. In the investigation of double cyclic codes of length ( α , β ) over Z 2 , attention was given to their algebraic structure and generator polynomials; Borges et al. [24] developed the idea of double cyclic codes. According to earlier research by Siap and Kulhan [25], these codes are closely connected to generalized quasi-cyclic codes of index 2. Double cyclic codes of length ( α , β ) over Z 2 were demonstrated to represent Z 2 [ x ] -submodules of the module Z 2 [ x ] / x α 1 × Z 2 [ x ] / x β 1 . The algebraic structure and duality features of double cyclic codes over other finite rings were investigated by a number of researchers after this influential work (see [26,27,28,29] for more details). Additionally, double cyclic codes over Z 4 were shown to be asymptotically excellent by Gao and Hou [30], indicating their potential for real-world uses in coding theory and DNA-based data storage. In recent work, Kanlaya and Klin-Eam [31] investigated double cyclic codes defined over F 2 + u F 2 with the condition u 2 = 0 , focusing on applications in DNA coding. Motivated by constructions involving cyclic codes over finite rings and mixed alphabets, we extend this line of research by developing double cyclic codes of length ( n 1 , n 2 ) over the finite chain rings R e = F 4 e + v F 4 e , where v 2 = 0 , demonstrating their relevance to DNA codes.
The structure of the paper is outlined as follows: Double cyclic codes of length ( n 1 , n 2 ) over the finite chain ring R e = F 4 e + v F 4 e , where v 2 = 0 , are studied in Section 2. The construction of double cyclic codes appropriate for DNA coding is the main motive of Section 3. There are three subsections in this section. The necessary and sufficient conditions for a double cyclic code to be reversible and reversible-complement are established in the first and second subsections, respectively, while in the third subsection, we introduce a generalized Gray map that extends the classical Gray map from the ring F 2 + v F 2 with v 2 = 0 to R e along with examples to validate the theoretical findings. In Section 4, we explore applications to DNA data storage, DNA-based authentication, and cryptographic systems, illustrating the practical effectiveness of the reversible DNA codes developed through the framework of double cyclic codes. Section 5 concludes the paper with a summary of our results and directions for future research.

2. Preliminaries

Let e be a fixed positive integer and n 1 , n 2 be odd positive integers such that n = n 1 + n 2 . In this research, we describe the ring R e = F 4 e + v F 4 e with v 2 = 0 using the notation R e . The ring R e represents a finite commutative chain ring with characteristic 2 whose maximal ideal is v . A linear code of length n over R e is defined as a subset C R n e that forms an R e -submodule of R n e . For any ( a 0 , a 1 , , a n 1 ) C , the tuple ( a n 1 , a 0 , , a n 2 ) C is closed, indicating that a linear code C is cyclic. The n coordinate set is divided into two subsets, representing n 1 and n 2 coordinates, respectively. Therefore, every subset C of R n e may be thought of as a subset of the Cartesian product R n 1 e × R n 2 e , which we represent by R n 1 , n 2 e . According to the framework presented by Borges et al. [24], for any k R n e and u = ( a 0 , a 1 , , a n 1 1 ; b 0 , b 1 , , b n 2 1 ) R n 1 , n 2 e , we define the scalar multiplication of k with u as follows:
k ( a 0 , a 1 , , a n 1 1 ; b 0 , b 1 , , b n 2 1 ) = ( k a 0 , k a 1 , , k a n 1 1 ; k b 0 , k b 1 , , k b n 2 1 ) .
Using the multiplication ∗, this construction implies that R n 1 , n 2 e forms an R e -module. Consequently, a linear code C of length n over the ring R e can be characterized as an R e -submodule of R n 1 , n 2 e . For convenience, we denote any element u = ( a 0 , a 1 , , a n 1 1 ; b 0 , b 1 , , b n 2 1 ) R n 1 , n 2 e simply as u = ( a ; b ) , where a = ( a 0 , a 1 , , a n 1 1 ) and b = ( b 0 , b 1 , , b n 2 1 ) . In analogy with the notion of double cyclic codes over finite fields and rings (see [24,27,28,29] for further details), we present the definition of double cyclic codes over R e as follows:
Definition 1. 
Let C be a linear code of length α = α 1 + α 2 over R e , where α 1 , α 2 be non-negative integers. The code C is called a double cyclic code of length ( α 1 , α 2 ) if
( a α 1 1 , a 0 , a 1 , , a α 1 2 ; b α 2 1 , b 0 , b 1 , , b α 2 2 ) C
for all
( a 0 , a 1 , , a α 1 1 ; b 0 , b 1 , , b α 2 1 ) C .
The code C is a cyclic code of length α 2 over R e if α 1 = 0 . Analogously, C is called a cyclic code of length α 1 over R e if α 2 = 0 . The code C is referred to as a separable double cyclic code of length ( α 1 , α 2 ) over R e if it can be expressed as C = C α 1 × C α 2 , where C α 1 and C α 2 denote the coordinate projections of C onto the first α 1 and the last α 2 coordinates, respectively. A code that is not separable refers to a non-separable code.
Example 1. 
Let C = ( v ( 1 + x + x 2 ) , 0 ) , ( 1 + v , v ( 1 + x + x 2 ) ( 1 + x 3 + x 6 ) ) be a double cyclic code of length ( 3 , 9 ) over R 1   ( for   e = 1 ) . It is straightforward to see that C is non-separable code over R 1 .
We denote R e [ x ] x n 1 1 × R e [ x ] x n 2 1 by R n 1 , n 2 e , and the image of the vector ( a ; b ) by ( a ( x ) ; b ( x ) ) . Now define a bijective map ζ as follows:
ζ : R n 1 , n 2 e R n 1 , n 2 e by
ζ ( a 0 , a 1 , , a n 1 1 ; b 0 , b 1 , , b n 2 1 ) = a 0 + a 1 x + + a n 1 1 x n 1 1 ; b 0 + b 1 x + + b n 2 1 x n 2 1 .
Let k ( x ) R e [ x ] and u ( x ) = ( a ( x ) ; b ( x ) ) R n 1 , n 2 e . The multiplication between k ( x ) and u ( x ) is defined by
k ( x ) ( a ( x ) ; b ( x ) ) = k ( x ) a ( x )   m o d   ( x n 1 1 ) ; k ( x ) b ( x )   m o d   ( x n 2 1 ) .
With this operation, R n 1 , n 2 e becomes an R e [ x ] -module under the multiplication ∗. For convenience, throughout this article, we replace k ( x ) a ( x )   m o d   ( x n 1 1 ) ; k ( x ) b ( x )   m o d   ( x n 2 1 ) with ( k ( x ) a ( x ) ; k ( x ) b ( x ) ) .
Now, consider an element u ( x ) = ( a ( x ) ; b ( x ) ) = ( a 0 + a 1 x + + a n 1 1 x n 1 1 ; b 0 + b 1 x + + b n 2 1 x n 2 1 ) R n 1 , n 2 e . Then, the multiplication of u ( x ) by x under ∗ is given by
x ( a ( x ) ; b ( x ) ) = a n 1 1 + a 0 x + a 1 x 2 + + a n 1 2 x n 1 1 ; b n 2 1 + b 0 x + b 1 x 2 + + b n 2 2 x n 2 1 .
This demonstrates that multiplying u ( x ) by x corresponds to a cyclic shift of its components. Hence, the following proposition states that a double cyclic code of length ( n 1 , n 2 ) over R e can be identified as an R e [ x ] -submodule of R n 1 , n 2 e :
Proposition 1. 
Let C be a subset of R n 1 , n 2 e . Then, C is a double cyclic code of length ( n 1 , n 2 ) over the ring R e iff ζ ( C ) is an R e [ x ] -submodule of R n 1 , n 2 e .
Proof. 
Let C be a double cyclic code of length ( n 1 , n 2 ) over R e . Then, C is an R e -submodule of R n 1 , n 2 e , and consequently, ζ ( C ) forms a subgroup of R n 1 , n 2 e . For any element ( a 0 , a 1 , , a n 1 1 ; b 0 , b 1 , , b n 2 1 ) C , the corresponding polynomial u ( x ) = ( a ( x ) ; b ( x ) ) = ( a 0 + a 1 x + + a n 1 1 x n 1 1 ; b 0 + b 1 x + + b n 2 1 x n 2 1 ) = ζ ( a 0 , a 1 , , a n 1 1 ; b 0 , b 1 , , b n 2 1 )   of   ζ ( C ) satisfies x u ( x ) ζ ( C ) , since C is a double cyclic code. Therefore, applying the operation again yields x 2 u ( x ) = x ( x u ( x ) ) ζ ( C ) . By induction, it follows that x i u ( x ) ζ ( C ) for all i 0 .
Let r ( x ) = r 0 + r 1 x + + r t x t R e [ x ] be any polynomial with non-negative integer t. Then, we have
r ( x ) u ( x ) = ( r 0 + r 1 x + + r t x t ) u ( x ) = ( r 0 u ( x ) ) + ( r 1 x u ( x ) ) + + ( r t x t u ( x ) ) .
This implies that r ( x ) u ( x ) ζ ( C ) for any u ( x ) ζ ( C ) and r ( x ) R e [ x ] . Hence, ζ ( C ) is an R e [ x ] -submodule of R n 1 , n 2 e .
Conversely, suppose that ζ ( C ) is an R e [ x ] -submodule of R n 1 , n 2 e . Then, C is an R e -submodule of R n 1 , n 2 e . Let u = ( a 0 , a 1 , , a n 1 1 ; b 0 , b 1 , , b n 2 1 ) be a codeword in C. The corresponding polynomial representation is given by u ( x ) = ζ ( u ) = ( a 0 + a 1 x + + a n 1 1 x n 1 1 ; b 0 + b 1 x + + b n 2 1 x n 2 1 ) . By assumption, x u ( x ) ζ ( C ) , which implies that ( a n 1 1 , a 0 , , a n 1 2 ; b n 2 1 , b 0 , , b n 2 2 ) C . Therefore, C is a double cyclic code of length ( n 1 , n 2 ) over R e . □
In view of Proposition 1, a double cyclic code C having length ( n 1 , n 2 ) over the ring R e can be viewed as an R e [ x ] -submodule of R n 1 , n 2 e . After this, we substitute C for ζ ( C ) in the double cyclic code C to make things simpler.
Throughout the entire article, two odd positive integers, n 1 and n 2 , are taken into consideration so that n = n 1 + n 2 . Consider C to be an R e [ x ] -submodule of R n 1 , n 2 e . Define the following R e [ x ] -module homomorphisms as ζ n 1 : C R e [ x ] x n 1 1   =   R n 1 e by
ζ n 1 ( a ( x ) ; b ( x ) ) = a ( x )
for each ( a ( x ) ; b ( x ) ) C R n 1 , n 2 e , and define ζ n 2 : C R e [ x ] x n 2 1 = R n 2 e by
ζ n 2 ( a ( x ) ; b ( x ) ) = b ( x )
for each ( a ( x ) ; b ( x ) ) C R n 1 , n 2 e . Then, both ζ n 1 and ζ n 2 are R e [ x ] -module homomorphisms. Moreover, if ζ n 1 ( C ) is an ideal of R n 1 e , then from the study of Liang and Wang [10], we have
ζ n 1 ( C ) = f 0 ( x ) , v f 1 ( x ) = f 0 ( x ) + v f 1 ( x ) ,
where f 0 ( x ) , f 1 ( x ) F 4 e [ x ] satisfy f 1 ( x ) f 0 ( x ) ( x n 1 1 ) . Similarly, if ζ n 2 ( C ) is an ideal of R n 2 e , then
ζ n 2 ( C ) = g 0 ( x ) + v g 1 ( x ) ,
with g 0 ( x ) , g 1 ( x ) F 4 e [ x ] satisfying g 1 ( x ) g 0 ( x ) ( x n 2 1 ) . Next, we examine the generator polynomials associated with a double cyclic code C of length ( n 1 , n 2 ) over the ring R e . For f ( x ) R e [ x ] and a fixed positive integer n, one can find polynomials q ( x ) and r ( x ) in R e [ x ] satisfying f ( x ) = ( x n 1 ) q ( x ) + r ( x ) , with the condition deg ( r ( x ) ) n 1 . We denote the remainder r ( x ) by [ f ( x ) ] ( x n 1 ) .
By adopting the same procedures as in Gao et al. [28], the subsequent theorem and lemma are established.
Theorem 1. 
Let C be a double cyclic code of length ( n 1 , n 2 ) over R e . Then,
C = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) ,
where the polynomials f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , g 1 ( x ) F 4 e [ x ] and h ( x ) R e [ x ] with f 1 ( x ) f 0 ( x ) ( x n 1 1 ) a n d g 1 ( x ) g 0 ( x ) ( x n 2 1 ) . Moreover, deg ( h ( x ) ) < deg ( f 0 ( x ) + v f 1 ( x ) ) .
Lemma 1. 
If C = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) is a double cyclic code of length ( n 1 , n 2 ) over R e , where the criteria in Theorem 1 are satisfied by the polynomials f 0 ( x ) , f 1 ( x ) , h ( x ) , g 0 ( x ) , and g 1 ( x ) , then
( f 0 ( x ) + v f 1 ( x ) ) x n 2 1 g 1 ( x ) h ( x ) ( mod x n 1 1 )
and
( f 0 ( x ) + v f 1 ( x ) ) v x n 2 1 g 0 ( x ) h ( x ) ( mod x n 1 1 ) .
Corollary 1. 
Let C = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) be a double cyclic code of length ( n 1 , n 2 ) over R e , where the criteria in Theorem 1 are satisfied by the polynomials f 0 ( x ) , f 1 ( x ) , h ( x ) , g 0 ( x ) , and g 1 ( x ) . If f 0 ( x ) + v f 1 ( x ) and x n 2 1 g 1 ( x ) are co-prime over R e [ x ] , then h ( x ) = 0 .
Proof. 
In view of Lemma 1, we have
( f 0 ( x ) + v f 1 ( x ) ) x n 2 1 g 1 ( x ) h ( x ) ( mod x n 1 1 ) .
Therefore,
( f 0 ( x ) + v f 1 ( x ) ) h ( x ) .
Since deg ( h ( x ) ) < deg ( f 0 ( x ) + v f 1 ( x ) ) , we conclude that h ( x ) = 0 . □
Some findings on separable codes over the ring R e are defined by the following propositions:
Proposition 2. 
Let C = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) be a double cyclic code of length ( n 1 , n 2 ) over R e , where the polynomials f 0 ( x ) , f 1 ( x ) , h ( x ) , g 0 ( x ) , g 1 ( x ) satisfy the conditions in Theorem 1. Then, C is a separable code iff h ( x ) = 0 .
Proof. 
Let h ( x ) = 0 . Then, the code C takes the form
C = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , ( 0 ; g 0 ( x ) + v g 1 ( x ) ) .
Consequently, we have ζ n 1 ( C ) = f 0 ( x ) + v f 1 ( x ) and ζ n 2 ( C ) = g 0 ( x ) + v g 1 ( x ) . It follows that
C = C n 1 × C n 2 ,
where C n 1 is a cyclic code of length n 1 over R e , generated by the ideal f 0 ( x ) + v f 1 ( x ) , and the code C n 2 is a cyclic code of length n 2 over R e , generated by the ideal g 0 ( x ) + v g 1 ( x ) . Therefore, C is a separable code.
Conversely, suppose that C is a separable code. Now, let us define C = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , ( 0 ; g 0 ( x ) + v g 1 ( x ) ) . Then, there exist codes C n 1 R n 1 e and C n 2 R n 2 e such that
C = C n 1 × C n 2 .
Hence, the code C can be viewed as ζ n 1 ( C ) × ζ n 2 ( C ) , where ζ n 1 ( C ) and ζ n 2 ( C ) denote the images of C n 1 and C n 2 , respectively. Since h ( x ) ζ n 1 ( C ) and 0 ζ n 2 ( C ) , it follows that
C C .
Therefore,
( h ( x ) ; 0 ) = k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ; 0 ) + k 2 ( x ) ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) ,
for some k 1 ( x ) , k 2 ( x ) R e [ x ] . This implies
h ( x ) = [ k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ) + k 2 ( x ) h ( x ) ] ( x n 1 1 ) ,   and
0 = [ k 2 ( x ) ( g 0 ( x ) + v g 1 ( x ) ) ] ( x n 2 1 ) .
From Equation (2), we have 0 k 2 ( x ) ( g 0 ( x ) + v g 1 ( x ) ) ( mod x n 2 1 ) . This implies the following possibilities for the polynomial k 2 ( x ) :
k 2 ( x ) = 0 or k 2 ( x ) = x n 2 1 g 1 ( x ) c 1 ( x ) or k 2 ( x ) = v x n 2 1 g 0 ( x ) c 2 ( x ) ,
for some c 1 ( x ) , c 2 ( x ) R e [ x ] .
Case 1.
If k 2 ( x ) = 0 , then by Equation (1), we have
h ( x ) = [ k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ) ] ( x n 1 1 ) .
Hence,
( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) = k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ; 0 ) + ( 0 ; g 0 ( x ) + v g 1 ( x ) ) C .
Thus, we obtain C C .
Case 2.
If k 2 ( x ) = x n 2 1 g 1 ( x ) c 1 ( x ) , then Equation (1) gives
h ( x ) = [ k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ) + x n 2 1 g 1 ( x ) c 1 ( x ) h ( x ) ] ( x n 1 1 ) .
It follows from Lemma 1 that there exists a polynomial j 1 ( x ) R e [ x ] such that x n 2 1 g 1 ( x ) c 1 ( x ) h ( x ) j 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ) ( mod x n 1 1 ) . Therefore,
h ( x ) = [ ( k 1 ( x ) + j 1 ( x ) ) ( f 0 ( x ) + v f 1 ( x ) ) ] ( x n 1 1 ) ,
and so
( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) = ( k 1 ( x ) + j 1 ( x ) ) ( f 0 ( x ) + v f 1 ( x ) ; 0 ) + ( 0 ; g 0 ( x ) + v g 1 ( x ) ) C .
implying again that C C .
Case 3.
If k 2 ( x ) = v x n 2 1 g 0 ( x ) c 2 ( x ) , then from Equation (1),
h ( x ) = [ k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ) + v x n 2 1 g 0 ( x ) c 2 ( x ) h ( x ) ] ( x n 1 1 ) .
By Lemma 1,
v x n 2 1 g 0 ( x ) c 2 ( x ) h ( x ) j 2 ( x ) ( f 0 ( x ) + v f 1 ( x ) ) ( mod x n 1 1 ) ,
for some polynomial j 2 ( x ) R e [ x ] . Hence,
h ( x ) = [ ( k 1 ( x ) + j 2 ( x ) ) ( f 0 ( x ) + v f 1 ( x ) ) ] ( mod x n 1 1 ) ,
which yields
( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) = ( k 1 ( x ) + j 2 ( x ) ) ( f 0 ( x ) + v f 1 ( x ) ; 0 ) + ( 0 ; g 0 ( x ) + v g 1 ( x ) ) C ,
and thus C C . In all cases, we conclude that C = C = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , ( 0 ; g 0 ( x ) + v g 1 ( x ) ) , and therefore h ( x ) = 0 . □
The following proposition is an immediate consequence of Proposition 2.
Proposition 3. 
Let C = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) be a double cyclic code of length ( n 1 , n 2 ) over R e , where the criteria in Theorem 1 are satisfied by the polynomials f 0 ( x ) , f 1 ( x ) , h ( x ) , g 0 ( x ) , and g 1 ( x ) . If f 0 ( x ) + v f 1 ( x ) and x n 2 1 g 1 ( x ) are co-prime in R e [ x ] , then C is a separable code.

3. Construction of Double Cyclic Codes over R e for DNA Computations

The previous section presented the construction of the generator polynomials for double cyclic codes R e . The main focus of this section is devoted to the construction of double cyclic codes specifically designed to meet the requirements of DNA computations. The following notations are used to construct cyclic DNA codes of length n over R e , in accordance with the framework proposed by Yildiz and Siap [16]. Let a = ( a 0 , a 1 , , a n 1 ) R n e be a codeword of n over R e . The reverse of a is defined as a r = ( a n 1 , a n 2 , , a 0 ) . The complement of a is defined as a ¯ = ( a 0 ¯ , a 1 ¯ , , a n 1 ¯ ) , where a i ¯ denotes the complement of a i in the DNA code. The reverse-complement of a is defined as a r c = ( a n 1 ¯ , a n 2 ¯ , , a 0 ¯ ) .
A code C of length n over R e is called reversible if for any a C , a r C , complement if for any a C , a ¯ C , reversible-complement if for any a C , a r c C . Additionally, a cyclic code C is referred to as a cyclic DNA code when, for every a C with a a r c and a r c also belongs to C. The reciprocal polynomial of f ( x ) = f 0 + f 1 x + + f t x t R e [ x ] , with f t 0 is defined as follows:
f * ( x ) = x t f ( x 1 ) = f t + f t 1 x + + f 0 x t .
It is evident that if f 0 0 , then deg ( f * ( x ) ) = deg ( f ( x ) ) , else deg ( f * ( x ) ) deg ( f ( x ) ) . Moreover, the polynomial f ( x ) is said to be a self reciprocal if f * ( x ) = f ( x ) .
By the same argument as in Abualrub et al. [11] Lemma 4, we obtain the following lemma.
Lemma 2. 
Let f ( x ) and g ( x ) be two polynomials in R e [ x ] such that deg ( f ( x ) ) deg ( g ( x ) ) with i = deg ( f ( x ) ) deg ( g ( x ) ) . Then,
(i) 
[ f ( x ) + g ( x ) ] * = f * ( x ) + x i g * ( x ) ,
(ii) 
[ f ( x ) g ( x ) ] * = f * ( x ) g * ( x ) .
For any odd length n, Guenda and Gulliver [13] investigated into cyclic DNA codes over the ring R = F 2 + v F 2   with   v 2 = 0 . They introduced a bijective mapping η between the elements of R and the DNA nucleotides A, T, G, C as follows:
0 A , 1 G , v T , 1 + v C .
For our study, the present section will consistently use the same bijective map η . Based on the linkage properties of DNA bases, the following equalities are observed: 0 ¯ = v , 1 ¯ = 1 + v , v ¯ = 0 , and 1 + v ¯ = 1 . For any a , b R e , we obtain a + a ¯ = v , a + b ¯ = a ¯ + b ¯ + v . Furthermore, for any a F 4 e , we have v + v a ¯ = v a .
The next theorem concerning reversible and reversible-complement codes is an analogous result as presented in the work of Guenda and Gulliver [13].
Theorem 2. 
Let C = f 0 ( x ) , v f 1 ( x ) = f 0 ( x ) + v f 1 ( x ) be a cyclic code of odd length n over R e , where f 0 ( x ) , f 1 ( x ) F 4 e [ x ] with f 1 ( x ) f 0 ( x ) ( x n 1 ) . Then,
(i) 
the code C is reversible if the polynomials f 0 ( x ) and f 1 ( x ) are self-reciprocal.
(ii) 
the code C is reversible-complement if the polynomials f 0 ( x ) and f 1 ( x ) are self-reciprocal and C contains the codeword v + v x + + v x n 1 .
Remark 1 
([31]). Let u = ( a ; b ) = ( a 0 , a 1 , , a n 1 1 ; b 0 , b 1 , , b n 2 1 ) R n 1 , n 2 e . Then,
(i) 
the reverse of u is defined as u r = ( a n 1 1 , a n 1 2 , , a 0 ; b n 2 1 , b n 2 2 , , b 0 ) , that is, u r = ( a r ; b r ) ,
(ii) 
the complement of u is defined as u ¯ = ( a 0 ¯ , a 1 ¯ , , a n 1 1 ¯ ; b 0 ¯ , b 1 ¯ , , b n 2 1 ¯ ) , that is, u ¯ = ( a ¯ ; b ¯ ) ,
(iii) 
the reverse-complement of u is defined as u r c = ( a n 1 1 , a n 1 2 , , a 0 ; b n 2 1 , b n 2 2 , , b 0 ) , that is, u r c = ( a r c ; b r c ) .
In the continuation of earlier studies on DNA codes formulated within cyclic codes over the ring R (see [10,13]) and on cyclic codes defined over mixed alphabets [19], we extend the framework by introducing reversible, complement, and reversible-complement structures for double cyclic codes of length ( n 1 , n 2 ) over the ring R e , which prove to be highly applicable in DNA-based computations.
Definition 2. 
Let C be a double cyclic code of length ( n 1 , n 2 ) over the ring R e . Then, C is said to be reversible if for any u C , u r C , complement if for any u C , u ¯ C , reversible-complement if for any u C , u r c C .
The following is a definition of the double cyclic DNA codes of length ( n 1 , n 2 ) over the ring R e .
Definition 3. 
Let C be a linear code of length n = n 1 + n 2 defined over the ring R e . We call C a double cyclic DNA code of length ( n 1 , n 2 ) over R e if the code C forms a double cyclic code of the same length over R e , and for each u C , the conditions u u r c and u r c C are satisfied.
We break down the investigation into three subsections to make it easier to analyze double cyclic DNA codes of length ( n 1 , n 2 ) over R e :
(i)
The initial subsection concentrates on the investigation of the reversibility of double cyclic codes of length ( n 1 , n 2 ) over R e .
(ii)
The second subsection examines the reversible-complement property and illustrate several examples of DNA codes derived through double cyclic DNA codes of length ( n 1 , n 2 ) defined over R e .
(iii)
In the third subsection, the appropriate Gray map for R e = F 4 e + v F 4 e , where v 2 = 0 , is the subject of discussion.

3.1. Reversible Codes over R e

The analysis in this subsection focuses on characterizing the reversibility of double cyclic codes through necessary and sufficient conditions. In view of Remark 1 mentioned above, the following result is straightforward.
Proposition 4. 
Let u , w R n 1 , n 2 e , and k R e . Then,
(i) 
[ u + w ] r = u r + w r ,
(ii) 
[ k u ] r = k u r .
Remark 2. 
For any u = ( a 0 , a 1 , , a n 1 1 ; b 0 , b 1 , , b n 2 1 ) R n 1 , n 2 e , the vector u is associated with the polynomial u ( x ) = ( a ( x ) ; b ( x ) ) = ( a 0 + a 1 x + + a n 1 1 x n 1 1 ; b 0 + b 1 x + + b n 2 1 x n 2 1 ) R n 1 , n 2 e . Since by Remark 1, u r = ( a n 1 1 , a n 1 2 , , a 0 ; b n 2 1 , b n 2 2 , , b 0 ) , we obtain
u r ( x ) = a n 1 1 + a n 1 2 x + + a 0 x n 1 1 ; b n 2 1 + b n 2 2 x + + b 0 x n 2 1 = x n 1 1 deg ( a ( x ) ) a * ( x ) ; x n 2 1 deg ( b ( x ) ) b * ( x ) ,
where a * ( x ) and b * ( x ) are the reciprocal polynomials of a ( x ) and b ( x ) , respectively. This shows that the reverse of u ( x ) corresponds to the polynomial
u r ( x ) = x n 1 1 deg ( a ( x ) ) a * ( x ) ; x n 2 1 deg ( b ( x ) ) b * ( x ) .
Additionally, the reverse of u ( x ) can be written as [ u ( x ) ] r = u r ( x ) .
Let C be a double cyclic code of length ( n 1 , n 2 ) over the ring R e . Define the projection maps
σ n 1 : C R n 1 e by σ n 1 ( a ; b ) = a for   all   ( a ; b ) C ,
and
σ n 2 : C R n 2 e by σ n 2 ( a ; b ) = b for   all   ( a ; b ) C .
The codes σ n 1 ( C ) and σ n 2 ( C ) are both reversible cyclic codes over R e with lengths n 1 and n 2 provided that C is a reversible code. Moreover, if C is separable, then it can be expressed as C = C n 1 × C n 2 , with C n 1 R n 1 e and C n 2 R n 2 e . Hence, σ n 1 ( C ) = C n 1 and σ n 2 ( C ) = C n 2 . It follows that for a separable code C, reversibility holds precisely when both C n 1 and C n 2 are reversible cyclic codes of lengths n 1 and n 2 over R e and conversely. Consequently, this leads us to the following proposition:
Proposition 5. 
Let C be a double cyclic code of length ( n 1 , n 2 ) over R e and assume that C = ( f 0 ( x ) + v f 1 ( x ) , 0 ) ; ( 0 , g 0 ( x ) + v g 1 ( x ) ) is a separable code, where the criteria in Theorem 1 are satisfied by the polynomials f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , and g 1 ( x ) . Then, the code C is reversible iff the polynomials f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , and g 1 ( x ) are self-reciprocal.
Proof. 
Let the polynomials f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , and g 1 ( x ) be self-reciprocal and given that C is a separable code. Then, it follows C = C n 1 × C n 2 , with C n 1 is a cyclic code of length n 1 over R e generated by f 0 ( x ) + v f 1 ( x ) , and C n 2 is a cyclic code of length n 2 over R e generated by g 0 ( x ) + v g 1 ( x ) . According to Theorem 2, the component codes C n 1 and C n 2 are reversible cyclic codes of lengths n 1 and n 2 , respectively, over the ring R e . For any v = ( a ; b ) C = C n 1 × C n 2 , we have a C n 1 and b C n 2 . As C n 1 and C n 2 are reversible, it follows that a r C n 1 and b r C n 2 . Thus,
u r = ( a r ; b r ) C n 1 × C n 2 = C .
Hence, C is a reversible code.
Conversely, assume that the code C is reversible. In this case, σ n 1 ( C ) and σ n 2 ( C ) are reversible cyclic codes of length n 1 and n 2 over R e , respectively. Given that ζ n 1 ( C ) = f 0 ( x ) + v f 1 ( x ) , “it follows that σ n 1 ( C ) is a cyclic code of length n 1 over R e with generator f 0 ( x ) + v f 1 ( x ) . By Theorem 2, the polynomials f 0 ( x ) and f 1 ( x ) are self reciprocal polynomials. In a similar way, σ n 2 ( C ) is a cyclic code of length b over R e with generator g 0 ( x ) + v g 1 ( x ) . In view of Theorem 2, we conclude that g 0 ( x ) and g 1 ( x ) are self-reciprocal. □
Proposition 6. 
Let u ( x ) , w ( x ) , and ( a ( x ) ; b ( x ) ) be elements in R n 1 , n 2 e and k Z + . Then,
(i) 
[ u ( x ) + w ( x ) ] r = u r ( x ) + w r ( x ) ,
(ii) 
( x k a ( x ) ; x k b ( x ) ) r = x ( p + 1 ) n 1 1 deg ( x k a ( x ) ) ( a * ( x ) ; 0 ) + x ( q + 1 ) n 2 1 deg ( x k b ( x ) )   ( 0 ; b * ( x ) ) ,
where p , q are either zero or the least positive integers such that
p n 1 deg ( x k a ( x ) ) + deg ( [ x k a ( x ) ] ( x n 1 1 ) ) 0
and
q n 2 deg ( x k b ( x ) ) + deg ( [ x k b ( x ) ] ( x n 2 1 ) ) 0 .
Proof. 
We establish statement ( i ) directly. Now, we proceed to prove statement ( i i ) . Consider an element ( a ( x ) ; b ( x ) ) R n 1 , n 2 e , where k Z + . The proof is carried out by considering the following four cases:
Case 1.
If deg ( x k a ( x ) ) n 1 and deg ( x k b ( x ) ) n 2 , then we have
x k a ( x ) = ( x n 1 1 ) q 1 ( x ) + l 1 ( x ) and x k b ( x ) = ( x n 2 1 ) q 2 ( x ) + l 2 ( x ) ,
where q 1 ( x ) , q 2 ( x ) , l 1 ( x ) , l 2 ( x ) R e [ x ] , deg ( l 1 ( x ) ) n 1 1 , and deg ( l 2 ( x ) ) n 2 1 . Consequently, a * ( x ) = ( x k a ( x ) ) * = ( x n 1 1 ) q 1 * ( x ) + x i l 1 * ( x ) and b * ( x ) = ( x k b ( x ) ) * = ( x n 2 1 ) q 2 * ( x ) + x j l 2 * ( x ) , where i = deg ( ( x n 1 1 ) q 1 ( x ) ) deg ( l 1 ( x ) ) and j = deg ( ( x n 2 1 ) q 2 ( x ) ) deg ( l 2 ( x ) ) . Let p , q Z + be the least positive integers such that q n 1 i 0 and q n 2 j 0 . Then, it follows that
l 1 * ( x ) = [ x p n 1 i a * ( x ) ] ( x n 1 1 ) and l 2 * ( x ) = [ x q n 2 j b * ( x ) ] ( x n 2 1 ) .
Now consider
( x k a ( x ) ; x k b ( x ) ) r = ( l 1 ( x ) ; l 2 ( x ) ) r = ( x n 1 1 deg ( l 1 ( x ) ) l 1 * ( x ) ; x n 2 1 deg ( l 2 ( x ) ) l 2 * ( x ) ) .
Substituting the expressions of l 1 * ( x ) and l 2 * ( x ) in the relation ( x k a ( x ) ; x k b ( x ) ) r , we obtain
( x k a ( x ) ; x k b ( x ) ) r = x n 1 1 deg ( l 1 ( x ) ) x p n 1 i a * ( x ) ; 0 + 0 ; x n 2 1 deg ( l 2 ( x ) ) x q n 2 j b * ( x ) = x ( p + 1 ) n 1 1 deg ( ( x n 1 1 ) q 1 ( x ) ) ( a * ( x ) ; 0 ) + x ( q + 1 ) n 2 1 deg ( ( x n 2 1 ) q 2 ( x ) ) ( 0 ; b * ( x ) ) .
Since deg ( ( x n 1 1 ) q 1 ( x ) ) = deg ( x k a ( x ) ) and deg ( ( x n 2 1 ) q 2 ( x ) ) = deg ( x k b ( x ) ) , we arrive at ( x k a ( x ) ; x k b ( x ) ) r = x ( p + 1 ) n 1 1 deg ( x k a ( x ) ) ( a * ( x ) ; 0 ) + x ( q + 1 ) n 2 1 deg ( x k b ( x ) ) ( 0 ; b * ( x ) ) .
Case 2.
If deg ( x k a ( x ) ) n 1 1 and deg ( x k b ( x ) ) n 2 , then
x k b ( x ) = ( x n 2 1 ) q 2 ( x ) + l 2 ( x ) ,
where q 2 ( x ) , l 2 ( x ) R e [ x ] and deg ( l 2 ( x ) ) n 2 1 . Consequently,
a * ( x ) = ( x k a ( x ) ) * and b * ( x ) = ( x n 2 1 ) q 2 * ( x ) + x j l 2 * ( x ) ,
where j = deg ( ( x n 2 1 ) q 2 ( x ) ) deg ( l 2 ( x ) ) . Let q Z + be the least positive integer such that q n 2 j 0 . Then, we obtain
l 2 * ( x ) = [ x q n 2 j b * ( x ) ] ( x n 2 1 ) .
Now, we compute
( x k a ( x ) ; x k b ( x ) ) r = ( x k a ( x ) ; l 2 ( x ) ) r = ( x n 1 1 deg ( x k a ( x ) ) ( x k a ( x ) ) * ; x n 2 1 deg ( l 2 ( x ) ) l 2 * ( x ) ) = ( x n 1 1 deg ( x k a ( x ) ) a * ( x ) ; 0 ) + ( 0 ; x n 2 1 deg ( l 2 ( x ) ) x q n 2 j b * ( x ) ) = x n 1 1 deg ( x k a ( x ) ) ( a * ( x ) ; 0 ) + x ( q + 1 ) n 2 1 deg ( ( x n 2 1 ) q 2 ( x ) ) ( 0 ; b * ( x ) ) .
Since deg ( ( x n 2 1 ) q 2 ( x ) ) = deg ( x k b ( x ) ) , so we obtain
( x k a ( x ) ; x k b ( x ) ) r = x n 1 1 deg ( x k a ( x ) ) ( a * ( x ) ; 0 ) + x ( q + 1 ) n 2 1 deg ( x k b ( x ) ) ( 0 ; b * ( x ) ) .
Case 3.
When deg ( x k a ( x ) ) n 1 1 and deg ( x k b ( x ) ) n 2 1 , then we have
( x k a ( x ) ) * = a * ( x )   and   ( x k b ( x ) ) * = b * ( x ) ,   Thus ,
( x k a ( x ) ; x k b ( x ) ) r = ( x n 1 1 deg ( x k a ( x ) ) · ( x k a ( x ) ) * ; x n 2 1 deg ( x k b ( x ) ) · ( x k b ( x ) ) * ) = ( x n 1 1 deg ( x k a ( x ) ) · a * ( x ) ; x n 2 1 deg ( x k b ( x ) ) · b * ( x ) ) = x n 1 1 deg ( x k a ( x ) ) ( a * ( x ) ; 0 ) + x n 2 1 deg ( x k b ( x ) ) ( 0 ; b * ( x ) ) .
This implies that
( x k a ( x ) ; x k b ( x ) ) r = x ( p + 1 ) n 1 1 deg ( x k a ( x ) ) ( a * ( x ) ; 0 ) + x ( q + 1 ) n 2 1 deg ( x k b ( x ) ) ( 0 ; b * ( x ) ) ,
where p = q = 0 .
Case 4.
When deg ( x k a ( x ) ) n 1 and deg ( x k b ( x ) ) n 2 1 , then the proof proceeds analogously to Case 2. Thus, considering all four cases, we conclude that
( x k a ( x ) ; x k b ( x ) ) r = x ( p + 1 ) n 1 1 deg ( x k a ( x ) ) ( a * ( x ) ; 0 ) + x ( q + 1 ) n 2 1 deg ( x k b ( x ) ) ( 0 ; b * ( x ) ) ,
where p , q are either 0 or the least positive integers satisfying p n 1 deg ( x k a ( x ) ) + deg [ x k a ( x ) ] ( x n 1 1 ) 0 ,   and   q n 2 deg ( x k b ( x ) ) + deg [ x k b ( x ) ] ( x n 2 1 ) 0 .
Corollary 2. 
Let ( a ( x ) ; b ( x ) ) R n 1 , n 2 e with k Z + . Suppose there exists a non-negative integer n 3 such that n 2 = ( 2 n 3 + 1 ) n 1 with deg ( b ( x ) ) = 2 n 3 n 1 + deg ( a ( x ) ) . Then, ( x k a ( x ) ; x k b ( x ) ) r = x ( ( 2 n 3 + 1 ) + 1 ) n 1 1 deg ( x k a ( x ) ) ( a * ( x ) ; b * ( x ) ) , where ℓ is either zero or the smallest positive integer satisfying
n 1 deg ( x k a ( x ) ) + deg [ x k a ( x ) ] ( x n 1 1 ) 0 ,
and
n 2 deg ( x k b ( x ) ) + deg [ x k b ( x ) ] ( x n 2 1 ) 0 .
Proof. 
The proof directly follows from the Proposition 6. □
Example 2. 
For e = 2 , we have R 2 = F 16 + v F 16 , where v 2 = 0 . Let ( a ( x ) ; b ( x ) ) = ( 1 + ( 1 + w 3 ) x + w 2 x 2 ; w 2 + w x 2 + ( 1 + w + w 3 ) x 3 ) R 5 , 7 2 . Consider ( x 2 a ( x ) ; x 2 b ( x ) ) r = ( x 2 ( 1 + ( 1 + w 3 ) x + w 2 x 2 ) ; x 2 ( 1 + x 2 + x 3 ) ) r . Since deg ( x 2 a ( x ) ) = deg ( x 2 + ( 1 + w 3 ) x 3 + w 2 x 4 ) = 4 , deg ( [ x 2 a ( x ) ] ( x 5 1 ) ) = deg ( x 2 + ( 1 + w 3 ) x 3 + w 2 x 4 ) = 4 , deg ( x 2 b ( x ) ) = deg ( w 2 x 2 + w x 4 + ( 1 + w + w 3 ) x 5 ) = 5 , and deg ( [ x 2 b ( x ) ] ( x 7 1 ) ) = deg ( w 2 x 2 + w x 4 + ( 1 + w + w 3 ) x 5 ) = 5 , we obtain that p = 0 such that 0 ( 5 ) 4 + 4 0 and q = 0 . By using Proposition 6, we obtain that
( x 2 a ( x ) ; x 2 b ( x ) ) r = x ( p + 1 ) n 1 1 deg ( x 2 a ( x ) ) ( a * ( x ) ; 0 ) + x ( q + 1 ) n 2 1 deg ( x 2 b ( x ) ) ( 0 ; b * ( x ) ) = x 5 1 4 ( a * ( x ) ; 0 ) + x 7 1 5 ( 0 ; b * ( x ) ) = 1 w 2 + ( 1 + w 3 ) x + x 2 ; 0 + x 0 ; ( 1 + w + w 3 ) + w x + w 2 x 3 = ( w 2 + ( 1 + w 3 ) x + x 2   m o d ( x 5 1 ) ; ( 1 + w + w 3 ) x + w x 2 + w 2 x 4   m o d ( x 7 1 ) ) = w 2 + ( 1 + w 3 ) x + x 2 ; ( 1 + w + w 3 ) x + w x 2 + w 2 x 4 .
On the other hand, by performing a direct computation, we obtain
x 2 a ( x ) ; x 2 b ( x ) r = x 2 ( 1 + ( 1 + w 3 ) x + w 2 x 2 ) , x 2 w 2 + w x 2 + ( 1 + w + w 3 ) x 3 r = x 2 + ( 1 + w 3 ) x 3 + w 2 x 4   m o d ( x 5 1 ) ; w 2 x 2 + w x 4 + ( 1 + w + w 3 ) x 5   m o d ( x 7 1 ) r = x 2 + ( 1 + w 3 ) x 3 + w 2 x 4 , w 2 x 2 + w x 4 + ( 1 + w + w 3 ) x 5 r = x 5 1 4 ( x 2 + ( 1 + w 3 ) x 3 + w 2 x 4 ) * ; x 7 1 5 w 2 x 2 + w x 4 + ( 1 + w + w 3 ) x 5 * = w 2 + ( 1 + w 3 ) x + x 2 ; ( 1 + w + w 3 ) x + w x 2 + w 2 x 4 .
The following example illustrates the case when both p and q are non-zero.
Example 3. 
For e = 1 , we have R 1 = F 4 + v F 4 , where v 2 = 0 . Let ( a ( x ) , b ( x ) ) = ( 1 + w x 3 + x 4 , 1 + x + ( 1 + w ) x 6 ) R 5 , 7 1 . Consider ( x a ( x ) , x b ( x ) ) r = ( x ( 1 + w x 3 + x 4 ) , x ( 1 + x + ( 1 + w ) x 6 ) ) r . Since deg ( x a ( x ) ) = deg ( x + w x 4 + x 5 ) = 5 , deg ( [ x a ( x ) ] ( x 5 1 ) ) = deg ( 1 + x + w x 4 ) = 4 , deg ( x b ( x ) ) = deg ( x + x 2 + ( 1 + w ) x 7 ) = 7 , and deg ( [ x b ( x ) ] ( x 7 1 ) ) = deg [ x + x 2 + ( 1 + w ) x 7 ] ( x 7 1 ) = deg ( ( 1 + w ) + x + x 2 ) = 2 . Then, by using Proposition 6, we obtain that p = 1 such that 1 ( 5 ) 5 + 4 0 and q = 1 . Moreover, we have
( x a ( x ) ; x b ( x ) ) r = x ( p + 1 ) n 1 1 deg ( x a ( x ) ) ( a * ( x ) ; 0 ) + x ( q + 1 ) n 2 1 deg ( x b ( x ) ) ( 0 ; b * ( x ) ) = x 10 1 5 ( a * ( x ) ; 0 ) + x 14 1 7 ( 0 ; b * ( x ) ) = x 4 ( 1 + w x + x 4 ; 0 ) + x 6 ( 0 ; ( 1 + w ) + x 5 + x 6 ) = ( x 4 + w x 5 + x 8   mod ( x 5 1 ) ; ( 1 + w ) x 6 + x 11 + x 12   mod ( x 7 1 ) ) = ( w + x 3 + x 4 ; x 4 + x 5 + ( 1 + w ) x 6 ) .
However, a direct computation yields that
( x a ( x ) ; x b ( x ) ) r = ( x ( 1 + w x 3 + x 4 ) , x ( 1 + x + ( 1 + w ) x 6 ) ) r = ( x + w x 4 + x 5   mod ( x 5 1 ) ; x + x 2 + ( 1 + w ) x 7   mod ( x 7 1 ) ) r = ( 1 + x + w x 4 , 1 + x + x 2 ) r = ( x 5 1 4 ( 1 + x + w x 4 ) * ; x 7 1 2 ( ( 1 + w ) + x + x 2 ) * ) = ( w + x 3 + x 4 ; x 4 ( 1 + x + ( 1 + w ) x 2 ) ) = ( w + x 3 + x 4 ; x 4 + x 5 + ( 1 + w ) x 6 ) .
In the following theorem, we investigate the reversal property of a non-separable double cyclic code C of length ( n 1 , n 2 ) over the ring R e .
Theorem 3. 
Let C = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) be a double cyclic code of length ( n 1 , n 2 ) over R e , where the criteria in Theorem 1 are satisfied by the polynomials f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , g 1 ( x ) , and h ( x ) . Then, f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , and g 1 ( x ) are self-reciprocal polynomials if the code C is reversible.
Proof. 
Assume that C is reversible. Subsequently, ζ n 2 ( C ) = g 0 ( x ) + v g 1 ( x ) is a reversible cyclic code of length n 2 over R e . Based on Theorem 2, it is evident that both g 0 ( x ) and g 1 ( x ) are self-reciprocal. Our assertion is that the code ( f 0 ( x ) + v f 1 ( x ) ; 0 ) constitutes a reversible double cyclic code of length ( n 1 , n 2 ) over the ring R e . Since ( f 0 ( x ) + v f 1 ( x ) ; 0 ) is an R e [ x ] -submodule of R n 1 , n 2 e , so it is a double cyclic code of length n 1 over R e . Let us assume, contrary to our claim, that I = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) is not reversible. Then, there exists u ( x ) I C such that u r ( x ) I . Since u ( x ) = k ( x ) ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , we have
u r ( x ) = ( x n 1 1 deg ( l ( x ) ) l * ( x ) ; 0 ) ,
where [ k ( x ) ( f 0 ( x ) + v f 1 ( x ) ) ] ( x n 1 1 ) = l ( x ) . Thus, we have
u r ( x ) = ( x n 1 1 deg ( l ( x ) ) l * ( x ) ; 0 ) = k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ; 0 ) + k 2 ( x ) ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) ,
for some k 1 ( x ) , k 2 ( x ) R e [ x ] with k 2 ( x ) 0 . This demonstrates that
[ k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ) + k 2 ( x ) h ( x ) ] ( x n 1 1 ) = x n 1 1 deg ( l ( x ) ) l * ( x ) ,
[ k 2 ( x ) ( g 0 ( x ) + v g 1 ( x ) ) ] ( x n 2 1 ) = 0 .
Since k 2 ( x ) 0 , there are two cases: either k 2 ( x ) = x n 2 1 g 1 ( x ) l 1 ( x ) or k 2 ( x ) = v x n 2 1 g 0 ( x ) l 2 ( x ) , where l 1 ( x ) , l 2 ( x ) R e [ x ] .
Case 1.
If k 2 ( x ) = x n 2 1 g 1 ( x ) l 1 ( x ) , then
k 2 ( x ) h ( x ) = x n 2 1 g 1 ( x ) l 1 ( x ) h ( x ) .
Using Lemma 1, we obtain
( f 0 ( x ) + v f 1 ( x ) ) x n 2 1 g 1 ( x ) l 1 ( x ) h ( x ) ( mod x n 1 1 ) ,
and hence there exists q ( x ) R e [ x ] such that
k 2 ( x ) h ( x ) q ( x ) ( f 0 ( x ) + v f 1 ( x ) ) ( mod x n 1 1 ) .
Substituting this into Equation (3), we get
[ ( k 1 ( x ) + q ( x ) ) ( f 0 ( x ) + v f 1 ( x ) ) ] ( x n 1 1 ) = x n 1 1 deg ( l ( x ) ) l * ( x ) ,
which implies
u r ( x ) = ( x n 1 1 deg ( l ( x ) ) l * ( x ) ; 0 ) = ( k 1 ( x ) + q ( x ) ) ( f 0 ( x ) + v f 1 ( x ) ; 0 ) I ,
contradicting the assumption that u r ( x ) I .
Case 2.
When k 2 ( x ) = v x n 2 1 g 0 ( x ) l 2 ( x ) . Then, we have
k 2 ( x ) h ( x ) = v x n 2 1 g 0 ( x ) l 2 ( x ) h ( x ) .
By Lemma 1, it follows that
( f 0 ( x ) + v f 1 ( x ) ) v x n 2 1 g 0 ( x ) l 2 ( x ) h ( x ) ,
and using the similar arguments as that of Case 1, we conclude that u r ( x ) I , again leading to a contradiction. Thus, I = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) is a reversible code. Consequently, ζ n 1 ( I ) = f 0 ( x ) + v f 1 ( x ) is a reversible cyclic code of length n 1 over R e . In accordance with Theorem 2, the polynomials f 0 ( x ) and f 1 ( x ) are self-reciprocal. □
In Theorem 3, we have established the necessary conditions that the polynomials f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , and g 1 ( x ) satisfy for a code C = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) to be reversible, where the lengths n 1 and n 2 are assumed to be odd positive integers. In the next theorem, the specific situation where n 2 = ( 2 n 3 + 1 ) n 1 for all non-negative integers n 3 , we investigate the requirement that the polynomial h ( x ) for C to be reversible.
Theorem 4. 
Let C = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) be a double cyclic code of length ( n 1 , n 2 = ( 2 n 3 + 1 ) n 1 ) over the ring R e , where the criteria in Theorem 1 are satisfied by the polynomials f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , g 1 ( x ) , h ( x ) and n 3 Z + { 0 } . Assume that deg ( g 0 ( x ) + v g 1 ( x ) ) = 2 n 3 n 1 + deg ( h ( x ) ) . If C is reversible code, then ( f 0 ( x ) + v f 1 ( x ) ) divides ( l * ( x ) + h ( x ) + ( 1 + x i ) v a ( x ) g 1 ( x ) h ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) h ( x ) ) in R n 1 e , where a ( x ) , b ( x ) F 4 e [ x ] such that a ( x ) g 0 ( x ) + b ( x ) x n 2 1 g 0 ( x ) = 1 and i = deg ( g 0 ( x ) ) deg ( g 1 ( x ) ) .
Proof. 
Assume that C is a reversible code and let n 2 = ( 2 n 3 + 1 ) n 1 , where n 3 Z + { 0 } . The polynomials f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , and g 1 ( x ) are self-reciprocal according to Theorem 3. Since ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) C , it follows that
( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) r = ( x n 1 1 deg ( h ( x ) ) l * ( x ) ; x n 2 1 deg ( g 0 ( x ) + v g 1 ( x ) ) ( g 0 ( x ) + v g 1 ( x ) ) * ) C .
Which implies
( h * ( x ) ; ( g 0 ( x ) + v g 1 ( x ) ) * ) =   x 2 n 3 n 1 + deg ( h ( x ) ) + 1 ( x n 1 1 deg ( h ( x ) ) h * ( x ) ; x n 2 1 deg ( g 0 ( x ) + v g 1 ( x ) ) ( g 0 ( x ) + v g 1 ( x ) ) * ) C .
Hence, there exist some k 1 ( x ) , k 2 ( x ) R e [ x ] such that
( h * ( x ) ; ( g 0 ( x ) + v g 1 ( x ) ) * ) = k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ; 0 ) + k 2 ( x ) ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) .
Consequently, we have
[ k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ) + k 2 ( x ) h ( x ) ] ( x n 1 1 ) = h * ( x )
[ k 2 ( x ) ( g 0 ( x ) + v g 1 ( x ) ) ] ( x n 2 1 ) = g 0 ( x ) + v x i g 1 ( x ) ,
where i = deg ( g 0 ( x ) ) deg ( g 1 ( x ) ) . Consider the following congruences:
[ v ( g 0 ( x ) + v g 1 ( x ) ) ] ( x n 2 1 ) = v g 0 ( x ) and
x n 2 1 g 0 ( x ) ( g 0 ( x ) + v g 1 ( x ) ) ( x n 2 1 ) = x n 2 1 g 0 ( x ) v g 1 ( x ) .
Since gcd ( g 0 ( x ) , x n 2 1 g 0 ( x ) ) = 1 , so we have a ( x ) g 0 ( x ) + b ( x ) x n 2 1 g 0 ( x ) = 1 , for some polynomials a ( x ) , b ( x ) F 4 e [ x ] . Multiplying on both sides by v g 1 ( x ) , we obtain
v g 1 ( x ) = v g 1 ( x ) · a ( x ) g 0 ( x ) + b ( x ) x n 2 1 g 0 ( x ) = v g 1 ( x ) a ( x ) g 0 ( x ) + v g 1 ( x ) b ( x ) x n 2 1 g 0 ( x ) .
Then, using Equations (7) and (8), we have
v a ( x ) g 1 ( x ) + b ( x ) x n 2 1 g 0 ( x ) ( g 0 ( x ) + v g 1 ( x ) ) ( x n 2 1 ) = v g 1 ( x ) .
Therefore,
v x i g 1 ( x ) x i v a ( x ) g 1 ( x ) + b ( x ) x n 2 1 g 0 ( x ) ( g 0 ( x ) + v g 1 ( x ) ) ( mod x n 2 1 ) ,
and
g 0 ( x ) = g 0 ( x ) + v g 1 ( x ) + v g 1 ( x )
1 + v a ( x ) g 1 ( x ) + b ( x ) x n 2 1 g 0 ( x ) ( g 0 ( x ) + v g 1 ( x ) ) ( mod x n 2 1 ) .
Hence,
g 0 ( x ) + v x i g 1 ( x ) = 1 + 1 + x i v a ( x ) g 1 ( x ) + 1 + x i b ( x ) x n 2 1 g 0 ( x ) ( g 0 ( x ) + v g 1 ( x ) ) ( x n 2 1 ) .
Applying Equation (6), we get
k 2 ( x ) ( 1 + 1 + x i v a ( x ) g 1 ( x ) + 1 + x i b ( x ) x n 2 1 g 0 ( x ) ) ( g 0 ( x ) + v g 1 ( x ) ) 0 ( mod x n 2 1 ) . This implies that the expression
k 2 ( x ) 1 + 1 + x i v a ( x ) g 1 ( x ) + 1 + x i b ( x ) x n 2 1 g 0 ( x )
is either 0 or of the form x n 2 1 g 1 ( x ) ( l 1 ( x ) ) , or v x n 2 1 g 0 ( x ) ( l 2 ( x ) ) , where l 1 ( x ) , l 2 ( x ) R e [ x ] .
Case 1.
If k 2 ( x ) 1 + 1 + x i v a ( x ) g 1 ( x ) + 1 + x i b ( x ) x n 2 1 g 0 ( x ) = 0 , then
k 2 ( x ) = 1 + 1 + x i v a ( x ) g 1 ( x ) + 1 + x i b ( x ) x n 2 1 g 0 ( x ) .
From Equation (5), we have h * ( x ) = [ k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ) + h ( x ) + ( 1 + x i ) v a ( x ) g 1 ( x ) h ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) h ( x ) ] ( x n 1 1 ) . This yields
h * ( x ) + h ( x ) + ( 1 + x i ) v a ( x ) g 1 ( x ) h ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) h ( x ) k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ) ( mod x n 1 1 ) .
Hence,
( f 0 ( x ) + v f 1 ( x ) ) h * ( x ) + h ( x ) + ( 1 + x i ) v a ( x ) g 1 ( x ) h ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) h ( x )
in R n 1 e .
Case 2.
When k 2 ( x ) 1 + ( 1 + x i ) v a ( x ) g 1 ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) = x n 2 1 g 1 ( x ) l 1 ( x ) , then we have
k 2 ( x ) = x n 2 1 g 1 ( x ) l 1 ( x ) + 1 + ( 1 + x i ) v a ( x ) g 1 ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) .
Multiplying on both sides by h ( x ) , we obtain
k 2 ( x ) h ( x ) = x n 2 1 g 1 ( x ) l 1 ( x ) h ( x ) + 1 + ( 1 + x i ) v a ( x ) g 1 ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) h ( x ) .
It is evident from the Lemma 1, there exists some q ( x ) R e [ x ] such that
x n 2 1 g 1 ( x ) l 1 ( x ) h ( x ) q ( x ) ( f 0 ( x ) + v f 1 ( x ) ) ( mod x n 1 1 ) .
Thus, according to Equation (5), we have
h * ( x ) + h ( x ) + ( 1 + x i ) v a ( x ) g 1 ( x ) h ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) h ( x ) ( k 1 ( x ) + q ( x ) ) ( f 0 ( x ) + v f 1 ( x ) ) ( mod x n 1 1 ) .
Hence,
( f 0 ( x ) + v f 1 ( x ) ) h * ( x ) + h ( x ) + ( 1 + x i ) v a ( x ) g 1 ( x ) h ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) h ( x )   in   R n 1 e .
Case 3.
Suppose k 2 ( x ) 1 + ( 1 + x i ) v a ( x ) g 1 ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) = v x n 2 1 g 0 ( x ) l 2 ( x ) . Then,
k 2 ( x ) = v x n 2 1 g 0 ( x ) l 2 ( x ) + 1 + ( 1 + x i ) v a ( x ) g 1 ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) .
Therefore,
k 2 ( x ) h ( x ) = v x n 2 1 g 0 ( x ) l 2 ( x ) h ( x ) + 1 + ( 1 + x i ) v a ( x ) g 1 ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) h ( x ) .
By Lemma 1, there exists some q ( x ) R e [ x ] satisfying
v x n 2 1 g 0 ( x ) l 2 ( x ) h ( x ) q ( x ) ( f 0 ( x ) + v f 1 ( x ) ) ( mod x n 1 1 ) .
Analogous to Case 2 mentioned earlier, we derive that
( f 0 ( x ) + v f 1 ( x ) ) h * ( x ) + h ( x ) + ( 1 + x i ) v a ( x ) g 1 ( x ) h ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) h ( x )
in R n 1 e . Combining all of the three cases, it follows that
( f 0 ( x ) + v f 1 ( x ) ) h * ( x ) + h ( x ) + ( 1 + x i ) v a ( x ) g 1 ( x ) h ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) h ( x )
in R n 1 e , where a ( x ) , b ( x ) F 4 e [ x ] such that a ( x ) g 0 ( x ) + b ( x ) x n 2 1 g 0 ( x ) = 1 and i = deg ( g 0 ( x ) ) deg ( g 1 ( x ) ) . □
As a consequence of Theorems 3 and 4, we arrive at the following result:
Theorem 5. 
Let C = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) be a double cyclic code of length ( n 1 , n 2 = ( 2 n 3 + 1 ) n 1 ) over the ring R e , where the criteria in Theorem 1 are satisfied by the polynomials f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , g 1 ( x ) , h ( x ) , and n 3 Z + . Assume that deg ( g 0 ( x ) + v g 1 ( x ) ) = 2 n 3 n 1 + deg ( h ( x ) ) . Then, the code C is reversible if f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , g 1 ( x ) are self-reciprocal, and ( f 0 ( x ) + v f 1 ( x ) ) ( h * ( x ) + h ( x ) + ( 1 + x i ) v a ( x ) g 1 ( x ) h ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) h ( x ) ) in R n 1 e , where a ( x ) , b ( x ) F 4 e [ x ] satisfying a ( x ) g 0 ( x ) + b ( x ) x n 2 1 g 0 ( x ) = 1 and i = deg ( g 0 ( x ) ) deg ( g 1 ( x ) ) .
Proof. 
Assume that C is reversible code. The intended outcome is directly obtained by using Theorems 3 and 4.
Conversely, suppose that f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , g 1 ( x ) are self-reciprocal polynomials and
( f 0 ( x ) + v f 1 ( x ) ) h * ( x ) + h ( x ) + ( 1 + x i ) v a ( x ) g 1 ( x ) h ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) h ( x )
in R n 1 e , where a ( x ) , b ( x ) F 4 e [ x ] satisfy the identity a ( x ) g 0 ( x ) + b ( x ) x n 2 1 g 0 ( x ) = 1 and i = deg ( g 0 ( x ) ) deg ( g 1 ( x ) ) . Given that a ( x ) g 0 ( x ) + b ( x ) x n 2 1 g 0 ( x ) = 1 . Therefore, it follows that
1 + ( 1 + x i ) v a ( x ) g 1 ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) ( g 0 ( x ) + v g 1 ( x ) ) ( x n 2 1 ) = g 0 ( x ) + v x i g 1 ( x ) .
Since
( f 0 ( x ) + v f 1 ( x ) ) h * ( x ) + h ( x ) + ( 1 + x i ) v a ( x ) g 1 ( x ) h ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) h ( x )
in R n 1 e , there exists k ( x ) R e [ x ] such that
h * ( x ) + h ( x ) + ( 1 + x i ) v a ( x ) g 1 ( x ) h ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) h ( x ) k ( x ) ( f 0 ( x ) + v f 1 ( x ) ) ( mod x n 1 1 ) .
Hence, we can express the pair ( h * ( x ) ; ( g 0 ( x ) + v g 1 ( x ) ) * ) as
h * ( x ) ; ( g 0 ( x ) + v g 1 ( x ) ) * = ( ( f 0 ( x ) + v f 1 ( x ) ) k ( x ) + h ( x ) + ( 1 + x i ) v a ( x ) g 1 ( x ) h ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) h ( x ) ; ( g 0 ( x ) + v g 1 ( x ) ) + ( 1 + x i ) v a ( x ) g 1 ( x ) ( g 0 ( x ) + v g 1 ( x ) ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) ( g 0 ( x ) + v g 1 ( x ) ) ) = k ( x ) ( f 0 ( x ) + v f 1 ( x ) ; 0 ) + ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) + ( 1 + x i ) v a ( x ) g 1 ( x ) ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) .
This implies that ( h * ( x ) ; ( g 0 ( x ) + v g 1 ( x ) ) * ) C . Since gcd ( f 0 ( x ) , x n 1 1 f 0 ( x ) ) = 1 , so we have a ( x ) f 0 ( x ) + b ( x ) x n 1 1 f 0 ( x ) = 1 , for some a ( x ) , b ( x ) F 4 e [ x ] . Therefore, we obtain
1 + ( 1 + x j ) v a ( x ) f 1 ( x ) + ( 1 + x j ) b ( x ) x n 1 1 f 0 ( x ) ) ( f 0 ( x ) + v f 1 ( x ) ) ( x n 1 1 ) = f 0 ( x ) + v x j f 1 ( x ) ,
where j = deg ( f 0 ( x ) ) deg ( f 1 ( x ) ) . Hence,
( ( f 0 ( x ) + v f 1 ( x ) ) * ; 0 ) = ( f 0 ( x ) + v x j f 1 ( x ) ; 0 ) = 1 + ( 1 + x j ) v a ( x ) f 1 ( x ) + ( 1 + x j ) b ( x ) x n 1 1 f 0 ( x ) ( f 0 ( x ) + v f 1 ( x ) ; 0 ) C .
This implies that ( f 0 ( x ) + v f 1 ( x ) ) * ; 0 ) C . Next, we have to show that C is reversible code. Let u ( x ) C be any codeword. Then, there exist some k 1 ( x ) , k 2 ( x ) R e [ x ] such that
u ( x ) = k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ; 0 ) + k 2 ( x ) ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) .
Consider the reverse of u ( x ) , we obtain
u r ( x ) = ( k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ) + k 2 ( x ) h ( x ) ; k 2 ( x ) ( g 0 ( x ) + v g 1 ( x ) ) ) r .
Using Proposition 6, we get
u r ( x ) = ( k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ) ; 0 ) r + ( k 2 ( x ) h ( x ) ; k 2 ( x ) ( g 0 ( x ) + v g 1 ( x ) ) ) r .
Let k 1 ( x ) = a 0 + a 1 x + + a s x s R e [ x ] , where s is a non-negative integer. Then, we consider
k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ) ; 0 r = i = 0 s a i x i ( f 0 ( x ) + v f 1 ( x ) ) ; 0 r = i = 0 s a i ( x i ( f 0 ( x ) + v f 1 ( x ) ) ; 0 ) r .
From Proposition 6, it follows that there exists p i Z + { 0 } such that
( x i ( f 0 ( x ) + v f 1 ( x ) ) ; 0 ) r = x ( p i + 1 ) a 1 j ( ( f 0 ( x ) + v f 1 ( x ) ) * ; 0 ) ,
where j = deg ( x i ( f 0 ( x ) + v f 1 ( x ) ) ) and 0 i s . Therefore, ( k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ) ; 0 ) r C .
Assume that k 2 ( x ) = b 0 + b 1 x + + b t x t R e [ x ] in which t denotes a non-negative integer. Now, we analyze
( k 2 ( x ) h ( x ) ; k 2 ( x ) ( g 0 ( x ) + v g 1 ( x ) ) ) r = j = 0 t b j x j h ( x ) ; j = 0 t b j x j ( g 0 ( x ) + v g 1 ( x ) ) r = j = 0 t b j ( x j h ( x ) ; x j ( g 0 ( x ) + v g 1 ( x ) ) ) r .
According to the Corollary 2, we have
( x j h ( x ) ; x j ( g 0 ( x ) + v g 1 ( x ) ) ) r = x ( q j ( 2 n 3 + 1 ) + 1 ) n 1 1 deg ( x j h ( x ) ) ( h * ( x ) ; ( g 0 ( x ) + v g 1 ( x ) ) * ) ,
for some q j Z + { 0 } with 0 j t . Thus, we obtain ( k 2 ( x ) h ( x ) ; k 2 ( x ) ( g 0 ( x ) + v g 1 ( x ) ) ) r C . Therefore,
v r ( x ) = ( k 1 ( x ) ( f 0 ( x ) + v f 1 ( x ) ) ; 0 ) r + ( k 2 ( x ) h ( x ) ; k 2 ( x ) ( g 0 ( x ) + v g 1 ( x ) ) ) r C .
Hence, C is reversible. □
As an immediate consequences of Theorem 5, we obtain the following corollary:
Corollary 3. 
Let C = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) be a double cyclic code of length ( n 1 , n 2 = ( 2 n 3 + 1 ) n 1 ) over R e , where the criteria in Theorem 1 are satisfied by the polynomials f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , g 1 ( x ) , h ( x ) , and n 3 Z + { 0 } . Assume that deg ( g 0 ( x ) ) = deg ( g 1 ( x ) ) = 2 n 3 n 1 + deg ( h ( x ) ) . Then, C is reversible code iff f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , g 1 ( x ) , and h ( x ) are self-reciprocal polynomials.

3.2. Reversible-Complement DNA Codes over R e

This subsection establishes the conditions under which double cyclic codes become reversible-complement codes and provides illustrative examples of DNA codes obtained from them.
Lemma 3. 
Let C be a double cyclic code of length ( n 1 , n 2 ) over the ring R e . If the code C is reversible-complement. Then, it contains the following codeword
( v , v , v , , v n 1 ; v , v , v , , v n 2 ) : = v I ( x ) = ( v + v x + v x 2 + + v x n 1 1 ; v + v x + v x 2 + + v x n 2 1 ) .
Proof. 
Let z r be the coordinate-reversal of z on R n 1 , n 2 e , and let the DNA complement on R e be the map a a ¯ determined by a + a ¯ = v (hence a ¯ = v a componentwise). Define the reversible-complement operator T on R n 1 , n 2 e by
T ( z ) = z r ¯ = v 1 z r ,
where z R n 1 , n 2 e , 1 = ( 1 , 1 , 1 , , 1 n 1 ; 1 , 1 , 1 , , 1 n 2 ) , and subtraction is componentwise in R e . Thus T is a map of the form “translation by v 1 ” composed with the R -linear permutation z r of z . Since 0 = ( 0 , 0 , , 0 n 1 ; 0 , 0 , , 0 n 2 ) C , so taking z = 0 in Equation (9), we obtain
T ( 0 ) = v 1 0 r = v 1 0 = v 1 C .
In polynomial form for double cyclic code C, v 1 corresponds exactly to
v 1 = v ( 1 , 1 , 1 , , 1 n 1 ; 1 , 1 , 1 , , 1 n 2 ) = ( v , v , v , , v n 1 ; v , v , v , , v n 2 ) = v + v x + v x 2 + v x n 1 1 ; v + v x + v x 2 + + v x n 2 1 = v I ( x ) .
Hence, v I ( x ) C . □
Theorem 6. 
Let C be a double cyclic code of length ( n 1 , n 2 ) over R e . Then, the code C is reversible-complement if
(i) 
C is reversible, and
(ii) 
( v , v , v , , v n 1 ; v , v , v , , v n 2 ) C .
Proof. 
We begin the proof by invoking Equation (9) established in the preceding theorem, since the characteristic of the ring R e is 2, we have
T ( z ) = v 1 + z r .
If C is reversible-complement, then T ( C ) C . In particular, T ( 0 ) = v 1 C . Thus, ( v , v , v , , v n 1 ; v , v , v , , v n 2 ) C . Now, for any z C , we have T ( z ) C , hence z r = T ( z ) + v 1 C (since C linear), so C is reversible.
Conversely, assume C is reversible and v 1 C . Then for every z C , z r C ; therefore T ( z ) = v 1 + z r C , i.e., the code C is reversible-complement. This completes the proof. □
By combining the results from Section 3.1 with Theorem 6, we directly obtain the following results:
Proposition 7. 
Let C be a double cyclic code of length ( n 1 , n 2 ) over R e and assume that C = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , ( 0 ; g 0 ( x ) + v g 1 ( x ) ) is a separable code, where the criteria in Theorem 1 are satisfied by the polynomials f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , and g 1 ( x ) . Then, the code C is reversible-complement iff f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , and g 1 ( x ) are self-reciprocal polynomials and v I ( x ) C .
Theorem 7. 
Let C = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) be a double cyclic code of length ( n 1 , n 2 = ( 2 n 3 + 1 ) n 1 ) over the ring R e , where the criteria in Theorem 1 are satisfied by the polynomials f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , g 1 ( x ) , h ( x ) , and n 3 Z + { 0 } . Assume that deg ( g 0 ( x ) + v g 1 ( x ) ) = 2 n 3 n 1 + deg ( h ( x ) ) . Then, the code C is reversible-complement iff
(i) 
v I ( x ) C ,
(ii) 
f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , and g 1 ( x ) are self-reciprocal polynomials,
(iii) 
( f 0 ( x ) + v f 1 ( x ) ) h * ( x ) + h ( x ) + ( 1 + x i ) v a ( x ) g 1 ( x ) h ( x ) + ( 1 + x i ) b ( x ) x n 2 1 g 0 ( x ) h ( x ) in R n 1 e for some a ( x ) , b ( x ) F 4 e [ x ] satisfying a ( x ) g 0 ( x ) + b ( x ) x n 2 1 g 0 ( x ) = 1 , where i = deg ( g 0 ( x ) ) deg ( g 1 ( x ) ) .
Corollary 4. 
Let C = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) be a double cyclic code of length ( n 1 , n 2 = ( 2 n 3 + 1 ) n 1 ) over the ring R e , where the criteria in Theorem 1 are satisfied by the polynomials f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , g 1 ( x ) , and h ( x ) , with n 3 Z + { 0 } . Assume that deg ( g 0 ( x ) ) = deg ( g 1 ( x ) ) = 2 n 3 n 1 + deg ( h ( x ) ) . Then, the code C is reversible-complement iff f 0 ( x ) , f 1 ( x ) , g 0 ( x ) , g 1 ( x ) , h ( x ) are self-reciprocal polynomials, and C contains v I ( x ) .
Proof. 
The proof proceeds in a manner analogous to that of Corollary 3. □

3.3. Gray Map of R e

Let C be a double cyclic code of length ( n 1 , n 2 ) over the ring R e and S = { A , T , G , C } be set of nucleotide. Recall that a Gray map η : F 4 S defined by η ( 0 ) = A , η ( 1 ) = G , η ( v ) = T , and η ( 1 + v ) = G . Since F 4 e is a e-dimensional vector space over F 4 , we can represent any element x F 4 e as x = x 0 + x 1 β + x 2 β 2 + + x e 1 β e 1 , x i F 4 , where β is a root of an irreducible polynomial over F 4 . Now, define a map ϕ : F 4 e S e by
ϕ ( x ) = ϕ ( x 0 + x 1 β + x 2 β 2 + + x e 1 β e 1 ) = ( η ( x 0 ) , η ( x 1 ) , , η ( x e 1 ) ) .
So, clearly from the above map ϕ , each element in F 4 e gets mapped to a DNA sequence of length e. The following Gray map is similar to the classical Gray map over F 2 + v F 2 with v 2 = 0 [13]. Define G : R e F 4 e 2   by   G ( c 1 + v c 2 ) = ( c 2 , c 1 + c 2 ) , where c 1 , c 2 F 4 e . Now, we extend the Gray map G to a Gray map Φ : C R n 1 , n 2 e S n 1 + n 2 by
Φ ( a 0 , a 1 , , a n 1 1 ; b 0 , b 1 , , b n 2 1 ) = ( η ( a 0 ) , η ( a 1 ) , , η ( a n 1 1 ) ; η ( b 0 ) , η ( b 1 ) , , η ( b n 2 1 ) ) ,
where ( a 0 , a 1 , , a n 1 1 ; b 0 , b 1 , , b n 2 1 ) C , a i , b j R e with 0 i n 1 1 , 0 j n 2 1 .
For any double cyclic code C of length ( n 1 , n 2 ) over R e , we let C ^ be a set defined as
C ^ = { ( b ; a ) R n 2 , n 1 e : ( a ; b ) C } R n 2 , n 1 e .
Then, a DNA code C D N A can be obtained from C C ^ , where C is taken to be a double cyclic DNA code of length ( n 1 , n 2 ) over the ring R e . To illustrate the above results, we now provide some concrete examples. The Magma computational algebra system [32] is used to complete all of the computations in the following Table 1 and Table 2. In the following examples, we present DNA correspondence Φ ( C C ^ ) for the double cyclic codes C over R 1 and R 2 , respectively.
Example 4. 
Consider R 1 = F 4 + v F 4 (for e = 1 ), where v 2 = 0 and let C = ( ( 1 + v ) ( 1 + x + x 2 ) ; 0 ) , ( 0 ; v ( 1 + x + x 2 ) ( 1 + x 3 + x 6 ) ) be a double cyclic code of length ( 3 , 9 ) over R 1 . It is straightforward to verify that the code C is reversible. Since v ( ( 1 + v ) ( 1 + x + x 2 ) ; 0 ) + 1 ( 0 ; v ( 1 + x + x 2 ) ( 1 + x 3 + x 6 ) ) = ( v + v x + v x 2 ; v + v x + v x 2 + v x 3 + v x 4 + v x 5 + v x 6 + v x 7 + v x 8 ) = v I ( x ) C , it follows from Theorem 7 that the double cyclic code C is a reversible-complement code of length ( 3 , 9 ) over R 1 . Hence, the DNA code C D N A consisting of DNA strings of length 24 and having minimum distance 3, derived from C C ^ , contains 124 codewords, which are listed in Table 1.
Example 5. 
For e = 2 , we have R 2 = F 16 + v F 16 with v 2 = 0 , and let us consider C = ( v ( 1 + x + x 2 ) ; 0 ) , ( 0 ; v ( 1 + x + x 3 ) ( 1 + x 2 + x 3 ) ) be a double cyclic code of length ( 3 , 7 ) over R 2 . It is easy to verify that the code C is reversible. Since v I ( x ) = ( v + v x + v x 2 ; v + v x + v x 2 + v x 3 + v x 4 + v x 5 + v x 6 ) = 1 ( v + v x + v x 2 ; 0 ) + 1 ( 0 ; v ( 1 + x + x 3 ) ( 1 + x 2 + x 3 ) ) C , it follows from Theorem 7 that the double cyclic code C is a reversible-complement code of length ( 3 , 7 ) over R 2 . Hence, the DNA code C D N A consisting of DNA strings of length 40 and having minimum distance 6, derived from C C ^ , contains 496 codewords, which are presented in Table 2.

4. Applications

The algebraic structures and properties developed in this work, particularly the reversible and reverse-complement double cyclic codes over the finite chain ring R e = F 4 e + v F 4 e where v 2 = 0 , offer a wide range of practical applications. In this section, we illustrate the real-world relevance of these codes through advanced implementations, focusing on secure DNA-based data storage and authentication as well as cryptographic systems. By leveraging the guaranteed reversibility and reverse-complementarity of our codes, one can enhance data accuracy, facilitate secure key management, and achieve robust encryption in various next-generation technologies. The results established in this paper yield an explicitly measurable algebraic framework for constructing DNA-admissible linear codes with strand symmetry and efficient error detection. In particular, the generators representation C = ( f 0 ( x ) + v f 1 ( x ) ; 0 ) , ( h ( x ) ; g 0 ( x ) + v g 1 ( x ) ) (Theorem 1), the divisibility relations that characterize code membership (Lemma 1 and Corollary 1), the separability criterion (Propositions 2–3), the reversibility and reverse-complement characterizations via self-reciprocal generators (Theorem 2, Proposition 5, Theorem 3), and the reverse constraint at special lengths n 2 = ( 2 n 3 + 1 ) n 1 (Theorem 4), together with the generalized Gray map from R e to the DNA alphabet, offer a systematic framework bridging ring-theoretic constructions and nucleotide sequences with verifiable guarantees.
  • (A) Secure DNA data storage. In archival storage systems, reliable decoding must account for both the uncertainty of strand orientation and the presence of biochemical noise. DNA sequences may be read in either direction or from their complementary strands, introducing forms of uncertainty that conventional codes do not tolerate. Moreover, storage and sequencing processes can introduce substitution, insertion, or deletion errors. Therefore, coding schemes designed for DNA data storage must ensure that codewords remain valid under reversal and complementation, while also providing sufficient error-correcting capability to maintain data integrity in noisy environments. The self-reciprocity conditions on f 0 , f 1 , g 0 , g 1 constitute necessary and sufficient algebraic tests for reversibility, ensuring orientation invariance by construction rather than by secondary validation steps. The Gray map preserves these invariants to quaternary strings without degrading minimum-distance calculations. For integrity checking and fast rejection of false reads, Lemma 1 yields the congruence conditions
    ( f 0 ( x ) + v f 1 ( x ) ) | x n 2 1 g 1 ( x ) h ( x ) and ( f 0 ( x ) + v f 1 ( x ) ) | v x n 2 1 g 0 ( x ) h ( x ) mod ( x n 1 1 ) ,
    which can be implemented using the same polynomial division techniques as in standard cyclic decoding. When h ( x ) = 0 , Propositions 2–3 permit independent design and decoding of the two cyclic components, which facilitates functional partitioning, such as using one block for addressing and the other for data storage. At lengths n 2 = ( 2 n 3 + 1 ) n 1 , Theorem 4 provides a predictable divisibility relation between the reversed n 2 -block and the n 1 -block, enabling strand-invariant orientation checks and resynchronization without the need for whole-strand alignment.
  • (B) DNA-based authentication. Molecular tags and barcodes require validation methods that remain unaffected by strand orientation and can be efficiently realized using low-degree polynomial congruences. Imposing self-reciprocal generators (Theorem 2; Proposition 5; Theorem 3) guarantees that validity is invariant under reverse and reverse-complement. The derived congruences from Lemma 1 serve as local soundness conditions, rejecting any alteration that violates the underlying ring-theoretic structure even when the modification is concentrated in one coordinate block. In the case of specially constructed lengths, Theorem 4 yields an additional reversal-invariant constraint that can be verified using arithmetic in R e [ x ] / x n i 1 where i = 1 , 2 . After applying the Gray map, these conditions serve as nucleotide-level validity checks, supporting precise false-acceptance and false-rejection analysis under sequencing error models, while remaining computationally efficient.
  • (C) Cryptographic systems. The reversible and reverse-complement DNA codes derived from double cyclic codes over R e = F 4 e + v F 4 e with v 2 = 0 have promising applications in cryptography. In symmetric-key cryptography, such codes enable error-resilient encryption by encoding plaintext as DNA codewords that are inherently robust against errors. A secret key can be used to select or permute these codewords, yielding ciphers that maintain data integrity and confidentiality even in noisy biological environments. For public-key cryptography, the structured codes presented here can serve as the foundation for code-based encryption schemes. In particular, one can employ a McEliece-type cryptosystem in which the public key is a generator matrix of a suitable double cyclic code over R e , while the private key leverages the known algebraic structure for efficient decoding. The large minimum distance of these codes contributes to cryptographic strength, and their efficient encoding/decoding algorithms make them attractive candidates for post-quantum code-based encryption. An important advantage of these DNA-based cryptographic constructions is their biological invariance: the codes are closed under sequence reversal and Watson-Crick complement. This means that an encrypted DNA sequence (ciphertext) remains a valid codeword even if the strand is reversed or complemented, ensuring that the decryption process still recovers the correct message. This property, along with the inherent error-correcting capabilities, enhances the robustness of DNA-based encryption and key transmission in both secure communication and authentication systems.

5. Conclusions

This study examined the structural properties of double cyclic codes of length ( n 1 , n 2 ) over the ring R e = F 4 e + v F 4 e with v 2 = 0 , where n 1 and n 2 are odd positive integers. The notions of reversibility, complementarity, and reversible-complementarity for double cyclic codes over the ring R e were established. Utilizing these concepts, we derived necessary and sufficient conditions under which double cyclic codes of length ( n 1 , n 2 ) over the ring R e constituted double cyclic DNA codes, particularly when n 2 = ( 2 n 3 + 1 ) n 1 for all non-negative integers n 3 . These codes demonstrated suitability for DNA code construction. Moreover, we have defined and studied a generalized Gray map for the ring R e , which converted codewords into DNA sequences over { A , T , G , C } . This mapping not only generalized known Gray maps over smaller rings F 2 + v F 2 , where v 2 = 0 but also preserved the algebraic properties necessary for the construction of structured DNA codes. Furthermore, we presented several illustrative examples and applications to demonstrate these codes. To demonstrate practical feasibility, the authors implemented the proposed constructions in Magma [32]. For the examples presented, code generation, application of the generalized Gray map, and verification of reverse and reverse-complement constraints were completed in a short time, indicating that the method is computationally efficient. These tasks mainly use basic ring addition and multiplication, so the time it takes increases roughly in proportion to the code length. This shows that the method works well even for larger codes. Future work may focus on analyzing the algebraic structure of double cyclic codes of various lengths and exploring additional finite rings that are suitable for DNA computing applications.

Author Contributions

Conceptualization, S.A., A.S.A. and M.A.; Methodology, S.A. and M.A.; Software, M.A.; Validation, S.A., A.S.A., M.A., A.A.K. and K.B.W.; Formal analysis, A.S.A., A.A.K. and K.B.W.; Investigation, S.A., M.A., A.A.K. and K.B.W.; Resources, A.S.A.; Data curation, S.A., A.S.A. and M.A.; Writing—original draft, M.A.; Writing—review & editing, S.A. and M.A.; Visualization, S.A. and M.A.; Supervision, S.A.; Project administration, S.A. and A.S.A.; Funding acquisition, A.S.A. All authors have read and agreed to the published version of the manuscript.

Funding

This research is funded by Princess Nourah bint Abdulrahman University, Riyadh, Saudi Arabia under Researchers Supporting Project Number (PNURSP2025R231).

Data Availability Statement

The original contributions presented in this study are included in the article. Further inquiries can be directed to the corresponding author.

Acknowledgments

The authors thank to the anonymous reviewers for their valuable suggestions and comments which significantly improved both the quality and the presentation of this paper. Moreover, the authors extend their appreciation to Princess Nourah bint Abdulrahman University (PNU), Riyadh, Saudi Arabia, for funding this research under Researchers Supporting Project Number (PNURSP2025R231). The research of the third author is financially supported by the University Grants Commission (UGC), Government of India (Ref. No.: 211610001225).

Conflicts of Interest

The authors declare that they have no conflicts of interest.

References

  1. Adleman, L.M. Molecular computation of solutions to combinatorial problems. Science 1994, 266, 1021–1024. [Google Scholar] [CrossRef]
  2. Benenson, Y.; Gil, B.; Ben-Dor, U.; Adar, R.; Shapiro, E. An autonomous molecular computer for logical control of gene expression. Nature 2004, 429, 423–429. [Google Scholar] [CrossRef]
  3. Boneh, D.; Dunworth, C.; Lipton, R.J. Breaking DES using a molecular computer. In DNA Based Computers; DIMACS Series in Discrete Mathematics and Theoretical Computer Science; American Mathematical Society: Providence, RI, USA, 1996; Volume 27, pp. 37–65. [Google Scholar]
  4. Kari, L.; Gloor, G.B.; Yu, S. Using DNA to solve the bounded Post correspondence problem. Theor. Comput. Sci. 2000, 231, 193–203. [Google Scholar] [CrossRef]
  5. Lipton, R.J. DNA solution of hard computational problems. Science 1995, 268, 542–545. [Google Scholar] [CrossRef]
  6. Marathe, A.; Condon, A.; Corn, R.M. On combinatorial DNA word design. J. Comput. Biol. 2001, 8, 201–219. [Google Scholar] [CrossRef]
  7. Oztas, E.S.; Siap, I. Lifted polynomials over F16 and their applications to DNA codes. Filomat 2013, 27, 461–468. [Google Scholar] [CrossRef]
  8. Oztas, E.S.; Siap, I. On a generalization of lifted polynomials over finite fields and their applications to DNA codes. Int. J. Comput. Math. 2015, 92, 1976–1988. [Google Scholar] [CrossRef]
  9. Gaborit, P.; King, O.D. Linear constructions for DNA codes. Theor. Comput. Sci. 2005, 334, 99–113. [Google Scholar] [CrossRef]
  10. Liang, J.; Wang, L. On cyclic DNA codes over F2 + uF2. J. Appl. Math. Comput. 2016, 51, 81–91. [Google Scholar] [CrossRef]
  11. Abualrub, T.; Ghrayeb, A.; Zeng, X.N. Construction of cyclic codes over F4 for DNA computing. J. Franklin Inst. 2006, 343, 448–457. [Google Scholar] [CrossRef]
  12. Siap, I.; Abualrub, T.; Ghrayeb, A. Cyclic DNA codes over the ring F2[u]/〈u2 − 1〉 based on the deletion distance. J. Franklin Inst. 2009, 346, 731–740. [Google Scholar] [CrossRef]
  13. Guenda, K.; Gulliver, T.A. Construction of cyclic codes over F2 + uF2 for DNA computing. Appl. Algebra Eng. Commun. Comput. 2013, 24, 445–459. [Google Scholar] [CrossRef]
  14. Bayram, A.; Oztas, E.S.; Siap, I. Codes over F4 + vF4 and some DNA applications. Des. Codes Cryptogr. 2016, 80, 379–393. [Google Scholar] [CrossRef]
  15. Zhu, S.; Chen, X. Cyclic DNA codes over F2 + uF2 + vF2 + uvF2 and their applications. J. Appl. Math. Comput. 2017, 55, 479–493. [Google Scholar] [CrossRef]
  16. Yildiz, B.; Siap, I. Cyclic DNA codes over the ring F2[u]/〈u4 − 1〉 and applications to DNA codes. Comput. Math. Appl. 2012, 63, 1169–1176. [Google Scholar] [CrossRef]
  17. Liu, J.; Liu, H. Construction of cyclic DNA codes over the ring 4 + vℤ4. IEEE Access 2020, 8, 111200–111207. [Google Scholar] [CrossRef]
  18. Prakash, O.; Singh, A.; Verma, R.K.; Solé, P.; Cheng, W. DNA code from cyclic and skew cyclic codes over F4[v]/〈v3〉. Entropy 2023, 25, 239. [Google Scholar] [CrossRef] [PubMed]
  19. Dinh, H.Q.; Pathak, S.; Upadhyay, A.K.; Yamaka, W. New DNA codes from cyclic codes over mixed alphabets. Mathematics 2020, 8, 1997. [Google Scholar] [CrossRef]
  20. Dinh, H.Q.; Pathak, S.; Bag, T.; Upadhyay, A.K.; Chinnakum, W. A study of FqR-cyclic codes and their applications in constructing quantum codes. IEEE Access 2020, 8, 190049–190063. [Google Scholar] [CrossRef]
  21. Shi, M.; Li, S.; Solé, P. 24-additive quasi-cyclic codes. IEEE Trans. Inform. Theory 2021, 67, 7232–7239. [Google Scholar] [CrossRef]
  22. Wang, X.; Shi, M. Gray images of cyclic codes over p2 and pp2. Discrete Math. 2023, 346, 113382. [Google Scholar] [CrossRef]
  23. Shi, M.; Xinpeng, B.; Ozbudak, F.; Solé, P. Bound on the minimum distance of double circulant cubic residue codes. Finite Fields Appl. 2025, 105, 102605. [Google Scholar] [CrossRef]
  24. Borges, J.; Fernández-Córdoba, C.; Ten-Valls, R. 2-double cyclic codes. Des. Codes Cryptogr. 2018, 86, 463–479. [Google Scholar] [CrossRef]
  25. Siap, I.; Kulhan, N. The structure of generalized quasi-cyclic codes. Appl. Math. E-Notes 2005, 5, 24–30. [Google Scholar]
  26. Aydogdu, I.; Abualrub, T.; Samei, K. Fq2-double cyclic codes with respect to the Hermitian inner product. Appl. Algebra Eng. Commun. Comput. 2024, 35, 151–166. [Google Scholar] [CrossRef]
  27. Deng, T.; Yang, J. Double cyclic codes over Fq + vFq. Mathematics 2020, 8, 1820. [Google Scholar] [CrossRef]
  28. Gao, J.; Shi, M.; Wu, T.; Fu, F.-W. On double cyclic codes over 4. Finite Fields Appl. 2016, 39, 233–250. [Google Scholar] [CrossRef]
  29. Yao, T.; Shi, M.; Solé, P. Double cyclic codes over Fq + uFq + u2Fq. Int. J. Inf. Coding Theory 2015, 3, 145–157. [Google Scholar]
  30. Gao, J.; Hou, X. 4-double cyclic codes are asymptotically good. IEEE Commun. Lett. 2020, 24, 1593–1597. [Google Scholar] [CrossRef]
  31. Kanlaya, A.; Klin-Eam, C. Constructing double cyclic codes over F2 + uF2 for DNA codes. J. Comput. Biol. 2023, 30, 1112–1130. [Google Scholar] [CrossRef] [PubMed]
  32. Bosma, W.; Cannon, J.J. Handbook of Magma Functions; School of Mathematics and Statistics, University of Sydney: Sydney, Australia, 1996. [Google Scholar]
Table 1. C D N A : a DNA code of length 24 derived from C C ^ (Example 4).
Table 1. C D N A : a DNA code of length 24 derived from C C ^ (Example 4).
AAAAAAAAAAAAAAAAAAAAAAAAGGGGGGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGGGGGG
TTTTTTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATTTTTTCCCCCCAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAACCCCCCGAGAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAGAGA
AGAGAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAGAGCTCTCTAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAACTCTCTTCTCTCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATCTCTC
TATATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATATATACGCGCGAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAACGCGCGATATATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATATAT
GCGCGCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGCGCGCCACACAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAACACACATGTGTGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATGTGTG
GTGTGTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGTGTGTACACACAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAACACACAAAAAAGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGAAAAAA
AAAAAATTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTAAAAAAAAAAAACCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCAAAAAAGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGTTTTTTTTTTTTTTTTTT
TTTTTTTTTTTTTTTTTTGGGGGGGGGGGGCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCGGGGGG
TTTTTTGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
TTTTTTCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCTTTTTTCCCCCCGGGGGGGGGGGGGGGGGG
GGGGGGGGGGGGGGGGGGCCCCCCCCCCCCTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTCCCCCC
CCCCCCCCCCCCCCCCCCCCCCCCGAGAGAGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGAGAGA
GAGAGATTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTGAGAGAGAGAGACCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCGAGAGAAGAGAGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGAGAGAG
AGAGAGTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTAGAGAGAGAGAGCCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCAGAGAGCTCTCTGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGCTCTCT
CTCTCTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTCTCTCTCTCTCTCCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCCTCTCTTCTCTCGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGTCTCTC
TCTCTCTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTCTCTCTCTCTCCCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCTCTCTCTATATAGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGTATATA
TATATATTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTATATATATATACCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCTATATACGCGCGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGCGCGCG
CGCGCGTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTCGCGCGCGCGCGCCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCCGCGCGATATATGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGATATAT
ATATATTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTATATATATATATCCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCATATATGCGCGCGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGCGCGC
GCGCGCTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTGCGCGCGCGCGCCCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCGCGCGCCACACAGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGCACACA
CACACATTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTCACACACACACACCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCCACACATGTGTGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGTGTGTG
TGTGTGTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTGTGTGTGTGTGCCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCTGTGTGGTGTGTGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGTGTGT
GTGTGTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTGTGTGTGTGTGTCCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCGTGTGTACACACGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGACACAC
ACACACTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTACACACACACACCCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCACACAC
Table 2. C D N A : a DNA code of length 40 derived from C C ^ (Example 5).
Table 2. C D N A : a DNA code of length 40 derived from C C ^ (Example 5).
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAGAGAGAGAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAGAGAGAGAGAGAAGAGAGAGAGAGAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAGAGAGAGAGTGTGTGTGTGTGAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAATGTGTGTGTGTGTCTCTCTCTCTCAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAATCTCTCTCTCTCGGGGGGGGGGGGAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAGGGGGGGGGGGGTATATATATATAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAATATATATATATAATATATATATATAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAATATATATATATCTCTCTCTCTCTAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAACTCTCTCTCTCTCGCGCGCGCGCGAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAACGCGCGCGCGCGTTTTTTTTTTTTAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAATTTTTTTTTTTTCACACACACACAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAACACACACACACAACACACACACACAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAACACACACACACGCGCGCGCGCGCAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAGCGCGCGCGCGCGTGTGTGTGTGTAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAGTGTGTGTGTGTCCCCCCCCCCCCAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAACCCCCCCCCCCCAAAAAAAAAAAAGAGAGAGAGAGAGAGAGAGAGAGAGAGA
GAGAGAGAGAGAGAGAGAGAGAGAGAGAAAAAAAAAAAAAAAAAAAAAAAAAAGAGAGAGAGAGAGAGAGAGAGAGAGAG
AGAGAGAGAGAGAGAGAGAGAGAGAGAGAAAAAAAAAAAAAAAAAAAAAAAATGTGTGTGTGTGTGTGTGTGTGTGTGTG
TGTGTGTGTGTGTGTGTGTGTGTGTGTGAAAAAAAAAAAAAAAAAAAAAAAATCTCTCTCTCTCTCTCTCTCTCTCTCTC
TCTCTCTCTCTCTCTCTCTCTCTCTCTCAAAAAAAAAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGGGGGGGGGGGGGG
GGGGGGGGGGGGGGGGGGGGGGGGGGGGAAAAAAAAAAAAAAAAAAAAAAAATATATATATATATATATATATATATATA
TATATATATATATATATATATATATATAAAAAAAAAAAAAAAAAAAAAAAAAATATATATATATATATATATATATATAT
ATATATATATATATATATATATATATATAAAAAAAAAAAAAAAAAAAAAAAACTCTCTCTCTCTCTCTCTCTCTCTCTCT
CTCTCTCTCTCTCTCTCTCTCTCTCTCTAAAAAAAAAAAAAAAAAAAAAAAACGCGCGCGCGCGCGCGCGCGCGCGCGCG
CGCGCGCGCGCGCGCGCGCGCGCGCGCGAAAAAAAAAAAAAAAAAAAAAAAATTTTTTTTTTTTTTTTTTTTTTTTTTTT
TTTTTTTTTTTTTTTTTTTTTTTTTTTTAAAAAAAAAAAAAAAAAAAAAAAACACACACACACACACACACACACACACA
CACACACACACACACACACACACACACAAAAAAAAAAAAAAAAAAAAAAAAAACACACACACACACACACACACACACAC
ACACACACACACACACACACACACACACAAAAAAAAAAAAAAAAAAAAAAAAGCGCGCGCGCGCGCGCGCGCGCGCGCGC
GCGCGCGCGCGCGCGCGCGCGCGCGCGCAAAAAAAAAAAAAAAAAAAAAAAAGTGTGTGTGTGTGTGTGTGTGTGTGTGT
GTGTGTGTGTGTGTGTGTGTGTGTGTGTAAAAAAAAAAAAAAAAAAAAAAAACCCCCCCCCCCCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCCCCCCCCCCCAAAAAAAAAAAAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGA
GAGAGAGAGAGAAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGGAGAGAGAGAGA
GAGAGAGAGAGATGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGGAGAGAGAGAGA
GAGAGAGAGAGATCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCGAGAGAGAGAGA
GAGAGAGAGAGAGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGAGAGAGAGAGA
GAGAGAGAGAGATATATATATATATATATATATATATATATATATATATATATATATATATATATATAGAGAGAGAGAGA
GAGAGAGAGAGAATATATATATATATATATATATATATATATATATATATATATATATATATATATATGAGAGAGAGAGA
GAGAGAGAGAGACTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTGAGAGAGAGAGA
GAGAGAGAGAGACGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGGAGAGAGAGAGA
GAGAGAGAGAGATTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTGAGAGAGAGAGA
GAGAGAGAGAGACACACACACACACACACACACACACACACACACACACACACACACACACACACACAGAGAGAGAGAGA
GAGAGAGAGAGAACACACACACACACACACACACACACACACACACACACACACACACACACACACACGAGAGAGAGAGA
GAGAGAGAGAGAGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGAGAGAGAGAGA
GAGAGAGAGAGAGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGAGAGAGAGAGA
GAGAGAGAGAGACCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCGAGAGAGAGAGA
AGAGAGAGAGAGGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAAGAGAGAGAGAG
AGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGTGTGTGTGTGTGTGTGTGTGTGTGTGTG
TGTGTGTGTGTGTGTGTGTGTGTGTGTGAGAGAGAGAGAGAGAGAGAGAGAGTCTCTCTCTCTCTCTCTCTCTCTCTCTC
TCTCTCTCTCTCTCTCTCTCTCTCTCTCAGAGAGAGAGAGAGAGAGAGAGAGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
GGGGGGGGGGGGGGGGGGGGGGGGGGGGAGAGAGAGAGAGAGAGAGAGAGAGTATATATATATATATATATATATATATA
TATATATATATATATATATATATATATAAGAGAGAGAGAGAGAGAGAGAGAGATATATATATATATATATATATATATAT
ATATATATATATATATATATATATATATAGAGAGAGAGAGAGAGAGAGAGAGCTCTCTCTCTCTCTCTCTCTCTCTCTCT
CTCTCTCTCTCTCTCTCTCTCTCTCTCTAGAGAGAGAGAGAGAGAGAGAGAGCGCGCGCGCGCGCGCGCGCGCGCGCGCG
CGCGCGCGCGCGCGCGCGCGCGCGCGCGAGAGAGAGAGAGAGAGAGAGAGAGTTTTTTTTTTTTTTTTTTTTTTTTTTTT
TTTTTTTTTTTTTTTTTTTTTTTTTTTTAGAGAGAGAGAGAGAGAGAGAGAGCACACACACACACACACACACACACACA
CACACACACACACACACACACACACACAAGAGAGAGAGAGAGAGAGAGAGAGACACACACACACACACACACACACACAC
ACACACACACACACACACACACACACACAGAGAGAGAGAGAGAGAGAGAGAGGCGCGCGCGCGCGCGCGCGCGCGCGCGC
GCGCGCGCGCGCGCGCGCGCGCGCGCGCAGAGAGAGAGAGAGAGAGAGAGAGGTGTGTGTGTGTGTGTGTGTGTGTGTGT
GTGTGTGTGTGTGTGTGTGTGTGTGTGTAGAGAGAGAGAGAGAGAGAGAGAGCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCCCCCCCCCCCAGAGAGAGAGAGTGTGTGTGTGTGGAGAGAGAGAGAGAGAGAGAGAGAGAGA
GAGAGAGAGAGAGAGAGAGAGAGAGAGATGTGTGTGTGTGTGTGTGTGTGTGAGAGAGAGAGAGAGAGAGAGAGAGAGAG
AGAGAGAGAGAGAGAGAGAGAGAGAGAGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTG
TGTGTGTGTGTGTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTGTGTGTGTGTG
TGTGTGTGTGTGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGTGTGTGTGTGTG
TGTGTGTGTGTGTATATATATATATATATATATATATATATATATATATATATATATATATATATATATGTGTGTGTGTG
TGTGTGTGTGTGATATATATATATATATATATATATATATATATATATATATATATATATATATATATTGTGTGTGTGTG
TGTGTGTGTGTGCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTTGTGTGTGTGTG
TGTGTGTGTGTGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGTGTGTGTGTGTG
TGTGTGTGTGTGTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTGTGTGTGTGTG
TGTGTGTGTGTGCACACACACACACACACACACACACACACACACACACACACACACACACACACACATGTGTGTGTGTG
TGTGTGTGTGTGACACACACACACACACACACACACACACACACACACACACACACACACACACACACTGTGTGTGTGTG
TGTGTGTGTGTGGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCTGTGTGTGTGTG
TGTGTGTGTGTGGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTTGTGTGTGTGTG
TGTGTGTGTGTGCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCTGTGTGTGTGTG
TCTCTCTCTCTCGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGATCTCTCTCTCTC
TCTCTCTCTCTCAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGTCTCTCTCTCTC
TCTCTCTCTCTCTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTCTCTCTCTCTC
TCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCGGGGGGGGGGGGGGGGGGGGGGGGGGGG
GGGGGGGGGGGGGGGGGGGGGGGGGGGGTCTCTCTCTCTCTCTCTCTCTCTCTATATATATATATATATATATATATATA
TATATATATATATATATATATATATATATCTCTCTCTCTCTCTCTCTCTCTCATATATATATATATATATATATATATAT
ATATATATATATATATATATATATATATTCTCTCTCTCTCTCTCTCTCTCTCCTCTCTCTCTCTCTCTCTCTCTCTCTCT
CTCTCTCTCTCTCTCTCTCTCTCTCTCTTCTCTCTCTCTCTCTCTCTCTCTCCGCGCGCGCGCGCGCGCGCGCGCGCGCG
CGCGCGCGCGCGCGCGCGCGCGCGCGCGTCTCTCTCTCTCTCTCTCTCTCTCTTTTTTTTTTTTTTTTTTTTTTTTTTTT
TTTTTTTTTTTTTTTTTTTTTTTTTTTTTCTCTCTCTCTCTCTCTCTCTCTCCACACACACACACACACACACACACACA
CACACACACACACACACACACACACACATCTCTCTCTCTCTCTCTCTCTCTCACACACACACACACACACACACACACAC
ACACACACACACACACACACACACACACTCTCTCTCTCTCTCTCTCTCTCTCGCGCGCGCGCGCGCGCGCGCGCGCGCGC
GCGCGCGCGCGCGCGCGCGCGCGCGCGCTCTCTCTCTCTCTCTCTCTCTCTCGTGTGTGTGTGTGTGTGTGTGTGTGTGT
GTGTGTGTGTGTGTGTGTGTGTGTGTGTTCTCTCTCTCTCTCTCTCTCTCTCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCCCCCCCCCCCTCTCTCTCTCTCGGGGGGGGGGGGGAGAGAGAGAGAGAGAGAGAGAGAGAGA
GAGAGAGAGAGAGAGAGAGAGAGAGAGAGGGGGGGGGGGGGGGGGGGGGGGGAGAGAGAGAGAGAGAGAGAGAGAGAGAG
AGAGAGAGAGAGAGAGAGAGAGAGAGAGGGGGGGGGGGGGGGGGGGGGGGGGTGTGTGTGTGTGTGTGTGTGTGTGTGTG
TGTGTGTGTGTGTGTGTGTGTGTGTGTGGGGGGGGGGGGGGGGGGGGGGGGGTCTCTCTCTCTCTCTCTCTCTCTCTCTC
TCTCTCTCTCTCTCTCTCTCTCTCTCTCGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
GGGGGGGGGGGGTATATATATATATATATATATATATATATATATATATATATATATATATATATATAGGGGGGGGGGGG
GGGGGGGGGGGGATATATATATATATATATATATATATATATATATATATATATATATATATATATATGGGGGGGGGGGG
GGGGGGGGGGGGCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTGGGGGGGGGGGG
GGGGGGGGGGGGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGGGGGGGGGGGGG
GGGGGGGGGGGGTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTGGGGGGGGGGGG
GGGGGGGGGGGGCACACACACACACACACACACACACACACACACACACACACACACACACACACACAGGGGGGGGGGGG
GGGGGGGGGGGGACACACACACACACACACACACACACACACACACACACACACACACACACACACACGGGGGGGGGGGG
GGGGGGGGGGGGGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGGGGGGGGGGGG
GGGGGGGGGGGGGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGGGGGGGGGGGG
GGGGGGGGGGGGCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCGGGGGGGGGGGG
TATATATATATAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGATATATATATATA
TATATATATATAAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGTATATATATATA
TATATATATATATGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTATATATATATA
TATATATATATATCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTATATATATATA
TATATATATATAGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGTATATATATATA
TATATATATATATATATATATATATATATATATATATATATATATATATATAATATATATATATATATATATATATATAT
ATATATATATATATATATATATATATATTATATATATATATATATATATATACTCTCTCTCTCTCTCTCTCTCTCTCTCT
CTCTCTCTCTCTCTCTCTCTCTCTCTCTTATATATATATATATATATATATACGCGCGCGCGCGCGCGCGCGCGCGCGCG
CGCGCGCGCGCGCGCGCGCGCGCGCGCGTATATATATATATATATATATATATTTTTTTTTTTTTTTTTTTTTTTTTTTT
TTTTTTTTTTTTTTTTTTTTTTTTTTTTTATATATATATATATATATATATACACACACACACACACACACACACACACA
CACACACACACACACACACACACACACATATATATATATATATATATATATAACACACACACACACACACACACACACAC
ACACACACACACACACACACACACACACTATATATATATATATATATATATAGCGCGCGCGCGCGCGCGCGCGCGCGCGC
GCGCGCGCGCGCGCGCGCGCGCGCGCGCTATATATATATATATATATATATAGTGTGTGTGTGTGTGTGTGTGTGTGTGT
GTGTGTGTGTGTGTGTGTGTGTGTGTGTTATATATATATATATATATATATACCCCCCCCCCCCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCCCCCCCCCCCTATATATATATAATATATATATATGAGAGAGAGAGAGAGAGAGAGAGAGAGA
GAGAGAGAGAGAGAGAGAGAGAGAGAGAATATATATATATATATATATATATAGAGAGAGAGAGAGAGAGAGAGAGAGAG
AGAGAGAGAGAGAGAGAGAGAGAGAGAGATATATATATATATATATATATATTGTGTGTGTGTGTGTGTGTGTGTGTGTG
TGTGTGTGTGTGTGTGTGTGTGTGTGTGATATATATATATATATATATATATTCTCTCTCTCTCTCTCTCTCTCTCTCTC
TCTCTCTCTCTCTCTCTCTCTCTCTCTCATATATATATATATATATATATATGGGGGGGGGGGGGGGGGGGGGGGGGGGG
GGGGGGGGGGGGGGGGGGGGGGGGGGGGATATATATATATATATATATATATTATATATATATATATATATATATATATA
TATATATATATATATATATATATATATAATATATATATATATATATATATATATATATATATATATATATATATATATAT
ATATATATATATCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTATATATATATAT
ATATATATATATCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGATATATATATAT
ATATATATATATTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTATATATATATAT
ATATATATATATCACACACACACACACACACACACACACACACACACACACACACACACACACACACAATATATATATAT
ATATATATATATACACACACACACACACACACACACACACACACACACACACACACACACACACACACATATATATATAT
ATATATATATATGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCATATATATATAT
ATATATATATATGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTATATATATATAT
ATATATATATATCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCATATATATATAT
CTCTCTCTCTCTGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGACTCTCTCTCTCT
CTCTCTCTCTCTAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGCTCTCTCTCTCT
CTCTCTCTCTCTTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGCTCTCTCTCTCT
CTCTCTCTCTCTTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCCTCTCTCTCTCT
CTCTCTCTCTCTGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGCTCTCTCTCTCT
CTCTCTCTCTCTTATATATATATATATATATATATATATATATATATATATATATATATATATATATACTCTCTCTCTCT
CTCTCTCTCTCTATATATATATATATATATATATATATATATATATATATATATATATATATATATATCTCTCTCTCTCT
CTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCGCGCGCGCGCGCGCGCGCGCGCGCGCG
CGCGCGCGCGCGCGCGCGCGCGCGCGCGCTCTCTCTCTCTCTCTCTCTCTCTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
TTTTTTTTTTTTTTTTTTTTTTTTTTTTCTCTCTCTCTCTCTCTCTCTCTCTCACACACACACACACACACACACACACA
CACACACACACACACACACACACACACACTCTCTCTCTCTCTCTCTCTCTCTACACACACACACACACACACACACACAC
ACACACACACACACACACACACACACACCTCTCTCTCTCTCTCTCTCTCTCTGCGCGCGCGCGCGCGCGCGCGCGCGCGC
GCGCGCGCGCGCGCGCGCGCGCGCGCGCCTCTCTCTCTCTCTCTCTCTCTCTGTGTGTGTGTGTGTGTGTGTGTGTGTGT
GTGTGTGTGTGTGTGTGTGTGTGTGTGTCTCTCTCTCTCTCTCTCTCTCTCTCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCTCTCTCTCTCTCGCGCGCGCGCGGAGAGAGAGAGAGAGAGAGAGAGAGAGA
GAGAGAGAGAGAGAGAGAGAGAGAGAGACGCGCGCGCGCGCGCGCGCGCGCGAGAGAGAGAGAGAGAGAGAGAGAGAGAG
AGAGAGAGAGAGAGAGAGAGAGAGAGAGCGCGCGCGCGCGCGCGCGCGCGCGTGTGTGTGTGTGTGTGTGTGTGTGTGTG
TGTGTGTGTGTGTGTGTGTGTGTGTGTGCGCGCGCGCGCGCGCGCGCGCGCGTCTCTCTCTCTCTCTCTCTCTCTCTCTC
TCTCTCTCTCTCTCTCTCTCTCTCTCTCCGCGCGCGCGCGCGCGCGCGCGCGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
GGGGGGGGGGGGGGGGGGGGGGGGGGGGGCGCGCGCGCGCCGCGCGCGCGCGTATATATATATATATATATATATATATA
TATATATATATATATATATATATATATACGCGCGCGCGCGCGCGCGCGCGCGATATATATATATATATATATATATATAT
ATATATATATATATATATATATATATATCGCGCGCGCGCGCGCGCGCGCGCGCTCTCTCTCTCTCTCTCTCTCTCTCTCT
CTCTCTCTCTCTCTCTCTCTCTCTCTCTCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCG
CGCGCGCGCGCGTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTCGCGCGCGCGCG
CGCGCGCGCGCGCACACACACACACACACACACACACACACACACACACACACACACACACACACACACGCGCGCGCGCG
CGCGCGCGCGCGACACACACACACACACACACACACACACACACACACACACACACACACACACACACCGCGCGCGCGCG
CGCGCGCGCGCGGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCCGCGCGCGCGCG
CGCGCGCGCGCGGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTCGCGCGCGCGCG
CGCGCGCGCGCGCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCGCGCGCGCGCG
TTTTTTTTTTTTGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGATTTTTTTTTTTT
TTTTTTTTTTTTAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGTTTTTTTTTTTT
TTTTTTTTTTTTTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTTTTTTTTTTTT
TTTTTTTTTTTTTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTTTTTTTTTTTT
TTTTTTTTTTTTGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGTTTTTTTTTTTT
TTTTTTTTTTTTTATATATATATATATATATATATATATATATATATATATATATATATATATATATATTTTTTTTTTTT
TTTTTTTTTTTTATATATATATATATATATATATATATATATATATATATATATATATATATATATATTTTTTTTTTTTT
TTTTTTTTTTTTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTTTTTTTTTTTTT
TTTTTTTTTTTTCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGTTTTTTTTTTTT
TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTCACACACACACACACACACACACACACA
CACACACACACACACACACACACACACATTTTTTTTTTTTTTTTTTTTTTTTACACACACACACACACACACACACACAC
ACACACACACACACACACACACACACACTTTTTTTTTTTTTTTTTTTTTTTTGCGCGCGCGCGCGCGCGCGCGCGCGCGC
GCGCGCGCGCGCGCGCGCGCGCGCGCGCTTTTTTTTTTTTTTTTTTTTTTTTGTGTGTGTGTGTGTGTGTGTGTGTGTGT
GTGTGTGTGTGTGTGTGTGTGTGTGTGTTTTTTTTTTTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCCCCCCCCCCCTTTTTTTTTTTTCACACACACACAGAGAGAGAGAGAGAGAGAGAGAGAGAGA
GAGAGAGAGAGAGAGAGAGAGAGAGAGACACACACACACACACACACACACAAGAGAGAGAGAGAGAGAGAGAGAGAGAG
AGAGAGAGAGAGAGAGAGAGAGAGAGAGCACACACACACACACACACACACATGTGTGTGTGTGTGTGTGTGTGTGTGTG
TGTGTGTGTGTGTGTGTGTGTGTGTGTGCACACACACACACACACACACACATCTCTCTCTCTCTCTCTCTCTCTCTCTC
TCTCTCTCTCTCTCTCTCTCTCTCTCTCCACACACACACACACACACACACAGGGGGGGGGGGGGGGGGGGGGGGGGGGG
GGGGGGGGGGGGGGGGGGGGGGGGGGGGCACACACACACACACACACACACATATATATATATATATATATATATATATA
TATATATATATATATATATATATATATACACACACACACACACACACACACAATATATATATATATATATATATATATAT
ATATATATATATATATATATATATATATCACACACACACACACACACACACACTCTCTCTCTCTCTCTCTCTCTCTCTCT
CTCTCTCTCTCTCTCTCTCTCTCTCTCTCACACACACACACACACACACACACGCGCGCGCGCGCGCGCGCGCGCGCGCG
CGCGCGCGCGCGCGCGCGCGCGCGCGCGCACACACACACACACACACACACATTTTTTTTTTTTTTTTTTTTTTTTTTTT
TTTTTTTTTTTTTTTTTTTTTTTTTTTTCACACACACACACACACACACACACACACACACACACACACACACACACACA
CACACACACACAACACACACACACACACACACACACACACACACACACACACACACACACACACACACCACACACACACA
CACACACACACAGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCCACACACACACA
CACACACACACAGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTCACACACACACA
CACACACACACACCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCACACACACACA
ACACACACACACGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAACACACACACAC
ACACACACACACAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGACACACACACAC
ACACACACACACTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGACACACACACAC
ACACACACACACTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCACACACACACAC
ACACACACACACGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGACACACACACAC
ACACACACACACTATATATATATATATATATATATATATATATATATATATATATATATATATATATAACACACACACAC
ACACACACACACATATATATATATATATATATATATATATATATATATATATATATATATATATATATACACACACACAC
ACACACACACACCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTACACACACACAC
ACACACACACACCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGACACACACACAC
ACACACACACACTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTACACACACACAC
ACACACACACACCACACACACACACACACACACACACACACACACACACACACACACACACACACACAACACACACACAC
ACACACACACACACACACACACACACACACACACACACACACACACACACACGCGCGCGCGCGCGCGCGCGCGCGCGCGC
GCGCGCGCGCGCGCGCGCGCGCGCGCGCACACACACACACACACACACACACGTGTGTGTGTGTGTGTGTGTGTGTGTGT
GTGTGTGTGTGTGTGTGTGTGTGTGTGTACACACACACACACACACACACACCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCCCCCCCCCCCACACACACACACGCGCGCGCGCGCGAGAGAGAGAGAGAGAGAGAGAGAGAGA
GAGAGAGAGAGAGAGAGAGAGAGAGAGAGCGCGCGCGCGCGCGCGCGCGCGCAGAGAGAGAGAGAGAGAGAGAGAGAGAG
AGAGAGAGAGAGAGAGAGAGAGAGAGAGGCGCGCGCGCGCGCGCGCGCGCGCTGTGTGTGTGTGTGTGTGTGTGTGTGTG
TGTGTGTGTGTGTGTGTGTGTGTGTGTGGCGCGCGCGCGCGCGCGCGCGCGCTCTCTCTCTCTCTCTCTCTCTCTCTCTC
TCTCTCTCTCTCTCTCTCTCTCTCTCTCGCGCGCGCGCGCGCGCGCGCGCGCGGGGGGGGGGGGGGGGGGGGGGGGGGGG
GGGGGGGGGGGGGGGGGGGGGGGGGGGGGCGCGCGCGCGCGCGCGCGCGCGCTATATATATATATATATATATATATATA
TATATATATATATATATATATATATATAGCGCGCGCGCGCGCGCGCGCGCGCATATATATATATATATATATATATATAT
ATATATATATATATATATATATATATATGCGCGCGCGCGCGCGCGCGCGCGCCTCTCTCTCTCTCTCTCTCTCTCTCTCT
CTCTCTCTCTCTCTCTCTCTCTCTCTCTGCGCGCGCGCGCGCGCGCGCGCGCCGCGCGCGCGCGCGCGCGCGCGCGCGCG
CGCGCGCGCGCGCGCGCGCGCGCGCGCGGCGCGCGCGCGCGCGCGCGCGCGCTTTTTTTTTTTTTTTTTTTTTTTTTTTT
TTTTTTTTTTTTTTTTTTTTTTTTTTTTGCGCGCGCGCGCGCGCGCGCGCGCCACACACACACACACACACACACACACA
CACACACACACACACACACACACACACAGCGCGCGCGCGCGCGCGCGCGCGCACACACACACACACACACACACACACAC
ACACACACACACACACACACACACACACGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGC
GCGCGCGCGCGCGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGCGCGCGCGCGC
GCGCGCGCGCGCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCGCGCGCGCGCGC
GTGTGTGTGTGTGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGTGTGTGTGTGT
GTGTGTGTGTGTAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGAGGTGTGTGTGTGT
GTGTGTGTGTGTTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGGTGTGTGTGTGT
GTGTGTGTGTGTTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCGTGTGTGTGTGT
GTGTGTGTGTGTGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGTGTGTGTGTGT
GTGTGTGTGTGTTATATATATATATATATATATATATATATATATATATATATATATATATATATATAGTGTGTGTGTGT
GTGTGTGTGTGTATATATATATATATATATATATATATATATATATATATATATATATATATATATATGTGTGTGTGTGT
GTGTGTGTGTGTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTCTGTGTGTGTGTGT
GTGTGTGTGTGTCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGGTGTGTGTGTGT
GTGTGTGTGTGTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTGTGTGTGTGTGT
GTGTGTGTGTGTCACACACACACACACACACACACACACACACACACACACACACACACACACACACAGTGTGTGTGTGT
GTGTGTGTGTGTACACACACACACACACACACACACACACACACACACACACACACACACACACACACGTGTGTGTGTGT
GTGTGTGTGTGTGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGTGTGTGTGTGT
GTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CCCCCCCCCCCCCCCCCCCCCCCCCCCCGTGTGTGTGTGTCCCCCCCCCCCCGAGAGAGAGAGAGAGAGAGAGAGAGAGA
GAGAGAGAGAGAGAGAGAGAGAGAGAGACCCCCCCCCCCCCCCCCCCCCCCCAGAGAGAGAGAGAGAGAGAGAGAGAGAG
AGAGAGAGAGAGAGAGAGAGAGAGAGAGCCCCCCCCCCCCCCCCCCCCCCCCTGTGTGTGTGTGTGTGTGTGTGTGTGTG
TGTGTGTGTGTGTGTGTGTGTGTGTGTGCCCCCCCCCCCCCCCCCCCCCCCCTCTCTCTCTCTCTCTCTCTCTCTCTCTC
TCTCTCTCTCTCTCTCTCTCTCTCTCTCCCCCCCCCCCCCCCCCCCCCCCCCGGGGGGGGGGGGGGGGGGGGGGGGGGGG
GGGGGGGGGGGGGGGGGGGGGGGGGGGGCCCCCCCCCCCCCCCCCCCCCCCCTATATATATATATATATATATATATATA
TATATATATATATATATATATATATATACCCCCCCCCCCCCCCCCCCCCCCCATATATATATATATATATATATATATAT
ATATATATATATATATATATATATATATCCCCCCCCCCCCCCCCCCCCCCCCCTCTCTCTCTCTCTCTCTCTCTCTCTCT
CTCTCTCTCTCTCTCTCTCTCTCTCTCTCCCCCCCCCCCCCCCCCCCCCCCCCGCGCGCGCGCGCGCGCGCGCGCGCGCG
CGCGCGCGCGCGCGCGCGCGCGCGCGCGCCCCCCCCCCCCCCCCCCCCCCCCTTTTTTTTTTTTTTTTTTTTTTTTTTTT
TTTTTTTTTTTTTTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCCCCCCCCCCACACACACACACACACACACACACACA
CACACACACACACACACACACACACACACCCCCCCCCCCCCCCCCCCCCCCCACACACACACACACACACACACACACAC
ACACACACACACACACACACACACACACCCCCCCCCCCCCCCCCCCCCCCCCGCGCGCGCGCGCGCGCGCGCGCGCGCGC
GCGCGCGCGCGCGCGCGCGCGCGCGCGCCCCCCCCCCCCCCCCCCCCCCCCCGTGTGTGTGTGTGTGTGTGTGTGTGTGT
GTGTGTGTGTGTGTGTGTGTGTGTGTGTCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Ali, S.; Alali, A.S.; Azeem, M.; Khan, A.A.; Wong, K.B. On Double Cyclic Codes over Finite Chain Rings for DNA Computing. Entropy 2025, 27, 1187. https://doi.org/10.3390/e27121187

AMA Style

Ali S, Alali AS, Azeem M, Khan AA, Wong KB. On Double Cyclic Codes over Finite Chain Rings for DNA Computing. Entropy. 2025; 27(12):1187. https://doi.org/10.3390/e27121187

Chicago/Turabian Style

Ali, Shakir, Amal S. Alali, Mohd Azeem, Atif Ahmad Khan, and Kok Bin Wong. 2025. "On Double Cyclic Codes over Finite Chain Rings for DNA Computing" Entropy 27, no. 12: 1187. https://doi.org/10.3390/e27121187

APA Style

Ali, S., Alali, A. S., Azeem, M., Khan, A. A., & Wong, K. B. (2025). On Double Cyclic Codes over Finite Chain Rings for DNA Computing. Entropy, 27(12), 1187. https://doi.org/10.3390/e27121187

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop