0% found this document useful (0 votes)
23 views4 pages

Lecture 21: Reed-Muller Codes

Reed-Muller codes are a generalization of Reed-Solomon codes that allow for smaller alphabet sizes. Reed-Muller codes RMq(t,v) are defined using multivariate polynomials over Fq with v variables and degree ≤ t. The message is mapped to a polynomial, and the codeword is the evaluation of that polynomial at all points in Fvq. RMq(t,1) is equivalent to Reed-Solomon codes. RMq(t,v) has block length n=qv, rate R≈(v+t)/v, and minimum distance ≥1-t/q. For q=2 and t>2, RM2(t,v) is

Uploaded by

acidburn200
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
0% found this document useful (0 votes)
23 views4 pages

Lecture 21: Reed-Muller Codes

Reed-Muller codes are a generalization of Reed-Solomon codes that allow for smaller alphabet sizes. Reed-Muller codes RMq(t,v) are defined using multivariate polynomials over Fq with v variables and degree ≤ t. The message is mapped to a polynomial, and the codeword is the evaluation of that polynomial at all points in Fvq. RMq(t,1) is equivalent to Reed-Solomon codes. RMq(t,v) has block length n=qv, rate R≈(v+t)/v, and minimum distance ≥1-t/q. For q=2 and t>2, RM2(t,v) is

Uploaded by

acidburn200
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 4

Error Correcting Codes: Combinatorics, Algorithms and Applications (Fall 2007)

Lecture 21: Reed-Muller Codes


October 15, 2007
Lecturer: Atri Rudra Scribe: Michel Kulhandjian
Recall the question we raised earlier. Is there an explicit codes with R > 0 and > 0 that have
efcient unique decoding up to

2
for (q = 2)? For RS codes we have optimal trade off between R
and and efcient decoding algorithm exists. However, RS codes have the unfortunate property
that q must be large and hence, we are interested in the above question for small alphabet.
1 Reed-Muller Codes
We now extend the denition of Reed-Solomon codes, to multivariate polynomials with v number
of variables. These codes were termed Reed-Muller Codes after D. E. Muller [1] who discovered
the codes and I. S. Reed who gave a decoding procedure [2]. The codes that are presented here are
generalized to a range of parameters that were not covered in original work which mostly had fo-
cused on codes over F
2
. The way Reed-Muller codes are described here, they will be strict general-
ization of Reed-Solomon codes, although Reed-Solomon was discovered much later! Reed-Muller
codes can have smaller q unlike Reed-Solomon, in fact there exist efcient decoding algorithms
up to

2
and q = 2. The trade off between R and however is not that satisfactory as Reed-Muller
codes can not have R > 0, > 0. Reed-Muller codes have found many uses in complexity theory
and codeword testing.
Denition 1.1. A code (family) is called asymptotically good if its rate satises R > 0 and relative
distance satises > 0.
Recall that Reed-Solomon codes were dened using univariate polynomials. Now we dene
Reed-Muller Codes using multivariate polynomials.
Denition 1.2 (Reed-Muller code). Let F
q
[x
1
, x
2
, ..., x
v
] denote the F
v
q
-space of multivariate poly-
nomials where all the coefcients are from F
q
. We dene an encoding function for Reed-Muller
code as RM
q
(t, v) as follows. A message symbol mwith coefcients m
i
1
,i
2
,...,iv
F
q
is mapped
to a v-variate polynomial F
q
[x
1
, x
2
, ..., x
v
] of degree t over F
v
q
as follows.
m p
m
(x
1
, x
2
, ..., x
v
),
where
p
m
(x
1
, x
2
, ..., x
v
) =

i
1
,i
2
,...,ivZ
0
i
1
+i
2
+...+ivt
m
i
1
,i
2
,...,iv
v

j=1
x
i
j
j
(1)
1
with m = m
i
1
,i
2
,...,iv

(i
1
,i
2
,...,iv)
i
1
+i
2
+...+ivt
, 0 i
j
q 1, and t v(q 1). The encoding of mis the
evaluation of p
m
(x) at all the vectors in F
v
q
:
RM(m) = p
m
(
1
,
2
, ...,
v
)
(
1
,
2
,...,v)F
v
q
Remark 1.3. It is easy to check that RM
q
(t, 1) codes are equivalent to [q, t + 1]
q
Reed-Solomon
codes.
It is obvious that the block length of the RM
q
(t, v) code is n = q
v
. We will rst look at the case
where t < q which is useful in applications of complexity theory. The message length k equals the
number of v-long sequences of integers that sums to at most t and it turns out to be:
k = |{(i
1
, i
2
, ..., i
v
)|i
1
+ i
2
+ ... + i
v
t}|
=
_
v + t
v
_
when t q 1. Note that when t q it gets complicated because of the identity x
q
= x , x F
q
.
Remark 1.4. The way the mapping is dened in (1), RM
q
(t, v) codes are linear codes. The proof
is similar to the one we used to prove that RS codes are linear and is left as an exercise.
Proposition 1.5. The distance of RM
q
(t, v) code is
_
1
t
q
_
q
v
. Hence for t < q, RM
q
(t, v) is
an
_
q
v
,
_
v+t
v
_
,
_
1
t
q
_
q
v
_
q
code.
Let us look at some instantiations of the parameters.
1. When t = 1, RM
q
(t, v) is equivalent to RS for (q = n).
2. When v = t =
q
2
the code length becomes n = q
v
=

q
q
. We can show that q =

_
log n
log log n
_
. For this set of parameters we show the asymptotic behavior of the rate of
the code.
k =
_
v + t
v
_
=
_
q
q
2
_
(2e)
q
2
= 2
(q)
(2)
From (2) note that R 0 as n for =
1
2
.
The proof of Proposition 1.5 follows immediately from the following lemma as RM
q
(t, v) is
linear.
2
Lemma 1.6 (Schwartz-Zippel). Any non-zero v-variate polynomial in F
q
[x
1
, x
2
, ..., x
v
] of degree
almost t has tq
v1
roots.
Proof. We will prove the proposition by induction on the number of variables. For v = 1 it states
the familiar result that a non-zero univariate polynomial has at most as many roots as its degree.
Now assume that the induction hypothesis is true for the multivariate polynomial with up to v 1
variables, for v > 1. Let P(x
1
, . . . , x
v
) be a degree t polynomial. Decompose the polynomial as
follows:
P(x
1
, x
2
, ..., x
v
) =
t
1

i=0
R
i
(x
2
, ..., x
v
)x
i
1
(3)
W.l.o.g. we can assume that t
1
1 (as otherwise we have v 1 variables and by induction we will
have tq
v2
< tq
v1
roots) and t
1
may be strictly smaller than t. We consider the following two
cases for a possible root (
1
, . . . ,
v
):
Case 1: R
t
1
(
2
, ...,
v
) = 0 where (
2
, ...,
v
) F
v1
q
. The number of such roots of R
t
1
by
the induction hypothesis is:
|{(
2
, ...,
v
) | R
t
(
2
, ...,
v
) = 0}| deg(R
t
1
)q
v2
(t t
1
)q
v2
.
Thus, the number of roots of P(x
1
,
2
...,
v
) given R
t
1
(
2
, ...,
v
) = 0 is
|{(
1
,
2
, . . . ,
v
) | R
t
1
(
2
, ...,
v
) = 0}| (t t
1
)q
v2
q
= (t t
1
)q
v1
,
where the inequality follows from the fact that any tuple (
2
, . . . ,
v
) can be extended to at
most q vectors in F
n
q
.
Case 2: R
t
1
(
2
, ...,
v
) = 0. Fix (

2
, . . . ,

v
) such that R
t
1
(

2
, . . . ,

v
) = 0. Since
P(x
1
,

2
, ...,

v
) is a univariate polynomial of degree t
1
, by induction:
|{(
1
,

2
, . . . ,

v
) | P(
1
,

2
, . . . ,

v
) = 0}| t
1
.
Then the total number of roots (
1
,
2
, ...,
v
) such that R
t
1
(
2
, ...,
v
) = 0 is
|{(
1
,
2
, . . . ,
v
) | P(
1
,
2
, . . . ,
v
) = 0 R
t
1
(
2
, ...,
v
) = 0}| t
1
q
v1
,
where the inequality follows from the fact that there can be at most q
v1
distinct tuples
(

2
, . . . ,

v
).
3
Now combining two cases we get the total number of roots as follows:
|{(
1
,
2
, . . . ,
v
) | P(
1
,
2
, . . . ,
v
) = 0}|
= |{(
1
,
2
, . . . ,
v
) | P(
1
, . . . ,
v
) = 0 R
t
1
(
2
, ...,
v
) = 0}|
+|{(
1
,
2
, . . . ,
v
) | P(
1
,
2
, . . . ,
v
) = 0 R
t
1
(
2
, ...,
v
) = 0}|
|{(
1
,
2
, . . . ,
v
) | R
t
1
(
2
, ...,
v
) = 0}|
+|{(
1
,
2
, . . . ,
v
) | P(
1
,
2
, . . . ,
v
) = 0 R
t
1
(
2
, ...,
v
) = 0}|
(t t
1
)q
v1
+ t
1
q
v1
= tq
v1
,
as desired.
From the Schwartz-Zippel lemma, the distance of RM
q
(t, v) is at least the total number of non-
zero values of P(x
1
, x
2
, ..., x
v
) which is equal to the number of possible (x
1
, x
2
, . . . , x
v
) minus the
total number of roots of P(x
1
, x
2
, ..., x
v
). Therefore,
d
_
1
t
q
_
q
v
and it is a tight bound. So RM
q
(t, v) is an
_
q
v
,
_
v + t
v
_
,
_
1
t
q
_
q
v
_
q
code. Hence, this proves the Proposition 1.5.
If we take Reed-Muller code with parameters q = 2 and t > 2 we get RM
2
(t, v) code. The
polynomial P dened by (3) of degree t turns out to be,
P(x
1
, x
2
, . . . , x
v
) =

S[v]
|S|t
m
s

iS
x
i
,
That is P is a multi linear polynomial where m
s
F
2
and m = m
s

S[v]
|S|t
. We have the following
result:
Claim 1.7. RM
2
(t, v) is a
_
2
v
,

t
i=0
_
v
i
_
, 2
mv

2
This result will be proved in the next lecture.
References
[1] D. E. Muller. Application of boolean algebra to switching circuit design and to error detection.
IEEE Transactions on Computers, 3:612, 1954.
[2] Irving S. Reed. A class of multiple-error-correcting codes and the decoding scheme. IEEE
Transactions on Information Theory, 4:3849, 1954.
4

You might also like