Beruflich Dokumente
Kultur Dokumente
I. Introduction
In this paper we construct a family of linear-time encodable and decodable error-correcting codes. These codes
can also be encoded by circuits of linear-size and constant depth and decoded by circuits of linear-size and at
most logarithmic depth. The size of a circuit is defined
as the number of vertices, while the depth of a circuit is
defined as the maximum length of a directed path in the
circuit. The codes are constructed through the cascading
of multiple copies of the error reducing codes developed
by Spielman [3]. The expansion properties of graphs are
used in calculating the number of errors that can be corrected by our codes. Unlike Spielman, who used regular
expanders in his construction, we consider the use of irregular expanders. This consideration is motivated by a
recent indication that irregular graphs give better decoding performance than regular graphs [2].
The cascading method that we use in our construction was originally developed by Luby et al. for the construction of erasure codes [1]. In the construction considered here, encoders for the error reducing codes are
cascaded from left (outermost) to right (innermost), with
the cascade terminated on the right by an encoder for an
error-correcting code. Decoding begins with the innermost code, the error-correcting code, followed by decoding for the successive error reducing codes.
In the next section, we construct error reducing codes
and their associated decoding algorithms. Two bounds
are presented for the number of errors that can be reduced
for codes that are derived from irregular expanders. In
section 3, we cascade the error reducing codes constructed
in section 2 to construct a new code that is an errorcorrecting code. Section 4 gives a brief conclusion of our
result.
II. Error Reducing Codes
The error reducing codes considered in this paper are
defined using bipartite graphs. Figure 1 shows a simple
bipartite graph that represents a (7, 4) Hamming code.
1 This
n
n as as
Pr(Es )
s
as
n
(a) ne s ne as as as
s
as
n
s asass a (1)as
=
e(1+a)s
n
s ( a4 a1)s
=
cs
n
k
where (a) follows from the inequality nk ne
, and
k
c is a constant that depends on a, and . Choose so
that a4 a 54 . Then
n
X
s=1
Pr(Es )
n 4 s
X
sc 4
s=1
1
O( )
n
2
Theorem 4 If B is an irregular (, 34 + dx,min
) expander
where dx,min is the minimum degree on the left nodes of
B, then R(B) is an error reducing code of error reduc
tion 12 and reducible distance 2dx,max
, where dx,max is the
maximum degree on the left nodes of B.
4
+
.
2
dx,min
(1)
n
the algorithm halts then < 2 . Since 2dx,max
and
n
2dx,max initially, we can get an upper bound on u
which monotonically decreases by the execution of the
algorithm. So,
u dx,max +
n
n
+
2
2dx,max
which is a contradiction. Because the halting of the algorithm must occur given the monotonically decreasing
number of unsatisfied checks, we have < 2 .
Lemma 5 The Simple Sequential Error Reducing Algorithm can be implemented to run in linear-time.
Proof: [Sketch] The average left and right node degrees
are independent of the code length, and the number of
unsatisfied checks, which is linear in the code length, decreases.
We now give an example application of the Simple Parallel Error Reducing Algorithm.
Lemma 6 Let B be a bipartite graph with n left nodes
and n right nodes for some > 0. The minimum left
node degree is at least 11. Then with probability 1O( n1 ),
B is an (, ) expander for some > 0, 0 and =
9
10 + .
Proof: Similar to the proof of Lemma 3.
9
3
Theorem 7 If B is an irregular (, 10
+ dx,min
) expander
8
and dx,min 9 dx,max where dx,min and dx,max are the
the minimum and maximum degrees on the left nodes of
B, then R(B) is an error reducing code of error reduction
1
n
2 2 , then there is a message bit whose value is
flipped by the execution of the algorithm, which follows
directly from the proof of the previous theorem.
Claim: |M C| < n.
The proof follows by contradiction. Suppose that |M
C| n and consider C 0 C such that |M C 0 | = n.
Defining N (A) to be the set of neighbors of a set A,
|N (M C 0 )| > (
9
dx,min + 3)n
10
d
dx,max 0
|C | + |N |.
2
This contradicts , n
2 and dx,min
Now since |M C| < n, we get
(
9
10 dx,max .
9
dx,max
dx,min + 3)|M C| < |N (M )| +
|C| + |N |
10
2
d
1 dx,min
N (M ) dx,max |M |
|F | |N | .
2
2
9
Combining the above two equations yields ( 10
dx,min +
dx,min
d
3
3)|M C| < dx,max |M | 4 |F | + 2 |N | + x,max
|C|,
2
or
2
3
1
3
dx,max |F |+( dx,max +3)|C| < ( dx,max 3)|M |+ |N |.
9
10
5
2
This implies that
|F C| <
(9dx,max 135)|M | +
10dx,max
135
2 |N |
(2)
|N |
Consider now the two cases, |M | |N|
2 and |M | < 2 .
Substituting for |N | and |M |, respectively, in equation
(2), we get
|N |
2
|N |
|M | <
2
|M |
9
|M |
10
1
|F C| < |N |
2
|F C| <
|M | <
|N |
2
|F C| < max(
n |N |
,
),
2K 2
since |M | n
2 . Choosing K n finishes the proof of
the theorem.
i k +
m+2 k
k
=
1
1
9
Theorem 10 Let Bi be an irregular (i k, i+1 k, , 10
+
3
8
)
expander,
d
d
,
where
d
and
x,min
x,max
x,min
dx,min
9
dx,max are the minimum and maximum degrees of the left
nodes of Bi , 0 i m. Let C be an error correcting code
m+2
of m+1 k message bits and 1 k check bits, m+1 k
IV. Conclusion
We have constructed a family of linear-time encodable and decodable error-correcting codes that can also
be encoded in constant-time and decoded in at most
logarithmic-time if a linear number of processors are used.
In constructing the codes, we used a constant number
of error reducing codes that are linear-time encodable
and decodable or constant-time encodable and at most
logarithmic-time decodable if linear number of processors
are used.
Our construction combines the ideas from [3] in which
error reducing codes were cascaded differently to consider the worst case scenario or burst errors, and from
[1] in which cascading of codes was used to obtain nearcapacity achieving linear-time encodable and decodable
erasure codes. We are not sure if the irregular graphs of
Theorem 5 that we used in our construction will be of
practical use due to the restriction dx,min 89 dx,max .
References
[1] M.G. Luby, M. Mitzenmacher, M.A. Shokrollahi, D.A. Spielman and V. Stemann, Practical Loss-Resilient Codes, in Proc.
29th Symp. on Theory of Computing,1997, pp. 150-159.
[2] M.G. Luby, M. Mitzenmacher, M.A. Shokrollahi and D.A. Spielman, Analysis of Low Density Codes and Improved Designs
Using Irregular Graphs, manuscript.
[3] D.A. Spielman, Linear-Time Encodable and Decodable ErrorCorrecting Codes, IEEE Trans. Inform. Theory,vol. 42, no. 6,
pp. 1723-1731, Nov. 1996.