NON-BINARY ERROR CORRECTION CODES 1349 



information digits simplified the encoder and decoder. To differentiate 

 among the classes of codes which will be described in this paper, the 

 following terms will be used, in addition to those previously defined. 



A semi-sijsiematic code encoder produces messages containing only- 

 information, mixed and check digits. The information source generates 

 information digits in base h for information digits, and in base /3 for 

 mixed digits. (The example given above is a semi-systematic code.) 



Of two coding schemes in the same channel base 6, each working with 

 messages of the same length, and each satisfying a given error detection 

 or correction criterion, the more efficient scheme is defined as the one 

 which produces the larger number of different possible messages. 



III. SINGLE ERROR CORRECTION CODES, SMALL ERRORS (±1) 



The problems of error correction codes in nonbinary systems are ex- 

 tensive and must be treated in several distinct sections. The basic differ- 

 ence between the error correction problem in binary and non-binary 

 codes is the fact that the sign of the error is important. In a binary 

 code, if the message 11 is received and it is known that the second digit 

 is incorrect, only one correction can be made, to 10. But in a decimal 

 code with errors limited to ±1, if the message 12 is received and it is 

 known that the second digit is wrong, it can be changed to either 11 or 13. 



Consider the following simple code for correcting single small errors. 

 A decimal channel is used, and a message is composed of three informa- 

 tion digits and one check digit. Let Xi represent the check digit and .T2 , 

 .Ts, Xi the information digits. Here, .ri is chosen to satisfy* 



Xi -f 2.r, -f- 3.r3 + 4.r4 = mod 10. (2) 



The encoder calculates Xi , and transmits the message a:iX2a:3.i"4 . This is 

 received as XiXo'xzXi. The decoder then calculates c given by 



c = {xi' + 2x2' + 3.r3' + 4a-4') mod 10. (3) 



If the assumption is made that at most a single small error exists, then 

 this error can be corrected by using the following rules, which may be 

 verified by inspection. 



If c = 0, no correction is necessary; 



5 > c > 0, decrease the cth. digit by one ; 



* B3' definition a = r mod h is eciuivalent to a = c + nb, where a. b, c and n 

 are integers. Tlie eciuality notation is used in j)refeience to the congruenee nota- 

 tion throughout this paper, since an addition performed without carry occurs 

 naturally in many circuits; in terms of such a circuit, the mod b signifies only the 

 base of the addition, and a true equality exists between the state of two circuits, 

 with the same output even though one has been cycled more often. 



