Reliable communication is an important part of everyday living. When transmitting a message over a physical channel, noise is introduced that causes errors in the message. These errors can be inversion errors or synchronization errors. The aim of this book is to investigate coding techniques to minimise the effect of synchronization errors that occur in transmitted messages. Watermarks are inserted into the encoded sequences. A very simple binary neural network system is implemented to detect the watermark sequences and regain synchronization.