Linear-Time Encodable and Decodable Error

Linear-Time Encodable and
Decodable Error-Correcting
Codes
Jed Liu
3 March 2003
Explicit constructions



Only randomized constructions known
for families of very good expander
graphs.
To produce explicit constructions, use
explicit constructions of expander
graphs.
Idea: use edge-vertex incidence graphs
of very good expanders
The construction



B is a (c,d)-regular bipartite graph with
n left-vertices and (c/d)nk right-vertices.
S is a linear code with d message bits, k
check bits.
R(B,S) is an error-reduction code with n
message bits and (c/d)nk check bits
The construction
m
1
m
2
m
3
m
4
.
.
.
Ci = S(mi1 , mi2 , …, mid)
R(B,S)(m) = C1, C2, …, C(c/d)n
m
n
B
Properties of


R(B,S)
Can be encoded in linear time.
Theorem: If B is the edge-vertex
incidence graph of a good expander,
then R(B,S) is a good error-reduction
code.
Parallel Error-Reduction Round
for R(B,S)

In parallel for each cluster, if check bits in the
cluster and the associated message are within
e/6 of a codeword:



Send a flip signal to every message bit that differs
from the corresponding bit in the codeword.
Any message bit that receives at least one flip
signal gets flipped.
e is the minimum relative distance of S
Per-round error reduction


S = linear code of rate r, block length d,
minimum relative distance e.
B = edge-vertex incidence graph of a dregular graph on n vertices with secondlargest eïgenvalue l.
Per-round error reduction

Lemma: If an error-reduction round is
given an input that differs from a
codeword w in at most adn/2 message
bits and at most bdn/2 check bits, then
at the end of the round, the word will
differ from w in at most
2a  b 
message bits.
1
5

9  2a  b 
e2
 3edl

dn
2
The main theorem

Theorem: There exists a polytimeconstructible family of error-correcting
codes with rate ¼ and have linear-time
encoding and decoding algorithms that
can correct any g < ke fraction of error,
where ke is a (very) small constant.

The proof makes heavy use of the GilbertVarshamov bound.
Proving the main theorem


Build the error-correcting codes by
constructing a family of error-reduction
codes.
The error-reduction codes will be of the form
R(B,S).


S = a particular good code known to exist by the
Gilbert-Varshamov bound
B = edge-vertex incidence graphs of a dense
family of good expander graphs
Instantiating the variables

If an appropriate e is chosen, then by
the Gilbert-Varshamov bound, for all
large enough block lengths d, there
exists a code of minimum relative
distance e and rate r = 1 – H(e) > 4/5.
Fix S to be one such code.
Instantiating the variables


Let G = {Gni,d} be a polytimeconstructible dense family of good
expander graphs. Let ld be the upper
bound on the second-largest
eïgenvalues of its graphs of degree d.
3l
9  2a  b 
1
1



Fix d so that 5
ed
4.
e
d
2

Such a d exists because for small enough a
and b, 1/5 + 9(2a+b)/e2 < 1/4.
Finishing the construction


Let Bni,d be the edge-vertex incidence
graph of Gni,d. The family of errorreduction codes consists of the codes
R(Bni,d,S).
Use the Gilbert-Varshamov bound to
find a C0 of block length n0, rate ¼,
minimum relative distance e.
Remarks on the construction



Used Gilbert-Varshimov bound to find S.
Spielman: “A constant amount of
nonconstructivity is negligible.”
Instead, can pick S to be any known
asymptotically good code, or fix d and
pick an appropriate error-correcting
code.