arXiv reader

Encoding and Decoding of Several Optimal Rank Metric Codes

Wrya K. Kadir, Chunlei Li and Ferdinando Zullo

arXiv
2202.03009v1 · PDF · 7 February 2022
Categories
cs.IT, math.IT
Licence
CC BY 4.0 The site shows the text.

Abstract

This paper presents encoding and decoding algorithms for several families of optimal rank metric codes whose codes are in restricted forms of symmetric, alternating and Hermitian matrices. First, we show the evaluation encoding is the right choice for these codes and then we provide easily reversible encoding methods for each family. Later unique decoding algorithms for the codes are described. The decoding algorithms are interpolation-based and can uniquely correct errors for each code with rank up to \lfloor(d-1)/2\rfloor in polynomial-time, where d is the minimum distance of the code.

Items 11

Proposition

Proposition 1

YWFE

Let L(x)=\sum\limits_{i=0}^{n-1}a_ix^{\mathrm{q}^i} over \mathbb F_{\mathrm{q}^n} be a \mathrm{q}-polynomial with rank t. Then its associated Dickson matrix

11 5 3 4 2 3 2 2 4 2 2 2 11 5 3 4 2 3 2 2 4 2 2 2 11 5 3 4 2 3 2 2 1em 4 2 2 2 11 5 3 4 2 3 2 2 0.5em 1em 4 2 2 2 11 5 3 4 2 3 2 2 0.5em 1em 4 2 2 2 11 5 3 4 2 3 2 2 0.5em 1em 4 2 2 2 11 5 3 4 2 3 2 2 0.5em 1em 4 2 2 2 11 5 3 4 2 3 2 2 0.5em 1em 4 2 2 2

D=\begin{pmatrix} a_{i-j({\,\rm mod }n)}^{\mathrm{q}^i} \end{pmatrix}_{n\times n}=\begin{pmatrix*}[l] a_0& a_{n-1}^{\mathrm{q}}& \cdots& a_1^{\mathrm{q}^{n-1}}\\ a_1& a_0^{\mathrm{q}}&\cdots& a_2^{\mathrm{q}^{n-1}}\\ \vdots&\vdots&\ddots&\vdots\\ a_{n-1}& a_{n-2}^{\mathrm{q}}&\cdots& a_{0}^{\mathrm{q}^{n-1}} \end{pmatrix*},

10bp12bp 12 2 1 3 3 3 3 10bp12bp 12 2 1 3 3 3 3 1em10bp12bp 12 2 1 3 3 3 3 1em 0.5em 1em10bp12bp 12 2 1 3 3 3 3 0.5em 1em 0.5em 1em10bp12bp 12 2 1 3 3 3 3 0.5em 1em 0.5em 1em10bp12bp 12 2 1 3 3 3 3 0.5em 1em 0.5em 1em10bp12bp 12 2 1 3 3 3 3 0.5em 1em 0.5em 1em10bp12bp 12 2 1 3 3 3 3 0.5em 1em 0.5em 1em has rank t over \mathbb F_{\mathrm{q}^n} and any t\times t submatrix formed by t consecutive rows and t consecutive columns in D is non-singular.

Theorem

Theorem 2

QECN

[schmidt2015symmetric, Theorem 3.3] Let \mathcal{C} be a symmetric d-code in \mathbb F_q^{n\times n}. If d is even, suppose also that \mathcal{C} is additive. Then

\#\mathcal{C} \leq \left\{ \begin{array}{ll} q^{n(n-d+2)/2} & \text{if}\,\,\, n-d\,\,\text{is even},\\ q^{(n+1)(n-d+2)/2} & \text{if}\,\,\, n-d\,\,\text{is odd}. \end{array}\right.
Theorem

Theorem 3

5NL1

[delsarte1975alternating, Theorem 4] Let m=\lfloor \frac{n}2 \rfloor. Let \mathcal{C} be an alternating 2e-code in \mathbb F_q^{n\times n}. Then

\#\mathcal{C} \leq q^{\frac{n(n-1)}{2m}(m-e+1)}.
Theorem

Theorem 4

QLU6

[schmidt2015symmetric, Theorem 4.4] Let n and d be two positive integers such that 1\leq d\leq n and n-d is even. The symmetric forms S:\mathbb F_{q^{n}}\times \mathbb F_{q^{n}}\rightarrow \mathbb F_{q} given by S(x,y)=\mathrm{Tr }_{q^n/q}\left(yL(x)\right) with

L(x)= b_0x + \sum\limits_{j=1}^{\frac{n-d}{2}} \left( b_jx^{q^j}+(b_jx)^{q^{n-j}} \right),

as b_0,\ldots,b_{\frac{n-d}{2}} range over \mathbb F_{q^{n}}, form an additive optimal d-code in \mathrm{S}_n(q).

Theorem

Theorem 5

1ILE

[delsarte1975alternating, Theorem 7] Let n and e be two positive integers such that n is odd and 1\leq 2e\leq n-1, and let d=2e. The alternating forms A:\mathbb F_{q^{n}}\times \mathbb F_{q^{n}}\rightarrow \mathbb F_{q} given by A(x,y)=\mathrm{Tr }_{q^n/q}\left(yL(x)\right) with

L(x)= \sum\limits_{j=e}^{\frac{n-1}{2}} \left( b_jx^{q^j}-(b_jx)^{q^{n-j}} \right),

as b_e,\ldots,b_{\frac{n-1}{2}} range over \mathbb F_{q^{n}}, form an additive optimal d-code in \mathrm{A}_n(q).

Theorem

Theorem 6

76VM

[schmidt2018hermitian, Theorem 1] An additive Hermitian d-code \mathcal{C} in \mathbb F_{q^2}^{n\times n} satisfies

\#\mathcal{C} \leq q^{n(n-d+1)}.

Moreover, when d is odd, this upper bound holds also for non-additive Hermitian d-codes.

Theorem

Theorem 7

3D3I

[schmidt2018hermitian, Theorem 4] Let n and d be integers of opposite parity satisfying 1\leq d\leq n. The Hermitian forms H:\mathbb F_{q^{2n}}\times \mathbb F_{q^{2n}}\rightarrow \mathbb F_{q^2} given by H(x,y)=\mathrm{Tr }_{q^{2n}/q^2}\left(y^qL(x)\right) with

L(x)= \sum\limits_{j=1}^{\frac{n-d+1}{2}} \left( (b_jx)^{q^{(2n-2j+2)}}+b_j^{q} x^{q^{(2j)}} \right),

as b_1,\ldots,b_{\frac{n-d+1}{2}} range over \mathbb F_{q^{2n}}, form an additive optimal d-code in \mathrm{H}_n(q^2).

Theorem

Theorem 8

1HI9

[schmidt2018hermitian, Theorem 5] Let n and d be odd integers satisfying 1\leq d\leq n. The Hermitian forms H:\mathbb F_{q^{2n}}\times \mathbb F_{q^{2n}}\rightarrow \mathbb F_{q^2} given by H(x,y)=\mathrm{Tr }_{q^{2n}/q^2}\left(y^qL(x)\right) with

L(x)= (b_0x)^{q^{(n+1)}}+ \sum\limits_{j=1}^{\frac{n-d}{2}} \left( (b_jx)^{q^{(n+2j+1)}}+b_j^{q} x^{q^{(n-2j+1)}} \right),

as b_0 ranges over \mathbb F_{q^n} and b_1,\ldots,b_{\frac{n-d}{2}} range over \mathbb F_{q^{2n}}, form an additive optimal d-code in \mathrm{H}_n(q^2).

Example

Example 1 (Symmetric d-Codes)

AENU

Let C be an optimal symmetric d-code with minimum distance d=5 and length n=7 defined over \mathbb{F}_{2^7}. We consider a normal basis of \mathbb{F}_{2^7} over \mathbb{F}_2 with normal element w=z^{95} as the evaluation points. Here z is a primitive element in \mathbb{F}_{2^7}^*

  1. Encoding: Suppose Alice wants to transfer the message f=(f_0,f_1)=(z^{7}, z^{13}) to Bob via a noisy channel. The code’s evaluation polynomial would have the coefficient vector \tilde{f}=(f_0,f_1,0,0,0,0,f_1^{q^{6}})=(z^{7}, z^{13}, 0, 0, 0, 0, z^{70}) which gives the codeword

    \begin{aligned} c=\tilde{f}(\mathcal{M}^T)=(z^{108}, z^{36}, z^{11}, z^{12}, z^{57}, z^{24}, z)=\begin{pmatrix} 1 &0& 1& 1& 1& 1& 0\\ 0& 0 &1 &0 &0 &1 &0\\ 1& 1& 0& 0& 1& 0& 1\\ 1& 0& 0& 0& 0& 0& 1\\ 1& 0& 1& 0& 1& 0& 1\\ 1 &1& 0& 0& 0& 0&0\\ 0& 0& 1& 1& 1& 0& 1\\ \end{pmatrix}, \end{aligned}

    in symmetric form.

  2. Channel’s transmission: We assume that the noisy channel adds an error vector e=( z^{63}, z^{126}, z^{126}, z^{63}, z^{126}, z^{126}, z^{126}) with rank t=2 to the codeword c and Bob receives the word

    r=c+e=(z^{4}, z^{45}, z^{124}, z^{52}, z^{37}, z^{104}, z^{13}).
  3. Decoding: Now Bob received r and he wants to recover the message f. He first computes \beta=r\cdot (\mathcal{M}^T)^{-1}=(z^{17}, z^{51}, z^{98}, z^{124}, z^{100}, z^{83}, z^{86} ) and directly gets the coefficients (g_2,g_3,g_4,g_5)=(\beta_2,\beta_3,\beta_4,\beta_5) where g(x)=\sum\limits_{i=0}^{6}g_ix^{2^i} is the error interpolation polynomial and \tilde{g}=(g_0,\ldots,g_{6}). Then he submits (g_2,g_3,g_4,g_5) in the BM algorithm and obtains the unique connection vector (\lambda_1,\lambda_2)=(z^{25},z^{126}). Now he uses both (g_2,g_3,g_4,g_5) and (\lambda_1,\lambda_2) as inputs for modified version of LFSR described in [Sidorenk] and get the vector

    a=(g_2,g_3,g_4,g_5,g_6,g_0,g_1)=(z^{98}, z^{124}, z^{100}, z^{83}, z^{55}, z^{115}, z^{71}).

    Now he can rearrange the components of a and gets \tilde{g}=(z^{115}, z^{71},z^{98}, z^{124}, z^{100}, z^{83}, z^{55}). Since he knows \beta and \tilde{g}, he is able to compute \tilde{f}=\beta-\tilde{g}=(z^{7}, z^{13}, 0, 0, 0, 0, z^{70}) and finally f=(\tilde{f}_0,\tilde{f}_1)=(z^7,z^{13}).

Example

Example 2 (Alternating d-Codes)

273D

Suppose D\in \mathbb{F}_{2^{9}} be an alternating d-code with length n=9 and minimum distance d=6. Let w=z^{347} be the normal element for our normal basis which is used as the interpolation points. For the received word r=(z^{293}, z^{389}, z^{430}, z^{227}, z^{481}, z^{445}, z^{426}, z^{404}, z^{339}) containing error of t=\lfloor(d-1)/2\rfloor=2 rank, we can compute \beta, (\lambda_1,\lambda_2),a, \tilde{g}, \tilde{f}, c and f similar to Example 1 as follows:

  • \beta=(z^{486}, z^{233}, z^{334}, z^{155}, z^{167}, z^{226}, z^{483}, z^{231}, z^{88}),

  • (\beta_0,\beta_1,\beta_2,\beta_7,\beta_8)=(g_0,g_1,g_2,g_7,g_8).

  • BM algorithm input (\beta_7,\beta_8,\beta_0,\beta_1,\beta_2) gives (\lambda_1,\lambda_2)=(z^{154}, z^{262}),

  • modified LFSR input (\beta_7,\beta_8,\beta_0,\beta_1,\beta_2) and (\lambda_1,\lambda_2) gives

    \begin{aligned} a&=(\beta_7,\beta_8,\beta_0,\beta_1,\beta_2, g_3,g_4,g_5,g_6)\\&=(z^{231}, z^{88}, z^{486}, z^{233}, z^{334}, z^{505}, z^{113}, z^{265}, z^{425}), \end{aligned}
  • \tilde{g}=(z^{486}, z^{233}, z^{334}, z^{505}, z^{113}, z^{265}, z^{425},z^{231}, z^{88}),

  • \tilde{f}=\beta - \tilde{g}=(0, 0, 0, z^{77}, z^{397}, z^{440}, z^{329}, 0, 0),

  • c=\tilde{f}\cdot (\mathcal{M}^T)=(z^{244}, z^{412}, z^{364}, z^{400}, z^{368}, z^{161}, z^{122}, z^{59}, z^{122}),

  • f=(f_0,f_1)=(\tilde{f}_{3},\tilde{f}_4)=(z^{77}, z^{397}).

Example

Example 3 (Hermitian d-Codes)

EF9X

Suppose \mathcal{C}\in \mathbb{F}_{2^{14}}^7 be an optimal Hermitian d-code with length n=7, minimum distance d=5 and \eta=z . We use the normal basis W of \mathbb{F}_{2^{14}} over \mathbb{F}_{2^{2}} with normal element w=z^{8591} as the evaluation points, where z is the primitive element in \mathbb{F}_{2^{10}}^*. Let r=(z^{3672}, z^{2957}, z^{1343}, z^{3039}, z^{10923}, z^{9913}, z^{1618}) be a received word with error of t=(d-1)/2=2 rank. Then \beta=r\cdot (\mathcal{M}^T)^{-1}= (z^{5036}, z^{5234}, z^{203}, z^{840}, z^{2939}, z^{13080}, z^{15830}). Let g(x)=\sum\limits_{i=0}^{6}g_ix^{2^{2i}} be the error interpolation polynomial. Due to the expected form of \tilde{f} in optimal Hermitian d-codes we have (\beta_0,\beta_1,\beta_2,\beta_6)=(g_0,g_1,g_2,g_6). Now we submit (\beta_6,\beta_0,\beta_1,\beta_2) in the BM algorithm and get the output (\lambda_1,\lambda_2)=(z^{11141},z^{14283}). using both (\beta_6,\beta_0,\beta_1,\beta_2) and (\lambda_1,\lambda_2) as the input for the modified version of linear feedback shift register explained in [Sidorenk], we get

a=(\beta_6,\beta_0,\beta_1,\beta_2,g_3,g_4,g_5)=(z^{15830}, z^{5036}, z^{5234}, z^{203}, z^{12223}, z^{9784}, z^{1048}).

So \tilde{g}=( z^{5036}, z^{5234}, z^{203}, z^{12223}, z^{9784}, z^{1048},z^{15830}) and the code’s evaluation polynomial has the coefficient vector \tilde{f}=(0,0,0,z^{4446},z^{11481},z^{15498},0). Then the codeword is

\begin{aligned} c=&\tilde{f}\cdot \mathcal{M}^T=(z^{781}, z^{1313}, z^{4481}, z^{5130}, z^{1671}, z^{9656}, z^{1567})\\ =& \begin{pmatrix} 1 &0& 0& 1& y& y^2& 1\\ 0& 1 &0 &y &y &y &1\\ 0& 0& 1& 0& y^2& 0& y^2\\ 1& y^2& 0& 0& y^2& y^2& 0\\ y^2& y^2& y& y& 1& y& y^2\\ y &y^2& 0& y& y^2& 1&1\\ 1& 1& y& 0& y& 1& 1\\ \end{pmatrix}, \end{aligned}

where y is the primitive element in \mathbb{F}_{2^2}^* and the message is f=(f_0,\ldots,f_{k-1})=(l^{89},l^{97},l^{32}) where l is the primitive element in \mathbb{F}_{2^7}^*.

Source and licence

The text on this page is from arXiv:2202.03009v1 by Wrya K. Kadir, Chunlei Li and Ferdinando Zullo, under the licence CC BY 4.0. The corpus made these changes: it read the items out of the LaTeX source, it expanded the macros of the paper, it put each proof after its statement, and it converted the text to HTML. The formulas are the TeX of the paper, and KaTeX renders them. A formula or a reference can look different from the PDF. The page is published under CC BY 4.0.

The record of each item is in analysis/objects/2202/2202.03009.jsonl.