2. Laajennettu Eukleideen algoritmi Määritelmä 2.1. Olkoot F kunta ja A, B, C, D F [x]. Sanotaan, että C jakaa A:n (tai C on A:n jakaja), jos on olemassa K F [x] siten, että A = K C; tällöin merkitään C A. (i) Polynomi C on polynomien A ja C yhteinen tekijä, jos C A ja C B. (ii) Polynomi D on polynomien A ja B suurin yhteinen tekijä (lyh. s.y.t.), jos D on A:n ja B:n yhteinen tekijä ja lisäksi pätee: jos C A ja C B, niin C D. (iii) Polynomi C on polynomien A ja B yhteinen jaettava jos A C ja B C. (iv) Polynomi D on polynomien A ja B pienin yhteinen jaettava (lyh. p.y.j.), jos D on A:n ja B:n yhteinen jaettava ja lisäksi pätee: jos A C ja B C, niin D C. Huomautus 2.2. Polynomien s.y.t. ei ole yksikäsitteisesti määrätty; jos D on jokin polynomien A, B F [B] suurin yhteinen tekijä, on myös r D A:n ja B:n s.y.t. kaikille r F, r 0. Kääntäen, jos C ja D ovat A:n ja B:n suurimpia yhteisiä tekijöitä, on C D ja D C, joten C = r D jollekin r F, r 0. Polynomeille s.y.t. saadaan yksikäsitteiseksi, kun vaaditaan, että s.y.t. on pääpolynomi. Jatkossa käytetään merkintää C = syt(a, B), jos C on A:n ja B:n suurin yhteinen tekijä ja C on pääpolynomi. Eukleideen algoritmi (EA) on polynomien jakoyhtälöä käyttävä menetelmä, jolla voidaan määrätä kahden polynomin A, B F [x] suurin yhteinen tekijä D F [x]. Olkoot F, G F [x], deg F deg G. Asetetaan R 0 := F, R 1 := G. Jakoyhtälön nojalla on olemassa yksikäsitteiset polynomit Q 1, R 2 F [x] siten, että R 0 = Q 1 R 1 + R 2 ja deg R 2 < deg R 1. Kun jakoyhtälöä toistetaan, löydetään l N, Q i, R i F [x], 1 i l, siten, että deg R i 1 < deg R i, kun 1 i l, ja R 0 = Q 1 R 1 + R 2, (2.1) R 1 = Q 2 R 2 + R 3,. R l 2 = Q l 1 R l 1 + R l, R l 1 = Q l R l + 0. Mukavuussyistä asetetaan R l+1 := 0. Tällöin Eukleideen algoritmin viimeinen rivi on samaa muotoa kuin muutkin: R l 1 = Q l R l + R l+1. Lemma 2.3. Kun A, B, R F [x], on syt(a, B) = syt(a, B R A). Todistus. Jos D A ja D B, on D A ja D B R A. Jos taas D A ja D B R A, on D A ja D B = (B R A) + R A. Siis A:n ja B:n yhteiset tekijät ovat samat kuin A:n ja B R A:n. Koska EA:ssa on R i+1 = R i 1 Q i R i, on edellisen lemman nojalla syt(r i, R i 1 ) = syt(r i, R i+1 ), 7 Viimeksi muutettu 2.9.2013. 11
joten syt(f, G) = syt(r 0, R 1 ) =... = syt(r l, R l+1 ) = syt(r l, 0) = R l. Kuten kokonaisluvuille, voidaan Eukleideen algoritmi laskea takaperin läpi ja löytää polynomit S l, T l F [x] siten, että syt(f, G) = S l F + T l G. Tämä tulos tunnetaan Bézout n yhtälönä. Tämä menetelmä kertoimien S l ja T l määräämiseksi ei ole kuitenkaan kovin käyttökelpoinen tietokoneella laskettaessa; Eukleideen algoritmista saatavat välivaiheet pitäisi tallettaa muistiin, jotta niitä voitaisiin käyttää kertoimien S l ja T l määräämiseen. Kertoimet S l ja T l voidaan kuitenkin määrätä suoraan käyttämällä ns. laajennettua Eukleideen algoritmia (LEA). Olkoot l, Q i ja R i kuten Eukleideen algoritmissa (2.1). Pyritään etsimään polynomit S i ja T i siten, että S i R 0 + T i R 1 = R i kaikille 0 i l. Oletetaan aluksi, että tällaiset luvut ovat olemassa. Kun tätä oletusta sovelletaan indekseihin i 1, i ja i + 1, saadaan Eukleideen algoritmin avulla (2.2) R i+1 = R i 1 Q i R i = (S i 1 R 0 + T i 1 R 1 ) Q i (S i R 0 + T i R 1 ) = (S i 1 Q i S i )R 0 + (T i 1 Q i T i )R 1. Toisaalta R i+1 = S i+1 R 0 + T i+1 R 1. Valitaan kertoimet seuraavan palautuskaavan mukaisesti S i+1 = S i 1 Q i S i, (2.3) T i+1 = T i 1 Q i T i. Tällöin yhtälöstä (2.2) seuraa, että jos S k R 0 + T k R 1 = R k arvoilla k = i 1 ja k = i ja kertoimet S k ja T k on määrätty palautuskaavojen (2.3) avulla, niin yhtälö S k R 0 + T k R 1 = R k on voimassa myös, kun k = i + 1. Riittää siis löytää sopivat aloitusarvot. Tällaiset ovat S 0 = 1, T 0 = 0, S 1 = 0, T 1 = 1. Laajennetussa Eukleideen algoritmissa määrätään l N, Q i, R i, S i, T i F [x], 1 i l + 1, siten, että 0 deg R i < deg R i 1, kun 1 i l, ja S 0 = 1, T 0 = 0 (2.4) S 1 = 0, T 1 = 1 R i 1 = Q i R i + R i+1 S i 1 = Q i S i + S i+1 T i 1 = Q i T i + T i+1 Tällöin S i R 0 + T i R 1 = R i kaikille 0 i l ja R l = syt(r 0, R 1 ). Huomautus 2.4. a) Jos deg F deg G, on jakoyhtälössä F = Q G + R, deg R < deg G, voimassa Q 0. Tällöin deg(q G) deg G > deg R, joten deg F = deg(q G + R) = deg(q G) = deg(q) + deg(g). Erityisesti, koska EA:ssa R i 1 = Q i R i + R i+1, on deg R i 1 = deg(q i R i ), joten deg Q i > 0, kun i = 2,..., l. b) Seuraavat on helppo osoittaa induktiolla: 1 T i R i 1 T i 1 R i = ( 1) i 1 F, kun 1 i l + 1; 2 S i R i 1 S i 1 R i = ( 1) i G, kun 1 i l + 1; 3 S i T i 1 S i 1 T i = ( 1) i, kun 1 i l + 1; 12
4 deg F = deg T i + deg R i 1 = i 1 j=1 deg Q j + deg R i 1, kun 1 i l + 1; 5 deg G = deg S i + deg R i 1 = i 1 j=2 deg Q j + deg R i 1, kun 2 i l + 1. Määritelmä 2.5. Olkoon F kunta. Polynomi P F [x], jolle deg P > 0, on jaoton (tai redusoitumaton) renkaassa F [x] (tai kunnan F suhteen), jos ei ole olemassa polynomeja A, B F [x] siten, että P = A B ja deg A > 0 ja deg A > 0; muutoin P on jaollinen (tai redusoituva). Huomautus 2.6. Tarkemmin jaottomuutta käsittelevässä kirjallisuudessa erotetaan käsitteet alkualkio ja redusoitumaton alkio. Tosin osa kirjoista, jotka eivät käsittele molempia käsitteitä, saattaa käyttää nimityksiä väärin. Esimerkiksi kirjoittajan työpöydällä kuljeksivassa kirjassa [3, luku IV, 6] prime (alkio) tarkoittaa redusoitumatonta, kun taas kirjassa [6, luku II, 2] termiä prime käytetään vain ilmaisuissa prime ideal, prime field ja prime ring. Alkualkio on määritelty Algeran kurssilla näin: Olkoot R kokonaisalue ja p R nollasta eroava ja ei-kääntyvä. Alkio p on alkualkio, jos ehdoista p a b, a, b R seuraa, että p a tai p b. Alkio p R on puolestaan redusoitumaton, jos ehdoista p = a b, a, b R seuraa, että a on kääntyvä tai b on kääntyvä. Alkualkio on aina redusoitumaton, mutta redusoitumattomuus ei takaa alkualkioominaisuutta. Esimerkki tällaisesta on peräisin Dirichlet ltä (1863): R := Z[ 5] = {a + b 5 a, b Z}. Tässä renkaassa luvulla 6 on kaksi oleellisesti erilaista tuloesitystä redusoitumattomien alkioiden avulla: 2 3 = 6 = (1 + 5)(1 5). Rengas Z[ 5] antaa myös esimerkin lukujen avulla rakennetusta renkaasta, jossa aritmetiikan peruslause ei pidä paikkaansa. Kokonaisalue, jossa on voimassa aritmetiikan peruslausetta vastaava tulos, 8 on rengas, jossa redusoitumaton alkio on aina alkualkio. Polynomirenkaassa F [x] on helppo osoittaa, että redusoitumaton alkio on aina alkualkio. Todistus on samankaltainen kuin kokonaisluvuille, ja avuksi riittää (laajennetun) Eukleideen algoritmin antama Bézout n yhtälö. Asiasta enemmän: [3, luku IV, 6], [6, luku II, 4] ja [5, 8.3]. Lemma 2.7 (Eukleideen lemma). Olkoot P F [x] jaoton ja A, B F [x]. Jos P A B, niin P A tai P B. Todistus. Todistus menee samalla tavalla kuin kokonaislukujen renkaalle. Yksityiskohdat jätetään lukijan tehtäväksi; vrt. [Alg, lemma 9.12]. Lause 2.8. Jokainen nollasta eroava kuntakertoiminen polynomi voidaan esittää jaottomien polynomien tulona. Esitys on tekijöiden järjestystä ja nollasta erovalla vakiolla kertomista lukuunottamatta yksikäsitteinen. Todistus jätetään lukijalle. Vrt. [Alg, lause 9.13/Aritmetiikan peruslause]. Huomautus 2.9. Polynomin jaottomuus riipppuu oleellisella tavalla kerroinkunnasta (tai kerroinrenkaasta, jos määritelmässä kerroinkunnan F tilalle olisi ollut vaikka vain kokonaisalue). Esimerkiksi kokonaislukukertoiminen polynomi x 4 2 jakautuu 8 Jokainen nollasta eroava ei-kääntyvä alkio voidaan esittää redusoitumattomien alkioiden tulona (oleellisesti yksikäsitteisellä tavalla). 13
14 jaottomiin tekijöihin seuraavasti: x 4 2 = (x 4 2) (x + 4 2) (x i 4 2) (x + i 4 2) = (x 4 2) (x + 4 2) (x 2 + 2) renkaassa R[x] = x 4 2 renkaassa Q[x], t.s. polynomi on jaoton. renkaassa C[x] Ensimmäinen kohta on helppo perustella: jaoton polynomi on enintään ensimmäistä astetta ja itse asiassa ensimmäisen asteen polynomit ovat aina jaottomia. Algebran peruslause, jolle todistus esitetään Lukualueiden ja Kompleksianalyysin kursseilla, antaa enemmän: renkaan C[x] ainoat jaottomat polynomit ovat ensimmäisen asteen polynomit. Algebran peruslauseesta saadaan reaalikertoimisille polynomeille seuraavaa: Jos polynomi P R[x] hajotetaan ensimmäisen asteen tekijöihin renkaassa C[x], jolloin tekijät ovat muotoa x x j, missä x j C ovat polynomin P juuret kunnassa C R, jokaisen ei-reaalisen juuren x j kompleksikonjugaatti x j on myös juuri. Tällöin myös tulo (x x j ) (x x j ) jakaa polynomin P (x). Mutta (x x j ) (x x j ) = x 2 (x j + x j )+ x j 2 on reaalikertoiminen polynomi. Siis renkaan R[x] jaottomat polynomit ovat ensimmäisen asteen polynomit ja ne toisen asteen polynomit, joilla ei ole reaalista nollakohtaa. Rationaalikertoimiset polynomit ovat ongelmallisempia (ja rationaalikertoimisia jaottomia polynomeja on enemmän). Toisen ja kolmannen asteen polynomeille P F [x] on voimassa yleisesti: polynomi P on jaoton, jos ja vain jos sillä on juuri kunnassa F. Tämän todistus jätetään lukijan tehtäväksi. Korkeampiasteisille polynomeille tämä karakterisaatio ei päde. Esimerkiksi Z 2 kertoimiselle polynomille x 4 + x 2 + 1 on x 4 + x 2 + 1 = (x 2 + x + 1), jonka arvo pisteissä x = 0 ja x = 1 on 1. Polynomin x 4 2 jaottomuus renkaassa Q[x] on helppo päätellä seuraavan yleisen idean avulla: Olkoot K ja F kuntia, F kunnan K alikunta, ja P F [x] annettu ei-vakio polynomi. Jos P on jaollinen renkaassa F [x], on olemassa F -kertoimiset polynomit A ja B siten, että P = A B. Tällöin polynomi P voidaan esittää myös renkaan K[x] polynomien A ja B tulona, joten P on jaollinen myös renkaassa K[x]. Jos nyt polynomi x 4 2 Q[x] hajoaisi jaottomien rationaalikertoimisten polynomien A 1,..., A k tuloksi, P = A 1 A k, olisivat A 1,..., A k polynomin P tekijöitä myös renkaassa R[x]. Oletetaan, että k > 1. Jos polynomin A 1 aste on yksi, sen pitäisi renkaan R[x] hajotelman yksikäsitteisyyden nojalla olla toinen tekijöistä x 4 2 tai x + 4 2. Jos taas polynomin A 1 aste on kaksi, sen pitäisi olla x 2 + 2 tai tulo (x 4 2) (x + 4 2), jos tämä olisi jaoton rationaalikertoiminen polynomi, mitä se ei ole. Jos taas polynomin A 1 aste on kolme, olisi P/A 1 toinen tekijöistä x 4 2 tai x + 4 2. Toisaalta polynomin P/A 1 pitäisi olla rationaalikertoiminen. Tästä ideasta (tutkitaan renkaan Q[x] polynomin jaottomuutta siirtymällä laajempaan kerroinkuntaan R) on seuraanlainen yleistys: Olkoot R ja S kokonaisalueita ja ϕ: R S rengashomomorfismi. Polynomille A(x) R[x], A(x) = a n x n + + a 0 asetetaan ϕ(a(x)) := ϕ(a n ) x n + +ϕ(a 0 ), jolloin ϕ(a(x)) on renkaan S[x] polynomi. (Huomaa: tässä ei ole kyse yhdistetystä funktiosta.) Väite. Olkoon P (x) = a n x n + + a 0 R[x], a n 0. Jos polynomi ϕ(p (x)) on jaoton renkaassa S(x) ja jos polynomin P (X) johtavalle kertoimelle a n on ϕ(a n ) 0, niin myös polynomi P R[x] on jaoton.
Tämän väitteen todistus jätetään lukijan tehtäväksi. Tulosta voidaan käyttää esimerkiksi tilanteessa R = Z, S = Z p, p alkuluku, ja ϕ: Z Z p luonnollinen kuvaus k [k] p. Väitteen oletus ϕ(a n ) 0 tarkoittaa tässä tapauksessa, että p ei jaa johtavaa kerrointa a n. Pääpolynomeja B Z p [x], joille deg B < d, on vain äärellinen määrä (p d kpl), joten astetta d olevan polynomin Q Z p [x] jaottmuus voidaan (ainakin periaatteessa) selvittää laskemalla kaikki polynomijakolaskut Q/B, B Z p [x], deg B < d. 15 Myöhempää tarvetta varten: Lause 2.10. Olkoot m, n Z +. Tällöin syt(x m 1, x n 1) = x syt(m,n) 1. Todistus. Induktiolla luvun max{m, n} suhteen. Jos max{m, n} = 1, tai jos m = n, on väite selvä. Oletetaan, että m < n. Koska (x n 1) x n m (x m 1) = x n m 1, saadaan syt(x m 1, x n 1) = syt(x m 1, x n m 1) lemma (2.3) = x syt(m,n m) 1 (induktio-oletus) Seuraus 2.11. Olkoot q, m, n Z +. Tällöin = x syt(n,m) 1 lemma (2.3) eksponenttiin. syt(x qm x, x qn x) = x qsyt(m,n) x. Todistus. Jätetään lukijan tehtäväksi. Huomautus 2.12. Kokonaislukujen renkaalla Z ja polynomirenkaalla F [x] näyttäisi olevan paljon yhteistä (enemmänkin on). Algebrasta (ja lukuteoriasta) löytyy useita renkaita, jotka käyttäytyvät samankaltaisesti. Osaa näistä saattaa yhdistää se, että renkaat ovat euklidisia alueita. Tällainen on kokonaisalue R, johon on löytyy funktio d: R N { } siten, että seuraava yleistys jakoyhtälölle on voimassa: kaikille a, b R, b 0, on olemassa q, r R siten, että a = q b + r ja d(r) < d(b). Aritmetiikan peruslause yleistyy euklidisiin alueisiin, samoin (laajennettu) Eukleideen algoritmi suurimman yhteisen tekijän määräämiseksi. Algebran (ja lukuteorian) tutkimus on kuitenkin tuonut esiin sellaisiakin kokonaisalueita, joihin aritmetiikan peruslause yleistyy, mutta jotka eivät ole euklidisia alueita. Kokonaisalueista, joihin aritmetiikan peruslause yleistyy, käytetään englannin kielessä nimitystä unique factorization domain, lyh. UFD, tai factorial ring. Pääideaalirenkailla eli kokonaisalueilla, joissa jokainen ideaali on yhden alkion virittämä, on UFD-ominaisuus; ks. [6, luku II, 4] tai [3, luku IV, 6].