Zigzag code
In coding theory, a zigzag code is a type of linear error-correcting code introduced by Ping, Huang & Phamdo (2001).[1] They are defined by partitioning the input data into segments of fixed size, and adding sequence of check bits to the data, where each check bit is the exclusive or of the bits in a single segment and of the previous check bit in the sequence.
The code rate is high: J/(J + 1) where J is the number of bits per segment. Its worst-case ability to correct transmission errors is very limited: in the worst case it can only detect a single bit error and cannot correct any errors. However, it works better in the soft-decision model of decoding: its regular structure allows the task of finding a maximum-likelihood decoding or a posteriori probability decoding to be performed in constant time per input bit.
References
- ^ Ping, Li; Huang, Xiaoling; Phamdo, Nam (2001), "Zigzag codes and concatenated zigzag codes", IEEE Transactions on Information Theory, 47 (2): 800โ807, CiteSeerX 10.1.1.107.2616, doi:10.1109/18.910590, MR 1820492.
Subject
There is a subject called arithmetic+ you learn about zigzag code and this is how it works:
With the zigzag code we divide the clear text over two lines. We write the first letter of the text on the first line, the second letter of the text on the second line, the third letter of the text we write again on the line, the fourth letter again on the second line, the fifth letter on the honor rule, and so on. Then we write the two lines one after the other and... the message is enciphered!
Example: We want to encipher the following text: Our new teachers are great. then you divide it over 2 lines Oz new lekahe zj spr ne iue errctn in ue Now first write down line one and then line two, then you get: Oznewlekahezjspr neiueerrctninue Oznewlekahezjsprneiueerrctninue