编码理论是一个重要的数学分支, 在大数据和云存储系统的发展中, 分布式存储技术起到了重要作用, 因此, 应用于此的局部修复码[1]被研究者提出。局部修复码是一类特殊的纠删码, 其码字的任一信息位发生错误都可通过访问其他固定数量的信息位进行恢复。如果分布式存储系统的某一节点发生损坏, 则该节点存储的信息可立即通过读取其他不超过r个相关节点予以修复, r即被称为码的局部修复度[2]。在现有的分布式存储系统中, 评估一个编码方案性能主要可以从以下3个方面考量[3-4]:首先是修复过程中传输的数据量, 称为修复带宽, 文献[5]对其进行研究并得到一个界, 将符合此界的码称作再生码; 其次是单个节点修复过程中存储系统读取的数据量, 称为磁盘读写量, 文献[6-7]对此进行了研究; 最后是修复任意节点错误所需要访问的其他节点数量, 称为码的局部修复度。本文主要通过代数方法, 由部分已知的最优码得到五元域上所有最优码, 并在此基础上分析得到五元域上局部修复度尽可能小的码。
1 预备知识定义1 设F5={0, 1, 2, 3, 4}, F5n为F5上n维向量空间, 若C为F5的k维子空间, 则称C为5元码长为n的k维线性码[8]。C中每一个向量称为C的一个码字。若C中所有非零码字的最小Hamming重量为d, 则称d为C的最小距离, 记为C=[n, k, d]5。
定义2 对于任意线性码C=[n, k, d]q, 以C的任意一组基为行向量构成的矩阵G, 称为C的生成矩阵[8]。
定义3 在线性码C=[n, k, d]q中, 若C的任意码字中每一位都与其他至多r位线性相关, 则称C为局部修复码, 其局部修复度为r[8]。
文献[9]指出可以通过判断一个线性码生成矩阵中列向量之间的线性相关关系来得出这个码的局部修复度。
定义4 Cadamb-Mazumdar(C-M)界[10]
一个局部修复度为r的[n, k, d]5码满足以下关系:
$ k \leqslant \min\limits_{t \in \mathbb{Z}^{+}}\left\{t r+k_{\mathrm{opt}}^{q}(n-t(r+1), d)\right\} $ |
其中, koptq(n, d)是给定码长n、域q和d时可能达到的最大维数。更一般地, 包含可用度t的界可参考。
引理1 设一个长度为n的线性码的生成矩阵G=(g1g2…gn), 若对于∀i∈{1, 2, …, n}, 设集合Ai⊆{1, 2, …, n}\{i}, gi可被至多r个gj线性表示(j∈Ai), 则矩阵G生成码的局部修复度为r[9]。
定义5
1) 下文讨论的均为五元线性码, 令1n=(1, 1, …, 1)1×n, 0n=(0, 0, …, 0)1×n, 用N(a, b)表示集合({a, a+1, a+2, …, b})。
2) 将矩阵看作其中所有列向量的集合, 若A为一个矩阵, α为A中一个列向量, 则可记作α∈A, 用(A\α)表示在A中删除α后剩余列向量构成的矩阵, 用mA表示m个矩阵A并置而成的新矩阵(
设
令
$ {\mathit{\boldsymbol{S}}_k} = \left( {\begin{array}{*{20}{c}} {{\mathit{\boldsymbol{S}}_{k - 1}}}&{{\mathit{\boldsymbol{0}}}_{k - 1}^{\rm{T}}}&{{{\mathit{\boldsymbol{S}}}_{k - 1}}}&{{{\mathit{\boldsymbol{S}}}_{k - 1}}}&{{{\mathit{\boldsymbol{S}}}_{k - 1}}}&{{{\mathit{\boldsymbol{S}}}_{k - 1}}}\\ {{{\mathit{\boldsymbol{0}}}_{{n_{k - 1}}}}}&1&{{{\mathit{\boldsymbol{1}}}_{{n_{k - 1}}}}}&{2 \cdot {{\mathit{\boldsymbol{1}}}_{{n_{k - 1}}}}}&{3 \cdot {{\mathit{\boldsymbol{1}}}_{{n_{k - 1}}}}}&{4 \cdot {{\mathit{\boldsymbol{1}}}_{{n_{k - 1}}}}} \end{array}} \right)\\ \boldsymbol{M}_{k}=\left(\begin{array}{ccccc}{{\bf 0}_{k-1}^{\mathrm{T}}} & {\boldsymbol{S}_{k-1}} & {\boldsymbol{S}_{k-1}} & {\boldsymbol{S}_{k-1}} & {\boldsymbol{S}_{k-1}} \\ {1} & {{\bf 1}_{n_{k-1}}} & {2 \cdot {\bf 1}_{n_{k-1}}} & {3 \cdot {\bf 1}_{n_{k-1}}} & {4 \cdot {\bf 1}_{n_{k-1}}}\end{array}\right) $ |
显然Sk与Mk生成r=2的最优[nk, k, 5k-1]5码和最优[5k-1, k, 4·5k-2]5码[8]。为确定某些特殊形式最优码的局部度, 给出如下引理:
引理2 设Gk, n生成局修复部度为r的最优[n, k, d]码。若[n+1, k, d]码为最优, 则存在局部修复度为r的[n+1, k, d]最优码[11]。
引理3
1) 设Gk, n1生成局部修复度为r1的最优[n1, k, d1]码, Gk, n2生成局部修复度为r2的最优[n2, k, d2]码, 则Gk, n1+n2=(Gk, n1|Gk, n2)生成一个[n1+n2, k, d1+d2]码, 其局部修复度r≤min(r1, r2)。
2) 设[n, k, d]码与[2n, k, 2d]码均为最优, 则存在局部修复度为1的[2n, k, 2d]最优码[11]。
引理4 若三维最优码的生成矩阵含有矩阵
引理5 若三维最优码生成矩阵中任一重量为3的向量与其相邻的某一向量的线性组合重量为1, 则此码的局部修复度为2。
关于三维、四维五元最优码的存在性问题, 文献[12-14]中已给出了构造方法并解决。但在五元最优码的研究中, 局部修复度并没有得到重视, 并且对于一般给定参数的[n, k, d]5最优码, 达到此参数的最优码往往有许多个且它们具有不同的r值。如何构造r值尽可能小的[n, k, d]5最优码, 目前研究较少, 经过对现有文献的查阅和分析可知, 其中给出的最优码的r值多不理想。为此, 本文将从构造特殊码长的、具有较小r值的特殊最优码着手, 采用删截、扩展、并置等组合方法, 由一个码导出尽可能多的最优码, 再根据周期规律和达到Griesmer界的码的情况, 得到所有三维、四维最优码, 其中特殊码长的最优生成矩阵参考magma数据库[15]。
2 三维最优码的局部修复度分析当k=3、n=4时, 显然存在局部修复度r=3的最优[4, 3, 2]码。因此, 下文将对三维第一周期内最优线性码按照码长为5≤n≤31、32≤n≤63、n≥93 3种情况进行讨论。为简化分析过程, 本文通过分析最优码生成矩阵列向量的线性相关性确定其r值。
2.1 5≤n≤62时的三维最优码及局部修复度码长满足5≤n≤62时的三维最优码及局部修复度分析如下:
1) 当n=4, 5, 6, 8, 12, 38, 43, 44, 48, 49时, 其最优码生成矩阵由magma数据库[15]给出, 由r≤k可知其局部修复度为3。
2)
3) 当n=50时, G3, 50=(G3, 25|G3, 25), 显然其生成r=1的最优码。
4) 当n∈[17, 30]时, G3, n可由S3从最后删去第1列~第14列得到。因此, G3, n生成最优码的局部修复度为2。
5) 当n∈[32, 37], [39, 42], [45, 47]或[51, 62]时, G3, n=(G3, n-31|S3)生成的最优码的局部修复度为2。
2.2 63≤n≤93时的三维最优码及局部修复度当n=62+i(i=8, 13, 14, 18, 19, 20)时, G3, n=(G3, n-31|S3)生成的最优码局部修复度为2。
对于其余的n, 则G3, n=(Gn-62|S3|S3), 显然G3, n生成的最优码局部修复度为1。
2.3 n≥94时的三维最优码及局部修复度若n=31t+j1(0≤j1≤30), 则t≥3。令G3, n=(G3, 31+j|G3, 62)。因为G3, 62=(S3|S3)所生成的最优码局部修复为1, 所以G3, n生成的最优码局部修复度为1。
定理1 当k=3且n=31u+w时, w∈[1, 31]。
1) 当u=0且n=4, 5, 6, 8, 12时, G3, n生成最优码的局部修复度为3, 其余的最优码局部修复度为2。
2) 当u=1且n=38, 43, 44, 48, 49时, G3, n生成最优码的局部修复度为3;当n=50时, G3, n生成最优码的局部修复度为1, 其余的最优码局部修复度为2。
3) 当u=2且n=70, 75, 76, 80, 81, 82时, G3, n生成最优码的局部修复度为2, 其余的最优码局部修复度为1。
4) 当u≥3时, G3, n生成最优码的局部修复度为1。
3 四维最优码的局部修复度分析为解决四维最优码的局部修复度确定问题, 本文利用有限几何理论先构造特定码长的四维最优码, 然后再按照码长157≤n≤624以及n≥625分情况讨论四维最优码的构造和局部修复度。
3.1 5≤n≤156时的四维最优码及局部修复度码长满足5≤n≤156时的四维最优码及局部修复度分析如下:
1) 当n∈[115, 156]时, 分2种情况讨论:
(1) G4, 156=S4和G4, 125=
(2) 构造:
$ \boldsymbol{G}_{4, 138}=\boldsymbol{S}_{4} \backslash\left(\begin{array}{cc}{\boldsymbol{S}_{2}} &{\boldsymbol{0}_{2 \times 6} }&\boldsymbol{S}_{2} \\ {\boldsymbol{0}_{2 \times 6}} & {\boldsymbol{S}_{2}}&\boldsymbol{S}_{2}\end{array}\right)\\ \boldsymbol{G}_{4, 132}=\boldsymbol{S}_{4} \backslash\left(\begin{array}{c}{\boldsymbol{S}_{2} \boldsymbol{0}_{2 \times 6} \boldsymbol{S}_{2} \boldsymbol{S}_{2}} \\ {{\bf 0}_{2 \times 6} \boldsymbol{S}_{2} \boldsymbol{S}_{2} 2 \boldsymbol{S}_{2}}\end{array}\right)\\ \boldsymbol{G}_{4, 144}=\boldsymbol{S}_{4} \backslash\left(\begin{array}{cc}{\boldsymbol{S}_{2}} &\boldsymbol{0}_{2 \times 6} \\ {{\bf 0}_{2 \times 6}} & {\boldsymbol{S}_{2}}\end{array}\right) $ |
可由G4, 144, G4, 138和G4, 132分别删去前第1列~第5列得n∈[126, 131], [133, 137], [139, 143]时r=2的最优码。
2) 当n=114, 108, 102, 95, 89, 83, 75, 70, 64, 58, 52, 46, 42, 32, 27, 16, 12时, 本文通过magma数据库[16]得到最优码生成矩阵G4, n, 对其进行首一化以后删列向量得到本周期内其余矩阵。
记删截G4, n的最后1至p列得到的矩阵为G4, m(n-p≤m≤n-1), G4, m生成的最优码的r不变。
(1) 当n=114, 108, 95, 89, 83, 75, 70, 64, 58, 52, 12时, 令p=5, 则G4, m生成r=2的最优码。
(2) 当n=52, 12时, p=5, 则G4, m生成r=3的最优码。
(3) 当n=39, 102时, p=6, 则G4, m生成r=2的最优码。
(4) 当n=27时, p=10, 则G4, m生成r=2的最优码。
(5) 当n=32时, p=4, 则G4, m生成r=3的最优码。
(6) 当n=46时, p=3, 则G4, m生成r=2的最优码。
(7) 当n=42时, p=2, 则G4, m生成r=2的最优码。
(8) 当n=16时, p=3, 则G4, m生成r=3的最优码。
3) 当n=5, 6, 77时, G4, 5、G4, 6、G4, 77如下所示。
$ \boldsymbol{G}_{4, 5}=\left(\begin{array}{c}{10001} \\ {01001} \\ {00101} \\ {00011}\end{array}\right), \boldsymbol{G}_{4, 6}=\left(\begin{array}{c}{100011} \\ {010012} \\ {001021} \\ {000132}\end{array}\right) $ |
$ \boldsymbol{G}_{4, 77}=\left(\begin{array}{c} {10001100101110011100111111101110111101101110011011111111111111111111111111111}\\ {01002000010341111211002322413021400014114001114101443223144122431113441113222}\\ {00100411140000100023234200143322021342313321200340433431313214131111443241112}\\ {00010013001002421231430041010402314230030421441213131113324232442134431142414} \end{array}\right) $ |
其中:G4, 5、G4, 6生成的最优码局部修复度为4;G4, 77生成的最优码的局部修复度为2。
3.2 157≤n≤624时的四维最优码及局部修复度在3.1节的基础上, 下面分6种类型具体给出最优码的生成矩阵并分析其局部修复度。
1) 若n∈[159, 161], [166, 167], [178, 181]或[284, 311], 构造G4, n=(G4, n-155|G4, 155)。G4, 155含有矩阵O, 根据引理4, G4, n生成r=2的最优码。
2) 若n∈[171, 177], [221, 227], [316, 331], 构造G4, n=(G4, n-150|G4, 150)。显然G4, 150生成最优码的r=2, G4, n-150生成最优码且r=2, 因此G4, n生成r=2的最优码。
3) 若n=220或属于以下任意一个区间:[162, 165], [183, 189], [190, 202], [203, 219], [245, 283], [312, 315], [345, 377], [407, 432], [496, 500], [515, 531], 构造G4, n=(G4, n-125|G4, 125)。同理可得G4, n生成r=2的最优码。
4) 若n∈[378, 406], 构造G4, n=(G4, n-250|G4, 250)。由引理3可得G4, 250=(G4, 125|G4, 125)生成最优码且r=1, 因此, G4, n生成r=1的最优码。
5) 若n∈[433, 468], [469, 495], [501, 514], [532, 624], 构造G4, n=(G4, n-312|A4, 312)。G4, 312=(G4, 156|G4, 156)生成最优码且r=1, 因此G4, n生成r=1的最优码。
6) 若n∈[239, 243], G4, n为G4, 244分别删去第1列~第5列得到。G4, 244生成最优码且r=2, 可得G4, n生成r=2的最优码。
利用文献[12]和Griesme界可逐条验证上述G4, n生成的最优线性码。
3.3 n≥625时的四维最优码及局部修复度n≥625时的四维最优码及局部修复度分析如下:
1) 若625≤n≤780, 令n1=n-312, 则313≤n1≤468, 构造G4, n=(G4, n-312|G4, 312)。显然, G4, n生成最优码的局部修复度为1。
2) 若n≥781, 令n=156×t+n2, 0≤n2≤155, 则t≥5。构造G4, n=(G4, 468+n2|G4, 312)。显然, G4, n生成最优码的局部修复度为1。
定理2 当k=4时, n=156h+v, v∈[1, 156]。
1) 当h=0且n∈[5, 6]时, G4, n生成最优码的局部修复度为3;当n∈[7, 12], [13, 16], [28, 32]或[47, 52]时, G4, n生成最优码的局部修复度为3;其余的最优码局部修复度为2。
2) 当h∈[1, 3]且n∈[378, 406], [433, 468], [469, 495], [501, 514], [532, 624]时, G4, n生成最优码的局部修复度为1。其余的最优码局部修复度为2。
3) 当h≥4时, G4, n生成最优码的局部修复度为1。
4 三维、四维最优码的局部修复度最优性分析上文构造了维数k=3、k=4的最优码, 且由定义4可以验证构造的这些码多数达到了C-M界。表 1列出了未达到C-M界[n, k]5的码长n和维数k。
![]() |
下载CSV 表 1 未达到C-M界的[n, k]5码 |
本文利用部分已知五元域上三维、四维最优码的生成矩阵, 通过删截、扩展和并置等方法, 得到五元域上所有最优[n, 3, d]5和[n, 4, d]5码, 并分析所得生成矩阵列向量之间的线性相关关系, 构造码长n≥3、局部修复度r≤4的[n, 3, d]5码和[n, 4, d]5码。下一步将在所得最优码的基础上, 分析其线性自对偶性质, 在得到参数较优的LCD码后, 研究基于纠缠辅助的量子纠错码。
[1] |
GOPALAN P, HUANG C, SIMITCI H, et al. On the locality of codeword symbols[J]. IEEE Transactions on Information Theory, 2012, 58(11): 6925-6934. DOI:10.1109/TIT.2012.2208937 ( ![]() |
[2] |
RAWAT A, PAPAILIOPOULOS D, DIMAKIS A, et al. Locality and availability in distributed storage[J]. IEEE Transactions on Information Theory, 2016, 62(8): 4481-4493. DOI:10.1109/TIT.2016.2524510 ( ![]() |
[3] |
CADAMBE V, MAZUMDAR A. An upper bound on the size of locally recoverable codes[J]. IEEE International Symposium on Network Coding, 2015, 61(11): 1-5. ( ![]() |
[4] |
SILBERSTEIN N, RAWAT A, KOYLUOGLU O, et al.Optimal locally repairable codes via rank-metric codes[C]//Proceedings of IEEE International Symposium on Information Theory.Washington D.C., USA: IEEE Press, 2013: 1-8. http://www.oalib.com/paper/3842546
( ![]() |
[5] |
TAMO I, PAPAILIOPOULOS D, DIMAKIS A. Optimal locally repairable codes and connections to matroid theory[J]. IEEE Transactions on Information Theory, 2013, 62(12): 6661-6671. ( ![]() |
[6] |
TAMO I, BARG A. A family of optimal locally recoverable codes[J]. IEEE Transactions on Information Theory, 2013, 60(8): 4661-4676. ( ![]() |
[7] |
PRAKASH N, KAMATH G, LALITHA V, et al.Optimal linear codes with a local-error-correction property[C]//Proceedings of IEEE International Symposium on Information Theory.Washington D.C., USA: IEEE Press, 2012: 2776-2780. http://www.oalib.com/paper/3948473
( ![]() |
[8] |
杨瑞磻, 李瑞虎, 郭罗斌, 等. 五维三元最优线性码的局部度[J]. 空军工程大学学报(自然科学版), 2017, 18(4): 105-111. DOI:10.3969/j.issn.1009-3516.2017.04.018 ( ![]() |
[9] |
HUANG Pengfei, YAAKOBI E, UCHIKAWA H, et al. Binary linear locally repairable codes[J]. IEEE Transactions on Information Theory, 2016, 62(11): 6268-6283. DOI:10.1109/TIT.2016.2605119 ( ![]() |
[10] |
RAWAT A, PAPAILIOPOULOS D, DIMAKIS A, et al. Locality and availability in distributed storage[J]. IEEE Information Theory Society, 2016, 62(8): 4481-4493. DOI:10.1109/TIT.2016.2524510 ( ![]() |
[11] |
饶驿, 李瑞虎, 付强, 等. 短码长二元循环码的局部修复度[J]. 空军工程大学学报(自然科学版), 2017, 18(2): 106-110. DOI:10.3969/j.issn.1009-3516.2017.02.018 ( ![]() |
[12] |
BOUKLIEV I, KAPRALOV S, MARUTA T, et al. Optimal linear codes of dimension 4 over F5[J]. IEEE Transactions on Information Theory, 1997, 43(1): 308-313. DOI:10.1109/18.567723 ( ![]() |
[13] |
MARUTA T. On the nonexistence of q-ary linear codes of dimension five[J]. Designs Codes and Cryptography, 2001, 22(2): 165-177. DOI:10.1023/A:1008317022638 ( ![]() |
[14] |
宋倩, 李瑞虎, 付强, 等. 五元域上LCD码的构造[J]. 空军工程大学学报(自然科学版), 2018, 19(5): 100-105. ( ![]() |
[15] |
CANNON J, BOSMA W.The generator matrices of optimal codes[EB/OL].[2018-01-15].http://magma.maths.usyd.edu.au/magma/download/db/.
( ![]() |