Download presentation

Presentation is loading. Please wait.

1
Linear-time encodable and decodable error-correcting codes Daniel A. Spielman Presented by Tian Sang Jed Liu 2003 March 3rd

2
Error-Reduction Codes Weaker than error-correcting codes Can remove most of the errors, if not too many message bits and check bits are corrupted Definition A code C of length n with rn message bits and (1 r)n check bits is an error-reduction code of rate r, error reductionε, and reducible distance δ, if there is an algorithm, when given a codeword with v ≤ δ n corrupt message bits and t ≤ δ n corrupt check bits, will output a word that differs from the uncorrupted message in at mostεt message bits

3
Error-correcting codes from error-reduction codes C 0 : an error-correcting code of block length n 0, rate ¼, and δ /4 fraction of errors can be corrected R k : a family of error-reduction codes with n 0 2 k message bits, n 0 2 k-1 check bits,ε> ½, and δ > 0 C k : block lengths n 0 2 k and rate ¼ M k : the n 0 2 k-2 message bits of C k A k : the n 0 2 k-3 check bits of encoding M k using R k-2 B k : the 3n 0 2 k-3 check bits of encoding A k using C k-1 C’ k : n 0 2 k-2 check bits of encoding A k U B k using R k-1

4
Recursive construction of C k

5
Lemma 2 (1) The codes C k are error-correcting codes of block length n 0 2 k and rate ¼ from which δ /4 fraction of errors can be corrected (2) C k are linear time encodable/decodable if R k have linear time encoding algorithm and linear time error-reduction algorithm that will (a) on input a word with corrupt message bits and check bits v, t ≤ δ n, output a word with at most max(v/2, t/2) corrupt message bits (b) If v ≤ δn and t = 0, output the codeword without corrupt bits

6
Proof by induction Base case is the code C 0 of block length n 0, rate ¼, andδ/4 fraction of errors can be corrected. Obviously we can encode/decode C 0 in constant time c Encoding time of C k According to the assumption, R k is linear time encodable/reductable, say c 1 n 0 2 k, c 2 n 0 2 k respectively The time to encode C k = the time to encode R k-2 + the time to encode C k-1 + the time to encode R k-1 = c 1 n 0 2 k-2 + (3c 1 n 0 2 k-2 + c) + c 1 n 0 2 k-1 = 3c 1 n 0 2 k-1 + c (linear in the size of C k )

7
Error-correction of C k There are not many errors in C k ( ≤ δ /4 fraction) (1) Use C’ k as check bits to reduce errors in A k U B k, then not many errors left in A k U B k ( ≤ δ /8 fraction) (2) In fact is a A k U B k codeword of C k-1, by inductive hypothesis, C k-1 can correct all left errors in A k U B k (3) Since now A k is free of error, and not many errors in M k ( ≤ δ /4 fraction), we can use A k as check bits to correct all errors in M k (according to the assumption at (2)(b))

8
A simple construction B is a (d, 2d) regular graph

9
Simple Sequential Error-Reduction Algorithm Repeat If there is a message bit that has more unsatisfied than satisfied neighbors, then flip that bit Until no such message bit remains Lemma 10 let B be a (c,d,α,3/4 d + 2) expander graph, if the algorithm above for R(B) is given a word x that differs from a codeword w of R(B) in at most v ≤ αn/2 message bits and t ≤ αn/2 check bits, then the algorithm will output a word that differs from w in at most t/2 of its message bits

10
Proof This algorithm is very similar to the simple sequential algorithm for expander codes First show if αn ≥ v ≥ t/2, there is a node that has more unsatisfied than satisfied neighbors Since each time the number of unsatisfied check bits decreases, we can prove αn ≥ v is always true. So the algorithm can only end up with v < t/2, which means errors are reduced. Constant degrees, obviously in linear time.

11
Simple Parallel Error-Reduction Round For each message bit, count the number of unsatisfied check bits among its neighbors Flip each message bit that has more unsatisfied than satisfied neighbors Lemma 13 Assume a word differs from a codeword w of R(B) in at most v ≤ αn/2 message bits and t ≤ αn/2 check bits, then the round algorithm will output a word that differs from w in at most v(d 4)/d of its message bits Simple Parallel Error-Reduction Algorithm Iterate log d/(d-4 ) 2 simple parallel error-reduction rounds

12
Theorem 15 From a family of (c,d,α,3/4 d + 4) expander graphs between sets of n 0 2 k and n 0 2 k-1 vertices for all k ≥ 1, one can construct an infinite family of error-correcting Codes that have linear-time encoding algorithms and linear-time decoding algorithms that will correct an α/8 Fraction of error. Problem Such graphs can be only obtained through a randomized construction.

Similar presentations

© 2019 SlidePlayer.com Inc.

All rights reserved.

To make this website work, we log user data and share it with processors. To use this website, you must agree to our Privacy Policy, including cookie policy.

Ads by Google