Koodausteoria, Kesä 2014 Topi Törmä Matemaattisten tieteiden laitos
4.7 Syklisen koodin jälkiesitys Olkoon F = F q ja K = F q m kunnan F laajennuskunta. Määritelmä 4.7.1. Kuntalaajennuksen K/F jälkifunktioksi (trace function) sanotaan kuvausta Tr K F : K F, Tr K F (x) = x qi = x + x q + x q2 + + x q. Kuvaa Tr K F (x) sanotaan alkion x K jäljeksi kunnan F suhteen. Jos kunnat ovat selvät, niin jälkifunktiota merkitään Tr. Jos q = p on alkuluku, niin kuvausta Tr K F p sanotaan absoluuttiseksi jälkifunktioksi ja jälkeä Tr K F p (x) alkion x K absoluuttiseksi jäljeksi. Topi Törmä Matemaattisten tieteiden laitos 2 / 14
Jälki todella on kuvaus kuntaan F: Kun x K = F q m, niin Tr(x) q = ( ) q x qi = x qi+1 = x q + + x q + x qm. Koska x qm = x, niin Tr(x) q = Tr(x) ja Tr(x) F q (ks. kertausmonisteen Lause 32). Topi Törmä Matemaattisten tieteiden laitos 3 / 14
Lause 4.7.2. Olkoon Tr laajennuksen K/F jälkifunktio. Tällöin a) Tr on F-lineaarinen kuvaus eli kaikilla x, y K ja a F pätee Tr(x + y) = Tr(x) + Tr(y) ja Tr(ax) = a Tr(x). b) Tr on surjektio K F ja saa jokaisen arvonsa yhtä monesti. c) Tr(a) = ma kaikilla a F. d) Tr(x q ) = Tr(x) kaikilla x K. Topi Törmä Matemaattisten tieteiden laitos 4 / 14
Todistus: a) Oletetaan, että x, y K ja a F. Tällöin Tr(x + y) = (x + y) qi = (x qi + y qi ) = = Tr(x) + Tr(y). x qi + y qi Kaikilla a F q pätee a q = a, joten a qi = a kaikilla i 0. Siten Tr(ax) = (ax) qi = a qi x qi = ax qi = a x qi = a Tr(x). Topi Törmä Matemaattisten tieteiden laitos 5 / 14
b) Polynomilla x + x q + + x q on korkeintaan q nollakohtaa kunnassa K. Tästä johtuen on olemassa sellainen β K, että Tr(β) 0. Siis b = Tr(β) F q = F q \ {0}. Jos nyt a F, niin myös ab 1 F ja a-kohdan mukaan Näin ollen Tr on surjektio. Tr(ab 1 β) = ab 1 Tr(β) = ab 1 b = a. Topi Törmä Matemaattisten tieteiden laitos 6 / 14
Jos ξ Ker Tr = {α K Tr(α) = 0}, niin Tr(a + ξ) = Tr(a) + Tr(ξ) = Tr(a) + 0 = Tr(a) kaikilla a K. Koska a + ξ 1 a + ξ 2, kun ξ 1 ξ 2, niin jokaisella b F on vähintään Ker Tr eri alkukuvaa ja K Ker Tr F. Toisaalta homomorfismien peruslauseen (Lukuteoria ja ryhmät) nojalla K/ Ker Tr = Im Tr = F. Kaikki tässä esiintyvät ryhmät ovat äärellisiä, joten K = Ker Tr F ja jokaisella b F on oltava täsmälleen Ker Tr alkukuvaa. Topi Törmä Matemaattisten tieteiden laitos 7 / 14
c) Kuten edellä todettiin, on a qi = a kaikilla i 0, kun a F. Siten Tr(a) = a qi = a = ma. Topi Törmä Matemaattisten tieteiden laitos 8 / 14
c) Kuten edellä todettiin, on a qi = a kaikilla i 0, kun a F. Siten Tr(a) = a qi = d) Kun x K, niin x qm = x ja saadaan Tr(x q ) = (x q ) qi = x qi+1 = x q + + x q + x qm a = ma. = x + x q + + x q = Tr(x). Topi Törmä Matemaattisten tieteiden laitos 8 / 14
Huomautus 4.7.3. Jos K = F q m ja alkion α K minimipolynomin (kunnan F q suhteen) m α (x) aste on m, niin (ks. Lauseen 4.1.7 c-kohta) m α (x) = (x α)(x α q ) (x α q ) = x m (α + α q + + α q )x + = x m Tr K F (α)x +..., joten Tr K F (α) = (termin x kerroin). Topi Törmä Matemaattisten tieteiden laitos 9 / 14
Määritelmä 4.7.4. Olkoon F = F q, K = F q m, γ kunnan K primitiivialkio ja P renkaan K[x] additiivinen aliryhmä, joka on suljettu kunnan F alkioilla kertomisen suhteen (ts. ap(x) P aina, kun a F ja p(x) P). Olkoon edelleen n Z + ja Tr jälkikuvaus Tr K F. Muotoa C(P) = { c(f ) = ( Tr(f (1)), Tr(f (γ)),..., Tr(f (γ n 1 )) ) f P } olevaa lineaarista koodia kutsutaan pituutta n olevaksi jälkikoodiksi kunnan F suhteen. Topi Törmä Matemaattisten tieteiden laitos 10 / 14
Huomaa, että koodi C(P) todella on lineaarinen, sillä jos c 1 = c(f 1 ), c 2 = c(f 2 ) C(P) ja a F, niin c 1 + c 2 = ( Tr(f 1 (1)),..., Tr(f 1 (γ n 1 )) ) + ( Tr(f 2 (1)),..., Tr(f 2 (γ n 1 )) ) = ( Tr(f 1 (1)) + Tr(f 2 (1)),..., Tr(f 1 (γ n 1 )) + Tr(f 2 (γ n 1 )) ) = ( Tr(f 1 (1) + f 2 (1)),..., Tr(f 1 (γ n 1 ) + f 2 (γ n 1 )) ) = ( Tr((f 1 + f 2 )(1)),..., Tr((f 1 + f 2 )(γ n 1 )) ) = c(f 1 + f 2 ) C(P) ja ac 1 = a ( Tr(f 1 (1)),..., Tr(f 1 (γ n 1 )) ) = ( a Tr(f 1 (1)),..., a Tr(f 1 (γ n 1 )) ) = ( Tr(af 1 (1)),..., Tr(af 1 (γ n 1 )) ) = c(af 1 ) C(P) eli C(P) on avaruuden F n aliavaruus. Topi Törmä Matemaattisten tieteiden laitos 11 / 14
Lause 4.7.5. Olkoot F, K ja γ kuten Määritelmässä 4.7.4. Oletetaan, että n (q m 1) ja q m 1 = nn, N Z +. Olkoon B syklinen n-pituinen koodi kunnan F suhteen, jonka nollakohdat ovat γ Ns 1,..., γ Nsu. Tällöin koodin B duaalikoodi B on jälkikoodi C(P), missä { u } P = a i x Ns i a i K. i=1 Topi Törmä Matemaattisten tieteiden laitos 12 / 14
Todistus: Huomaa, että γ N on primitiivinen n:s ykkösen juuri (vrt. harjoituksen 5 tehtävä 3), joten syklisen koodin B nollakohdat todellakin ovat alkion γ N potensseja. Lisäksi jos a, b P, niin a b = u u a i x Ns i b i x Ns i = i=1 i=1 u (a i b i )x Ns i P, i=1 joten P on renkaan K[x] aliryhmä yhteenlaskun suhteen. Lisäksi ap(x) P kaikilla a F ja p(x) P. Topi Törmä Matemaattisten tieteiden laitos 13 / 14
Todistus: Huomaa, että γ N on primitiivinen n:s ykkösen juuri (vrt. harjoituksen 5 tehtävä 3), joten syklisen koodin B nollakohdat todellakin ovat alkion γ N potensseja. Lisäksi jos a, b P, niin a b = u u a i x Ns i b i x Ns i = i=1 i=1 u (a i b i )x Ns i P, i=1 joten P on renkaan K[x] aliryhmä yhteenlaskun suhteen. Lisäksi ap(x) P kaikilla a F ja p(x) P. Olkoon b = (b 0,..., b n 1 ) F n ja c = c(f ) C(P), missä f (x) = u i=1 a ix Ns i. Merkitään b(x) = n 1 j=0 b jx j ja lasketaan vektoreiden b ja c pistetulo: Topi Törmä Matemaattisten tieteiden laitos 13 / 14
( n 1 n 1 u ) b c = b j Tr(f (γ j )) = b j Tr a i γ Ns i j j=0 n 1 = = b j j=0 i=1 n 1 (a i u Tr i=1 j=0 u Tr(a i γ Ns i j ) = ) b j γ Ns i j = j=0 n 1 i=1 j=0 i=1 u Tr(b j a i γ Ns i j ) u Tr(a i b(γ Ns i )). i=1 Jos nyt b B, niin b(γ Ns i ) = 0 kaikilla i = 1,..., u, joten b c = 0 kaikilla c C(P). Näin ollen B C(P). Topi Törmä Matemaattisten tieteiden laitos 14 / 14
Olkoon nyt b C(P), jolloin b c = 0 kaikilla c C(P). Valitaan c = c(f ), missä f (x) = ax Ns j, j {1,..., u} ja a K. Tällöin Tr(ab(γ Ns j )) = b c = 0. Jos b(γ Ns j ) 0, niin koska a K voitiin valita vapaasti, pätee {ab(γ Ns j ) a K} Ker(Tr). Näin ollen homomorfismien peruslauseen nojalla K = {ab(γ Ns j ) a K} Ker(Tr) = K F < K, mikä on ristiriita. Siispä b(γ Ns j ) = 0. Tämä pätee kaikilla j = 1,..., u, joten b B eli C(P) B. Siispä C(P) = B eli B = C(P). Topi Törmä Matemaattisten tieteiden laitos 15 / 14
Koska jokainen syklinen koodi on jonkin syklisen koodin duaalikoodi, niin jokaisella syklisellä koodilla on esitys jälkikoodina. Topi Törmä Matemaattisten tieteiden laitos 16 / 14
Koska jokainen syklinen koodi on jonkin syklisen koodin duaalikoodi, niin jokaisella syklisellä koodilla on esitys jälkikoodina. Huomautus 4.7.6. Jos α = γ N (primitiivinen n:s ykkösen juuri), niin edellä riittää ottaa mukaan sellainen nollakohtien α s i = γ Ns i joukko, missä on yksi edustaja s i jokaisesta joukkoon {s 1,..., s u } kuuluvasta syklotomisesta sivuluokasta modulo n. Topi Törmä Matemaattisten tieteiden laitos 16 / 14
4.8 Mattsonin-Solomonin polynomit Oletetaan, että F = F q ja syt(n, q) = 1. Olkoon α primitiivinen n:s ykkösen juuri eräässä kunnan F laajennuskunnassa F q m. Topi Törmä Matemaattisten tieteiden laitos 17 / 14
4.8 Mattsonin-Solomonin polynomit Oletetaan, että F = F q ja syt(n, q) = 1. Olkoon α primitiivinen n:s ykkösen juuri eräässä kunnan F laajennuskunnassa F q m. Määritelmä 4.8.1. Vektorin a = (a 0, a 1,..., a n 1 ) F n q m (eli polynomin a(x) = a 0 + a 1 x + + a n 1 x n 1 ) Mattsonin Solomonin polynomiksi, tai MS-polynomiksi, kutsutaan polynomia A(z) = A a (z) = missä A j = a(α j ) = n 1 n A j z n j F q m[z], j=1 a i α ij kaikilla j = 1,..., n. Topi Törmä Matemaattisten tieteiden laitos 17 / 14
Lause 4.8.2. Kun a ja A(z) ovat kuten edellä, niin a i = 1 n A(αi ) kaikilla i = 0, 1,..., n 1. Topi Törmä Matemaattisten tieteiden laitos 18 / 14
Lause 4.8.2. Kun a ja A(z) ovat kuten edellä, niin a i = 1 n A(αi ) kaikilla i = 0, 1,..., n 1. Todistus: Koska α n = 1, saadaan A(α i ) = = n n A j α (n j)i = A j α ji = j=1 j=1 n n 1 n 1 a k α (k i)j = a k j=1 k=0 k=0 j=1 n α ij( n 1 j=1 k=0 n α (k i)j. a k α kj) Topi Törmä Matemaattisten tieteiden laitos 18 / 14
Kun k = i, niin tässä n j=1 α(k i)j = n j=1 1 = n. Kun k i, niin n < k i < n ja k i 0. Merkitsemällä l = k i saadaan α l 1, kun l 0, ja n j=1 α lj = α l (1 + α l + + α (n 1)l ) = α l 1 αnl 1 α l = 0. Koska syt(n, q) = 1, niin n 0 kunnan F alkioksi tulkittuna ja yhtälö A(α i ) = na i voidaan jakaa puolittain alkiolla n F (eli kertoa alkion n käänteisalkiolla n 1 ). Topi Törmä Matemaattisten tieteiden laitos 19 / 14
Kun k = i, niin tässä n j=1 α(k i)j = n j=1 1 = n. Kun k i, niin n < k i < n ja k i 0. Merkitsemällä l = k i saadaan α l 1, kun l 0, ja n j=1 α lj = α l (1 + α l + + α (n 1)l ) = α l 1 αnl 1 α l = 0. Koska syt(n, q) = 1, niin n 0 kunnan F alkioksi tulkittuna ja yhtälö A(α i ) = na i voidaan jakaa puolittain alkiolla n F (eli kertoa alkion n käänteisalkiolla n 1 ). Seuraus 4.8.3. wt(a) = n r, missä r on niiden n:nsien ykkösen juurten lukumäärä, jotka ovat polynomin A a (z) nollakohtia; erityisesti wt(a) n deg A a (z). Topi Törmä Matemaattisten tieteiden laitos 19 / 14
Lause 4.8.4. (BCH-raja) Olkoon α F q m primitiivinen n:s ykkösen juuri, b N ja d Z +, d 2. Olkoon g(x) F[x] polynomi, jonka nollakohtia ovat (ainakin) α b, α b+1,..., α b+d 2, ja olkoon C polynomin g generoima n-pituinen syklinen koodi. Tällöin d min C d. Topi Törmä Matemaattisten tieteiden laitos 20 / 14
Lause 4.8.4. (BCH-raja) Olkoon α F q m primitiivinen n:s ykkösen juuri, b N ja d Z +, d 2. Olkoon g(x) F[x] polynomi, jonka nollakohtia ovat (ainakin) α b, α b+1,..., α b+d 2, ja olkoon C polynomin g generoima n-pituinen syklinen koodi. Tällöin d min C d. Todistus: Olkoon c(x) C, c(x) 0. Koska g(x) c(x) renkaassa R n, niin c(x) = f (x)g(x) renkaassa R n ja c(x) = f (x)g(x) + a(x)(x n 1) renkaassa F[x]. Täten c(α j ) = 0 kaikilla b j b + d 2, ja A(z) = A c (z) = n c(α j )z n j j=1 = c(α)z n 1 + + c(α b 1 )z n b+1 + c(α b+d 1 )z n b d+1 + + c(α n ). Topi Törmä Matemaattisten tieteiden laitos 20 / 14
Olkoon A (z) = z b 1 A(z) (z n 1) ( c(α)z b 2 + c(α 2 )z b 3 + c(α b 1 ) ) = c(α)z b+n 2 + + c(α b 1 )z n + c(α b+d 1 )z n d + + c(α n )z b 1 c(α)z b+n 2 c(α b 1 )z n + c(α)z b 2 + + c(α b 1 ) = c(α b+d 1 )z n d + + c(α n )z b 1 + c(α)z b 2 + + c(α b 1 ). Jokainen n:s ykkösen juuri, joka on polynomin A(z) nollakohta, on myös polynomin A (z) nollakohta. Tällaisten ykkösen juurten määrä on korkeintaan deg A n d, joten myös deg A(z) n d. Seurauksen 4.8.3 nojalla wt c n (n d) = d, joten d min C d. Topi Törmä Matemaattisten tieteiden laitos 21 / 14