Coding with Constraints: Different Flavors Hoang Dau University of Illinois at Urbana-Champaign 1 Email: hoangdau@uiuc.edu DIMACS Workshop on Network Coding: the Next 15 Years Rutgers University, NJ, 2015
Part I Coding with Constraints: A Quick Survey
Coding with Constraints: Definition π 1 π 2 π¦ 1 π¦ 2 π coded π data ENCODED symbols symbols π¦ π π π CONVENTIONAL CODE π π = π π (π¦ 1 , π¦ 2 , β¦ , π¦ π ) 3
Coding with Constraints: Definition π 1 π 2 π¦ 1 π¦ 2 π coded π data ENCODED symbols symbols π¦ π π π CODE WITH CONSTRAINTS CONVENTIONAL CODE π π = π π ({π¦ π : π β π· π }) , π· π β {1,2, β¦ , π} π π = π π (π¦ 1 , π¦ 2 , β¦ , π¦ π ) 4
Coding with Constraints: Example = π 1 (π¦ 1 , π¦ 2 ) π 1 π¦ 1 = π 2 (π¦ 1 , π¦ 3 ) π 2 π¦ 2 π 3 = π 3 (π¦ 2 ) π¦ 3 π 4 = π 4 (π¦ 2 , π¦ 3 ) π 5 = π 5 (π¦ 1 , π¦ 3 ) 5
Coding with Constraints: Example = π 1 (π¦ 1 , π¦ 2 ) π 1 π¦ 1 = π 2 (π¦ 1 , π¦ 3 ) π 2 π¦ 2 π 3 = π 3 (π¦ 2 ) π¦ 3 π 4 = π 4 (π¦ 2 , π¦ 3 ) π 5 = π 5 (π¦ 1 , π¦ 3 ) Linear code: π 1 , π 2 , π 3 , π 4 , π 5 = π¦ 1 , π¦ 2 , π¦ 3 π― where the generator matrix π― is ? ? 0 0 ? π― = ? 0 ? ? 0 0 ? 0 ? ? 6
Coding with Constraints: Main Problem Given the constraints π π = π π ({π¦ π : π β π· π }) , π· π β {1,2, β¦ , π} how to construct codes that β achieve the optimal minimum distance β over small field size π β poly π
Coding with Constraints: Main Problem Given the constraints π π = π π ({π¦ π : π β π· π }) , π· π β {1,2, β¦ , π} how to construct codes that β achieve the optimal minimum distance β over small field size π β poly π Linear case: given ? ? 0 0 ? π― = ? 0 ? ? 0 0 ? 0 ? ? how to replace β?β -entries by elements of πΊ π ( π β poly(π) ) so that π― generate a code with optimal distance
Coding with Constraints: Upper Bound Upper Bound (Halbawi-Thill- Hassibiβ15, Song -Dau- Yuenβ15) π β€ π πππ¦ = 1 + β β π½β 1,β¦,π ( βͺ πβπ½ π π β |π½|) min where π π = {π: π β π· π }
Coding with Constraints: Upper Bound Upper Bound (Halbawi-Thill- Hassibiβ15, Song -Dau- Yuenβ15) π β€ π πππ¦ = 1 + β β π½β 1,β¦,π ( βͺ πβπ½ π π β |π½|) min where π π = {π: π β π· π } Properties β π πππ¦ can be found in time poly(π) π β codes with π = π πππ¦ always exists over fields of size β π β 1
Coding with Constraints: Upper Bound Upper Bound (Halbawi-Thill- Hassibiβ15, Song -Dau- Yuenβ15) π β€ π πππ¦ = 1 + β β π½β 1,β¦,π ( βͺ πβπ½ π π β |π½|) min where π π = {π: π β π· π } Properties β π πππ¦ can be found in time poly(π) π β codes with π = π πππ¦ always exists over fields of size β π β 1 Question of interest: how about fields of size poly(π) ?
Coding with Constraints: Review (Small field) MDS Case: π πππ¦ = π β π + 1 β Optimal codes exist in a few special cases (Halbawi-Ho-Yao- Duursma β14, Dau-Song-Yuen β14 , Yan-Sprintson- Zelenkoβ 14)
Coding with Constraints: Review (Small field) MDS Case: π πππ¦ = π β π + 1 β Optimal codes exist in a few special cases (Halbawi-Ho-Yao- Duursma β14, Dau-Song-Yuen β14 , Yan-Sprintson- Zelenkoβ 14) β’ π β€ 4 (every π )
Coding with Constraints: Review (Small field) MDS Case: π πππ¦ = π β π + 1 β Optimal codes exist in a few special cases (Halbawi-Ho-Yao- Duursma β14, Dau-Song-Yuen β14 , Yan-Sprintson- Zelenkoβ 14) β’ π β€ 4 (every π ) β’ rows of π― partitioned into β€ 3 groups, each has same β?β -pattern
Coding with Constraints: Review (Small field) MDS Case: π πππ¦ = π β π + 1 β Optimal codes exist in a few special cases (Halbawi-Ho-Yao- Duursma β14, Dau-Song-Yuen β14 , Yan-Sprintson- Zelenkoβ 14) β’ π β€ 4 (every π ) β’ rows of π― partitioned into β€ 3 groups, each has same β?β -pattern β’ rows have π β 1 zeros & 2 different rows share β€ 1 common zeros
Coding with Constraints: Review (Small field) MDS Case: π πππ¦ = π β π + 1 β Optimal codes exist in a few special cases (Halbawi-Ho-Yao- Duursma β14, Dau-Song-Yuen β14 , Yan-Sprintson- Zelenkoβ 14) β’ π β€ 4 (every π ) β’ rows of π― partitioned into β€ 3 groups, each has same β?β -pattern β’ rows have π β 1 zeros & 2 different rows share β€ 1 common zeros General Case (Halbawi-Thill- Hassibiβ15 ): π πππ¦ β€ π β π + 1
Coding with Constraints: Review (Small field) MDS Case: π πππ¦ = π β π + 1 β Optimal codes exist in a few special cases (Halbawi-Ho-Yao- Duursma β14, Dau-Song-Yuen β14 , Yan-Sprintson- Zelenkoβ 14) β’ π β€ 4 (every π ) β’ rows of π― partitioned into β€ 3 groups, each has same β?β -pattern β’ rows have π β 1 zeros & 2 different rows share β€ 1 common zeros General Case (Halbawi-Thill- Hassibiβ15 ): π πππ¦ β€ π β π + 1 β Optimal codes exist if there are β₯ π πππ¦ β 1 indices π βs where π· π = π
Coding with Constraints: Review (Small field) MDS Case: π πππ¦ = π β π + 1 β Optimal codes exist in a few special cases (Halbawi-Ho-Yao- Duursma β14, Dau-Song-Yuen β14 , Yan-Sprintson- Zelenkoβ 14) β’ π β€ 4 (every π ) β’ rows of π― partitioned into β€ 3 groups, each has same β?β -pattern β’ rows have π β 1 zeros & 2 different rows share β€ 1 common zeros General Case (Halbawi-Thill- Hassibiβ15 ): π πππ¦ β€ π β π + 1 β Optimal codes exist if there are β₯ π πππ¦ β 1 indices π βs where π· π = π β Optimal systematic codes always exists (smaller bound π π‘π§π‘ β€ π πππ¦ )
Coding with Constraints: Review (Small field) MDS Case: π πππ¦ = π β π + 1 β Optimal codes exist in a few special cases (Halbawi-Ho-Yao- Duursma β14, Dau-Song-Yuen β14 , Yan-Sprintson- Zelenkoβ 14) β’ π β€ 4 (every π ) β’ rows of π― partitioned into β€ 3 groups, each has same β?β -pattern β’ rows have π β 1 zeros & 2 different rows share β€ 1 common zeros General Case (Halbawi-Thill- Hassibiβ15 ): π πππ¦ β€ π β π + 1 β Optimal codes exist if there are β₯ π πππ¦ β 1 indices π βs where π· π = π β Optimal systematic codes always exists (smaller bound π π‘π§π‘ β€ π πππ¦ ) Common Technique: Reed-Solomon (sub-) code
Coding with Constraints: Review Common Technique: Reed-Solomon (sub-) code = π 1 (π¦ 1 , π¦ 2 ) π 1 π¦ 1 = π 2 (π¦ 1 , π¦ 3 ) π 2 π¦ 2 π 3 = π 3 (π¦ 2 ) π¦ 3 π 4 = π 4 (π¦ 2 , π¦ 3 ) π 5 = π 5 (π¦ 1 , π¦ 3 ) ? ? 0 0 ? π― = ? 0 ? ? 0 0 ? 0 ? ?
Coding with Constraints: Review Common Technique: Reed-Solomon (sub-) code = π 1 (π¦ 1 , π¦ 2 ) π 1 π¦ 1 = π 2 (π¦ 1 , π¦ 3 ) π 2 π¦ 2 π 3 = π 3 (π¦ 2 ) π¦ 3 π 4 = π 4 (π¦ 2 , π¦ 3 ) π 5 = π 5 (π¦ 1 , π¦ 3 ) π½ 1 π½ 2 π½ 3 π½ 4 π½ 5 ? ? 0 0 ? π― = ? 0 ? ? 0 0 ? 0 ? ?
Coding with Constraints: Review Common Technique: Reed-Solomon (sub-) code = π 1 (π¦ 1 , π¦ 2 ) π 1 π¦ 1 = π 2 (π¦ 1 , π¦ 3 ) π 2 π¦ 2 π 3 = π 3 (π¦ 2 ) π¦ 3 π 4 = π 4 (π¦ 2 , π¦ 3 ) π 5 = π 5 (π¦ 1 , π¦ 3 ) π½ 1 π½ 2 π½ 3 π½ 4 π½ 5 π 1 (π½ 1 ) π 1 (π½ 2 ) 0 0 π 1 (π½ 5 ) ? ? 0 0 ? π 2 (π½ 1 ) 0 π 2 (π½ 3 ) π 2 (π½ 4 ) 0 π― = = ? 0 ? ? 0 0 ? 0 ? ? 0 π 3 (π½ 2 ) 0 π 3 (π½ 4 ) π 3 (π½ 5 )
Coding with Constraints: Review Common Technique: Reed-Solomon (sub-) code = π 1 (π¦ 1 , π¦ 2 ) π 1 π¦ 1 = π 2 (π¦ 1 , π¦ 3 ) π 2 π¦ 2 π 3 = π 3 (π¦ 2 ) π¦ 3 π 4 = π 4 (π¦ 2 , π¦ 3 ) π 5 = π 5 (π¦ 1 , π¦ 3 ) π½ 1 π½ 2 π½ 3 π½ 4 π½ 5 π 1 (π½ 1 ) π 1 (π½ 2 ) 0 0 π 1 (π½ 5 ) ? ? 0 0 ? π 2 (π½ 1 ) 0 π 2 (π½ 3 ) π 2 (π½ 4 ) 0 π― = = ? 0 ? ? 0 0 ? 0 ? ? 0 π 3 (π½ 2 ) 0 π 3 (π½ 4 ) π 3 (π½ 5 ) Difficulty: G may not be full rank
Part II: Joint Design of Different MDS Codes (joint work with H. Kiah, W. Song, and C. Yuen)
MDS Codes for Distributed Storage π 1 MDS: tolerate any π β π node failures π 2 π¦ 1 π¦ 2 π coded π data Encoded symbols symbols π¦ π Facebook: Reed-Solomon π = 14, π = 10 π π 25
Question of Interest β’ If two (or more) independent DSS share some common data, can we jointly design the corresponding MDS codes to get a better overall failure protection?
Recommend
More recommend