NON-BINARY ERROR CORRECTION CODES 1363 



Suppose that a message 221321 is received as 224321. Then : 



ci = 13 = 3 mod 5, (39) 



C2 = 26 = 1 mod 5. (40) 



To find the characteristic of the digit, Xh , that was incorrectl}^ received 

 from the value of the corrector, (41) and (42) must be solved: 



d C,a = Ci = 3 mod 5, (41) 



d Ca2 = C2 = 1 mod 5. (42) 



Because the first non-zero digit of any characteristic is 1, (41) can be 

 solved for d since Chi = 1- This yields the result, d = 3. Using this result, 

 (42) is solved for Ch-i ; by inspection, Ch2 = 2, since 3-2 = 6= 1 mod 5. 

 Thus the characteristic of the incorrect digit, Cm Chi , is 12, and the 

 error d, is 3 ; Xz must therefore be reduced by 3 to get the correct value. 

 Since the message was received with .1-3' too high by an amount 3, this 

 result confirms our expected correction. 



Any correction that is applied must be applied on a modulo b basis. 

 For example, if a correction of —2 is indicated on a digit whose re- 

 ceived value is 1, 1 — 2 = 4 mod 5, which means that the digit is cor- 

 rected to 4. 



Codes of this type are restricted in their construction. Xo mLxed digits 

 may be used, and the number base must be prime. For the case of 

 n — [{p" — l)/(p — I)] -\- I, g -\- I check digits are recjuired [see (31)]. 

 This means that the number of information digits for a message of 

 this length is the same as for a message one digit shorter, which requires 

 only g check digits. A comparable binary case is the Hamming Code 

 example of an eight binary digit mes.sage (four information digits) 

 compared with a se^'en digit message (also four information digits). In 

 the binary case, the extra digit is useful for double error detection, but 

 unfortvniately, this is not the case for non-binary codes. 



4.2 Composite A^miibcr Base, Single Unrestricted Error Correcting Code 



The problem of correcting an unrestricted error on a single digit, 

 working with a number base h, that is not a prime is much more difficult. 

 Many relatively inefficient techniques exist. For example, characteristics 

 containing only binary lumibers (0 and 1) might be used; (this would 

 amount to using the Hamming Code directly). This is obviously ineffi- 

 cient since the corrector associated with any single digit error of amount 



