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