Download presentation
Presentation is loading. Please wait.
Published byΦιλομενος Φλέσσας Modified over 5 years ago
1
Soft decoding, dual BCH codes, & better -biased list decodable codes
Venkat Guruswami (U. of Washington) Atri Rudra (U. at Buffalo) Start with a slide, with work in blah blah. Worked in coding theory. Specific contribs blah and blah. State in course of work solved and closed a major theory problem– state this upfront
2
Error-correcting codes
C(x) x Mapping C : kn Dimension k, block length n n≥ k Rate = k/n 1 Efficient means polynomial in n Decoding Complexity : fraction of errors y Try to justify why n is increasing. Just say efficient is polynomial in n. Avoid saying family of codes. Mention what R is later. Write on the slide instead of just saying it. x Give up
3
Codes for Complexity Binary codes
Correct =½ - fraction of worst case errors 0 ( can depend on n) Unique decoding Cannot correct more than ¼ fraction of errors
4
The list decoding problem
Given a code and an error parameter For any received word w Output all codewords c such that c and w disagree in at most fraction of places (, L)-list decodable code (½-, poly(n))-list decodable code exist! Maybe remove capacity, mention spell checker
5
Applications of list decoding
Hardcore predicates from one way functions [Goldreich-Levin 89; Impagliazzo 97; Ta-Shama-Zuckerman 01] Worst-case vs. average-case hardness [Cai-Pavan-Sivakumar 99; Goldreich-Ron-Sudan 99; Sudan-Trevisan- Vadhan 99; Impagliazzo-Jaiswal-Kabanets 06] Pseudorandomness [Trevisan 99; Shaltiel-Umans 01; Ta-Shama-Zuckerman 01; Guruswami-Umans-Vadhan 07] Membership-Comparable Sets [Sivakumar 99] Approximating NP-Witnesses [Gal-Halevi-Lipton-Petrank 99, Kumar-Sivakumar99] 5 5
6
Approximating NP-witness
L is NP-complete Polytime computable relation R It is NP-hard to compute y given x Approximating the certificate? Compute w such that y and w differ in (½-)|y| positions [Kumar-Sivakumar 99] NP-hard to approximate x L y such that R(x,y) holds
7
Kumar-Sivakumar reduction
NP-hard to do approximation for relation R’ C is list decodable from ½- fraction of errors Main idea: Replace y with C(y) R’ is also polytime computable Decode C from zero error in poly time Keep track of required properties of C x L z such that R’(x,z) holds R’(x,z) holds if y s.t. R(x,y) holds and z=C(y) x L y such that R(x,y) holds
8
Kumar-Sivakumar reduction
Assume can compute w s.t. w and z differ in (½-)|z| positions in poly time Run list decoder for C on w Returns a list y1,…., ym Check if for any i, R(x, yi) holds Can check if x in L in poly time! Assume x in L C is (½-,poly(|z|) list decodable C can be list decoded in polytime R’(x,z) holds if y s.t. R(x,y) holds and z=C(y)
9
Some possible concerns…
R’ is the not the same as R! [Gal-Halevi-Lipton-Petrank 99] considers hardness of approximation for the same R Crucially uses properties of R and L
10
Required properties of C
C : {0,1}k {0,1}n n = poly(k,1/) C can be list decoded from (½-)n errors in poly(n) time C can be constructed in poly(n) time Not necessary in the NP-witness application Given these constraints, how small can n be?
11
Binary list decodable code
Say n is O(kb/ea) a and b are constants For NP-witness application, smallest e 1/n1/a (½-, poly(n))-list decodable code with n in O(k/e2) exist a cannot be < 2 Existence proved via random coding argument What is the smallest a, given b is some constant?
12
Efficient list decodable binary codes
a = 4, b = 2; i.e. n in O(k2/e4) [Guruswami, Sudan 00] The code is explicit Hadamard “concatenated” with Reed-Solomon code e-biased code All non-zero codewords have [½-, ½+] frac. of 1s Important pseduorandom object a=3, b=1; i.e. n in O(k/e3) [Guruswami, R ] Construction and decoding time > n1/e Only useful for constant e
13
Our main result a = 3+g, b = 3; i.e. n in O(k3/e3+g) g>0
The code is explicit Dual BCH “concatenated” with “Folded” Reed-Solomon e-biased code All algorithms run in time poly(k,1/) More or less recovers the a=3 result [Guruswami, R ]
14
(Folded) Reed-Solomon codes
View mesg. as f(X) = m0+m1X+…+mk-1Xk-1 F* ={1,g1,g2,…,gN-1} (q=N+1=|F|) Reed-Solomon (RS) codeword s-order Folded RS codeword (N=ms) Optimal list decodable properties for large alphabet f(1) f(g2) f(g3) f(g4) f(gN-1) f(1) f(gs) f(g(m-1)s ) f(gs-1) f(g2s-1) f(ms-1) f(g) f(gs+1) f(g(m-1)s+1 )
15
How do we get binary codes ?
Concatenation of codes [Forney 66] C1: (GF(2k))K (GF(2k))N (“Outer” code) C2: GF(2)k (GF(2))n (“Inner” code) C1 C2: (GF(2))kK (GF(2))nN Typically k=O(log N) Brute force decoding for inner code m m1 m2 mK w1 w2 wN C1(m) C2(w1) C2(w2) C2(wN) C1 C2(m) 15
16
List Decoding concatenated code
One natural decoding algorithm Divide up the received word into blocks of length n Find closest C2 codeword for each block Run list decoding algorithm for C1 Loses Information! 16
17
How do we “list decode” from lists ?
List Decoding C2 GF(2)n y1 y2 yN T1 T2 TN GF(2)k How do we “list decode” from lists ? 17
18
The list recovery problem
Given a code and an error parameter For any set of lists T1,…,TN such that |Ti| t, for every i Output all codewords c such that ci 2 Ti for at least 1- fraction of i’s List decoding is special case with t=1 18
19
List Recovering Algorithm for C1
List Decoding C1C2 y1 y2 yN List decode C2 T1 T2 TN List Recovering Algorithm for C1 19
20
[Guruswami, R. 06] Result Pick C1 to be folded RS of rate e
Has optimal list recoverability Pick C2 to be “suitably” chosen binary code of rate e2 C1C2 List decodable from ½- frac of errors
21
A Closer look… List Recovering Algorithm for C1
y1 y2 Dist(C2(a1),y1) ½- Dist(C2(a2),y1) ½- yN at a1 List decode C2 from ½- frac of errors What if Dist(C2(a1),y1) << Dist (C2(a2),y1)? T1 T2 TN List Recovering Algorithm for C1 21
22
Weighted List Recovery
{a1,…,aq} y1 y2 yN Output codewords w/ small weighted distance a1 aq wN,1 wN,q w1,1 w1,q w2,1 w2,q T1 T2 TN List Recovering Algorithm for C1 Soft Decoding 22
23
List Recovery as a special case
wi,j ½- 1 List decode C2 y1 y2 yN T1 T2 TN List Recovering Algorithm for C1 Dist(C2(ai),yj) 23
24
A natural weight function
Give more weight to “closer” symbols List decode from ½- frac of errors C1 is RS and C2 is Hadamard Hadamard codewords are evaluations of linear functions wi,j 1 Dist(C2(ai),yj) 24
25
Uses properties of Hadamard code
RS concat Hadamard Need to show the following for every j: i wi,j2 O(1) RS code of rate e2 Follows from Parseval’s identity N O(K/ e2) n= q Hadamard code Final length = nN = N2 O(K2/ e4) [GS00] Uses properties of Hadamard code wi,j 1 Dist(C2(ai),yj) 25
26
Using order s folded RS as outer code
Need to show the following for every j: i wi,js+1 O(1) ….. (*) s ≥ 1 Folded RS of rate e1+1/s Hadamard as inner code (*) is true n = qs = Ns As Folded RS alphabet size is qs wi,j 1 Too large Dist(C2(ai),yj) 26
27
Using dual BCH as inner code
Need to show the following for every j: i wi,js+1 O(1) ….. (*) s ≥ 1 Folded RS of rate e1+1/s Dual BCH as inner code (*) from [Kaufman-Litsyn 05] n N2 suffices Final length = N3 O(k3/e3+3/s) wi,j 1 Dist(C2(ai),yj) 27
28
Some comments Final codes are e-biased
Dual BCH have non-zero weights close to ½ Weil-Carlitz-Uchiyama bound Dual BCH is a generalization of Hadamard Our result needed to generalize both Outer code (RS folded RS) Inner code (Hadamard dual BCH) Can replace folded RS with Parvaresh-Vardy codes
29
Open questions Improve on the cubic dependence on e
Needs new algorithmic ideas Use information about outer codes while decoding inner codes Rate e2 using concatenated codes possible [Guruswami, R. 08] Any application that also uses e-biasedness?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.