This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Outer Channel of DNA-Based Data Storage: Capacity and Efficient Coding Schemes

Xuan He, Yi Ding, Kui Cai, Guanghui Song, Bin Dai, and Xiaohu Tang This work was presented in part at [1]. DOI: 10.1109/ICCCWorkshops57813.2023.10233840
Abstract

In this paper, we consider the outer channel for DNA-based data storage, where each DNA string is either correctly transmitted, or being erased, or being corrupted by uniformly distributed random substitution errors, and all strings are randomly shuffled with each other. We first derive the capacity of the outer channel, which surprisingly implies that the uniformly distributed random substitution errors are only as harmful as the erasure errors. Next, we propose efficient coding schemes which encode the bits at the same position of different strings into a codeword. We compute the soft/hard information of each bit, which allows us to independently decode the bits within a codeword, leading to an independent decoding scheme. To improve the decoding performance, we measure the reliability of each string based on the independent decoding result, and perform a further step of decoding over the most reliable strings, leading to a joint decoding scheme. Simulations with low-density parity-check codes confirm that the joint decoding scheme can reduce the frame error rate by more than 3 orders of magnitude compared to the independent decoding scheme, and it can outperform the state-of-the-art decoding scheme in the literature in a wide parameter regions.

Index Terms:
Capacity, DNA-based data storage, joint decoding scheme, low-density parity-check (LDPC) code, outer channel.

I Introduction

Due to the increasing demand for data storage, DNA-based data storage systems have attracted significant attention, since they can achieve extremely high data storage capacity, with very long life duration and low maintenance cost [2, 3, 4]. A typical model for these systems is shown by Fig. 1 [5]. Due to biochemical constraints, the source data is stored in many short DNA strings in an unordered manner. A DNA string/strand/oligo can be missing or corrupted by insertion, deletion, and/or substitution errors during the synthesis, storage, and/or sequencing processes. Therefore, in typical DNA-based data storage systems, an inner code is used to detect/correct the errors within a string, whereas an outer code is used to recover the missing strings and correct the undetectable substitution errors from inner decoding.

In this paper, we focus on the outer code in Fig. 1. Thus, we adopt a simplified system model shown in Fig. 2, where the channel of interest, referred to as the outer channel, is the concatenation of channel-1 and channel-2. The input of channel-1 is an n×ln\times l binary matrix 𝐗\mathbf{X}, each row of which corresponds to a DNA string. Each row (NOT each bit) of 𝐗\mathbf{X} is correctly transmitted over channel-1 with probability pcp_{c}, or erased with probability pep_{e}, or corrupted by length-ll uniformly distributed random substitution errors with probability psp_{s}, where pc+pe+ps=1p_{c}+p_{e}+p_{s}=1. After that, the rows at the output of channel-1 are randomly shuffled with each other by channel-2. In this case, we indeed view the inner code as a part of channel-1 such that only the valid (but possibly incorrect) inner codewords from the inner decoding form the output of channel-1. It explains why channel-1 adds erasure and substitution errors to a whole row of 𝐗\mathbf{X} instead of its bits independently.

We say that the rate RR (number of information bits stored in per transmitting coded bit) is achievable if there exists a code with rate RR such that the decoding error probability tends to 0 as nn\to\infty, and the channel capacity refers to the maximum achievable code rate. In this paper, we are interested in both computing the capacity and developing practical and efficient coding schemes for the outer channel.

Refer to caption
Figure 1: A typical system model for DNA-based data storage [5].

I-A Related Work

TABLE I: Comparison between the existing work and this work
Work Channel model Difference
this work outer channel
[1] outer channel no capacity result
[5] concatenation channel no erasure errors; no capacity result
[6] noisy permutation channel no erasure errors; modified capacity for nn\to\infty and fixed ll (i.e., β0\beta\to 0)
[7] noise-free shuffling-sampling channel no sustitution errors
[7, 8, 9] noisy shuffling-sampling channels bits within a string independently suffer from substitution errors

This is an extended work of its conference version [1]. In [1], we proposed an efficient coding scheme for the outer channel. In this work, we further prove the capacity of the outer channel.

The outer channel is almost the same as the concatenation channel in [5, Fig. 2(a)], except that we additionally consider erasure errors in this paper. In [5], fountain codes [10, 11] were used as the outer codes, and an efficient decoding scheme, called basis-finding algorithm (BFA), was proposed for fountain codes. BFA can also work for the outer channel in this paper when fountain codes are being used, and it serves as a benchmark for the simulation results later in Section V. However, the capacity of the concatenation channel has not been discussed in [5].

In [6, Fig. 2], Makur considered a noisy permutation channel which essentially is the same as the concatenation channel in [5, Fig. 2(a)]. Define

βlimnllog2n,\beta\triangleq\lim_{n\to\infty}\frac{l}{\log_{2}n}, (1)

in which nn and ll are the number of rows and number of columns in 𝐗\mathbf{X}, respectively. Makur modified the conventional definition of channel capacity and computed the modified capacity for nn\to\infty and fixed ll (i.e., β0\beta\to 0 in this case). However, we will soon see that the (conventional) capacity of the outer channel equals zero for β1\beta\leq 1, and we thus aim to compute the capacity of the the outer channel for β>1\beta>1 in this paper.

In [7], Shomorony and Heckel considered a noise-free shuffling-sampling channel, which can also be described as the concatenation of two sub-channels. The second sub-channel is the same as our channel-2. The first sub-channel outputs some noise-free copies of rows of the input 𝐗\mathbf{X}, where the number of copies follows a certain probability distribution, e.g, the Bernoulli distribution. Let perasurep_{erasure} denote the probability that the first sub-channel does not output any copy for a row of 𝐗\mathbf{X}. According to [7, Theorem 1], the noise-free shuffling-sampling channel has capacity

Cnf=(1perasure)(11/β),C_{nf}=(1-p_{erasure})(1-1/\beta), (2)

as long as β>1\beta>1, and Cnf=0C_{nf}=0 for β1\beta\leq 1. In (2), 11/β1-1/\beta can be understood as the loss due to the random permutation of the second sub-channel, which implies that index-based coding scheme that uses log2n\log_{2}n bits for uniquely labelling each row of 𝐗\mathbf{X} is optimal [7].

Shomorony and Heckel [7] additionally studied a noisy shuffling-sampling channel. In [8] and [9], more noisy shuffling-sampling channels (also called noisy drawing channels) were considered. However, these channels include discrete memoryless channels (e.g., binary symmetric channel (BSC)), which independently add substitution errors to each bit within a row of 𝐗\mathbf{X}. This is the key difference from our channel-1 which does not independently add substitution errors to each bit within a row.

We summarize the differences between the existing work and this work in Table I. As can be seen from Table I, the capacity of the outer channel is not clear for β>1\beta>1 up till now.

I-B Main Contributions

This paper provides two main contributions. Our first contribution is to derive the capacity CC of the outer channel, given by the following theorem.

Theorem 1.

The capacity of the outer channel is

C=pc(11/β),C=p_{c}(1-1/\beta), (3)

as long as β>1\beta>1, and C=0C=0 for β1\beta\leq 1.

From [7], it is known that C=0C=0 for β1\beta\leq 1. Therefore, we focus on β>1\beta>1 by default from now on except where otherwise stated. Intuitively, the received rows in 𝐙\mathbf{Z} that are corrupted by uniformly distributed random substitution errors can provide no (at most negligible) information about 𝐗\mathbf{X}. Suppose there is a genie-aided outer channel which has a genie to identify and remove these incorrect rows, then the channel becomes a type of noise-free shuffling-sampling channel in [7] with perasure=pe+psp_{erasure}=p_{e}+p_{s}. According to (2), its capacity is given by Cnf=(1perasure)(11/β)=pc(11/β)C_{nf}=(1-p_{erasure})(1-1/\beta)=p_{c}(1-1/\beta). In contrast to (3), it implies that the uniformly distributed random substitution errors are as harmful as erasure errors when β>1\beta>1 and nn\to\infty (recall that we compute capacity for nn\to\infty). This motivates us to develop efficient decoding schemes by treating incorrect rows as erased ones in Section IV, i.e., identify and remove the incorrect rows.

Our second contribution is to develop an efficient coding scheme for the outer channel. More specifically, our encoding scheme is first to choose a block error-correction code (ECC) to encode each column of 𝐗\mathbf{X} as a codeword so as to tackle erasure and substitution errors from channel-1, and then to add a unique address to each row of 𝐗\mathbf{X} so as to combat disordering of channel-2. Our decoding scheme is first to derive the soft/hard information for each data bit in 𝐗\mathbf{X}. It allows us to decode each column of 𝐗\mathbf{X} independently, leading to an independent decoding scheme. However, this scheme may not be very efficient since it requires the successful decoding of all columns to fully recover 𝐗\mathbf{X}. Therefore, we further measure the reliability of the received rows of 𝐗\mathbf{X} based on the independent decoding result. Then, we take the most reliable received rows to recover 𝐗\mathbf{X} like under the erasure channel, leading to an efficient joint decoding scheme. Simulations with low-density parity-check (LDPC) codes [12] show that the joint decoding scheme can reduce the frame error rate (FER) by more than 3 orders of magnitude compared to the independent decoding scheme. Moreover, it demonstrates that the joint decoding scheme and the BFA can outperform each other under different parameter region.

I-C Organization

The remainder of this paper is organized as follows. Section II illustrates the outer channel and the encoding scheme. Section III proves Theorem 1. Section IV develops both the independent and joint decoding schemes. Section V presents the simulation results. Finally, Section VI concludes this paper.

I-D Notations

In this paper, we generally use non-bold lowercase letters for scalars (e.g., nn), bold lowercase letters for (row) vectors (e.g., 𝐱\mathbf{x}), bold uppercase letters for matrices (e.g., 𝐗\mathbf{X}), non-bold uppercase letters for random variables and events (e.g., EE), and calligraphic letters for sets (e.g., 𝒵\mathcal{Z}). For any n×ln\times l matrix 𝐗\mathbf{X}, we refer to its ii-th row and (i,j)(i,j)-th entry by 𝐱i\mathbf{x}_{i} and xi,jx_{i,j}, respectively, i.e., 𝐗=[(𝐱iT)1in]T=(xi,j)1in,1jl\mathbf{X}=[(\mathbf{x}_{i}^{\mathrm{T}})_{1\leq i\leq n}]^{\mathrm{T}}=({x}_{i,j})_{1\leq i\leq n,1\leq j\leq l}, where ()T(\cdot)^{\mathrm{T}} is the transpose of a vector or matrix. For any two matrices 𝐗\mathbf{X} and 𝐘\mathbf{Y}, denote 𝐗𝐘\mathbf{X}\cap\mathbf{Y} as the set intersection of their rows (only one copy of the same rows is kept). For any two events E1E_{1} and E2E_{2}, denote E1E2E_{1}\vee E_{2} as their union, and denote (E1)\mathbb{P}(E_{1}) as the probability that E1E_{1} happens. Denote 𝔽2{0,1}\mathbb{F}_{2}\triangleq\{0,1\} as the binary field and [n]{1,2,,n}[n]\triangleq\{1,2,\ldots,n\} for any positive integer nn.

II System Model and Encoding Scheme

Refer to caption
Figure 2: System model for the outer channel, where 𝐔𝔽2k×w\mathbf{U}\in\mathbb{F}_{2}^{k\times w} is the data matrix, 𝐗𝔽2n×l\mathbf{X}\in\mathbb{F}_{2}^{n\times l} is the encoded matrix, channel-1 has transition probability given by (4), channel-2 randomly permutates the rows of 𝐘\mathbf{Y}, and 𝐔^\widehat{\mathbf{U}} is an estimation of 𝐔\mathbf{U}.

Recall that we focus on the outer code in Fig. 1. Therefore, motivated by [5], we consider the simplified system model in Fig. 2, where the encoder and decoder are related to the outer code, the inner code is viewed as a part of channel-1, and channel-2 is to randomly shuffle DNA strings with each other. The outer channel considered in this paper is the concatenation of channel-1 and channel-2.

More specifically, first, the data matrix 𝐔𝔽2k×w\mathbf{U}\in\mathbb{F}_{2}^{k\times w} is encoded as 𝐗𝔽2n×l\mathbf{X}\in\mathbb{F}_{2}^{n\times l}, where each row of 𝐗\mathbf{X} corresponds to a DNA string in DNA-based data storage systems. Then, the rows of 𝐗\mathbf{X} are transmitted over channel-1 and received one-by-one in order. For each i[n]i\in[n], the ii-th received row 𝐲i𝐘\mathbf{y}_{i}\in\mathbf{Y} indeed corresponds to the inner decoding result of the ii-th transmitted row 𝐱i𝐗\mathbf{x}_{i}\in\mathbf{X}. Thus, we regard 𝐱i\mathbf{x}_{i} (instead of each its bit) as a whole to be transmitted over channel-1. Particularly, 𝐲i\mathbf{y}_{i} can be classified into three cases:

  • 𝐲i=𝐱i\mathbf{y}_{i}=\mathbf{x}_{i}: The inner decoding of 𝐱i\mathbf{x}_{i} succeeds.

  • 𝐲i=?\mathbf{y}_{i}=?: The inner decoding of 𝐱i\mathbf{x}_{i} fails to give a valid inner codeword such that 𝐲i\mathbf{y}_{i} is regarded as an erasure error. This case can be caused by either that 𝐱i\mathbf{x}_{i} is corrupted by too many errors or that 𝐱i\mathbf{x}_{i} is missing during the synthesizing, storage, or sequencing process.

  • 𝐲i𝔽2l{𝐱i}\mathbf{y}_{i}\in\mathbb{F}_{2}^{l}\setminus\{\mathbf{x}_{i}\}: The inner decoding of 𝐱i\mathbf{x}_{i} gives a valid but incorrect inner codeword, i.e., an undetectable error happens.

Accordingly, we model the transition probability of channel-1 by

(𝐲i|𝐱i)={pc,𝐲i=𝐱i,pe,𝐲i=?,ps/(2l1),𝐲i=𝐞𝔽2l{𝐱i},\mathbb{P}(\mathbf{y}_{i}|\mathbf{x}_{i})=\begin{cases}p_{c},&\mathbf{y}_{i}=\mathbf{x}_{i},\\ p_{e},&\mathbf{y}_{i}=?,\\ p_{s}/(2^{l}-1),&\mathbf{y}_{i}=\mathbf{e}\in\mathbb{F}_{2}^{l}\setminus\{\mathbf{x}_{i}\},\end{cases} (4)

where pc+pe+ps=1p_{c}+p_{e}+p_{s}=1. Note that in practice, pcp_{c} should be large enough to ensure the success of the outer decoding. Thus, we further require

pc>ps/(2l1).p_{c}>p_{s}/(2^{l}-1). (5)

Next, 𝐘\mathbf{Y} is transmitted over channel-2 where its rows are shuffled uniformly at random to form 𝐙\mathbf{Z}. For convenience, we regard both 𝐘\mathbf{Y} and 𝐙\mathbf{Z} having nn rows in which any erased rows are represented by ‘?’. Finally, the decoder gives an estimation 𝐔^\widehat{\mathbf{U}} of 𝐔\mathbf{U} based on 𝐙\mathbf{Z}.

To protect against the above channel errors, we adopt the encoder illustrated by Fig. 3 to convert the data matrix 𝐔𝔽2k×w\mathbf{U}\in\mathbb{F}_{2}^{k\times w} into the encoded matrix 𝐗𝔽2n×l\mathbf{X}\in\mathbb{F}_{2}^{n\times l} with the following two steps:

  • A (binary) ECC of block length-nn is chosen to encode each column of 𝐔\mathbf{U} as a column (codeword) of 𝐕𝔽2n×w\mathbf{V}\in\mathbb{F}_{2}^{n\times w}, so as to tackle the erasure errors and substitution errors from channel-1. Random ECCs will be used for proving the capacity and any excellent linear ECCs (e.g., LDPC codes) can be used in practical scenarios.

  • A unique address of bit-width alwlog2na\triangleq l-w\geq\lceil\log_{2}n\rceil is added to the tail of each row of 𝐕\mathbf{V}, leading to 𝐗\mathbf{X}, so as to combat the disordering of channel-2. Without loss of generality (WLOG), we set the address of 𝐱i\mathbf{x}_{i} as ii for any i[n]i\in[n]. Note that given nn, increasing aa can reduce the probability that an address is changed to a valid address when substitution errors occur. Since for DNA-based data storage, we can simply discard the received rows without valid addresses, increasing aa is equivalent to reducing psp_{s} and increasing pep_{e} in our system model. Thus, we use the minimum aa by default, i.e., a=log2na=\lceil\log_{2}n\rceil. By convenience, we refer to the first ww columns and the last aa columns of 𝐗\mathbf{X} by data and address, respectively.

Refer to caption
Figure 3: The encoder considered for the system model in Fig. 2: first, an (n,k)(n,k) block ECC is chosen to encode each column of 𝐔𝔽2k×w\mathbf{U}\in\mathbb{F}_{2}^{k\times w} as a column of 𝐕𝔽2n×w\mathbf{V}\in\mathbb{F}_{2}^{n\times w}; then, a unique address of aa bits is added to each row of 𝐕\mathbf{V} to form 𝐗𝔽2n×l\mathbf{X}\in\mathbb{F}_{2}^{n\times l}.
Example 1.

This example shows the encoding process of Fig. 3. Consider the following source data matrix:

𝐔=[00110101].\mathbf{U}=\left[\begin{array}[]{c c c c}0&0&1&1\\ 0&1&0&1\\ \end{array}\right]. (6)

We systematically encode each column of 𝐔\mathbf{U} by an (n=6,k=2)(n=6,k=2) linear block ECC with a minimum distance of 44 and with the following parity-check matrix:

𝐇=[101000110100110010010001].\mathbf{H}=\left[\begin{array}[]{c c c c c c c}1&0&1&0&0&0\\ 1&1&0&1&0&0\\ 1&1&0&0&1&0\\ 0&1&0&0&0&1\\ \end{array}\right]. (7)

We then get

𝐕=[𝐔𝐏]=[001101010011011001100101],\mathbf{V}=\left[\begin{array}[]{c}\mathbf{U}\\ \hline\cr\mathbf{P}\\ \end{array}\right]=\left[\begin{array}[]{c c c c}0&0&1&1\\ 0&1&0&1\\ \hline\cr 0&0&1&1\\ 0&1&1&0\\ 0&1&1&0\\ 0&1&0&1\\ \end{array}\right], (8)

where 𝐏\mathbf{P} denotes the parity-check part. For each i[n]i\in[n], adding address ii (of a=3a=3 bits) into the ii-th row of 𝐕\mathbf{V} leads to

𝐗=[𝐕|𝐀]=[001100101010100011011011010001101010101110],\mathbf{X}=[\mathbf{V|\mathbf{A}}]=\left[\begin{array}[]{c c c c | c c c}0&0&1&1&0&0&1\\ 0&1&0&1&0&1&0\\ \hline\cr 0&0&1&1&0&1&1\\ 0&1&1&0&1&0&0\\ 0&1&1&0&1&0&1\\ 0&1&0&1&1&1&0\\ \end{array}\right], (9)

where 𝐀\mathbf{A} denotes the address part.

III Proof of Theorem 1

The code rate of the system in Fig. 2 is

Rkwnl.R\triangleq\frac{kw}{nl}.

Recall that β=limnl/log2n\beta=\lim_{n\to\infty}l/\log_{2}n. According to [7], the outer channel has capacity C=0C=0 for β1\beta\leq 1. Therefore, to prove Theorem 1, we only need to further show the following two lemmas.

Lemma 1 (achivability).

For β>1\beta>1 and arbitrarily small fixed ϵ>0\epsilon>0, the following code rate is achievable:

R=(pc2ϵ)(11/β).R=(p_{c}-2\epsilon)(1-1/\beta). (10)
Lemma 2 (converse).

For β>1\beta>1 and arbitrarily small fixed δ>0\delta>0, as nn\to\infty, any achievable code rate RR satisfies

R(pc+δ)(11/β).R\leq(p_{c}+\delta)(1-1/\beta). (11)

III-A Proof of Lemma 1

To prove Lemma 1, we only need to show that for β>1\beta>1 and arbitrarily small fixed ϵ>0\epsilon>0, there is a code with rate R=(pc2ϵ)(11/β)R=(p_{c}-2\epsilon)(1-1/\beta) such that the decoding error probability (𝐔^𝐔)0\mathbb{P}(\widehat{\mathbf{U}}\neq\mathbf{U})\to 0 as nn\to\infty. WLOG, assume n(p2ϵ)n(p-2\epsilon), n(pϵ)n(p-\epsilon), and log2n\log_{2}n are integers. Let k=n(p2ϵ)k=n(p-2\epsilon) and a=log2na=\log_{2}n such that the code rate is R=kw/(nl)=k(la)/(nl)=(pc2ϵ)(11/β)R=kw/(nl)=k(l-a)/(nl)=(p_{c}-2\epsilon)(1-1/\beta). Define N2kwN\triangleq 2^{kw} for convenience.

Encoding scheme: We choose NN matrices 𝐕1,𝐕2,,𝐕N\mathbf{V}_{1},\mathbf{V}_{2},\ldots,\mathbf{V}_{N} from 𝔽2n×w\mathbb{F}_{2}^{n\times w} uniformly at random to form the codebook of ECC, and adopt the encoding scheme in Fig. 3. More specifically, for any i[N]i\in[N], we first encode the ii-th data matrix 𝐔i𝔽2k×w\mathbf{U}_{i}\in\mathbb{F}_{2}^{k\times w} to 𝐕i𝔽2n×w\mathbf{V}_{i}\in\mathbb{F}_{2}^{n\times w}, and then add address jj to the jj-th row of 𝐕i\mathbf{V}_{i} for all j[n]j\in[n] to form the encoded matrix 𝐗i𝔽2k×l\mathbf{X}_{i}\in\mathbb{F}_{2}^{k\times l}.

Decoding scheme: After receiving 𝐙\mathbf{Z}, if there exists a unique i[N]i\in[N] such that |𝐗i𝐙|n(pcϵ)|\mathbf{X}_{i}\cap\mathbf{Z}|\geq n(p_{c}-\epsilon), where 𝐗i𝐙\mathbf{X}_{i}\cap\mathbf{Z} is the set intersection of 𝐗i\mathbf{X}_{i}’s rows and 𝐙\mathbf{Z}’s rows, then return 𝐔^=𝐔i\widehat{\mathbf{U}}=\mathbf{U}_{i} as the decoding result; otherwise, return 𝐔^=?\widehat{\mathbf{U}}=? to indicate a decoding failure.

Decoding error probability: For any i[N]i\in[N], define EiE_{i} as the event of |𝐗i𝐙|n(pcϵ)|\mathbf{X}_{i}\cap\mathbf{Z}|\geq n(p_{c}-\epsilon) and E¯i\bar{E}_{i} as the event of |𝐗i𝐙|<n(pcϵ)|\mathbf{X}_{i}\cap\mathbf{Z}|<n(p_{c}-\epsilon). WLOG, assume the source data matrix 𝐔=𝐔1\mathbf{U}=\mathbf{U}_{1} and the transmitted encoded matrix 𝐗=𝐗1\mathbf{X}=\mathbf{X}_{1}. Then, the decoding error probability is given by

(𝐔^𝐔1)\displaystyle\mathbb{P}(\widehat{\mathbf{U}}\neq\mathbf{U}_{1}) =(E¯1E2E3EN)\displaystyle=\mathbb{P}(\bar{E}_{1}\vee E_{2}\vee E_{3}\vee\cdots\vee E_{N})
(E¯1)+i=2N(Ei)\displaystyle\leq\mathbb{P}(\bar{E}_{1})+\sum_{i=2}^{N}\mathbb{P}(E_{i}) (12)

We first bound (E¯1)\mathbb{P}(\bar{E}_{1}). Let ncn_{c} denote the number of correctly transmitted rows of 𝐗1\mathbf{X}_{1}. We have |𝐗1𝐙|nc|\mathbf{X}_{1}\cap\mathbf{Z}|\geq n_{c}. Then,

(E¯1)\displaystyle\mathbb{P}(\bar{E}_{1}) =(|𝐗1𝐙|<n(pcϵ))\displaystyle=\mathbb{P}(|\mathbf{X}_{1}\cap\mathbf{Z}|<n(p_{c}-\epsilon))
(ncn(pcϵ))\displaystyle\leq\mathbb{P}(n_{c}\leq n(p_{c}-\epsilon))
e2nϵ2,\displaystyle\leq e^{-2n\epsilon^{2}}, (13)

where the last inequality is based on Hoeffding’s inequality [13].

We now bound (Ei)\mathbb{P}(E_{i}) for any 2iN2\leq i\leq N. Recall that any erased one of nn rows in 𝐙\mathbf{Z} is represented by ‘?’. Thus, there are S(nn(pcϵ))S\triangleq\binom{n}{n(p_{c}-\epsilon)} many ways to select n(pcϵ)n(p_{c}-\epsilon) rows from 𝐙\mathbf{Z} to form submatrices which are denoted by 𝐒j,j[S]\mathbf{S}_{j},j\in[S]. Define Ei,jE_{i,j} as the event of |𝐗i𝐒j|=n(pcϵ)|\mathbf{X}_{i}\cap\mathbf{S}_{j}|=n(p_{c}-\epsilon). Ei,jE_{i,j} happens if and only if (iff) for all h[n(pcϵ)]h\in[n(p_{c}-\epsilon)], 𝐒j\mathbf{S}_{j}’s hh-th row 𝐬h\mathbf{s}_{h} has a unique address ah[n]a_{h}\in[n] and 𝐬h\mathbf{s}_{h} equals 𝐗i\mathbf{X}_{i}’s aha_{h}-th row. Given that 𝐬h\mathbf{s}_{h} has a unique address ah[n]a_{h}\in[n], 𝐬h\mathbf{s}_{h} equals 𝐗i\mathbf{X}_{i}’s aha_{h}-th row with probability 2w2^{-w}. Thus, (Ei,j)2wn(pcϵ)\mathbb{P}(E_{i,j})\leq 2^{-wn(p_{c}-\epsilon)}, leading to

(Ei)\displaystyle\mathbb{P}(E_{i}) =(j=1SEi,j)\displaystyle=\mathbb{P}(\vee_{j=1}^{S}E_{i,j})
j=1S(Ei,j)\displaystyle\leq\sum_{j=1}^{S}\mathbb{P}(E_{i,j})
S2wn(pcϵ)\displaystyle\leq S\cdot 2^{-wn(p_{c}-\epsilon)}
2nwn(pcϵ).\displaystyle\leq 2^{n-wn(p_{c}-\epsilon)}. (14)

At this point, substituting (III-A) and (III-A) into (III-A) results in

(𝐔^𝐔1)\displaystyle\mathbb{P}(\widehat{\mathbf{U}}\neq\mathbf{U}_{1}) (E¯1)+i=2N(Ei)\displaystyle\leq\mathbb{P}(\bar{E}_{1})+\sum_{i=2}^{N}\mathbb{P}(E_{i})
e2nϵ2+(N1)2nwn(pcϵ)\displaystyle\leq e^{-2n\epsilon^{2}}+(N-1)2^{n-wn(p_{c}-\epsilon)}
e2nϵ2+2kw+nwn(pcϵ)\displaystyle\leq e^{-2n\epsilon^{2}}+2^{kw+n-wn(p_{c}-\epsilon)}
=e2nϵ2+2n(pc2ϵ)w+nwn(pcϵ)\displaystyle=e^{-2n\epsilon^{2}}+2^{n(p_{c}-2\epsilon)w+n-wn(p_{c}-\epsilon)}
=e2nϵ2+2nnϵw\displaystyle=e^{-2n\epsilon^{2}}+2^{n-n\epsilon w}
=e2nϵ2+2nnϵ(β1)logn\displaystyle=e^{-2n\epsilon^{2}}+2^{n-n\epsilon(\beta-1)\log n}
=0,\displaystyle=0, (15)

where the last equality holds because ϵ\epsilon is fixed, β>1\beta>1, and nn\to\infty. This completes the proof.

III-B Proof of Lemma 2

Note that

I(𝐔;𝐔^)+H(𝐔|𝐔^)=H(𝐔)=kw=nlR,I(\mathbf{U};\widehat{\mathbf{U}})+H(\mathbf{U}|\widehat{\mathbf{U}})=H(\mathbf{U})=kw=nlR, (16)

where II is the mutual information function and HH is the entropy function. As 𝐔𝐗𝐙𝐔^\mathbf{U}\rightarrow\mathbf{X}\rightarrow\mathbf{Z}\rightarrow\widehat{\mathbf{U}} forms a Markov chain, I(𝐔;𝐔^)I(𝐗;𝐙)I(\mathbf{U};\widehat{\mathbf{U}})\leq I(\mathbf{X};\mathbf{Z}) by the data processing inequality [14]. Meanwhile, according to Fano’s inequality [14], we have H(𝐔|𝐔^)1+(𝐔𝐔^)log2(|𝒰|)H(\mathbf{U}|\widehat{\mathbf{U}})\leq 1+\mathbb{P}(\mathbf{U}\neq\widehat{\mathbf{U}})\log_{2}(|\mathcal{U}|), where 𝒰\mathcal{U} is the set that 𝐔\mathbf{U} takes values from and |𝒰|=2nlR|\mathcal{U}|=2^{nlR} in this paper. Therefore, (16) becomes

nlR\displaystyle nlR =I(𝐔;𝐔^)+H(𝐔|𝐔^)\displaystyle=I(\mathbf{U};\widehat{\mathbf{U}})+H(\mathbf{U}|\widehat{\mathbf{U}})
I(𝐗;𝐙)+1+(𝐔𝐔^)nlR,\displaystyle\leq I(\mathbf{X};\mathbf{Z})+1+\mathbb{P}(\mathbf{U}\neq\widehat{\mathbf{U}})nlR, (17)

Since we consider (𝐔𝐔^)0\mathbb{P}(\mathbf{U}\neq\widehat{\mathbf{U}})\to 0 as nn\to\infty in (III-B), to prove Lemma 2, it suffices to show

I(𝐗;𝐙)(pc+δ)(11/β)nl+o(nl).I(\mathbf{X};\mathbf{Z})\leq(p_{c}+\delta)(1-1/\beta)nl+o(nl). (18)

To this end, we partition 𝐙\mathbf{Z} into two submatrices 𝐒\mathbf{S} and 𝐒¯\bar{\mathbf{S}} which consist of the rows in 𝐙\mathbf{Z} corrupted by uniformly distributed random substitution errors and the remaining rows, respectively. Note that the order of the rows in 𝐒¯\bar{\mathbf{S}} and 𝐒\mathbf{S} does not matter. We have

I(𝐗;𝐙)=I(𝐗;𝐒¯)+I(𝐗;𝐒|𝐒¯).I(\mathbf{X};\mathbf{Z})=I(\mathbf{X};\bar{\mathbf{S}})+I(\mathbf{X};\mathbf{S}|\bar{\mathbf{S}}). (19)

We first bound I(𝐗;𝐒¯)I(\mathbf{X};\bar{\mathbf{S}}) in (19). Since 𝐒¯\bar{\mathbf{S}} only contains correctly received rows and erased rows, 𝐒¯\bar{\mathbf{S}} can be regarded as the output of the noise-free shuffling-sampling channel [7], where each row of 𝐗\mathbf{X} is either sampled once with probability pcp_{c} or never sampled with probability 1pc1-p_{c}. Therefore, using a similar proof as [7, Section III-B] yields

I(𝐗;𝐒¯)H(𝐒¯)(pc+δ)(11/β)nl+o(nl).I(\mathbf{X};\bar{\mathbf{S}})\leq H(\bar{\mathbf{S}})\leq(p_{c}+\delta)(1-1/\beta)nl+o(nl). (20)

We now bound I(𝐗;𝐒|𝐒¯)I(\mathbf{X};\mathbf{S}|\bar{\mathbf{S}}) in (19) based on

I(𝐗;𝐒|𝐒¯)=H(𝐒|𝐒¯)H(𝐒|𝐗,𝐒¯).I(\mathbf{X};\mathbf{S}|\bar{\mathbf{S}})=H(\mathbf{S}|\bar{\mathbf{S}})-H(\mathbf{S}|\mathbf{X},\bar{\mathbf{S}}). (21)

Denote JJ as the number of rows in 𝐒\mathbf{S}. We have

H(𝐒|𝐒¯)\displaystyle H(\mathbf{S}|\bar{\mathbf{S}}) =(i)H(𝐒|𝐒¯,J)\displaystyle\overset{(i)}{=}H(\mathbf{S}|\bar{\mathbf{S}},J)
H(𝐒|J)\displaystyle\leq H(\mathbf{S}|J)
(ii)j=1n(J=j)jl\displaystyle\overset{(ii)}{\leq}\sum_{j=1}^{n}\mathbb{P}(J=j)jl
=psnl,\displaystyle=p_{s}nl, (22)

where (i)(i) follows the fact that JJ is specified by 𝐒¯\bar{\mathbf{S}}, and (ii)(ii) holds since given J=jJ=j, 𝐒\mathbf{S} consists of jl{jl} bits. Moreover, for any i[J]i\in[J], suppose the ii-th row 𝐬i\mathbf{s}_{i} of 𝐒\mathbf{S} came from 𝐱fi\mathbf{x}_{f_{i}}. Let 𝐟(f1,f2,,fJ)\mathbf{f}\triangleq(f_{1},f_{2},\ldots,f_{J}). We have

H(𝐒|𝐗,𝐒¯)\displaystyle H(\mathbf{S}|\mathbf{X},\bar{\mathbf{S}}) =H(𝐒|𝐗,𝐒¯,J)\displaystyle=H(\mathbf{S}|\mathbf{X},\bar{\mathbf{S}},J)
H(𝐒|𝐗,𝐒¯,J,𝐟)\displaystyle\geq H(\mathbf{S}|\mathbf{X},\bar{\mathbf{S}},J,\mathbf{f})
=(iii)j=1n(J=j)i=1jH(𝐬i|𝐱fi)\displaystyle\overset{(iii)}{=}\sum_{j=1}^{n}\mathbb{P}(J=j)\sum_{i=1}^{j}H(\mathbf{s}_{i}|\mathbf{x}_{f_{i}})
=psnlog2(2l1),\displaystyle=p_{s}n\log_{2}(2^{l}-1), (23)

where (iii)(iii) holds because given (𝐗,J,𝐟)(\mathbf{X},J,\mathbf{f}), for any i[J]i\in[J], the ii-th row 𝐬i\mathbf{s}_{i} of 𝐒\mathbf{S} only relates to 𝐱fi\mathbf{x}_{f_{i}}, and 𝐬i\mathbf{s}_{i} has 2l12^{l}-1 equiprobable choices according to (4). By applying (III-B) and (III-B) to (21), we have

I(𝐗;𝐒|𝐒¯)log2(12l)=o(1).I(\mathbf{X};\mathbf{S}|\bar{\mathbf{S}})\leq-\log_{2}(1-2^{-l})=o(1). (24)

Finally, by substituting (20) and (24) into (19) yielding (18), the proof is completed.

IV Decoding Scheme

In this section, we first derive the soft information 𝐌=(mi,j)1in,1jw\mathbf{M}=(m_{i,j})_{1\leq i\leq n,1\leq j\leq w} and hard information 𝐌^=(m^i,j)1in,1jw\widehat{\mathbf{M}}=(\widehat{m}_{i,j})_{1\leq i\leq n,1\leq j\leq w} of each bit in 𝐕\mathbf{V}. This allows us to decode each column of 𝐕\mathbf{V} independently, leading to the independent decoding scheme. Next, in view that it requires the successful decoding of all columns to fully recover 𝐕\mathbf{V} (as well as 𝐔\mathbf{U} and 𝐗\mathbf{X}), we propose an enhanced joint decoding scheme, which measures the reliability of rows of 𝐙\mathbf{Z} based on the independent decoding result and takes the most reliable rows for a further step of decoding.

Given any i[n]i\in[n] and j[w]j\in[w], we begin with the computation of the soft information mi,jm_{i,j} of vi,j𝐕v_{i,j}\in\mathbf{V}. Conventionally, we should define mi,j(vi,j=0𝐙)/(vi,j=1𝐙)m_{i,j}\triangleq\mathbb{P}(v_{i,j}=0\mid\mathbf{Z})/\mathbb{P}(v_{i,j}=1\mid\mathbf{Z}). In fact, mi,jm_{i,j} is only related to 𝐲i\mathbf{y}_{i}. But the problem is that we do not know 𝐲i\mathbf{y}_{i} corresponds to which row in 𝐙\mathbf{Z} due to the random permutation of channel-2, making it hard to compute mi,jm_{i,j} exactly. Note from (4) that, if 𝐲i\mathbf{y}_{i} is erased or corrupted by random substitution errors such that its address is not ii any more, no (or at most negligible) information about vi,jv_{i,j} can be inferred from 𝐲i\mathbf{y}_{i} even if we can figure out which row in 𝐙\mathbf{Z} corresponds to 𝐲i\mathbf{y}_{i}. Therefore, it is reasonable to reduce the computation of mi,jm_{i,j} from 𝐙\mathbf{Z} to the rows with address ii. Accordingly, we define

mi,j(vi,j=0t,t0)(vi,j=1t,t0),m_{i,j}\triangleq\frac{\mathbb{P}(v_{i,j}=0\mid t,t_{0})}{\mathbb{P}(v_{i,j}=1\mid t,t_{0})}, (25)

where tt denotes the number of rows in 𝐙\mathbf{Z} with address ii, among which there are t0t_{0} rows with the jj-th bit being 0. Based on (25), mi,jm_{i,j} can be computed by the following proposition.

Proposition 1.
mi,j=\displaystyle m_{i,j}= (2t0(1q)(p1+p4)+(nt)q(p2+p3)\displaystyle\big{(}2t_{0}(1-q)(p_{1}+p_{4})+(n-t)q(p_{2}+p_{3})
+2(tt0)(1q)p5)\displaystyle\quad+2(t-t_{0})(1-q)p_{5}\big{)}
/(2(tt0)(1q)(p1+p4)\displaystyle\big{/}\big{(}2(t-t_{0})(1-q)(p_{1}+p_{4})
+(nt)q(p2+p3)+2t0(1q)p5),\displaystyle\quad+(n-t)q(p_{2}+p_{3})+2t_{0}(1-q)p_{5}\big{)}, (26)

where

qps2la/(2l1)q\triangleq p_{s}2^{l-a}/(2^{l}-1) (27)

and

pb{pc,b=1,pe,b=2,ps(2l2la)/(2l1),b=3,ps(2la11)/(2l1),b=4,ps2la1/(2l1),b=5.p_{b}\triangleq\begin{cases}p_{c},&b=1,\\ p_{e},&b=2,\\ p_{s}(2^{l}-2^{l-a})/(2^{l}-1),&b=3,\\ p_{s}(2^{l-a-1}-1)/(2^{l}-1),&b=4,\\ p_{s}2^{l-a-1}/(2^{l}-1),&b=5.\end{cases} (28)
Proof:

See Appendix A. ∎

Based on Proposition 1, it is natural to define the hard information of vi,jv_{i,j} by:

m^i,j{?,mi,j=1,0,mi,j>1,1,mi,j<1.\widehat{m}_{i,j}\triangleq\begin{cases}?,&m_{i,j}=1,\\ 0,&m_{i,j}>1,\\ 1,&m_{i,j}<1.\end{cases} (29)

The following corollary simplifies (29).

Corollary 1.
m^i,j={?,t0=t/2,0,t0>t/2,1,t0<t/2.\widehat{m}_{i,j}=\begin{cases}?,&t_{0}=t/2,\\ 0,&t_{0}>t/2,\\ 1,&t_{0}<t/2.\end{cases} (30)
Proof.

By Proposition 1, we have

mi,j1\displaystyle m_{i,j}\geq 1 (2t0t)(p1+p4p5)0\displaystyle\iff(2t_{0}-t)(p_{1}+p_{4}-p_{5})\geq 0
(2t0t)(pcps/(2l1))0\displaystyle\iff(2t_{0}-t)(p_{c}-p_{s}/(2^{l}-1))\geq 0
2t0t0,\displaystyle\iff 2t_{0}-t\geq 0, (31)

where the last step is due to (5) and the equality holds iff t0=t/2t_{0}=t/2. ∎

Eqn. (30) is quite intuitive since it coincides with the majority decoding result. Hence, it somehow verifies the correctness of (1). Given the soft information in (1) or hard information in (30), it is able to perform decoding independently for each column of 𝐕\mathbf{V}. However, this decoding scheme can fully recover 𝐕\mathbf{V} only if the decoding for each column succeeds. This condition is generally too strong to achieve a desired decoding performance, as illustrated by the following example.

Example 2.

Continued with Example 1. Suppose the 𝐗\mathbf{X} in (9) is transmitted over channel-1 and the output is

𝐘=[000¯0¯01¯0¯01010101¯1¯11011011010001101010101110],\mathbf{Y}=\left[\begin{array}[]{c c c c | c c c}0&0&\underline{0}&\underline{0}&0&\underline{1}&\underline{0}\\ 0&1&0&1&0&1&0\\ \hline\cr\underline{1}&\underline{1}&1&1&0&1&1\\ 0&1&1&0&1&0&0\\ 0&1&1&0&1&0&1\\ 0&1&0&1&1&1&0\\ \end{array}\right], (32)

where the underlined bits are flipped by channel-1. That is, 𝐲1\mathbf{y}_{1} is corrupted by substitution errors and its address changes to 𝐲2\mathbf{y}_{2}’s address; 𝐲3\mathbf{y}_{3} is also corrupted by substitution errors but its address does not change. Assume 𝐙=𝐘\mathbf{Z}=\mathbf{Y} for convenience (but the decoder does not know the correspondence between the rows of 𝐙\mathbf{Z} and 𝐘\mathbf{Y}).

We compute the hard information of 𝐕\mathbf{V} by (30), leading to

𝐌^=[????0?0?𝟏𝟏11011001100101],\widehat{\mathbf{M}}=\left[\begin{array}[]{c c c c}?&?&?&?\\ 0&?&0&?\\ \hline\cr{\color[rgb]{1,0,0}\mathbf{1}}&{\color[rgb]{1,0,0}\mathbf{1}}&1&1\\ 0&1&1&0\\ 0&1&1&0\\ 0&1&0&1\\ \end{array}\right], (33)

where the bold red bits are different from the corresponding bits of 𝐕\mathbf{V} in (8). For examples, m^1,1=?\widehat{m}_{1,1}=? since 𝐙\mathbf{Z} does not have a row with address 1; m^2,2=?\widehat{m}_{2,2}=? since 𝐙\mathbf{Z} has t=2t=2 rows with address 2 and their second bits differ from each other, i.e., t0=1t_{0}=1. It is natural to decode each column of 𝐌^\widehat{\mathbf{M}} as the nearest codeword (in terms of Hamming distance), leading to

𝐕~=[0?110?010?110?100?100?01],\tilde{\mathbf{V}}=\left[\begin{array}[]{c c c c}0&?&1&1\\ 0&?&0&1\\ \hline\cr 0&?&1&1\\ 0&?&1&0\\ 0&?&1&0\\ 0&?&0&1\\ \end{array}\right], (34)

where the second column corresponds to a decoding failure since both (0,1,0,1,1,1)T(0,1,0,1,1,1)^{\mathrm{T}} and (1,0,1,1,1,0)T(1,0,1,1,1,0)^{\mathrm{T}} are the nearest codewords of the second column of 𝐌^\widehat{\mathbf{M}}. Thus, the independent decoding scheme fails to fully recover 𝐕\mathbf{V}.

We find that in Example 2, all the known bits in 𝐕~\tilde{\mathbf{V}} are correct. In a general situation, the known bits in 𝐕~\tilde{\mathbf{V}} should also be correct with a high probability. We thus assume

(v~i,j=vi,j)>1/2,v~i,j𝐕~ and v~i,j𝔽2.\mathbb{P}(\tilde{v}_{i,j}=v_{i,j})>1/2,\quad\forall\tilde{v}_{i,j}\in\tilde{\mathbf{V}}\text{~{}and~{}}\tilde{v}_{i,j}\in\mathbb{F}_{2}. (35)

Consequently, for a non-erased correct (resp. incorrect) row in 𝐙\mathbf{Z} with address i[n]i\in[n], it generally has a relatively small (resp. large) distance from 𝐯~i\tilde{\mathbf{v}}_{i}. This provides a way to measure the reliability of rows of 𝐙\mathbf{Z}. We can then perform a further step of decoding over the most reliable rows of 𝐙\mathbf{Z} like under the erasure channel, as shown by Algorithm 1. In the following, we give more explanations (including Example 3) for Algorithm 1.

Algorithm 1 Joint decoding scheme
0:  𝐙=[(𝐳iT)1in]T=(zi,j)1in,1jl\mathbf{Z}=[(\mathbf{z}_{i}^{\mathrm{T}})_{1\leq i\leq n}]^{\mathrm{T}}=({z}_{i,j})_{1\leq i\leq n,1\leq j\leq l}.
0:  𝐔^\widehat{\mathbf{U}}.
1:  Calculate the soft/hard information of vi,j,i[n],j[w]v_{i,j},i\in[n],j\in[w] based on (1)/(30).
2:  Decode each column of 𝐕\mathbf{V} independently and denote the result by 𝐕~=(v~i,j)1in,1jw\tilde{\mathbf{V}}=(\tilde{v}_{i,j})_{1\leq i\leq n,1\leq j\leq w}, where v~i,j𝔽2\tilde{v}_{i,j}\in\mathbb{F}_{2} if decoding the jj-th column of 𝐕\mathbf{V} gives a valid codeword and v~i,j=?\tilde{v}_{i,j}=? otherwise.
3:  For each i[n]i\in[n], if 𝐳i=?\mathbf{z}_{i}=?, set di=wd_{i}=w; otherwise, set di=|{j[w]:zi,jv~i,j}|d_{i}=|\{j\in[w]:z_{i,j}\neq\tilde{v}_{i^{\prime},j}\}|, where ii^{\prime} is the address of 𝐳i\mathbf{z}_{i}.
4:  Rearrange 𝐳i\mathbf{z}_{i} in ascending order with respect to di,i[n]d_{i},\forall i\in[n]. %\%As a result, didi,1i<ind_{i}\leq d_{i^{\prime}},\forall 1\leq i<i^{\prime}\leq n, indicating that 𝐳i\mathbf{z}_{i} has higher reliability than 𝐳i\mathbf{z}_{i^{\prime}}.
5:  Find the smallest n[n]n^{\prime}\in[n] such that by viewing 𝒵n{𝐳i:i[n]}\mathcal{Z}_{n^{\prime}}\triangleq\{\mathbf{z}_{i}:i\in[n^{\prime}]\} as correct and 𝐙𝒵n={𝐳i:i[n][n]}\mathbf{Z}\setminus\mathcal{Z}_{n^{\prime}}=\{\mathbf{z}_{i}:i\in[n]\setminus[n^{\prime}]\} as erased, the decoding over 𝒵n\mathcal{Z}_{n^{\prime}} gives a unique estimation 𝐔^\widehat{\mathbf{U}} of 𝐔\mathbf{U}. If no such an nn^{\prime} exists, set 𝐔^=?\widehat{\mathbf{U}}=?.
6:  return  𝐔^\widehat{\mathbf{U}}.
  • Lines 1 and 2 are to decode 𝐕\mathbf{V} as 𝐕~\tilde{\mathbf{V}} based on the independent decoding scheme.

  • Line 3 is to count the number did_{i} of different positions (Hamming distance) between 𝐳i\mathbf{z}_{i} and 𝐯~i\tilde{\mathbf{v}}_{i^{\prime}}, where ii^{\prime} is the address of 𝐳i\mathbf{z}_{i}. According to (35), larger did_{i} implies a higher reliability of 𝐳i\mathbf{z}_{i}.

  • Lines 4 and 5 are to take the most reliable rows 𝒵n\mathcal{Z}_{n^{\prime}} for a further step of decoding, where these rows are viewed as correct and the other rows of 𝐙\mathbf{Z} are viewed as erasure errors. Thus, the decoding actually works like under the erasure channel, which essentially is to solve linear systems when decoding linear ECCs. As our simulations are based on LDPC codes, the structured gaussian elimination (SGE) [15, 16, 17], also called inactivation decoding, is recommended since it works quite efficiently for solving large sparse linear systems. The SGE leads to 𝐔^=𝐔\widehat{\mathbf{U}}=\mathbf{U} if each row in 𝒵n\mathcal{Z}_{n^{\prime}} is correct and nn^{\prime} is sufficiently large to uniquely determine 𝐔^\widehat{\mathbf{U}} (see Example 3).

  • Algorithm 1 definitely has a better chance to successfully recover 𝐔\mathbf{U} than the independent decoding scheme, since it succeeds if the independent decoding scheme succeeds and it may still succeed otherwise.

Example 3.

Continued with Example 2. Recall that 𝐙=𝐘\mathbf{Z}=\mathbf{Y} given by (32) before executing Line 4 of Algorithm 1. As a result, Line 2 of Algorithm 1 obtains 𝐕~\tilde{\mathbf{V}} in (34). Then, Line 3 gives (di)1in=(2,1,2,1,1,1)(d_{i})_{1\leq i\leq n}=(2,1,2,1,1,1). Next, Line 4 rearranges the rows of 𝐙\mathbf{Z}, say 𝐙=[𝐳1T,𝐳2T,𝐳3T,𝐳4T,𝐳5T,𝐳6T]T=[𝐲2T,𝐲4T,𝐲5T,𝐲6T,𝐲1T,𝐲3T]T\mathbf{Z}=[\mathbf{z}_{1}^{\mathrm{T}},\mathbf{z}_{2}^{\mathrm{T}},\mathbf{z}_{3}^{\mathrm{T}},\mathbf{z}_{4}^{\mathrm{T}},\mathbf{z}_{5}^{\mathrm{T}},\mathbf{z}_{6}^{\mathrm{T}}]^{\mathrm{T}}=[\mathbf{y}_{2}^{\mathrm{T}},\mathbf{y}_{4}^{\mathrm{T}},\mathbf{y}_{5}^{\mathrm{T}},\mathbf{y}_{6}^{\mathrm{T}},\mathbf{y}_{1}^{\mathrm{T}},\mathbf{y}_{3}^{\mathrm{T}}]^{\mathrm{T}}, where 𝐲i,i[6]\mathbf{y}_{i},i\in[6] is the ii-th row of the 𝐘\mathbf{Y} in (32).

In Line 5, for a given n[n]n^{\prime}\in[n], 𝒵n\mathcal{Z}_{n^{\prime}} consists of the first nn^{\prime} rows in 𝐙\mathbf{Z}. Recall that 𝐇\mathbf{H} given by (7) is the parity-check matrix. Our task is to find the smallest nn^{\prime} such that there exists a unique 𝐕^=[(𝐯^iT)1in]T\widehat{\mathbf{V}}=[(\widehat{\mathbf{v}}_{i}^{\mathrm{T}})_{1\leq i\leq n}]^{\mathrm{T}} (then 𝐔^\widehat{\mathbf{U}} is uniquely determined) satisfying 𝐇𝐕^=𝟎\mathbf{H}\widehat{\mathbf{V}}=\mathbf{0} and 𝒵n\mathcal{Z}_{n^{\prime}} is a part of 𝐕^\widehat{\mathbf{V}}. Here we say 𝒵n\mathcal{Z}_{n^{\prime}} is a part of 𝐕^\widehat{\mathbf{V}} if for any i[n]i\in[n^{\prime}] such that 𝐳i\mathbf{z}_{i} has a valid address ai[n]a_{i}\in[n], 𝐯^ai\widehat{\mathbf{v}}_{a_{i}} equals the data of 𝐳i\mathbf{z}_{i}.

More specifically, we first try n=1n^{\prime}=1, yielding 𝒵1={𝐳1}={𝐲2}\mathcal{Z}_{1}=\{\mathbf{z}_{1}\}=\{\mathbf{y}_{2}\}, where 𝐳1\mathbf{z}_{1} has address 2. Thus, we needs to solve 𝐇𝐕^=𝟎\mathbf{H}\widehat{\mathbf{V}}=\mathbf{0} with 𝐯^2\widehat{\mathbf{v}}_{2} being known and 𝐯^i,i{1,3,4,5,6}\widehat{\mathbf{v}}_{i},i\in\{1,3,4,5,6\} being unknowns. Since the 1st, 3rd, 4th, 5th, and 6th columns of 𝐇\mathbf{H} are linearly dependent, these unknowns cannot be uniquely determined. We need to increase nn^{\prime}.

We next try n=2n^{\prime}=2, yielding 𝒵2={𝐳1,𝐳2}={𝐲2,𝐲4}\mathcal{Z}_{2}=\{\mathbf{z}_{1},\mathbf{z}_{2}\}=\{\mathbf{y}_{2},\mathbf{y}_{4}\}, where 𝐳2\mathbf{z}_{2} has address 4. We needs to solve 𝐇𝐕^=𝟎\mathbf{H}\widehat{\mathbf{V}}=\mathbf{0} with {𝐯^2,𝐯^4}\{\widehat{\mathbf{v}}_{2},\widehat{\mathbf{v}}_{4}\} being known and 𝐯^i,i{1,3,5,6}\widehat{\mathbf{v}}_{i},i\in\{1,3,5,6\} being unknowns. Since the 1st, 3rd, 5th, and 6th columns of 𝐇\mathbf{H} are linearly independent, these unknowns can be uniquely determined. Moreover, since 𝐯^2\widehat{\mathbf{v}}_{2} and 𝐯^4\widehat{\mathbf{v}}_{4} are correct, the decoding succeeds, i.e., 𝐕\mathbf{V} as well as 𝐔\mathbf{U} are fully recovered.

To end this section, we discuss the (computational) complexities of both the independent and joint decoding schemes. For the independent decoding scheme, it decodes each column independently. Thus, its complexity is O(wc1)O(wc_{1}), where ww is the number of data columns and c1c_{1} denotes the complexity for decoding one column. The value of c1c_{1} depends on the underlying ECC as well as the decoding algorithm. The joint decoding scheme needs to further perform Lines 3–5 of Algorithm 1. The complexity of Line 3 and 4 is O(wn)O(wn) and O(nlog2n)O(n\log_{2}n), respectively. The complexity of Line 5 also depends on the underlying ECC and decoding algorithm. However, since Line 5 is to correct erasures, its complexity is less than or equal to the complexity O(wc1)O(wc_{1}) of the independent decoding scheme. As a result, the total complexity of the joint decoding scheme is O(wc1+wn+nlog2n)O(wc_{1}+wn+n\log_{2}n), which generally equals O(wc1)O(wc_{1}) since c1nc_{1}\geq n must hold and wlog2nw\geq\log_{2}n is required in practice to have a good code rate. That is, the joint decoding scheme has the same order of complexity as the independent decoding scheme.

For example, suppose the underlying ECC is an LDPC code which has a sparse parity-check matrix of a total number θ\theta of non-zero entries. Then, the independent decoding scheme has complexity O(wc1)=O(wθtmax)O(wc_{1})=O(w\theta t_{max}) under message-passing algorithms with a max number tmaxt_{max} of iterations. Line 5 generally has complexity O(wθ)O(w\theta) [15] such that the complexity of the joint decoding scheme is O(wθtmax+wn+nlog2n)=O(wθtmax)O(w\theta t_{max}+wn+n\log_{2}n)=O(w\theta t_{max}) in practical situations. Our simulations confirm that the joint decoding scheme is only slightly slower than the independent decoding scheme.

V Simulation Results

In this section, we consider using LDPC code as the outer code since it works very well with soft information. We evaluate the FERs of both the independent and joint decoding schemes. A frame error occurs when a test case does not fully recover the data matrix 𝐔\mathbf{U}. We collect at least 100100 frame errors at each simulated point. The independent decoding scheme first computes the soft information by (1), and then adopts the belief propagation (BP) algorithm [18] with a maximum of 100100 iterations to recover each column of 𝐔\mathbf{U}. Given the independent decoding result, the joint decoding scheme further executes Lines 3–5 of Algorithm 1 to recover 𝐔\mathbf{U}. Since LDPC codes are characterized by their sparse parity-check matrices, the SGE[15, 16, 17] is adopted for the decoding in Line 5, and the decoding process is similar to that in Example 3.

Refer to caption
(a) ps{0,0.01,0.05}p_{s}\in\{0,0.01,0.05\}.
Refer to caption
(b) pe{0,0.01,0.05}p_{e}\in\{0,0.01,0.05\}.
Figure 4: For l=100l=100, FER performance of both the independent and joint decoding schemes for decoding the (1296,1080)(1296,1080) LDPC code [19].

We first consider the (n=1296,k=1080)(n=1296,k=1080) LDPC code [19]. For fixed l=100l=100, the simulation results are shown in Fig. 4. We can see that:

  • For the same (l,pc,pe,ps)(l,p_{c},p_{e},p_{s}), the joint decoding scheme always achieves lower FER than the independent decoding scheme. The difference can exceed 33 orders of magnitude.

  • For the same (l,pc)(l,p_{c}), a decoding scheme has decreasing FER as pep_{e} increases (or equivalently as psp_{s} decreases). It implies that erasure errors are less harmful than substitution errors for finite (n,l)(n,l). However, it should not be considered as a counter-example to Theorem 1 which indicates that erasure errors are as harmful as uniformly distributed random substitution errors, since Theorem 1 requires n,ln,l\to\infty. In fact, we later can see from Fig. 5 that, increasing nn and/or ll can reduce the FER of the joint decoding scheme.

Refer to caption
(a) (1296,1080)(1296,1080) LDPC code and LT code.
Refer to caption
(b) (2592,2160)(2592,2160) LDPC code and LT code.
Figure 5: For pe=0p_{e}=0, FER performance of both the independent and joint decoding schemes for decoding LDPC codes, and FER performance of the BFA for decoding LT codes.

Next, we fix pe=0p_{e}=0 and vary (n,l)(n,l). In Fig. 5(a), the independent and joint decoding schemes are used for decoding the (1296,1080)(1296,1080) LDPC code [19]. Meanwhile, in Fig. 5(b), they are used for decoding the (2592,2160)(2592,2160) LDPC code, which is constructed by enlarging the lifting size of the (1296,1080)(1296,1080) LDPC code from 5454 to 108108. The FER of the BFA [5] for decoding the Luby Transform (LT) codes [11] is presented as a baseline, where the BFA takes the sorted-weight implementation. For a fair comparison, the LT codes have code length n=1296n=1296 and information length k=1080k=1080 in Fig. 5(a) and have (n,k)=(2592,2160)(n,k)=(2592,2160) in Fig. 5(b), and each LT symbol consists of a=log2na=\lceil\log_{2}n\rceil address (seed) bits and w=law=l-a data bits. The robust soliton distribution (RSD) with (δ,c)=(0.01,0.02)(\delta,c)=(0.01,0.02) [5] is chosen to generate LT symbols. From Fig. 5, we can see that:

  • For the same (n,pc,pe,ps)(n,p_{c},p_{e},p_{s}), as ll changes from 5050 to 100100, FER of the independent decoding scheme slightly increases since it needs to correctly recover more columns to fully recover 𝐔\mathbf{U}; FER of the joint decoding scheme obviously decreases since the independent decoding result can provide more information to better measure the reliability of rows of 𝐙\mathbf{Z}; FER of the BFA significantly decreases except for the error floor region.

  • For the same (l,pc,pe,ps)(l,p_{c},p_{e},p_{s}), as nn changes from 12961296 to 25922592, FERs of both the independent and joint decoding schemes obviously decrease, since longer LDPC codes lead to stronger error-correction capability; FER of the BFA significantly increases except for the error floor region.

In summary, we should always choose the joint decoding scheme compared to the independent decoding scheme. In addition, the joint decoding scheme and the BFA can outperform each other in different parameter regions. Specifically, increasing nn and/or ll can obviously reduce the FER of the joint decoding scheme, since larger nn leads to stronger error-correction capability and larger ll can get more information from the independent decoding result. However, the BFA is very sensitive to l/nl/n. According to [5] as well as Fig. 5, the BFA requires l/n>psl/n>p_{s} to have low FER. Therefore, the joint decoding scheme can generally outperform the BFA for relatively large nn and small ll, e.g., see Fig. 5.

VI Conclusions

In this paper, we considered the outer channel in Fig. 2 for DNA-based data storage. We first derived the capacity of the outer channel, as stated by Theorem 1. It implies that simple index-based coding scheme is optimal and uniformly distributed random substitution errors are only as harmful as erasure errors (for n,ln,l\to\infty). Next, we derived the soft and hard information of data bits given by (1) and (30), respectively. These information was used to decode each column of 𝐔\mathbf{U} independently, leading to the independent decoding scheme. Based on the independent decoding result, the reliability of each row of 𝐙\mathbf{Z} can be measured. Selecting the most reliable rows to recover 𝐔\mathbf{U}, similar to the case under the erasure channel, leads to the joint decoding scheme. Simulations showed that the joint decoding scheme can reduce the frame error rate (FER) by more than 3 orders of magnitude compared to the independent decoding scheme, and the joint decoding scheme and basis-finding algorithm (BFA) [5] can outperform each other in different parameter regions.

Appendix A Proof of Proposition 1

Consider the transmission of 𝐱i\mathbf{x}_{i} over channel-1. 𝐲i\mathbf{y}_{i} is the channel output. We define the following five events:

  • E1E_{1}: 𝐱i\mathbf{x}_{i} is correctly transmitted, i.e., 𝐲i=𝐱i\mathbf{y}_{i}=\mathbf{x}_{i}.

  • E2E_{2}: 𝐱i\mathbf{x}_{i} is erased, i.e., 𝐲i=?\mathbf{y}_{i}=?.

  • E3E_{3}: 𝐱i\mathbf{x}_{i} changes to 𝐲i𝔽2l{𝐱i}\mathbf{y}_{i}\in\mathbb{F}_{2}^{l}\setminus\{\mathbf{x}_{i}\} with a different address.

  • E4E_{4}: 𝐱i\mathbf{x}_{i} changes to 𝐲i𝔽2l{𝐱i}\mathbf{y}_{i}\in\mathbb{F}_{2}^{l}\setminus\{\mathbf{x}_{i}\} with the same address and the same jj-th bit.

  • E5E_{5}: 𝐱i\mathbf{x}_{i} changes to 𝐲i𝔽2l{𝐱i}\mathbf{y}_{i}\in\mathbb{F}_{2}^{l}\setminus\{\mathbf{x}_{i}\} with the same address and a different jj-th bit.

It is easy to figure out that (Eb)=pb\mathbb{P}(E_{b})=p_{b}, where b[5]b\in[5] and pbp_{b} is given by (28). As a result, we have

mi,j=\displaystyle m_{i,j}= (vi,j=0t,t0)(vi,j=1t,t0)\displaystyle\frac{\mathbb{P}(v_{i,j}=0\mid t,t_{0})}{\mathbb{P}(v_{i,j}=1\mid t,t_{0})}
=\displaystyle= (t,t0vi,j=0)(t,t0vi,j=1)\displaystyle\frac{\mathbb{P}(t,t_{0}\mid v_{i,j}=0)}{\mathbb{P}(t,t_{0}\mid v_{i,j}=1)}
=\displaystyle= b[5](t,t0vi,j=0,Eb)(Eb)b[5](t,t0vi,j=1,Eb)(Eb)\displaystyle\frac{\sum_{b\in[5]}{\mathbb{P}(t,t_{0}\mid v_{i,j}=0,E_{b}})\mathbb{P}(E_{b})}{\sum_{b\in[5]}{\mathbb{P}(t,t_{0}\mid v_{i,j}=1,E_{b}})\mathbb{P}(E_{b})}
=\displaystyle= b[5](t,t0vi,j=0,Eb)pbb[5](t,t0vi,j=1,Eb)pb.\displaystyle\frac{\sum_{b\in[5]}{\mathbb{P}(t,t_{0}\mid v_{i,j}=0,E_{b}})p_{b}}{\sum_{b\in[5]}{\mathbb{P}(t,t_{0}\mid v_{i,j}=1,E_{b}})p_{b}}. (36)

To compute each (t,t0vi,j,Eb)\mathbb{P}(t,t_{0}\mid v_{i,j},E_{b}) in (A), it needs the probability of that the address of 𝐲i\mathbf{y}_{i^{\prime}} is ii for a specific i[n]{i}i^{\prime}\in[n]\setminus\{i\} (i.e., the address of 𝐱i\mathbf{x}_{i^{\prime}} changes into ii after transmission over channel-1). According to (4), this probability is qq given by (27). If we further require the jj-th bit of 𝐲i\mathbf{y}_{i^{\prime}} being 0, the probability reduces to q/2q/2. For any 0t0t<n0\leq t^{\prime}_{0}\leq t^{\prime}<n, we define the following event:

  • Et,t0E_{t^{\prime},t^{\prime}_{0}}: the addresses of exact tt^{\prime} rows in 𝐘{𝐲i}\mathbf{Y}\setminus\{\mathbf{y}_{i}\} are ii, and for exact t0t^{\prime}_{0} out of the tt^{\prime} rows, the jj-th bit equals to 0.

According to (4) and (27), we have

(Et,t0)\displaystyle\mathbb{P}(E_{t^{\prime},t^{\prime}_{0}}) =(n1)!t0!(tt0)!(n1t)!\displaystyle=\frac{(n-1)!}{t^{\prime}_{0}!(t^{\prime}-t^{\prime}_{0})!(n-1-t^{\prime})!}
×(q/2)t0(q/2)tt0(1q)n1t\displaystyle\quad\quad\times\left({q}/{2}\right)^{t^{\prime}_{0}}\left({q}/{2}\right)^{t^{\prime}-t^{\prime}_{0}}(1-q)^{n-1-t^{\prime}}
=(n1)!(q/2)t(1q)n1tt0!(tt0)!(n1t)!.\displaystyle=\frac{(n-1)!\left({q}/{2}\right)^{t^{\prime}}(1-q)^{n-1-t^{\prime}}}{t^{\prime}_{0}!(t^{\prime}-t^{\prime}_{0})!(n-1-t^{\prime})!}. (37)

At this point, we can use (A) to compute each (t,t0vi,j,Eb)\mathbb{P}(t,t_{0}\mid v_{i,j},E_{b}) in (A). Specifically, the following results hold:

(t,t0vi,j=0,E1)=\displaystyle\mathbb{P}(t,t_{0}\mid v_{i,j}=0,E_{1})= (t,t0vi,j=0,E4)\displaystyle\mathbb{P}(t,t_{0}\mid v_{i,j}=0,E_{4})
=\displaystyle= (t,t0vi,j=1,E5)\displaystyle\mathbb{P}(t,t_{0}\mid v_{i,j}=1,E_{5})
=\displaystyle= (Et1,t01),\displaystyle\mathbb{P}(E_{t-1,t_{0}-1}), (38)
(t,t0vi,j=0,E2)=\displaystyle\mathbb{P}(t,t_{0}\mid v_{i,j}=0,E_{2})= (t,t0vi,j=1,E2)\displaystyle\mathbb{P}(t,t_{0}\mid v_{i,j}=1,E_{2})
=\displaystyle= (t,t0vi,j=0,E3)\displaystyle\mathbb{P}(t,t_{0}\mid v_{i,j}=0,E_{3})
=\displaystyle= (t,t0vi,j=1,E3)\displaystyle\mathbb{P}(t,t_{0}\mid v_{i,j}=1,E_{3})
=\displaystyle= (Et,t0),\displaystyle\mathbb{P}(E_{t,t_{0}}), (39)
(t,t0vi,j=0,E5)=\displaystyle\mathbb{P}(t,t_{0}\mid v_{i,j}=0,E_{5})= (t,t0vi,j=1,E1)\displaystyle\mathbb{P}(t,t_{0}\mid v_{i,j}=1,E_{1})
=\displaystyle= (t,t0vi,j=1,E4)\displaystyle\mathbb{P}(t,t_{0}\mid v_{i,j}=1,E_{4})
=\displaystyle= (Et1,t0).\displaystyle\mathbb{P}(E_{t-1,t_{0}}). (40)

Substituting (A)–(A) into (A) leads to

mi,j=\displaystyle m_{i,j}= [(Et1,t01)(p1+p4)+(Et,t0)(p2+p3)\displaystyle\big{[}\mathbb{P}(E_{t-1,t_{0}-1})(p_{1}+p_{4})+\mathbb{P}(E_{t,t_{0}})(p_{2}+p_{3})
+(Et1,t0)p5]\displaystyle\quad+\mathbb{P}(E_{t-1,t_{0}})p_{5}\big{]}
/[(Et1,t0)(p1+p4)\displaystyle\big{/}\big{[}\mathbb{P}(E_{t-1,t_{0}})(p_{1}+p_{4})
+(Et,t0)(p2+p3)+(Et1,t01)p5].\displaystyle\quad+\mathbb{P}(E_{t,t_{0}})(p_{2}+p_{3})+\mathbb{P}(E_{t-1,t_{0}-1})p_{5}\big{]}. (41)

By further substituting (A) into (A) and simplifying the result, the proof of (1) (as well as Proposition 1) is completed.

References

  • [1] Y. Ding, X. He, K. Cai, G. Song, B. Dai, and X. Tang, “An efficient joint decoding scheme for outer codes in DNA-based data storage,” in Proc. IEEE/CIC Int. Conf. Commun. China Workshops, Aug. 2023, pp. 1–6.
  • [2] Y. Erlich and D. Zielinski, “DNA fountain enables a robust and efficient storage architecture,” Science, vol. 355, no. 6328, pp. 950–954, Mar. 2017.
  • [3] L. Organick, S. D. Ang, Y.-J. Chen, R. Lopez, S. Yekhanin, K. Makarychev, M. Z. Racz, G. Kamath, P. Gopalan, B. Nguyen et al., “Random access in large-scale DNA data storage,” Nature biotechnology, vol. 36, no. 3, p. 242, Mar. 2018.
  • [4] R. Heckel, G. Mikutis, and R. N. Grass, “A characterization of the DNA data storage channel,” Scientific Reports, vol. 9, pp. 1–12, 2019.
  • [5] X. He and K. Cai, “Basis-finding algorithm for decoding fountain codes for DNA-based data storage,” IEEE Trans. Inf. Theory, vol. 69, no. 6, pp. 3691–3707, Jun. 2023.
  • [6] A. Makur, “Coding theorems for noisy permutation channels,” IEEE Trans. Inf. Theory, vol. 66, no. 11, pp. 6725–6748, Nov. 2020.
  • [7] I. Shomorony and R. Heckel, “DNA-based storage: Models and fundamental limits,” IEEE Trans. Inf. Theory, vol. 67, no. 6, pp. 3675–3689, Jun. 2021.
  • [8] N. Weinberger and N. Merhav, “The DNA storage channel: Capacity and error probability bounds,” IEEE Trans. Inf. Theory, vol. 68, no. 9, pp. 5657–5700, Sep. 2022.
  • [9] A. Lenz, P. H. Siegel, A. Wachter-Zeh, and E. Yaakobi, “The noisy drawing channel: Reliable data storage in DNA sequences,” IEEE Trans. Inf. Theory, vol. 69, no. 5, pp. 2757–2778, May 2023.
  • [10] J. W. Byers, M. Luby, M. Mitzenmacher, and A. Rege, “A digital fountain approach to reliable distribution of bulk data,” ACM SIGCOMM Computer Communication Review, vol. 28, no. 4, pp. 56–67, 1998.
  • [11] M. Luby, “LT codes,” in Proc. IEEE Symposium on Foundations of Computer Science, 2002, pp. 271–280.
  • [12] R. G. Gallager, “Low-density parity-check codes,” IRE Trans. Inf. Theory, vol. IT-8, no. 1, pp. 21–28, Jan. 1962.
  • [13] W. Hoeffding, “Probability inequalities for sums of bounded random variables,” Journal of the American Statistical Association, vol. 58, no. 301, pp. 13–30, 1963.
  • [14] T. M. Cover, Elements of Information Theory.   John Wiley & Sons, 1999.
  • [15] X. He and K. Cai, “Disjoint-set data structure-aided structured Gaussian elimination for solving sparse linear systems,” IEEE Commun. Lett., vol. 24, no. 11, pp. 2445–2449, Nov. 2020.
  • [16] M. A. Shokrollahi, S. Lassen, and R. Karp, “Systems and processes for decoding chain reaction codes through inactivation,” Feb. 2005, US Patent 6,856,263.
  • [17] A. M. Odlyzko, “Discrete logarithms in finite fields and their cryptographic significance,” in Workshop on the Theory and Application of Cryptographic Techniques, 1984, pp. 224–314.
  • [18] S. Lin and D. J. Costello, Error Control Coding: 2nd Edition.   NJ, Englewood Cliffs: Prentice-Hall, 2004.
  • [19] IEEE standard for information technology—telecommunications and information exchange between systems—local and metropolitan area networks-specific requirements Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications, IEEE Std. 802.11n, Oct. 2009.