IERG6120 Codig for Distributed Storage Systems Lecture 8-06/10/2016 The multiplicative structure of fiite field ad a costructio of LRC Lecturer: Keeth Shum Scribe: Zhouyi Hu Notatios: We use the otatio GF (q) for a fiite field of size q, ad GF (q) for the set of o-zero elemets i GF (q). We write a b as a short-had otatio for a divides b. 1 The order of a elemet i a group Cosider a fiite commutative group (G, ). Defiitio For a G, we defie the order of a, as ord(a) := mi{i 1 : a i = e} where e deotes the idetity elemet of G. The order of a elemet i a fiite commutative group is welldefied, because a G = e for each a G. ( G is the cardiality of G.) It is guarateed that some power of a is equal to the idetity elemet. The order correspods to the smallest oe. Example GF (9) is the multiplicative group of GF (9). It ca be geerated by irreducible polyomial f(x) = x 2 + 2x + 2. We have x 2 = x + 1 i the fiite field so defied. Let ord(a) be the order of a ozero elemet a i the multiplicative group GF (9). ord(x) = 8 ord(1 + x) = 4 ord(2) = 2 2 Existece of primitive elemet Theorem I the multiplicative subgroup GF (q) of a fiite field GF (q), there exists a elemet a whose (multiplicative) order is equal to q 1, i.e., a q 1 = 1 but a i 1 for i = 1, 2,..., q 2. Defiitio A elemet of order q 1 is called a primitive elemet of GF (q). To prove the existece of primitive elemet, we defie Euler s totiet fuctio, φ(), as the umber of itegers betwee 1 ad that are relatively prime with. Defiitio φ() {i : 1 i, gcd(i, ) = 1} Example φ(1) = {1} = 1 φ(2) = {1} = 1 φ(3) = {1, 2} = 2 φ(p) = {1, 2,..., p 1} = p 1, for prime umber p. φ(12) = {1, 5, 7, 11} = 4 If the prime factorizatio of is p r1 1 pr2 2 prm m, we have the formula φ() = (1 1 p 1 )(1 1 p 2 ) (1 1 p m ). 1
Theorem For positive iteger, d φ(d) =. (The summatio is exteded over all divisors d of.) The proof is basically a coutig argumet. We illustrate this by the followig example. Example Cosider = 12. We classify the umbers betwee 1 ad 12 accordig to their greatest commo divisor with 12. For i = 1, 2,..., 12, if gcd(i, 12) = 1, we put i i the first row of the followig table. If gcd(i, 12) = 2, we put i i the secod row. If gcd(i, 12) = 3, we put it i the third row, etc. 1 2 3 4 5 6 7 8 9 10 11 12 d = 1 φ(12) = 4 1 5 7 11 d = 2 φ(6) = 2 2 10 d = 3 φ(4) = 2 3 9 d = 4 φ(3) = 2 4 8 d = 6 φ(2) = 1 6 d = 12 φ(1) = 1 12 Each row of the table is associated to a divisor d of. We ca cout φ(/d) itegers i the row correspodig to divisor d. As each umber betwee 1 ad 12 appears exactly i oe row, it follows that 12 = φ(12/1) + φ(12/2) + φ(12/3) + φ(12/4) + φ(12/6) + φ(12/12) = φ(12) + φ(6) + φ(4) + φ(3) + φ(2) + φ(1). Thus, we have 12 = d 12 φ(d) = 4 + 2 + 2 + 2 + 1 + 1. Lemma Let (G, ) be a group writte multiplicatively. If a is a elemet i G with order, i.e., a = e but a e for = 1, 2,..., 1, the for = 1, 2,..., 1, we have ord(a ) = gcd(, ). Proof We let m deote the umber gcd(,). We wat to show that m is the smallest iteger such that (a ) m is equal to the idetity elemet e i group G. Firstly, we chec that (a ) m is ideed equal to the idetity elemet e: (a ) m = a gcd(,) = e = e. gcd(,) Next, we show by cotradictio that (a ) j is ot equal to e for 1 j < m. Suppose that (a ) j = r for some iteger j strictly less tha m. Sice is the order of a, we must have j. Divides both ad j by gcd(, ), we get or gcd(, ) gcd(, ) j m gcd(, ) j by the defiitio of m. But m ad gcd(,) are relatively prime. Hece m must be a divisor of j. This cotradicts the assumptio that j is strictly less tha m. We ow prove the theorem at the begiig of this sectio. Ideed, we will establish a stroger result. 2
Theorem I the multiplicative group GF (q), there are φ(d) elemets with order d, for d (q 1). I particular, there are φ(q 1) primitive elemets i GF (q). Proof Let θ(d) deote the umber of elemets i GF (q) with multiplicative order d. We wat to show that θ(d) = φ(d) for all divisors d of q 1. For each divisor d of q 1, we distiguish two cases: either there is o ozero elemet with order d, or there exists at least oe ozero elemet with order d. I the first case, we have θ(d) = 0. Cosider the secod case. Let a be a elemet i GF (q) with order d. We ote that a elemet of order d must be a root of polyomial x d 1. Ideed, if ord(b) = d, the b d = 1 ad hece b d 1 = 0. The followig powers of a, a, a 2, a 3,..., a d (1) are distict roots of polyomial x d 1. (We ca chec that for i = 1, 2,..., d, (a i ) d = (a d ) i = 1 i = 1.) We have thus foud all the roots of x d 1 i GF (q), because the umber of roots of a polyomial is o more tha the degree of the polyomial (at this poit we are usig the property of polyomials over a field). A elemet of order d must be i the list i (1). However, ot all elemets i (1) have order d. By the lemma i p.2, a i has order d precisely whe gcd(i, d) = 1, for i = 1, 2,..., d. Hece, there are exactly φ(d) powers of a which have order d. It follows that θ(d) = φ(d) i the secod case. I either case, we have θ(d) φ(d). O the other had, we have θ(d) = q 1. This equality follows by a coutig argumet. Sice α q 1 for all o-zero α i GF (q), ay ozero elemet i GF (q) should have some order, ad the order must be a divisor of q 1. If we group the q 1 ozero elemets i GF (q) accordig to their orders, the each of them must be couted exactly oce i θ(d), with d ragig over all divisors of q 1. We get 0 = θ(d) φ(d) = [θ(d) φ(d)]. The differece i the square bracet is less tha or equal to zero. We thus have a buch of o-positive umbers which sum to zero. This is possible oly if each of the o-positive umbers is zero. Therefore, we get θ(d) = φ(d) for all d (q 1). 3 Tamo-Barg costructio of LRC Usig the multiplicative structure of fiite field, we have the followig simplified versio of Tamo-Barg costructio of locally repairable code (LRC) [1]. Suppose that we wat to costruct a LRC with locality r, meaig that ay code symbol is a fuctio of r other code symbols. The value of r is a system parameter ad is usually less tha the dimesio of the code. I the followigs we give a costructio of LRC whose legth is a multiple of r + 1. We choose the size of a fiite field q > such that q 1 is a multiple of r + 1. I GF (q), we ca fid precisely r + 1 elemets whose (r + 1)-st power is equal to 1. For example, we ca pic a primitive elemet, say β, of GF (q), ad let α = β (q 1)/(r+1). The is a multiplicative subgroup of GF (q). A coset of A 1 is a subset of elemets i the form A 1 := {1, α, α 2,..., α r } γa 1 := {γz : z A 1 } 3
where γ is a ozero elemet i GF (q). The cosets partitio GF (q), ad each coset cotais r +1 elemets. We use the ey property that the fuctio g(x) = x r+1 is costat o each of these cosets. I fact, if ω γa 1, the ω = γα i for some iteger i, ad g(ω) = (γα i ) r+1 = γ r+1 (α i ) r+1 = γ r+1 depeds o γ oly. Let m be /(r + 1), which is a iteger by our assumptio o. Suppose that A 2, A 3,..., A m are m 1 other cosets of A 1. Let P be the uio of A 1, A 2,..., A m. The set P cotais distict elemets i GF (q). Let D(, r) be the set of the smallest o-egative itegers whose residue is ot equal to r mod r + 1. For example if r = 2 ad = 4, the D(4, 2) = {0, 1, 3, 4}. Costructio. With the above otatios, defie a liear code over GF (q) whose codewords are obtaied by evaluatig polyomials of the form: c i x i i D(,r) o the elemets i P. The above polyomial is called the message polyomial. The coefficiets c i s are elemets i GF (q), ad are the message symbols to be ecoded. The itegers i D(, r) are the expoets of the message polyomial. There is o polyomial with degree oe less tha a multiple of r + 1. The code ca be cosidered as a subcode of RS code. We ote that if r =, the the above costructio gives a RS code. Theorem The code obtaied by the above costructio has locality r, dimesio, ad miimum distace max D(, r). We illustrate the costructio by the followig example. Example: We have a LRC with r = 2, r + 1 = 3, ad let GF (13) be the alphabet. The, we ca chec that 2 is a primitive elemet i GF (13). i 1 2 3 4 5 6 7 8 9 10 11 12 2 i 2 4 8 3 6 12 11 9 5 10 7 1 Furthermore, the field elemets 2 4 = 3, 2 8 = 9 ad 2 12 = 1 are elemets whose 3 rd power is equal to 1. Hece, Let A 1 be the set {3, 9, 1}, A 2 be the coset 2 A 1 = {6, 5, 2} ad A 3 be the coset 2 2 A 1 = {12, 10, 4}. We chec that g(x) = x 3 is costat o each of these cosets. If we wat a code with dimesio 4, we ote that D(4, 2) = {0, 1, 3, 4}, ad the message polyomial has the form a 0 + a 1 x + a 3 x 3 + a 4 x 4, where a 0, a 1, a 3 ad a 4 are message symbols i GF (13). The codewords are obtaied by evaluatig a message polyomial o the poits i A 1 A2 A3. Note that we sip the degree 2 i the message polyomial. A geerator matrix ca be computed as below: A 1 A 2 A 3 3 9 1 6 5 2 12 10 4 1 1 1 1 1 1 1 1 1 x 0 3 9 1 6 5 2 12 10 4 x 1 1 1 1 8 8 8 12 12 12 x 3 = g(x) 3 9 1 9 1 3 1 3 9 x 4 = x 1 g(x) I the first row we list the elemets i A 0, A 1 ad A 2. I the ext four rows we tabulate the zeroth, first, third ad fourth powers of the elemets. Thus, we have G = 1 1 1 1 1 1 1 1 1 3 9 1 6 5 2 12 10 4 1 1 1 8 8 8 12 12 12 3 9 1 9 1 3 1 3 9 4
The geerator matrix ca be divided ito six blocs. The bloc o the bottom left is equal to the bloc i the upper left. The first three colums form a submatrix of row-ra 2. Sice row-ra is equal to colum-ra, the colum-ra of this submatrix is also equal to 2. This implies that the first three colums are liearly depedet. I this example, it is obvious that the first ad secod colums of G are idetical. The first three code symbols form a local group. Ay symbol i this group ca be uiquely determied by the other two. The two blocs i the middle are scalar multiple of each other. The submatrix formed by the middle three colums has ra 2. The middle three colums are liearly depedet, ad the three code symbols i the middle form a local group. Liewise, we ca see that last three symbols form aother local group. By reducig the geerator matrix to row-echelo form, we ca write dow a parity-chec matrix as follows, 1 0 0 0 11 9 0 10 8 0 1 0 0 12 8 0 2 3 P = 0 0 1 0 2 5 0 4 1 0 0 0 1 3 9 0 0 0. 0 0 0 0 0 0 1 3 9 The last row is a parity-chec equatio for the last three code symbols. The secod last row is a parity-chec equatio for the middle three code symbols. We ca chec that the vector [1 3 9 0 0 0 0 0 0] is also i the dual code. Hece, every code symbol has locality 2. Aother choice of the parity-chec matrix is 1 3 9 0 0 0 0 0 0 0 0 0 1 3 9 0 0 0 P = 0 0 0 0 0 0 1 3 9 1 0 0 0 11 9 0 10 8. 0 1 0 0 12 8 0 2 3 Sice the message polyomial has degree less the or equal to 4, the miimum distace is larger tha or equal to 9 4 = 5. This is ideed the miimum distace, because this achieves the boud of LRC by Gopala et al. [2] d + 2. r We shall prove the boud by Gopala et al. i lecture 9. Exercises: 1. Fid all primitive elemets i GF (17). 2. Costruct a liear locally repairable code over GF (17) with locality 3, legth 15, ad dimesio 10. Write dow either the geerator matrix or the parity-chec matrix. Illustrate how to recover a sigle loss of code symbol by accessig 3 other symbols. Determie the miimum distace of the code. 3. Is it true that ay LRC obtaied by the costructio i p.4 achieves the boud by Gopala et al. with equality? Refereces [1] I. Tamo ad A. Barg, A family of optimal locally recoverable codes, IEEE Tras. Iformatio Theory, vol. 60, o.8, pp.4661 4676, 2014. [2] P. Gopala, C. Huag, H. Simitci ad S. Yahai, O the locality of codeword symbols, IEEE Tras. o Iformatio Theory, vol. 58, o. 11, pp.6925 6934, 2012. 5