A row vector
is
just a sequence of n
s and
s.
The unit vector
is
the row vector
with a
in
the
th
position.
For any vector
,
is
the just vector
with the
th bit
flipped.
More generally given
,
is
the just vector
with the bits flipped in every position there is a
in
, or the vector
with the bits flipped in every position there is a
in
The
same thing!
Again a Linear Transformations
,
over
is just: has to satisfy the property
Definition:
Suppose we are given alphabet of symbols
and
an encoding
then is called a Linear Code if
is
a subspace of
.
7 bit ASCII is a Linear Code since every vector in
is a code word.
If
is a Linear Code and
is a 1 to 1 Linear Transformation then
is a Linear Code.
Given a Linear Code
We are given a 1 to 1 Linear Transformation
in
the form of a Matrix
We are also given a Linear Transformation ,not 1 to 1,
in
the form of a Matrix
Methodology:
Given a symbol
encode
it as
Next encode
for transmission as
Transmit
. Denote the vector that is received by
. Maybe
maybe
not.
Compute
below if
success,
if not a transmission error.
The matricies:
and
Again, given
we
encode it by multiplying on the right by
Note that for a unit vector
,
is
just the
th
row of
which for every row has at least
three
s.
The claim is that if you flip at least one bit of
to
say
then
and
differ
by at least three bits(See Bullet
.
above).
Notes For Assignment 1:
We need to show that if If
differ
by at least one bit
,
will
differ by at least three.
If
and
differ
by three or four bits than so will
and
since the final four bits of these vectors are the bits of
and
.
Therefore we only need to look at the cases
where
and
differ
by one and two bites.
Let
Suppose
and
differ
by one bit, then
for
some
and
Since
just
the
th
row, has at least three
s, that is flips three bits we are done
Suppose
and
differ
by two bit, then
for
some
Since
we just need to look the sums of the various pairs of rows of
to
check that there is always at least three
s
in each sum.
An interesting case is
which just makes it.
All of this provides a methology for developing error correcting codes for
other word sizes, say