3/7/2017
1
Ma/
CS
6
b
Class 25: Error Correcting Codes 2
By Adam Sheffer
Recall:
Codes
?
?
–
the set of binary sequences of
length
?
.
◦
For example,
?
3
=
000,001,010,011,100,101,110,111 .
Codes
of
length
?
are subsets of
?
?
.
◦
For example, we might have
000
= up,
110
= down,
011
= left,
101
= right
.
◦
This code is
000,110,011,101
⊂ ?
3
.
Sequences that are in the code are called
codewords
(or just
words
).

** Subscribe** to view the full document.

3/7/2017
2
Recall:
Distances
Given
?, ? ∈ ?
?
the
distance
𝜕
?
,
?
is the
number of bits that are different in
?
and
?
.
◦
𝜕
010101,000111
=
2
.
Given a code
𝐶 ⊂ ?
?
, the
distance of
𝐶
is
min
?
,
?
∈
𝐶
𝜕
?
,
?
.
If
𝐶
has distance
?
:
◦
We can
detect
any errors, as long as no more
than
?
−
1
bits were flipped.
◦
We can
correct
any errors, as long as fewer
than
?
/
2
bits were flipped.
Recall:
Linear Codes
A code
𝐶 ⊂ ?
?
is
linear
if for every
?, ? ∈ 𝐶
, we have
? + ? ∈ 𝐶
.
For any
?
×
?
matrix
?
, the set
𝐶 =
? ∈ ?
?
: ?? = 0
?
is a
linear code
.
We say that
?
is the
check matrix
of
𝐶
.
Theorem.
If
no column
in
?
consists
entirely of zeros
and
no two columns
of
?
are
identical
, then
𝐶
can correct at least
one bit flip.

3/7/2017
3
Code Size
Problem.
We are interested in a code
with a check matrix
?
that has
𝑟
rows
and
does not contain zero columns and
identical columns
. What is the maximum
number of columns in
?
?
◦
There are
2
𝑟
distinct columns of
𝑟
entries.
◦
After ignoring the all zeros column, we remain
with
2
𝑟
−
1
possible columns.
◦
For example, when
𝑟 = 3
, we have
1
0
0
1
1
0
1
0
1
0
1
0
1
1
0
0
1
0
1
1
1
.
Recall:
Standard Form
We consider matrices of the form
?
=
1
0
0
⋯
0
?
1
,
1
⋯
?
1
,
?
−
𝑟
0
1
0
⋯
0
?
2
,
1
⋯
?
2
,
?
−
𝑟
0
⋮
0
0
⋮
0
1
⋮
0
…
⋱
⋯
0
⋮
1
?
3
,
1
⋮
?
𝑟
,
1
⋯
?
3
,
?
−
𝑟
⋱
⋮
⋯
?
𝑟
,
?
−
𝑟
.
This is called
standard form
.

** Subscribe** to view the full document.