Application of the Combinatorial Configurations for Synthesis of Correcting Codes Volodymyr Riznyk, Oleksandr Lesjuk, Marija Ljepikhova Control Aided Systems Department, Lviv Polytechnic National University, S. Bandery Str., 12, Lviv, 79013, UKRAINE, E-mail: rvv@polynet.lviv.ua Abstract – The objective of the paper is application of the combinatorial configurations for improving quality indices of coding systems with respect to noise immunity based on the combinatorial configurations theory. Research into the underlying mathematical structures relates to the optimal placement of symbols “0” and “1” in code combinations of the system using combinatorial techniques. Correcting cyclic codes design using nonstandard mathematical constructions with special combinative properties, namely the “Ideal Ring Bundles” (IRB)s are studied. The techniques for optimum synthesis of the cyclic codes with improved possibilities for correcting the multiple errors are regarded. namely, via an algebraic method known as syndrome decoding. This simplifies the design of the decoder for these codes, using small low-power electronic hardware. BCH codes are used in applications such as satellite communications, compact disc players, DVDs, disk drives, solid-state drives and two-dimensional bar codes [2]. Given a prime power q and positive integers m and d with d ≤ qm − 1, a primitive narrow-sense BCH code over the finite field GF(q) with code length n = qm − 1 and distance at least d is constructed by the following method [2]. Let α be a primitive element of GF(qm). For any positive Кеу words – combinatorial configuration, information integer i, let mi(x) be the minimal polynomial of αi over GF(q). technology, correcting code, error protection, Galois field, coding The generator polynomial of the BCH code is defined as the system, optimization. I. Introduction Transfer of information from one place to another faces many difficulties. Principal among them is noise. Clearly if what is sent is not what is received, communication can be problematic. Error correcting codes have been developed to solve this type of problem. Computer scientists came up with a simple error detection method called “parity check”. With this method can be represented data using only the first 7 bits. The last bit is always chosen so that together with the other seven there are an even number of 1's in the byte. When the data arrives at the other end, the receiver counts the number of 1's in the byte. If it's odd, then the byte must have been contaminated by noise so the receiver may ask for retransmission. This method only detects errors but it can not correct them other than ask for retransmission. If retransmission is expensive (e.g. satellite), parity check is not ideal. Also its error detection ability is very low. If two bits were changed by noise, then the receiver will assume the message is correct. More sophisticated error correction codes address these problems. No error correcting code is perfect (although we call some perfect codes). No code can correct every possible error vector. But it is also reasonable to assume that only a small number of errors are made each transmission and so we only need codes that can correct a small number of errors [1]. II.Bose-Chaudhuri-Hocquengrem Codes In coding theory, the Bose-Chaudhuri-Hocquengrem codes (BCH codes) form a class of cyclic error-correcting codes that are constructed using finite fields [2]. BCH codes were invented in 1959 by French mathematician Alexis Hocquenghem, and independently in 1960 by Raj Bose and D. K. Ray-Chaudhuri. The acronym BCH comprises the initials of these inventors' names. One of the key features of BCH codes is that during code design, there is a precise control over the number of symbol errors correctable by the code. In particular, it is possible to design binary BCH codes that can correct multiple bit errors. Another advantage of BCH codes is the ease with which they can be decoded, least common multiple g(x) = (m1(x),…,md − 1(x)). It can be seen that g(x) is a polynomial with coefficients in GF(q) and divides xn − 1. Therefore, the polynomial code defined by g(x) is a cyclic code. There are many algorithms for decoding BCH codes. The most common ones follow this general outline: 1. 2. 3. 4. 5. Calculate the syndromes sj for the received vector Determine the number of errors t and the error locator polynomial Λ(x) from the syndromes Calculate the roots of the error location polynomial to find the error locations Xi Calculate the error values Yi at those error locations Correct the errors During some of these steps, the decoding algorithm may determine that the received vector has too many errors and cannot be corrected. For example, if an appropriate value of t is not found, then the correction would fail. In a truncated (not primitive) code, an error location may be out of range. If the received vector has more errors than the code can correct, the decoder may unknowingly produce an apparently valid message that is not the one that was sent [2]. III. Ideal Ring Bundle Codes The Ideal Ring Bundle (IRB) is cyclic sequences of integers, which form perfect partitions of a finite interval [1, S] of integers. The sums of connected sub-sequences of the IRB enumerate the set of integers [1, S] exactly R-times [3]. Underlying combinatorial structure can be represented in terminology of the theory of finite fields [4]. For any prime power q these exists a finite field with exactly q elements. This field is unique up to isomorphism and is called the Galois field of q elements [written GF(q)]. The multiplicative group of GF(q) is cyclic; thus it is generated by any of its elements of order q-1. These generating elements are primitive roots and if α is a primitive root so is αx whenever x is prime to q-1. For prime p, the residues 0,1,…,p-1 form a field with respect to addition and multiplication modulo p; this field is often taken to be the generic representation of GP(p). GF(r), r=q m, can be “COMPUTER SCIENCE & INFORMATION TECHNOLOGIES” (CSIT’2014), 18-22 NOVEMBER 2014, LVIV, UKRAINE constructed from GF(q) by adjoining any root of any m-th degree polynomial f(x) irreducible over GF(q). GF(qm) can be represented by the set of all m-tuples with entries from GF(q). For multiplicative purposes it is more convenient to represent GF(qm) in terms of a primitive root α; in which case, GF(qm) consists of elements: 0,1, α, α2,…, αqm-2 [5]. Let us regard IRB with n=4, S=13 in terms of finite fild theory. In this case prime element x of GF(32) satisfies equation f(x)=x3-x-1, where f(x)- is 3-degree polynomial irreducible over GF(32), p=3, m=2 (Fig. 1). TABLE 1 INDEXES n 4 8 16 32 64 128 256 512 OF THE OPTIMIZED IRB CORRECTING CODES t≤ 0 3 7 15 31 63 127 255 S 7 15 31 63 127 255 511 1025 Q 0 0,2 0,226 0,238 0,244 0,247 0,248 0,249 P 14 30 62 126 254 510 1022 2050 2 Õ +Õ Table 1 shows both increase error correction capability of the optimized cyclic IRB code in increasing order both of Õ code combination length and code size. That is, a maximal Õ3 2 Õ +2Õ+1 number of corrected errors t theoretically possible reaches Õ Õ1 quarter of code combination length, while maintaining on the 2 2Õ +2Õ+1 code size twice as large of the code combination length. Õ 1 3 1 For example, the IRB with n=8, R=4 corresponding to the 2 table given above consists of 1,1,1,2,2,1,3,4. The initial 2Õ +2 2 combination of the IRB correcting code follows from Õ9 Õ +2 equation (1): 111010110010001. The complete set of code Õ +2 2 combinations creates by cyclic shift of this combination with 2Õ +Õ+1 2 added number of cyclic shifts the same combination of Õ +2Õ converse symbols, namely, 000101001101110. So, we have Fig.1. Graphic representation of IRB with n=4, S=13 in got optimized IRB correcting code with t ≤ 3, S=15. and terms of finite field by f(x)= x3- x- 1 P=30. Õ+1 2 Õ +Õ+1 2 To see this we observe IRB with n=4, S=13 as a nonConclusion uniform geometric figure of four (n=4) vertexes (1, x, x+1, Application of the combinatorial configurations such as x+2) which form ring sequence of positive integers (1, 2, 6, Ideal Ring Bundles (IRB)s for innovative information 4) in field of S =13 vertexes. Synthesis of the IRB correcting code starts from finding an technology provides techniques for improving quality initial combination of the code using the equation (1) to indices of coding systems with respect to noise immunity arrange four (n=4) symbols “1” of S =13 code positions, based on the combinatorial configurations theory. Research into the underlying mathematical structures provides while remaining ones – “0”: development optimal error correction methodology for j synthesis high performance coding systems due to optimal : xj – 1 ≡ (1) k i (mod S ), j=1,2,…, n, placement of symbols “0” and “1” in code combinations of i 1 the system using combinatorial techniques. The techniques where kj is i –th element of the IRB. The set of code combinations creates by cyclic shift of the for optimum synthesis of cyclic codes with improved initial combination taking rest S - 1 combinations of possibilities for correcting errors based on cyclic groups in extensions of Galois filds and theory of the IRBs. These correcting code. Minimum Hamming distance d for this correcting code is applications make it possible to configure information systems for correcting a large number of errors, for example defined as follows: d = 2(n – R) (2) communications and satellite. If n = 2R than d = n, S = 2n-1, and number t of corrected errors is function of n : t ≤ ent (n/2 – 1) (3) Quality index Q of correcting capability of the optimized IRB code defines error correction efficiency of the code. It is relation maximal number of corrected errors t to code combination length S : Q= t/S (4) Code size P for this coding system is P=2S (5) The outcome of the calculations is represented below. References [1] http://en.wikibooks.org.wiki/Data_Coding_Theory. [2] http://en.wikibooks.org.wiki/BCH_Code [3] V.V.Riznyk, Multidimensional Systems Based on Perfect Combinatorial Models, IEE, Multidimensional Systems: Problems and Solutions, London, No 225, 1998, pp.5/1-5/4. “COMPUTER SCIENCE & INFORMATION TECHNOLOGIES” (CSIT’2014), 18-22 NOVEMBER 2014, LVIV, UKRAINE