Table of Contents
Fetching ...

An Efficient Algorithm to Sample Quantum Low-Density Parity-Check Codes

Paolo Santini

TL;DR

An efficient algorithm to sample random sparse matrices to be used as check matrices for quantum Low-Density Parity-Check (LDPC) codes and gives a theoretical characterization of the algorithm, determining which ranges of parameters can be sampled as well as the expected computational complexity.

Abstract

In this paper, we present an efficient algorithm to sample random sparse matrices to be used as check matrices for quantum Low-Density Parity-Check (LDPC) codes. To ease the treatment, we mainly describe our algorithm as a technique to sample a dual-containing binary LDPC code, hence, a sparse matrix $\mathbf H\in\mathbb F_2^{r\times n}$ such that $\mathbf H\mathbf H^\top = \mathbf 0$. However, as we show, the algorithm can be easily generalized to sample dual-containing LDPC codes over non binary finite fields as well as more general quantum stabilizer LDPC codes. While several constructions already exist, all of them are somewhat algebraic as they impose some specific property (e.g., the matrix being quasi-cyclic). Instead, our algorithm is purely combinatorial as we do not require anything apart from the rows of $\mathbf H$ being sparse enough. In this sense, we can think of our algorithm as a way to sample sparse, self-orthogonal matrices that are as random as possible. Our algorithm is conceptually very simple and, as a key ingredient, uses Information Set Decoding (ISD) to sample the rows of $\mathbf H$, one at a time. The use of ISD is fundamental as, without it, efficient sampling would not be feasible. We give a theoretical characterization of our algorithm, determining which ranges of parameters can be sampled as well as the expected computational complexity. Numerical simulations and benchmarks confirm the feasibility and efficiency of our approach.

An Efficient Algorithm to Sample Quantum Low-Density Parity-Check Codes

TL;DR

An efficient algorithm to sample random sparse matrices to be used as check matrices for quantum Low-Density Parity-Check (LDPC) codes and gives a theoretical characterization of the algorithm, determining which ranges of parameters can be sampled as well as the expected computational complexity.

Abstract

In this paper, we present an efficient algorithm to sample random sparse matrices to be used as check matrices for quantum Low-Density Parity-Check (LDPC) codes. To ease the treatment, we mainly describe our algorithm as a technique to sample a dual-containing binary LDPC code, hence, a sparse matrix such that . However, as we show, the algorithm can be easily generalized to sample dual-containing LDPC codes over non binary finite fields as well as more general quantum stabilizer LDPC codes. While several constructions already exist, all of them are somewhat algebraic as they impose some specific property (e.g., the matrix being quasi-cyclic). Instead, our algorithm is purely combinatorial as we do not require anything apart from the rows of being sparse enough. In this sense, we can think of our algorithm as a way to sample sparse, self-orthogonal matrices that are as random as possible. Our algorithm is conceptually very simple and, as a key ingredient, uses Information Set Decoding (ISD) to sample the rows of , one at a time. The use of ISD is fundamental as, without it, efficient sampling would not be feasible. We give a theoretical characterization of our algorithm, determining which ranges of parameters can be sampled as well as the expected computational complexity. Numerical simulations and benchmarks confirm the feasibility and efficiency of our approach.
Paper Structure (28 sections, 8 theorems, 50 equations, 5 figures, 3 tables, 2 algorithms)

This paper contains 28 sections, 8 theorems, 50 equations, 5 figures, 3 tables, 2 algorithms.

Key Result

Theorem 1

For parameters $r,n\in\mathbb N$, let $\mathcal{U}_{n,r}$ be the uniform distribution over $\mathbb F_2^{r\times n}$. Then, the $w$-th coefficient of the EWD is

Figures (5)

  • Figure 1: Initial coefficients for the EWD for codes from $\mathcal{H}_{n,r,v}$, for $n = 1000$, $r = 500$ and several values of $v$. The EWD for random codes with the same parameters is plotted as a dashed black curve.
  • Figure 2: Values of $\log_2(m_w)$ for $R = 0.8$ and several choices for $w$. In Figure \ref{['fig:sqrt']} we have $v = \sqrt[4]{n}$ while, in Figure \ref{['fig:log']}, we have $v = \ln^2(n)$. In both figures, marks indicate the (logarithm of) EWD coefficients computed with the actual distribution, while dotted lines are used for the Bernoulli approximation. Notice that lines get, in some cases, stepped because we had to round $n$, $r$ and $v$ to integers. This is more evident in Figure \ref{['fig:log']} because the figure reports smaller values of $n$ and $\log_2(m_w)$.
  • Figure 3: Values of $\log_2(m_w)$ for $R = 0.8$, $w = \ln(n)$ and several values of $v$.
  • Figure 4: Comparison between theoretical and empirical EWD. The empirical EWD has been estimated by averaging the weight distributions of $10^4$ codes. In both figures, markers are used for the empirical EWD, while dotted lines are employed for the theoretical EWD. For both figures, we have considered $n = 50$; in Figure \ref{['fig:n50_v3']} we have $v = 3$, in Figure \ref{['fig:n50_v5']} instead $v = 5$.
  • Figure 5: Average number of columns with weight $z$, for several code parameters. Continuous lines refer to theoretical estimates, markers refer to experimental values. For each parameters set, we have sampled 100 codes.

Theorems & Definitions (11)

  • Theorem 1
  • Remark 1
  • Theorem 2
  • Proposition 1
  • Remark 2
  • Definition 1
  • Theorem 3
  • Theorem 4
  • Theorem 5
  • Theorem 6
  • ...and 1 more