The structure of linear dependence relations between coded symbols of a linear code, irrespective of specific coefficients involved, is referred to as the {\em topology} of the code. The specification of coefficients is referred to as an {\em instantiation} of the topology. In this paper, we propose a new block circulant topology $T_{[\mu,\lambda,\omega]}(\rho)$ parameterized by integers $\rho \geq 2$, $\omega \geq 1$, $\lambda \geq 2$, and $\mu$ a multiple of $\lambda$. In this topology, the code has $\mu$ local codes with $\rho$ parity-check (p-c) constraints and a total of $\mu\rho$ p-c equations fully define the code. Next, we construct a class of block circulant (BC) codes ${\cal C}_{\text{BC}}[\mu,\lambda,\omega,\rho]$ with blocklength $n=\mu(\rho+\omega)$, dimension $k=\mu\omega$ that instantiate $T_{[\mu,\lambda,\omega]}(\rho)$. Every local code of ${\cal C}_{\text{BC}}[\mu,\lambda,\omega,\rho]$ is a $[\rho+\lambda\omega,\lambda\omega,\rho+1]$ generalized Reed-Solomon (RS) code. The overlap between supports of local codes helps to enhance the minimum distance $\rho+1$ to $2\rho+1$, without compromising much on the rate. We provide an efficient, parallelizable decoding algorithm to correct $2\rho$ erasures when $\lambda=2$. Finally, we illustrate that the BC codes serve as a viable alternative to 2D RS codes in protocols designed to tackle blockchain networks' data availability (DA) problem. In these protocols, every node in a network of light nodes randomly queries symbols from a codeword stored in full nodes and verifies them using a cryptographic commitment scheme. For the same performance in tackling the DA problem, the BC code requires querying a smaller number of symbols than a comparable 2D RS code for a fixed high rate. Furthermore, the number of local codes in the BC code is typically smaller, yielding a reduction in the complexity of realizing the commitment scheme.
翻译:线性码编码符号间的线性依赖关系结构,无论涉及的具体系数如何,被称为该码的{\em 拓扑}。系数的具体指定则被称为该拓扑的{\em 实例化}。本文提出了一种新的块循环拓扑 $T_{[\mu,\lambda,\omega]}(\rho)$,其参数为整数 $\rho \geq 2$、$\omega \geq 1$、$\lambda \geq 2$,且 $\mu$ 为 $\lambda$ 的倍数。在此拓扑中,该码具有 $\mu$ 个局部码,每个局部码有 $\rho$ 个奇偶校验约束,总共 $\mu\rho$ 个奇偶校验方程完全定义了该码。接着,我们构造了一类块循环码 ${\cal C}_{\text{BC}}[\mu,\lambda,\omega,\rho]$,其码块长度 $n=\mu(\rho+\omega)$,维数 $k=\mu\omega$,它们是 $T_{[\mu,\lambda,\omega]}(\rho)$ 的实例化。${\cal C}_{\text{BC}}[\mu,\lambda,\omega,\rho]$ 的每个局部码都是一个 $[\rho+\lambda\omega,\lambda\omega,\rho+1]$ 广义里德-所罗门码。局部码支撑集之间的重叠有助于将最小距离 $\rho+1$ 提升至 $2\rho+1$,而不会过多牺牲码率。我们提供了一种高效的、可并行化的译码算法,当 $\lambda=2$ 时能够纠正 $2\rho$ 个擦除。最后,我们阐明在旨在解决区块链网络数据可用性问题的协议中,块循环码可作为二维RS码的可行替代方案。在这些协议中,由轻节点组成的网络中的每个节点,会从存储在完整节点中的码字里随机查询符号,并使用密码学承诺方案对其进行验证。在解决数据可用性问题时,为了达到相同的性能,在固定的高码率下,块循环码需要查询的符号数量少于可比的二维RS码。此外,块循环码中的局部码数量通常更少,从而降低了实现承诺方案的复杂度。