a message in the form of a sequence of bits is encoded into relatively short , non - binary signals . the message is divided into two halves . the encoder first determines an encoding of the message into a vector half the length of the eventual encoded vector . the half - length vector forms the first half of the encoded , and is negated to form the second half of the encoded vector . an identical synchronization signal is added to both halves of the encoded vector . the synchronization signal is used to compensate for the possibility that the received vector is cyclically rotated from the original vector . during decoding , the decoder first obtains the synchronization signal by adding the two halves of the vector together , canceling the encoded message . the synchronization signal is used to find the original cyclical shift of the vector . the decoder obtains the half - length encoded message vector by taking the difference between the two halves of the aligned full - length encoded vector . after decoding the vector into a bit sequence , the encoder re - encodes that bit sequence and compares the resulting vector with the original vector to determine whether the original vector truly encoded a message or was simply a noise signal .