Patent GB-1230569-A (GB)
IPC: G06F11/10
Filed: 1968-04-03
Abstract: 1,230,569. Error detecting and correcting. I. Y. AKUSHSKY, and D. I. G. JUDITSKY. 3 Oct., 1967, No. 45076/67. Heading G4A. In order that any single error in a representation of a number by an ordered set of residues may have its presence detected and its value and the component in which it occurs determined, the base of the system is augmented by two components, and whenever it is desired to validate a given ordered set of residues an iterative process requiring access to a set of constants computed for any given augmented base (subject to certain conditions, stated below) has to be performed. Adopt the following notation: Base B = {P i }, 1 # i # n, and extended base Be = {P i } e , 1 # i # n + 2, where P i  < P i  +  1 , for all i. s r+2 and extended period P e  = # P i . r 1 A number N is valid if N < P. Relating to each base constituent P r  there is a set of P r  - 1 constants s where K is the smallest integer such that r  Any given number A = {α i } e  is validated by forming a sequence of n numbers A j  = {α<SP>j</SP> j } e  where and by examining the last two components n n (α , α ) of the last number A n . n+1 n+2 If α<SP>n</SP> n+1 = α<SP>n</SP> n+2 = 0, then the original number A (and all the members of the sequence) is valid, i.e. A < P. Otherwise, to each combinan n tion of values (α , α ) there will corresn+1 n+2 pond, providing that P n + 1  P n +   2  # 3 Pn -  1  P n  (this condition being stated, but not proved, by the Specification), a single error #α i  in the ith component, whose value and component can be obtained from a table. Subject to the stated n n condition, the correspondence from (α , α ) n+1 n+2 to #α 1 ,although unique, is not one-to-one, and apparently it has to be determined empirically. The Specification considers, as an example, an extended base B e  = (2, 3, 5, 7, 11, 13) for which P = 210 and P e  = 30,030   For this base the constants C<SP>s</SP> r  are as follows: C<SP>1</SP> 1  = (1, 1, 1, 1, 1, 1) = 1 C<SP>1</SP> 2  = (0, 1, 4, 4, 4, 4) = 4 C<SP>2</SP> 2  = (0, 2, 2, 2, 2, 2) = 2 C<SP>1</SP> 3  = (0, 0, 1, 6, 6, 6) = 6 C<SP>2</SP> 3  = (0, 0, 2, 5, 1, 12) = 12   C<SP>3</SP> 3  = (0, 0, 3, 4, 7, 5) = 18 C<SP>4</SP> 3  = (0, 0, 4, 3, 2, 11) = 24 C<SP>4</SP> 3  = (0, 0, 4, 3, 2, 11) = 24 C<SP>1</SP> 4  = (0, 0, 0, 1, 10, 3) = 120 C<SP>2</SP> 4  = (0, 0, 0, 2, 8, 4) = 30   C<SP>3</SP> 4  = (0, 0, 0, 3, 7, 7) = 150 C<SP>4</SP> 4  = (0, 0, 0, 4, 5, 8) = 60 C<SP>5</SP> 4  = (0, 0, 0, 5, 4, 11) = 180 C<SP>6</SP> 4  = (0, 0, 0, 6, 2, 12) = 90 and the Specification contains a table for deriving #α i  from (α 5 <SP>4</SP>, α 6 <SP>4</SP>). Suppose, for example, that the valid number 23 = (1, 2, 3, 2, 1, 10) is mutilated by the addition of 2 to the third component, i.e. #α 3  = 2, and becomes (1,2,0,2,1,10) = 12,035 which is invalid. The validating sequence is as follows: A = (1, 2, 0, 2, 1, 10) C<SP>1</SP> 1  = (1, 1, 1, 1, 1, 1) A 1  = A-C<SP>1</SP> 1  = (0, 1, 4, 1, 0, 9) C<SP>1</SP> 2  = (0, 1, 4, 4, 4, 4) A 2  = A 1  - C<SP>1</SP> 2  = (0, 0, 0, 4, 7, 5) A 3  = A 2  = (0, 0, 0, 4, 7, 5) C<SP>4</SP> 4  = (0, 0, 0, 4, 5, 8) A 4  = A 3  - C<SP>4</SP> 4  = (0, 0, 0, 0, 2, 10)   Thus (α 5 <SP>4</SP>, α 6 <SP>4</SP>) = (2, 10) and from the table in the Specification the error is of magnitude 2 in the third component. The Specification outlines a block diagram of an arrangement for effecting the above validating process.