A DNA encoding method that can correct multiple deletion errors and satisfy GC global balance
By constructing a combination of quaternary MDS codes and single-injection πs, the problem of multiple insertion and deletion errors in DNA storage is solved. This achieves efficient correction of multiple deletion errors and satisfies global GC balance, thereby improving data reliability and error correction capabilities.
Patent Information
- Application Number
- CN202311048119.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-21
- Publication Date
- 2025-03-11
- Estimated Expiration
- 2043-08-21
AI Technical Summary
Existing DNA storage methods struggle to simultaneously correct multiple insertion and deletion errors and satisfy global GC balance, resulting in insufficient data reliability.
By employing the concept of repeating codes, a quaternary MDS code and an injective πs are constructed to ensure that DNA coding can correct multiple deletion errors while satisfying global GC balance. The correction of multiple deletion errors is achieved by combining the generator matrix G and the injective πs.
It effectively reduces the error rate, improves data reliability, and maintains global GC balance while enhancing error correction capabilities.
Smart Images

Figure CN117081604B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a DNA storage method in the field of data storage, and in particular to a novel DNA encoding method capable of correcting multiple insertion and deletion errors and satisfying GC global balance. Background Art
[0002] DNA-based data storage is a new method for long-term preservation of digital data. DNA storage refers to using DNA as a medium to encode information sequences into DNA sequences composed of four bases: A, T, C, and G, and to enable error correction capabilities. Due to major advances in biotechnology such as DNA synthesis and sequencing, DNA storage has attracted widespread attention in recent years for its advantages such as high storage density, long preservation time, low maintenance cost, and easy access.
[0003] During the storage process of DNA, base insertion, deletion and substitution errors (collectively referred to as insertion and deletion errors) often occur. Insertion and deletion errors are a type of synchronization error caused by the loss of position information in the message. The main purpose of DNA encoding is to introduce a certain amount of redundancy through some encoding methods, so that insertion and deletion errors can be corrected to ensure data reliability.
[0004] The probability of errors during DNA storage is closely related to the sequence structure of DNA. In order to reduce the error rate, the DNA chain should meet the global GC content constraint, that is, the content of bases G and C accounts for 40% to 60% of the total, which is also called GC global balance.
[0005] The performance of a coding method is mainly determined by the code rate and error correction capability of the code. The code rate can be compared by calculating the redundancy. The lower the redundancy, the higher the code rate and the better the code performance. The redundancy calculation formula for a code C with q elements, code length n and codeword number |C| is: R = n-log q |C|.
[0006] Currently, most DNA encoding methods can only correct a few deletion errors, or can only meet the global GC balance. There is still a lack of DNA encoding methods that can correct insertion and deletion errors and meet the global GC balance. Summary of the invention
[0007] Aiming at the problem that a large number of error codes cannot be deleted in the background technology, the present invention provides a DNA encoding method that can correct multiple deletion errors and meet GC global balance. The encoding method adopts the idea of repeated codes and can correct multiple deletion errors while meeting GC global balance.
[0008] The technical solution of the present invention is a DNA encoding method that can correct multiple deletion errors and satisfy GC global balance, the method comprising:
[0009] Step 1: Define a 4-tuple [m,m-1,2] MDS code Specifically include:
[0010] Step 1.1: Define a 4-element finite field Among them, α satisfies α 2 +α+1=0; construction To DNA base set∑ DNA = bijection τ of {A, T, C, G}: τ (0) = C, τ (1) = G, τ (α) = A, τ (1 + α) = T;
[0011] Step 1.2: Set The 4-tuple sequence of length n above is: c i Represents the i-th coordinate of sequence c, and defines the global GC weight of c as wt GC (c)=|{i∈[n]:c i =0}|+|{j∈[n]:c j = 1}|, the ratio of the global GC weight to the code length is defined as the global GC ratio If 0.4≤η(c)≤0.6, the codeword c is said to satisfy the GC global balance;
[0012] Step 1.3: Define a 4-tuple MDS code in The code length is m, the dimension is m-1, and its minimum Hamming distance is 2, that is, [m,m-1,2] code; and The generator matrix G has the standard form, G = [I m-1 |A (m-1)×1 ], I m-1 represents the m-1-order identity matrix, A (m-1)×1 is an m-1 dimensional column vector;
[0013] Step 2: Construct a 4-tuple (m,M,2) code M indicates code The number of code words, Satisfy the GC global balance, including:
[0014] Step 2.1: Define a 4-tuple message sequence The message sequence satisfies The message sequence {u} satisfies the GC global balance; construction Since G is a generator matrix in standard form, then The first m-1 bits of all codewords of are the same as u, so It also satisfies the GC global balance;
[0015] Step 2.2: The number of codewords is equal to the number of 4-tuple message sequences u that satisfy the global balance of GC, that is,
[0016] Step 3: Construct a 4-tuple (ms,M,2s) code Satisfies GC global balance and can correct s-1 deletion errors;
[0017] Step 3.1: Define the injective π s :
[0018]
[0019] π s Represents copying s bits for each bit of the codeword, s ≥ 2, constructing therefore Code length is ms, number of code words The minimum Hamming distance is s times the minimum Hamming distance of , that is, 2s; and The global GC ratio of The global GC ratio of It also satisfies the GC global balance.
[0020] Step 3.2: It can correct s-1 erasure errors, and its erasure decoding algorithm is as follows:
[0021] Assume that the codeword to be sent is The code length is ms, and the received codeword is If the code length of r is ms-δ, then it is considered that a δ-bit erasure error has occurred, where 1≤δ≤s-1;
[0022] First, r is divided into m modules. Adjacent and identical bits are merged into one module, and the length of each module does not exceed s. Let the i-th module be r il Represents module r i The lth coordinate of i1 =r i2 =…=r il , 1≤l≤s, then r=(r1,r2,…,r m ); for example, when s=3, if r=(0,0,0,1,1,1+α,α,α,α,α,α), then r can be divided into five modules: (0,0,0), (1,1), (1+α), (α,α,α), (α,α);
[0023] Decode each module separately: if the length of the module is s, it is considered that there is no error in the module and the module is directly output; if the length of the module is less than s, it is considered that there is a deletion error in the module, and the elements of the module are copied to s positions and then the module is output; that is, r i Decoded as v i =(v i1 v i2 …v is ), where v i1 =v i2 =…=v is =r i1 ; then the decoded codeword is x=(v1,v2,…,v m );
[0024] Step 3.3: Calculate The redundancy of Therefore, as s increases, As the error correction capability increases, the redundancy also increases.
[0025] The present invention utilizes the idea of repeated codes to construct a DNA encoding method that can correct multi-bit deletion errors; at the same time, the codewords obtained by the encoding method also meet the GC global balance and effectively reduce the error rate. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] Figure 1 It is a flow chart of the present invention. DETAILED DESCRIPTION
[0027] Step 1: Define a 4-tuple [10,9,2] MDS code Specifically include:
[0028] 1.1 The code length is 10, the dimension is 9, and its minimum Hamming distance is 2. And The generator matrix G has the standard form, namely
[0029]
[0030] Step 2: Construct a 4-tuple (10, M, 2) code Satisfy the GC global balance, including:
[0031] 2.1 Define 4-tuple message sequence This message sequence satisfies wt GC (u) = 5, then η(u) = 0.56, and u satisfies the global balance of GC. Then η(c)=0.5 or 0.6, so It also satisfies the GC global balance.
[0032] 2.2 The number of codewords is equal to the number of 4-tuple message sequences u that satisfy the global balance of GC, that is,
[0033] Step 3: Let s = 3 and construct a 4-ary (30, M, 6) code The GC global balance is satisfied and two deletion errors can be corrected.
[0034] 3.1 Definition of injective π3
[0035]
[0036] π s It means to copy 3 bits for each bit of the code word. therefore The code length is 30, the number of code words The minimum Hamming distance is s times the minimum Hamming distance of , which is 6. And The global GC ratio of The global GC ratio of It also satisfies the GC global balance.
[0037] 3.2 Two deletion errors can be corrected. Here is a decoding example:
[0038] Let the message sequence sent be u = (0, 1, 1, 0, 0, α, α, 1 + α, 1 + α), then wt GC (u) = 5, η(u) = 0.56, satisfying the GC global balance.
[0039] Then the codeword after encoding u is Then wt GC (c) = 6, η(c) = 0.6, satisfying the GC global balance.
[0040] Then encode the codeword c as Right now
[0041] c I =(0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,α,α,α,α,α,α,1+α,1+α,1+α,1+α,1+α,
[0042] 1+α,0,0,0)
[0043] Assume the received codeword is
[0044] r=(0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,α,α,α,α,α,1+α,1+α,1+α,1+α,1+α,0,0,0)
[0045] The code length is 28, which means that a two-bit erasure error occurred.
[0046] First, divide R into 10 modules
[0047] r=(0,0,0),(1,1,1),(1,1,1),(0,0,0),(0,0,0),(α,α,α),(α,α),(1+α,1+α,1+α),
[0048] (1+α,1+α),(0,0,0)
[0049] Decode each module separately, and expand the module length to 3 bits if it is less than 3 bits. Then the decoded codeword is
[0050] x=(0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,α,α,α,α,α,α,1+α,1+α,1+α,1+α,1+α,
[0051] 1+α,0,0,0)
[0052] We can see that x=c I , decoding is successful.
[0053] 3.3 The following calculation The redundancy is R=30-log464512=22.01.
Claims
1. A DNA encoding method that can correct multiple deletion errors and satisfy GC global balance, the method comprising: Step 1: Define a 4-tuple [m, m-1, 2] MDS code Specifically include: Step 1.1: Define a 4-element finite field Among them, α satisfies α 2 +α+1=0; construction To DNA base set∑ DNA = bijection τ of {A, T, C, G}: τ(0)=C, τ(1)=G, τ(α)=A, τ(1+α)=T; Step 1.2: Set The 4-tuple sequence of length n above is: c i Represents the i-th coordinate of sequence c, and defines the global GC weight of c as wt GC (c)=|{i∈[n]:c i =0}|+|{j∈[n]:c j = 1}|, the ratio of the global GC weight to the code length is defined as the global GC ratio If 0.4≤η(c)≤0.6, the codeword c is said to satisfy the GC global balance; Step 1.3: Define a 4-tuple MDS code in The code length is m, the dimension is m-1, and its minimum Hamming distance is 2, that is, [m, m-1, 2] code; and The generator matrix G has the standard form, G = [I m-1 |A (m-1)×1 ], I m-1 represents the m-1-order identity matrix, A (m-1)×1 is an m-1 dimensional column vector; Step 2: Construct a 4-tuple (m, M, 2) code M indicates code The number of code words, Satisfy the GC global balance, including: Step 2.1: Define a 4-tuple message sequence The message sequence satisfies The message sequence {u} satisfies the GC global balance; construction Since G is a generator matrix in standard form, then The first m-1 bits of all codewords of are the same as u, so It also satisfies the GC global balance; Step 2.2: The number of codewords is equal to the number of 4-tuple message sequences u that satisfy the global balance of GC, that is, Step 3: Construct a 4-tuple (ms, M, 2s) code Satisfies GC global balance and can correct s-1 deletion errors; Step 3.1: Define the injective π s : π s Represents copying s bits for each bit of the codeword, s ≥ 2, construct therefore Code length is ms, number of code words The minimum Hamming distance is s times the minimum Hamming distance of , that is, 2s; and The global GC ratio of The global GC ratio of It also satisfies the GC global balance; Step 3.2: It can correct s-1 erasure errors, and its erasure decoding algorithm is as follows: Assume that the codeword to be sent is The code length is ms, and the received codeword is If the code length of r is ms-δ, then it is considered that a δ-bit erasure error has occurred, where 1≤δ≤s-1; First, r is divided into m modules. Adjacent and identical bits are merged into one module, and the length of each module does not exceed s. Let the i-th module be r il Represents module r i The lth coordinate of i1 =r i2 =…=r il , 1≤l≤s, then r=(r1,r2,...,r m ); Decode each module separately: if the length of the module is s, it is considered that there is no error in the module and the module is directly output; if the length of the module is less than s, it is considered that there is a deletion error in the module, and the elements of the module are copied to s positions and then the module is output; that is, r i Decoded as v i =(v i1 v i2 ...v is ), where v i1 =v i2 =…=v is =r i1 ; then the decoded codeword is x = (v1, v2, ..., v m ); Step 3.3: Calculate The redundancy of Therefore, as s increases, As the error correction capability increases, the redundancy also increases.
Citation Information
Patent Citations
Novel DNA storage coding method
CN115642923A
DNA (deoxyribonucleic acid) storage coding method with locally balanced GC (gas chromatography) content
CN116405693A