May 31, 2026
This paper studies two problems that are motivated by combining two novel approaches, namely DNA composite and rank modulation. The recent approach of composite DNA takes advantage of the DNA synthesis property which generates a huge number of copies for every synthesized strand. Under this paradigm, every composite symbols does not store a single nucleotide but a mixture of the four DNA nucleotides. Instead of considering all the possible composite symbols we are interested only in the rank of the motifs in the symbol. The first problem in this paper addresses the capacity of a channel that uses such symbols, while in the second, bounds and construction of such codes are studied. 1
The primary challenge in making DNA data storage cost-effective is the high synthesis cost. A straightforward way to reduce this cost is by increasing the data density, measured in bits per symbol or per synthesis cycle. Standard encoding over \(\mathsf{A}, \mathsf{C}, \mathsf{G}, \mathsf{T}\) allows up to \(\log_2 4 = 2\) bits per symbol, but error-correction constraints often lower this limit—for example, to \(\log_2 3 \approx 1.58\) bits/symbol when restricting consecutive symbols from repeating [1], [2]. Introducing additional encoding symbols can improve capacity and further reduce costs.
Composite DNA symbols, introduced in [3], [4], exploit inherent redundancies in DNA synthesis and sequencing processes. Unlike standard symbols that represent a single nucleotide, a composite symbol encodes a controlled mixture of the four bases and is defined by a probability vector \({p_\mathsf{A}, p_\mathsf{C}, p_\mathsf{G}, p_\mathsf{T}}\), where each \(p_a\) denotes the relative abundance of nucleotide \(a\), subject to \(\sum p_a = 1\). For example, \({\mathsf{M}= (0.25, 0.25, 0.25, 0.25)}\) represents an equal mixture of all four nucleotides. In a sequence such as \(\mathsf{C}\mathsf{M}\mathsf{G}\), the resulting oligo pool includes all \(4\) possible combinations at the second position, like \(\mathsf{C}\mathsf{A}\mathsf{G}\), \(\mathsf{C}\mathsf{C}\mathsf{G}\), \(\mathsf{C}\mathsf{G}\mathsf{G}\), and \(\mathsf{C}\mathsf{T}\mathsf{G}\), with equal frequencies reflecting the underlying probabilities. During sequencing, sampling a subset of molecules from this pool enables estimation of the original base mixture.
An extension of the composite symbol model, referred to as combinatorial composite DNA, was proposed by Preuss et al. [5]. Their approach generalizes the concept of composite symbols from the nucleotide level to the shortmer level, where each symbol represents a mixture of short DNA sequences rather than individual bases. In [6], Zhang et al. investigated error-correcting codes adapted to the composite DNA model. Furthermore, several related models and their corresponding coding schemes have been explored in recent studies, including [7], [8].
It should be mentioned that the combinatorial composite DNA can be seen as a composite symbol with union distribution or in other words a subset of composite symbols.
The concept of rank modulation has been excessively studied for flash memory such as in [9]. Codes over permutations were shown in [10], [11].
In this paper we wish to combine the theories about composite DNA and rank modulation. A composite DNA is defined by its probability distribution but a rank modulation composite symbol is defined by the rank between its motifs. For example the symbols \((0.1,0.2,0.3,0.4)\) and \((0.05,0.25,0.3,0.4)\) are different composite symbols but are the same rank modulation composite symbol since the rank between the motifs is the same. Instead of considering all the probability distributions we are interested only in the rank of the symbols.
We define the channel that uses rank modulated composite symbols and find codes over this alphabet. This work studies two important aspects of the ranked composite model. The first problem is concerned with the capacity of the channel the receives a rank modulated composite symbol as an input and in every transmission sends one motif with respect to the symbol’s probability distribution. A related problem to this problem with the binomial channel was studied in [12]. Another work [13] studied a similar problem over regular composite symbols. In [14] the set of composite symbols was selected with respect to the decoding probability. Lastly, [15] studied the capacity of the channel with combinatorial composite symbols.
In the second problem, we first assume that the only errors in the symbol can be the rank between the motifs. Then, we bound the size of codes than can detect or correct rank errors and show a construction for such codes.
The rest of the paper is organized as follows. Section 2, introduces the rank modulated composite channel. Then we present the channel that is used for sequences over rank modulated symbols and the type of errors in this channel. Section 3 presents the second problem in the paper which asks for the bounds and constructions for codes than can detect or correct rank errors. In this section we show in Section 3.1 the construction of the code, in Section 3.2 its properties and its size. In Section 3.3 we show some unique codes that use rank symbols the use all the set of motifs and then generalise it for the case where only a subset of motifs is used in every symbol. Finally, we study the first problem, in Section 4 and calculate the channel capacity for several cases.
Let \(q\in \mathbb{N}\) we denote by \([q]=\{0,1,\dots,q-1\}\) the set of integers between \(0\) and \(q-1\).It is important to note that since this set represents a set of motifs, one can think of this set as a general set of size \(q\). Given the alphabet size \(q\), for example \(q=4\) for DNA, the per-symbol capacity is limited by the alphabet size. A recent approach to break this limitation, first studied in [5], used the so-called combinatorial composite symbols. The set of combinatorial composite symbols of size \(m\) is the set of all subsets of \([q]\) of size \(m\), i.e., \({\Sigma_{\boldsymbol{comb}}=\{A\subseteq[q] : |A|=m\}}.\) It holds that \({|\Sigma_{\boldsymbol{comb}}|=\binom{q}{m}}.\) A more general idea of this approach was first studied in [3], [4], with the name of composite symbols. Unlike combinatorial composite symbols that are defined using sets, the composite symbols set is defined as all the probability distributions over the set \([q]\), i.e., \({\Sigma_{\boldsymbol{comp}}=\{\boldsymbol{\gamma}\in \Delta_{q}\}},\) where \(\Delta_{q}\) is the \((q-1)\)-dimensional probability simplex, i.e., \({ \Delta_{q}=\left\{(p_1,p_2,\dots,p_q)\in \mathbb{N}^q\text{ : } \sum_{i=1}^{q}{p_i}=1\right\}. }\) The use of composite symbols was first introduced over DNA nucleotides \(\{A,C,G,T\}\). One can note that there are infinitely many composite symbols. According to this definition one can view a combinatorial composite symbol as a composite symbol with uniform distribution over a subset of the original alphabet.
In previous works [13], [14], the main goal was to study how to choose a subset of composite symbols to minimise the decoding failure error or to maximise the capacity of the channel that uses composite symbols. This approach coincides with the real use of composite symbols where only a limited number of symbols are used and their distribution is often limited to a finite set of probabilities. Finding error-correcting codes with composite symbols was studied in [7], [8].
In this paper we introduce a new approach that combines the benefits of these two approaches. Namely, we wish to benefit from the simplicity of combinatorial composite while increasing the number of composite symbols. Instead of considering all the probability distributions we are interested only in the ranking between the symbols of every composite symbol.
Example 1. For \(q=4\) we can consider the alphabet to be the DNA nucleotides \(\{A,C,G,T\}\). When using composite symbols the set of composite symbols consists of all probability distributions over \(\{A,C,G,T\}\), i.e., \(\Sigma_{\boldsymbol{comp}}=\{(p_A,p_C,p_G,p_T):p_b\geq0,b \in \{A,C,G,T\},p_A+p_C+p_G+p_T=1\}\). When using combinatorial composite symbols of size \(2\) we get all the subsets of size \(2\) over \(\{A,C,G,T\}\), i.e., \(\Sigma_{\boldsymbol{comb}}=\{AC,AG,AT,CG,CT,GT\}.\) A symbol in \(\Sigma_{\boldsymbol{comb}}\), for example, \(AC\), can be realized by the uniform probability symbol in \(\Sigma_{\boldsymbol{comb}}\) for the symbols \(\{A,C\}\).
Combining the ideas of composite symbols and combinatorial composite symbols, we consider the following alphabet as the channel input. Fix two positive integers \(m \le q\). We denote by \(\mathcal{S}_{m,q}\) the partial permutations, which contains all ordered subsets of \([q]\) of size \(m\). It holds that \(|\mathcal{S}_{m,q}|=\frac{{q}!}{({q}-{m})!}.\) For \(m=q\) we denote by \(\mathcal{S}_{m}\) the set of all permutations of size \(m\)
In the context of DNA storage, the set \([q]\) is called the motifs. The value \(q\) denotes the number of motifs. The size of the ranked symbol is the number of the partial permutations.
Example 2. For \(q=4\) we can view \([q]\) as the DNA symbols \(\{A,C,G,T\}\). For \(m=2\) we have the set of size \(\frac{4!}{2!}=12\) that contains \(\mathcal{S}_{2,4}=\{AC,CA,AG,GA,AT,TA,CG,GC, CT,TC,GT,TG\}\).
Let \(\pi\in \mathcal{S}_{m,q}\) we denote by \(\xi(\pi)\) a vector than contains the motifs in \(\pi\) in increasing order of their motif value. Furthermore, we define \(\pi\downarrow\) to be the permutation \(\pi\) after renaming the motifs such that \(\xi(\pi)_i\) is renamed to \(i\). One can observe that \(\pi\downarrow\in \mathcal{S}_{m}\).
Example 3. For \(q=5\) and \(m=3\) it holds that \(135,251\in \mathcal{S}_{m,q}\). Furthermore, \(\xi(135)=(1,3,5)\) and \(\xi(251)=(1,2,5).\) Finally, \(135\downarrow=123\) and \(251\downarrow=231\).
As we have shown in Example 1 for a ranked composite symbol we need to choose a probability distribution that generates the ranking of the symbols. In this work we assume that when using symbols of length \(m\) all the probability distributions are the same. For \(m\in \mathbb{N}\) we define the symbol inner distribution to be a fixed probability distribution denoted by \({\boldsymbol{\gamma}^{m}=(\gamma_1,\gamma_2,\dots,\gamma_{m})}\). One can note that for \(m=2\) it holds that \(\boldsymbol{\gamma}^{2}=(\gamma_1,\gamma_2)\) so we can refer to \(\boldsymbol{\gamma}^{2}\) as \(\gamma_1\).
In Example 2, \(\gamma^2 = (\gamma_1,1-\gamma_1)\) where \(\gamma_1\in [0,\frac{1}{2})\) can represent the symbol \(AC\) since the probability of \(A\) is less than \(B\)’s. Next the rank modulated composite channel is formally introduced. In [15], the authors studied the same channel only over combinatorial composite symbols. Our channel uses symbols of ranked motifs instead of sets of motifs.
Definition 1. Let \(q,m\in \mathbb{N}\) be the numebr of motifs and the size of the ranked symbols. Let \({\boldsymbol{\gamma}^{m}=(\gamma_1,\gamma_2,\dots,\gamma_{m})}\) be a probability distribution such that \(0\leq \gamma_1<\gamma_2<\dots<\gamma_m\leq1.\) Let \(R\) be the number of transmissions on the channel, it will be referred as the coverage depth of the channel similarly to the coverage depth of DNA synthesis that refers to the number of times a nucleotide is read during sequencing. We denote the channel by \(\boldsymbol{RMCC}(q,m,\boldsymbol{\gamma},R)\).
Input: A partial permutation \(\pi=(\pi_1,\pi_2,\dots,\pi_m)\in{\mathcal{S}_{m,q}}\)
Transmission: The channel transmits \(R\) symbols with repetitions from the \(m\) symbols associated with the input \(\pi\). The symbol in each transmission is selected i.i.d with respect to the probability distribution \(\boldsymbol{\gamma}^{m}=(\gamma_1,\gamma_2,\dots,\gamma_{m})\).
Output: The output alphabet of the channel is denoted by \(\mathcal{Y}\) and is equal to all the multi-sets of size \(R\) over \([q]\). It will be easier in this paper to view \(\mathcal{Y}\) as the set of all vectors of length \(q\) such that the value in index \(i\) represents the number of occurrences of the motif \(i\), i.e., \(\Psi_R=\left\{{\boldsymbol{v}}\in\mathbb{N}^{q} \;: \;\sum_{i=0}^{q-1}{v_i}=R\right\}.\) Specifically, when \(v_i=0\) for all \(i\) not in the set associated with \(\pi\), and the channel transition probability is: \({P((v_0,\dots,v_{q-1})|(\pi_1,,\dots,\pi_m))= \binom{R}{v_{\pi_1}, \dots, v_{\pi_m}} \prod_{i=1}^m \gamma_i^{v_i}}\).
Denote by \(\mathsf{cap}(q,m,R, \boldsymbol{\gamma})\) the capacity of the channel \(\boldsymbol{RMCC}(q,m,\boldsymbol{\gamma},R)\). Denote by \(\mathsf{cap}(q,m,R)\) the maximal capacity that can be achieved in the channel \(\boldsymbol{RMCC}(q,m,\boldsymbol{\gamma},R)\) for all possible choices of the symbol inner distribution \(\gamma\), i.e., \(\mathsf{cap}(q,m,R)=\max_{\boldsymbol{\gamma}}{\mathsf{cap}(q,m,R, \boldsymbol{\gamma})}.\) Lastly, let \(\Gamma(q,m,R)\) be the set of probability distributions \({\boldsymbol{\gamma}=(\gamma_1,\gamma_2,\dots,\gamma_m)}\) that maximises the channel’s capacity, i.e., \(\Gamma(q,m,R)=\arg\max_{\boldsymbol{\gamma}}{\mathsf{cap}(q,m,R, \boldsymbol{\gamma})}.\) The first problem we seek to explore under this study is described as follows.
Problem 1. For every \(q,m,R\) compute the value of \(\mathsf{cap}(q,m,R)\) and find the distribution \(\Gamma(q,m,R)\).
For the next problem we wish to study error-correcting codes over the rank modulated composite channel. For that, we are interested in sequences over partial permutations. The length of the sequences is denoted by \(n\). Following Definition 1, we can assume that the output of the channel is also a sequence of partial permutations. Accordingly, one could consider the following errors,
Change in order, example: sending \(352\) and receiving \(235\).
Deletions, example: sending \(352\) and receiving \(52\).
Substitutions, for example sending \(352\) and receiving \(452\).
In this paper, we study sequences over partial permutations of the same constant size \(m\). Therefore, we can read until we have all the required motifs since \(m\) is known to the reader. We assume that motifs are sent with respect to \(\boldsymbol{\gamma}\) so there are no substitutions and we ignore errors during sequencing which change the motif value. Hence, we are left with the first type of errors that modify the ranking of the motifs, which is the main focus of this part of the paper. It is possible to note that this family of errors correspond to the Kendall’s \(\tau\)-metric, which is denoted by \(d_{\tau}(\cdot,\cdot)\).
Example 4. For \(m=3\) it holds that \(123,231\in \mathcal{S}_{m}\). Two inversions are needed to transform from \(123\) to \(231\) and therefore, \(d_{\tau}(123, 231)=2.\) For \(q=5\) from Ex. we have that \(135,251,351\in \mathcal{S}_{m,q}\). Since \(\xi(135)\neq \xi(251)\) it holds that \(d_{\tau}(135, 251)=\infty.\) Since \(\xi(135)= \xi(351)\) it holds that \({d_{\tau}(135, 351)=d_{\tau}(135\downarrow, 351\downarrow)=d_{\tau}(123, 231)=2}.\)
It is said that \(u\in {\mathcal{S}_{m,q}}\) experienced \(t\) Kendall’s \(\tau\) errors from \(v\in{\mathcal{S}_{m,q}}\) if \(d_{\tau}(u,v)=t.\) Let \({\boldsymbol{u}},{\boldsymbol{v}}\in{\mathcal{S}_{m,q}}^{n}\) be two vectors of partial permutations. It is said that \({\boldsymbol{u}}\) experienced \((t,e)\)-Kendall’s \(\tau\) permutation errors, if for at most \(e\) indices, the partial permutation \(u_i\) experienced at most \(t\) Kendall’s \(\tau\) errors from \(v_i\).
Example 5. For \(n=2,q=5, m=3\) it holds that \((134,135),(134,351)\) are vectors in \(\mathcal{S}^{n}_{m,q}\). Following Example 4 it holds that \(d_{\tau}(135, 351)=2\) and \(d_{\tau}(134, 134)=0\). Therefore, the vector \((134,351)\) experienced \((1,2)\)-Kendall’s \(\tau\) permutation errors from the vector \((134,135)\).
We say that a code over \(\mathcal{S}^{n}_{m,q}\) is a \((t,e)\)-error detecting code if it can detect any \((t,e)\)-Kendall’s \(\tau\) permutation errors. Similarly, a code over \(\mathcal{S}^{n}_{m,q}\) is a \((t,e)\)-error correcting code if it can correct any \((t,e)\)-Kendall’s \(\tau\) permutation errors. Lastly, we denote by \(\mathsf{A}_{\boldsymbol{det}}(n,q,m,t,e), \mathsf{A}_{\boldsymbol{cor}}(n,q,m,t,e)\), the largest length-\(n\) \((t,e)\)-error detecting, correcting code, respectively. Codes that correct these types of errors will be referred as Kendall Permutation Codes.
Problem 2. For every \(n,q,m,t,e\in\mathbb{N}\) compute the size of \(\mathsf{A}_{\boldsymbol{det}}(n,q,m,t,e)\) and \(\mathsf{A}_{\boldsymbol{cor}}(n,q,m,t,e)\) and find efficient constructions for such codes.
First we study Problem 2. In the following section we present a general construction for such codes.
In this subsection we present a construction of Kendall Permutation Codes over partial permutations. The idea behind this construction is based on the work of tensor product codes using two linear codes [16], however, in our case the set of permutations does not constitute a linear space and thus cannot be easily used with the tensor product framework. We will first construct codes for permutations, i.e., \(m=q\), and then extend for partial permutations (\(m>q\)) in the final subsection.
First we define a crucial building block for our code. Let \(q,m\in\mathbb{N}\). We already defined \({\mathcal{S}_{m,q}}\) to be all the partial permutations over \([q]\) of size \(m\). Let \(A\subseteq {\mathcal{S}_{m,q}}\) be a subset of partial permutations. We denote by \(d_\boldsymbol{min}(A)\) the minimum Kendall’s \(\tau\) distance between any two partial permutations in \(A\), i.e., \({ d_\boldsymbol{min}(A)=\min_{a\neq a'\in A}{d_{\tau}(a,a')}. }\) A family of sets \({\mathcal{R}=A_0,A_1,\dots,A_{\ell-1}\subseteq{\mathcal{S}_{m,q}}}\) is called a partial partition of size \(\ell\) of \({\mathcal{S}_{m,q}}\) if for every \(i\neq j\) it holds that \(A_i\cap A_j=\phi.\) For \(q=m\) we also say that it is a partial partition of \(\mathcal{S}_{m}\).From now on in this paper the notation of \(\mathcal{R}\) represents a general partial partition \(A_0,A_1,\dots,A_{\ell-1}\subseteq{\mathcal{S}_{m,q}}\) of size \(\ell\) of \({\mathcal{S}_{m,q}}\). A partial partition \(\mathcal{R}\) is called a partition if \(\cup_{i}{A_i}={\mathcal{S}_{m,q}}.\) The minimum Kendall’s \(\tau\) distance of a partition \(\mathcal{R}\) is defined by \({d_\boldsymbol{min}(\mathcal{R})=\min_{i}{d_\boldsymbol{min}(A_i)}}.\) For every vector of partial permutations \({\boldsymbol{c}}\in{\mathcal{S}^{n}_{m,q}}\) we denote by \(\Lambda(s)\) the vector of indicators of the partial partition \(\mathcal{R}\), i.e., in index \(i\) we have the value \(j\) if \({\boldsymbol{s}}_i\in A_j\). If the permutation is not in any set we denote it by “\(?\)”. We omit the partial partition \(\mathcal{R}\) from the notation of \(\Lambda\) as it will clear from the context.
Example 6.
For \(q=5,m=3\) the following partial partition \(\mathcal{R}_1\) has minimum Kendall’s \(\tau\) distance \(3\), \({A_0=\{123,321\},A_1=\{132,231\}}\). It holds that \(\Lambda((123,123,231))=(0,0,?),\Lambda((321,123,321))=(0,0,0),\Lambda((231,132,321))=(?,1,0)\).
Now we are ready to present our construction that follows the ideas of tensor product codes [16].
Construction 1. Let \(\mathcal{R}\) be a partition with minimum Kendall’s \(\tau\) distance \(d_{\boldsymbol{in}}\) that will be referred as the inner code. Let \(\mathcal{C}^\boldsymbol{outer}\) be a length-\(n\) code over \([\ell]\) with minimum Hamming distance \(d_{\boldsymbol{out}}\) that will bereferred to as the outer code. A vector of partial permutations \({\boldsymbol{c}}\in{\mathcal{S}^{n}_{m,q}}\) is a codeword in the tensor permutation code \(\mathbf{TPC}(\mathcal{R},\mathcal{C}^\boldsymbol{outer})\) if and only if \(\Lambda({\boldsymbol{s}})\in\mathcal{C}^\boldsymbol{outer}.\)
A code that is constructed by Construction 1 will bereferred to as tensor permutation code.
Example 7. We use the same partition \(\mathcal{R}_1\) from Example 6 with minimum Kendall’s \(\tau\) distance \(3\). The code \(\mathcal{C}^\boldsymbol{outer}_1=\{11111,00011\}\) is a binary code of length \(n=5\) with minimum Hamming distance \(d_{\boldsymbol{out}}=3\). The set of vectors \({\boldsymbol{c}}\in{\mathcal{S}^{n}_{m,q}}\) such that \(\Lambda({\boldsymbol{c}})=00011\) is the set \(A_0\times A_0\times A_0\times A_1\times A_1\), totaling \(32\) words. Some of these vectors are \((123,123,123,132,132)\),\((123,123,123,132,231)\), \((123,123,123,231,132)\), and \((123,123,123,231,231)\). Similarly, all the vectors \({\boldsymbol{c}}\in{\mathcal{S}^{n}_{m,q}}\) such that \(\Lambda({\boldsymbol{c}})=11111\) is the set of \(A_1\times A_1\times A_1\times A_1\times A_1\). Since \(|A_0|=|A_1|\) it holds that the total size of the code is \(|\mathcal{C}^\boldsymbol{outer}_1| |A_1|^5 = 2\times2^5=64\).
In the following theorems we go over the properties that the tensor permutation codes inherit from their inner and outer codes. Let \(\mathcal{R}\) be an inner code with minimum Kendall’s \(\tau\) distance \(d_{\boldsymbol{in}}\). Let \(\mathcal{C}^\boldsymbol{outer}\) be an outer code over \([\ell]\) of length \(n\) with minimum Hamming distance \(d_{\boldsymbol{out}}\). First we begin with two simple observations.
Observation 1. For every two codewords \({\boldsymbol{c}}_1,{\boldsymbol{c}}_2\in\mathbf{TPC}(\mathcal{R},\mathcal{C}^\boldsymbol{outer})\) exactly one of the following occurs: \(d_H(\Lambda({\boldsymbol{c}}_1),\Lambda({\boldsymbol{c}}_2))=0\) or \(d_H(\Lambda({\boldsymbol{c}}_1),\Lambda({\boldsymbol{c}}_2))\geq d_{\boldsymbol{out}}\).
Observation 2. Let \({\boldsymbol{c}}\in\mathbf{TPC}(\mathcal{R},\mathcal{C}^\boldsymbol{outer})\) and \(e\leq n\). Let \({\boldsymbol{c}}'\in{\mathcal{S}^{n}_{m,q}}\) be a vector of partial permutations that experienced \((d_{\boldsymbol{in}}-1,e)\)-Kendall’s \(\tau\) permutation errors from \({\boldsymbol{c}}\). It holds that in every index \(i\) the partial permutation \(c'_i\) experienced Kendall’s \(\tau\) error from \(c_i\) if and only if \(\Lambda({\boldsymbol{c}})_i\neq\Lambda({\boldsymbol{c}}')_i\).
Theorem 1. the tensor permutation code \(\mathbf{TPC}(\mathcal{R},\mathcal{C}_\boldsymbol{outer})\) is a \((d_{\boldsymbol{in}}-1,d_{\boldsymbol{out}}-1)\)-error detecting code.
Example 8. Using the construction of the tensor permutation code in Example 7 and Theorem 1 it holds that \(\mathbf{TPC}(\mathcal{R}_1,\mathcal{C}^\boldsymbol{outer}_1)\) is a \((2,2)\)-error detecting code. We exemplify the detection process. Let \({\boldsymbol{c}}=(321,321,321,132,132)\in\mathbf{TPC}(\mathcal{R}_1,\mathcal{C}^\boldsymbol{outer}_1)\). The vector \({\boldsymbol{c}}_1=(132,321,321,132,213)\) experienced \((2,2)\)-Kendall’s \(\tau\) permutation errors from \({\boldsymbol{c}}\). It holds that \(\Lambda((312,321,123,132,213))=(1,0,0,1,?),\) and hence, \({\boldsymbol{c}}_1\notin\mathbf{TPC}(\mathcal{R}_1,\mathcal{C}^\boldsymbol{outer}_1)\). The vector \({\boldsymbol{c}}_2=(321,321,231,132,132)\) experienced \((1,1)\)-Kendall’s \(\tau\) permutation errors from \({\boldsymbol{c}}\). It holds that \(\Lambda((321,321,231,132,132))=(0,0,1,1,1),\) but \((0,0,1,1,1)\notin\mathcal{C}^\boldsymbol{outer}_1\), hence, \({\boldsymbol{c}}_2\notin\mathbf{TPC}(\mathcal{R}_1,\mathcal{C}^\boldsymbol{outer}_1)\).
Theorem 2. The tensor permutation code \(\mathbf{TPC}(\mathcal{R},\mathcal{C}_\boldsymbol{outer})\) is a \((\left \lfloor{\frac{d_{\boldsymbol{in}}-1}{2}}\right \rfloor,\left \lfloor{\frac{d_{\boldsymbol{out}}-1}{2}}\right \rfloor)\)-error correcting code.
Example 9. Using the construction of the tensor permutation code in Example 7 and Theorem 1 it holds that \(\mathbf{TPC}(\mathcal{R}_1,\mathcal{C}^\boldsymbol{outer}_1)\) is a \((1,1)\)-error correcting code. We exemplify the correction process. Let \({\boldsymbol{c}}=(321,321,321,132,132)\in\mathbf{TPC}(\mathcal{R}_1,\mathcal{C}^\boldsymbol{outer}_1)\). The vector \({\boldsymbol{c}}_2=(321,321,231,132,132)\) experienced \((1,1)\)-Kendall’s \(\tau\) permutation errors from \({\boldsymbol{c}}\). It holds that \(\Lambda((321,321,231,132,132))=(0,0,1,1,1),\) and there exists only one codeword in \(\mathcal{C}^\boldsymbol{outer}_1\) with Hamming distance at most \(1\) from \((0,0,1,1,1)\), which is the codeword \((0,0,0,1,1)\in\mathcal{C}^\boldsymbol{outer}_1\). Now it is known that the Kendall’s \(\tau\) error occurred in index \(2\). There exists only one partial permutation in \(A_0\) with Kendall’s \(\tau\) distance at most \(1\) from \(231\), which is the partial permutation \(321\). Finally it is known that the original codeword was \((321,321,321,132,132)\) which is exactly \({\boldsymbol{c}}\).
Next, we analyse the size of tensor permutation codes. The main difference between the analysis of different codes will be its inner code, i.e., the partial partition of the set of partial permutations. Let \({\boldsymbol{v}}\) be a vector over \([\ell]\) of length \(n\). Denote by \(\#i({\boldsymbol{v}})\) the number of occurrences of \(i\) in \({\boldsymbol{v}}\). The following theorem provides the size of a general tensor permutation code and a tensor permutation code over a partition such that all the sets are of the same size.
Theorem 3. Let \(\mathcal{R}\) be a partial partition and let \(\mathcal{C}^\boldsymbol{outer}\) be a code over \([\ell]\) of length \(n\). It holds that \(|\mathbf{TPC}(\mathcal{R},\mathcal{C}^\boldsymbol{outer})|=\sum_{{\boldsymbol{v}}\in\mathcal{C}^\boldsymbol{outer}}{\prod_{i=0}^{\ell-1}{|A_i|^{\#i({\boldsymbol{v}})}}}.\) If for every \(i\) it holds that \(|A_i|=A\) then it holds that \(|\mathbf{TPC}(\mathcal{R},\mathcal{C}^\boldsymbol{outer})|=A^n|\mathcal{C}^\boldsymbol{outer}|.\)
In this subsection we will show several partitions of \(\mathcal{S}_{m}\). At the end we will show the relationship between tensor permutation codes over permutations and over partial permutations. We use the same notations as in [17] for some properties of permutations. We denote by\(\text{id}=(12\dots m)\) the identity permutation. We say that a permutation \(\pi\in \mathcal{S}_{m}\) has Kendall’s \(\tau\) weight \(k\) if it holds that \(d_{\tau}({\text{id}},\pi)=k.\) We denote by \(I_m(k)\) the set of all permutations of Kendall’s \(\tau\) weight exactly \(k\). First we find a partition with minimum Kendall’s \(\tau\) distance \(2\). Let \(\mathcal{R}_{\text{Parity}}=A_0,A_1\) be the partition of all the permutations according to their Kendall’s \(\tau\) weight parity. One can note that \(A_0\cap A_1=\phi.\) It is well known that the partition \(\mathcal{R}_{\text{Parity}}=A_0,A_1\) has minimum Kendall’s \(\tau\) distance \(2\) and the sets are of equal sizes. We denote by \(A_q(n,d)\) the size of a largest code over \([q]\) of size \(n\) with minimum Hamming distance \(d\). Let \(\mathcal{C}^\boldsymbol{outer}_{\text{bin}}\) be a largest binary of size \(n\) with minimum Hamming distance \(d_{\boldsymbol{out}}\).
Corollary 1. Let \(\mathcal{R}_{\text{Parity}}\) be the inner code. The code \(\mathbf{TPC}(\mathcal{R}_{\text{Parity}},\mathcal{C}^\boldsymbol{outer}_{\text{bin}})\) is a \((1,d_{\boldsymbol{out}}-1)\)-detecting code of length \(n\) of size \(\frac{(m!)^{n}}{2^{n}}{A_2(n,d_{\boldsymbol{out}})}.\) Furthermore, it holds that \(\mathsf{A}_{\boldsymbol{det}}(n,m,m,1,d_{\boldsymbol{out}}-1)\geq\frac{(m!)^{n}}{2^{n}}{A_2(n,d_{\boldsymbol{out}})}.\)
Lastly, the next theorem connects between tensor permutation codes over permutations and partial permutations.
Theorem 4. For every \(n,q,m,t,e\in\mathbb{N}\) such that \(m\leq q\) it holds that \(\mathsf{A}_{\boldsymbol{det}}(n,q,m,t,e)\geq {\binom{q}{m}}^n\mathsf{A}_{\boldsymbol{det}}(n,m,m,t,e)\) and \(\mathsf{A}_{\boldsymbol{cor}}(n,q,m,t,e)\geq {\binom{q}{m}}^n\mathsf{A}_{\boldsymbol{cor}}(n,m,m,t,e)\).
Note that in the rank modulated composite channel \(\boldsymbol{RMCC}(q,m,\boldsymbol{\gamma},R)\) the input consists of \({\frac{q!}{(q-m)!}}\) partial permutations, while the probability distribution of each partial permutation is \(\boldsymbol{\gamma}\). In order to compute the channel’s capacity one should also consider the probability distribution over the partial permutations, i.e., all possible channel inputs. Since the channel is symmetric and the only difference between the partial permutations is their motifs’ values, the first claim states that the capacity achieving input distribution (CAID) to the channel is the uniform distribution over all the partial permutations.
Claim 1. For every \(1\leq m\leq q\in\mathbb{N}\), \(R\in\mathbb{N}\) and \(\boldsymbol{\gamma}\in \Delta_q\) it holds that the uniform probability distribution over all the input symbols is a CAID.
Next, one can note that using the central limit theorem, when the coverage depth increases one can distinguish between the different partial permutations for every \(\boldsymbol{\gamma}\) such that all the \(m\) motifs have positive probabilities. Hence, the capacity approaches the logarithm of the input size.
Claim 2. For every \(m\leq q\) it holds \(\lim_{R\rightarrow\infty}\mathsf{cap}(q,m,R)=\log_2{\frac{q!}{(q-m)!}}.\)
The following theorem calculates the capacity and the probability distribution \(\boldsymbol{\gamma}\) for several special cases.
Theorem 5. The following properties hold.
For every \(R\in\mathbb{N}\) it holds that \(\Gamma(q=2,m=2,R)=(0,1)\) and \(\mathsf{cap}(q=2,m=2,R)=\log_2(2)=1\).
For every \(q\in\mathbb{N}\) it holds that \(\Gamma(q,m=2,R=1)=(0,1)\) and \(\mathsf{cap}(q,m=2,R=1)=\log_2(q)\).
For every \(q,m\in\mathbb{N}\) it holds that \(\Gamma(q,m,R=1)=e_{m,m}\) and \(\mathsf{cap}(q,m,R=1)=\log_2(q)\).
It holds that \(\Gamma(q=3,m=2,R=2)=(0,1)\) and \(\mathsf{cap}(q=3,m=2,R=2)=\log_2(3)\).
The last theorem shows that for partial permutation of size \(2\), if the alphabet size is large enough, then the best probability distribution \(\boldsymbol{\gamma}\) is uniform over the two motifs. Since we normally use alphabets of size \(4\) for DNA, the use of partial permutations can still be useful, for example with \(q=4\), i.e. DNA and partial permutations of size \(m=2\) with coverage depth \(R=2\) it holds that \(\Gamma(q=4,m=2,R=3)=(0.2,0.8)\). Furthermore it holds that \(\mathsf{cap}\left(q,m=2,R=2,\left(0.2, 0.8\right)\right)=2.67>2.5=\mathsf{cap}\left(q,m=2,R=2,\left(\frac{1}{2},\frac{1}{2}\right)\right)\). Hence, partial permutations improved the capacity over the case of combinatorial composite symbols.
Theorem 6. There exists \(Q\in\mathbb{N}\) such that for every \(q>Q\) it holds that \(\mathsf{cap}(q,m=2,R=2)=\mathsf{cap}\left(q,m=2,R=2,\left(\frac{1}{2},\frac{1}{2}\right)\right)\)
The collaboration and discussions of this paper were originated in Dagstuhl Seminar 24511 [18].
Funded by the European Union (DiDAX, 101115134). Views and opinions expressed are however those of the author(s) only and do not necessarily reflect those of the European Union or the European Research Council Executive Agency. Neither the European Union nor the granting authority can be held responsible for them.↩︎