50 Mathematical Ideas You Really Need to Know

(Marcin) #1

‘do not invade’. The ‘invade’ instruction is coded by ‘1’ and the ‘do not invade’
instruction by ‘0’. If a 1 or a 0 was incorrectly transmitted the receiver would
never know – and the wrong instruction would be given, with disastrous
consequences.
We can improve matters by using code words of length two. If this time we
code the ‘invade’ instruction by 11 and the ‘do not invade’ by 00, this is better.
An error in one digit would result in 01 or 10 being received. As only 11 or 00
are legitimate code words, the receiver would certainly know that an error had
been made. The advantage of this system is that an error would be detectable,
but we still would not know how to correct it. If 01 were received, how would we
know whether 00 or 11 should have been sent?
The way to a better system is to combine design with longer code words. If
we code the ‘invade’ instruction by 111 and the ‘do not invade’ by 000 an error in
one digit could certainly be detected, as before. If we knew that at most one
error could be made (a reasonable assumption since the chance of two errors in
one code word is small), the correction could actually be made by the receiver.
For example, if 110 were received then the correct message would have been



  1. With our rules, it could not be 000 since this code word is two errors away
    from 110. In this system there are only two code words 000 and 111 but they
    are far enough apart to make error detection and correction possible.
    The same principle is used when word processing is in autocorrect mode. If
    we type ‘animul’ the word processor detects the error and corrects it by taking
    the nearest word, ‘animal’. The English language is not fully correcting though
    because if we type ‘lomp’ there is no unique nearest word; the words, lamp,
    limp, lump, pomp and romp are all equidistant in terms of single errors from
    lomp.
    A modern binary code consists of code words that are blocks consisting of
    zeros and ones. By choosing the legitimate code words far enough apart, both
    detection and correction are possible. The code words of Morse code are too
    close together but the modern code systems used to transmit data from satellites
    can always be set in autocorrect mode. Long code words with high performance
    in terms of error correction take longer to transmit so there is a tradeoff between
    length and speed of transmission. Voyages into deep space by NASA have used
    codes that are three-error correcting and these have proved satisfactory in
    combating noise on the line.

Free download pdf