ankara ¨un˙ıvers˙ıtes˙ı fen b˙ıl˙ımler˙ı enst˙ıt¨us¨u y¨uksek l˙ısans tez˙ı

advertisement
ANKARA ÜNİVERSİTESİ
FEN BİLİMLERİ ENSTİTÜSÜ
YÜKSEK LİSANS TEZİ
SONLU CİSİMLER VE KODLAMA TEORİSİNDEKİ UYGULAMALARI
Burcu ÇAPKIN
MATEMATİK ANABİLİM DALI
ANKARA
2005
Her hakkı saklıdır.
Prof. Dr. Ali Bülent EKİN danışmanlığında, Burcu ÇAPKIN tarafından hazırlanan
bu çalışma 11/10/2005 tarihinde aşağıdaki jüri tarafından Matematik Anabilim Dalı’nda
Yüksek Lisans tezi olarak kabul edilmiştir.
Başkan :
Prof. Dr. Yücel TIRAŞ
Üye
:
Prof. Dr. Ali Bülent EKİN
Üye
:
Doç. Dr. Ayhan ŞERBETÇİ
Yukarıdaki sonucu onaylarım.
Prof. Dr. Metin OLGUN
Enstitü Müdürü
ÖZET
Yüksek Lisans Tezi
SONLU CİSİMLER VE KODLAMA TEORİSİNDEKİ UYGULAMALARI
Burcu ÇAPKIN
Ankara Üniversitesi
Fen Bilimleri Enstitüsü
Matematik Anabilim Dalı
Danışman : Prof. Dr. Ali Bülent EKİN
Bu çalışma beş bölümden oluşmaktadır. Birinci bölüm giriş kısmına ayrıldı. İkinci
bölümde, çalışma için gerekli olan ve ileride kullanılacak sonlu cisimler için temel tanım ve
kavramlar verildi. Üçüncü bölümde, kodlama teorisindeki temel kavramlar ve BCH kodlama sistemi incelendi. Dördüncü bölümde, BCH kodlama sisteminde kullanılan asal ve
primitif polinomları bulmaya yönelik çeşitli algoritmalar verildi. Son bölümde, herhangi
bir sonlu cisim üzerinde polinomlar için çarpanlara ayırma ve kök bulma algoritmaları
incelendi.
2005, 125 sayfa
ANAHTAR KELİMELER : Kod kelimesi, üreteç polinom, primitif polinom, asal polinom, dairesel polinom, sonlu cisim, primitif eleman, tespit edilebilen hatalar, düzeltilebilen
hatalar, BCH kodu.
i
ABSTRACT
Masters Thesis
FINITE FIELDS AND ITS APPLICATIONS IN THE CODING THEORY
Burcu ÇAPKIN
Ankara University
Graduate School of Natural and Applied Sciences
Department of Mathematics
Supervisor : Prof. Dr. Ali Bülent EKİN
This thesis consists of five chapters. The first chapter is devoted to the introduction. In
the second chapter, basic definitions and terminology have been mentioned which will be
needed and be used in the further studies for the finite fields. In the third chapter, information has been given about basic terminology of coding theory and BCH coding system.
In the fourth chapter, several algorithms has been examined aiming to find primitive and
irreducible polynomials in any finite fields which will be necessary for the BCH coding
system. In the last chapter , root finding algorithms and factoring on polynomials for any
finite fields has been examined which will be useful for the algorithms examined.
2005, 125 pages
KEY WORDS : Code word, generator polynomial, primitive polynomial, irreducible
polynomial, cyclotomic polynomials, finite fields, primitive elements, detected errors, corrected errors, BCH code.
ii
TEŞEKKÜR
Araştırmalarımın her aşamasında bilgi ve yardımlarını esirgemeyen, çalışmalarımı yönlendiren ayrıca hayatın önemini ve anlamını konuşmalarında ve davranışlarında vurgulayarak karakterimin gelişmesinde katkıda bulunan danışman hocam sayın Prof. Dr. Ali
Bülent EKİN’ e ; yaşamımın her safhasında desteklerini gördüğüm, isteklerimin gerçekleşmesinde bana inanan ve beni bu yönde teşvik eden iyi ki varlar ve yanımdalar dediğim
ailem Sevgi - Ahmet - Kağan ÇAPKIN’ a en derin duygularımla teşekkür ederim.
Burcu ÇAPKIN
Ankara , Ekim 2005
iii
İÇİNDEKİLER
ÖZET ..........................................................................................................................
i
ABSTRACT ...............................................................................................................
ii
TEŞEKKÜR ............................................................................................................... iii
ŞEKİLLER DİZİNİ ...................................................................................................
v
SİMGELER DİZİNİ .................................................................................................. vi
1. GİRİŞ ......................................................................................................................
1
2. KODLAMA TEORİSİ .........................................................................................
6
2.1 Kodlama Teorisindeki Temel Kavramlar .......................................................
6
2.2 Polinom Kodları .................................................................................................. 22
2.3 BCH Kodları ........................................................................................................ 26
3. SONLU CİSİMLER .............................................................................................. 34
3.1 Giriş ........................................................................................................................ 34
3.2 Cisim Genişlemeleri ............................................................................................ 37
3.3 Sonlu Cisimlerin Karakterizasyonu ................................................................. 42
3.4 Asal Polinomların Kökleri ................................................................................. 43
4. SONLU CİSİMLERDE POLİNOMLAR .......................................................... 48
4.1 Polinomların Mertebesi ve Primitif Polinomlar ............................................ 48
4.2 Asal Polinomlar .................................................................................................... 63
4.3 Asal Polinomların İnşası ..................................................................................... 71
5. POLİNOMLARIN ÇARPANLARA AYRILMASI ........................................ 89
5.1 Küçük Sonlu Cisimlerde Çarpanlara Ayırma ................................................ 89
5.2 Büyük Sonlu Cisimlerde Çarpanlara Ayırma ............................................... 106
5.3 Polinomların Köklerinin Hesaplanması .......................................................... 112
KAYNAKLAR ........................................................................................................... 124
ÖZGEÇMİŞ ................................................................................................................ 125
iv
ŞEKİLLER DİZİNİ
Şekil 1.1 Bir dijital iletişim sistemi................................................................................... 2
v
SİMGELER DİZİNİ
Z
Tamsayılar kümesi
F
Herhangi bir mertebeden cisim
B
Elemanları 0 ve 1 den oluşan iki elemanlı sonlu cisim
Fq
q mertebeli sonlu cisim
GF(pn )
q := pn mertebeli sonlu cisim
F[x]
Polinomlar halkası
C
Kod kelimeleri kümesi
Fq∗
Fq cisminin sıfırdan farklı elemanlarının oluşturduğu çarpımsal grup
In−k
n − k boyutlu birim matris
cT
Bir c matrisinin transpozu
d(a, b)
Herhangi iki kod kelimesi arasındaki uzaklık
wt(a)
Bir a kod kelimesinin ağırlığı
deg(f (x))
¯
¯
g¯f
Bir f (x) polinomunun derecesi
g(x) polinomu böler f (x) polinomu
[L : K]
K cisminin L cismi üzerindeki genişlemesinin derecesi
R(f, g)
f ve g polinomlarının resultantı
Φ
Euler fonksiyonu
T rF/K (α)
α elemanının izi
NF/K (α)
α elemanının normu
K(n)
Dairesel cisim
Qn (x)
Dairesel polinom
ord(f )
f polinomunun mertebesi
f∗
f polinomunun resiprokal polinomu
Nq (d)
Fq [x] de derecesi d olan bütün monik, asal polinomların sayısı
vi
µ
Moebius fonksiyonu
I(q, n; x)
Fq [x] de n dereceli monik, asal polinomların çarpımı
ordn (b)
b elemanının mod(n) deki çarpımsal mertebesi
vii
1
GİRİŞ
Sonlu cisimlerin esas uygulamalarından biri kodlama teorisidir. Bu teori hata oluşma
olasılığı ile bilginin aktarımı sırasındaki kapasiteyi karşılaştıran Shannon Teoremi ile önem
kazanmıştır. Böylece Kodlama Teorisindeki cebirin amacı bir iletişim sisteminde meydana gelen hatalar için hata düzeltebilen ve hata tespit edebilen kod sistemleri tasarlamak olmuştur. Bir gürültülü kanal (hata oluşabilen kanal) üzerinde bilginin güvenilir
yayılımı için yapılan kodlama ve kod çözme işlemleri bugün büyük ve önemli bir işlem
haline gelmiştir.
Kodlama sisteminde gönderilen mesajlar sonlu bir alfabenin elemanlarından oluşan sembollerin bir sonlu dizisinden meydana gelir. Örnek olarak eğer alfabe 0 ve 1 den oluşuyorsa
mesaj 0 ve 1 lerden oluşan bir sonlu diziden meydana gelir. Bu şekildeki kodlama
sistemlerine bir ikili kodlama adı verilir. Genel olarak alfabeyi bir sonlu cisim olarak
gözönüne alabiliriz. Bir iletişim kanalı üzerinde alfabenin elemanlarının sonlu dizilerinin
aktarımında hata olmaması için bilginin her elemanının değişmeden karşı tarafa ulaşması
gerekmektedir. Oysa ki ideal (gürültüsüz) bir kanal olmadığı müddetçe kanal üzerindeki
aktarımlarda hata oluşma olasılığı her zaman vardır.
Kanal üzerinde hata oluşma olasılığının varlığı bilindiğinde ortaya önemli bir problem
çıkar. Bu problem “ Acaba bir hata oluşmuşsa bu hata kaç harfte (yerde) meydana
gelmiştir? ” sorusudur.
Hatayı bulabilmek için yapacağımız çalışmalarda hata sayısı fazlalaştıkça doğru kelime için
düşüneceğimiz aday sayısı artacaktır. Hata bir yerde dahi olsa doğru kelimeyi bulmak için
çok aday vardır. Aday kelimeler arasında doğru kelimeyi bulabilmek için kullanılan dilin
dilbilgisi kurallarına baksak bile birçok kelimenin dil kurallarına uymadığını görebiliriz.
Ya da hata oluşmasını engellemek için dil kısıtlama tekniklerini kullanarak mesajımızda
uzun harfli kelimeleri bulundurmayabiliriz. Bu ise anlatılmak istenen konunun tam olarak
anlaşılmasını önler.
1
İşte bu noktada devreye sonlu cisimlerin bir uygulaması olan Kodlama Teorisi girer.
Kodlama Teorisinin oluşturduğu metotlar güvenilir bir aktarım yapabilmek için hataları düzeltme ve tespit etmeye yönelik olacaktır. Kodlama Teorisi gönderilmek istenen
orjinal mesaja hata düzeltme kodları olan kontrol bitleri ekleyerek hataları düzeltmeye
ve tespit etmeye çalışır. Bu eklenen hata düzeltici ilave kodlar, mesajlar bir gürültülü
iletişim kanalından gönderildiğinde hataları düzeltmek için kullanılır. Örneğin ikili veri
(yani 0 ve 1 lerden oluşan sonlu dizi) mümkün olduğunca güvenilir ve hızlı şekilde bir
gürültülü kanaldan gönderilmek istenebilir. Bu kanal bir telefon hattı, bir yüksek frekanslı
radyo hattı veya bir uydu iletişim bağlantısı olabilir.
Hatalar insan hatası, cihazdaki hatalar, coğrafi şartlardan oluşan hatalar v.b. olabilir. Bu
hatalar alınan verinin gönderilenden farklı olmasına yol açar. Bir hata düzeltici kodlama
sisteminin amacı verilere ilave bir miktar hata düzeltme kodu ekleyerek kodlamaktır.
Mesaj
−→
Kodlanmış
Mesaj
−→ Kanal
−→
Alınan
Mesaj
Kodu
−→ Çözülmüş
Mesaj
Şekil 1.1 Bir dijital iletişim sistemi
Şekil 1.1 genel bir sayısal (dijital) iletişim sistemini gösterir. Eğer kayıt ortamı okuma
- yazma kafaları olan bir manyetik disk veya bir CD şeklindeki kanal olarak gözönüne
alınırsa da aynı model bir bilgi kayıt sistemini tarif etmek için kullanılabilir.
Kodlama işleminde kodlanmış mesaj ile orjinal mesajın elemanlarını aynı sonlu Fq cisminde farzedebiliriz. ai ∈ Fq olmak üzere a1 a2 . . . ak şeklindeki k sembolden oluşan bir
bloğun kodlanması n ≥ k için cj ∈ Fq olmak üzere
c1 c2 . . . c n
2
şeklinde yapılmaktadır. Kod kelimesine n boyutlu Fqn vektör uzayında c satır vektörü
gibi bakılabilir. Bu durumda bir mesaj kelimesi olan a1 a2 . . . ak için kod kelimesi (n−k)
kontrol sembolü eklenerek
a1 a2 . . . ak ck+1 ck+2 . . . cn
şekline dönüştürülmüş olur.
A matrisi (n − k) × k tipinde bir matris ve In−k matrisi n − k mertebeli bir birim matris
olsun. Şimdi elemanları Fq cisminden alınan n − k ranklı (n − k) × n tipinde bir H
matrisini
H := (A, In−k )
şeklinde tanımlayalım. Burada c kod kelimeleri olmak üzere ck+1 ck+2 . . . cn kontrol
sembolleri
HcT = 0
ifadesinden hesaplanır. Bu ifadeye Eşitlik Kontrol İfadesi denir. Bu ifade çok basit kod
sistemleri oluşturmak için de kullanılabilir. Şimdi kontrol bitlerinin bir hata oluşma ihtimalinde hatanın olup olmadığını anlamadaki önemini gösteren basit bir örnek verebiliriz.
Örnek 1.0.1. Bir iletişim kanalından gönderilmek istenen yes ve no kelimeleri
yes −→ 1
no −→ 0
şeklinde kodlanmış olsunlar. Bu durumda alınan mesaj 0 ya da 1 den herhangi biri olsa
mesajın doğruluğundan emin olamayız.
Üç Tekrarlı Kod:
yes −→ 111
no −→ 000
3
olarak kodlanmış ise hata oluşsa dahi alınan mesajdan emin olma olasılığımız biraz daha
artmıştır.
Beş Tekrarlı Kod:
yes −→ 11111
no −→ 00000
Bu kodlamada alınan mesajdan emin olma olasılığımız diğerlerine göre çok daha fazla
artmıştır.
Örnek 1.0.2. Şimdi yukarıda bahsettiğimiz eşitlik kontrol ifadesiyle F2 cisminde 3 × 7
tipindeki H matrisi


1 0 1 1 1 0 0


H= 1 1 0 1 0 1 0

1 1 1 0 0 0 1




için kullanılan kontrol bitlerini hesaplayıp, kodlama fonksiyonunu bulalım. Bu durumda
verilen c1 , c2 , c3 , c4 için
c1 + c3 + c4 + c5 = 0
c1 + c2 + c4 + c6 = 0
c1 + c2 + c3 + c7 = 0
ise c5 , c6 , c7 kontrol sembolleri
c5 = c1 + c3 + c4
c6 = c1 + c2 + c4
c7 = c1 + c2 + c3
elde edilir. Buradan
f : F24 −→ F27
şeklindeki kodlama fonksiyonu
(a1 , a2 , a3 , a4 ) −→ (a1 , a2 , a3 , a4 , a1 + a3 + a4 , a1 + a2 + a4 , a1 + a2 + a3 )
4
şeklindedir.
Örneklerde ilave sembollerin mesajı hatalara karşı korumak için nasıl eklenebildiğini görüyoruz. Gönderilmiş ilave semboller hatalara karşıdır.
Yukarıdaki çalışmalarda çok basit düşündük ve kanal modellerini hesaba katmadık. Gerçek
yaşamda ise daha karmaşık modelleme işlemleri yapılır. Cihaz ile yapılan bu karmaşık
modelleme işlemlerinde kanal üzerindeki doğruluğu garanti etmenin bir yolu yoktur. Bu
yüzden bir kanal tasarlama işleminde sadece doğruluk olasılığının mümkün olduğunca
yüksek yapılmasına çalışılır. Kodlama Teorisi ise doğruluk olasılığı yüksek olan bu kanal
sisteminin engelleyemediği hataları düzeltmeye ve tespit etmeye yönelik olacaktır. Bu nedenle Kodlama Teorisi hatalara karşı kod sistemleri oluşturmaya başlamadan önce kanal
üzerinde bazı özelliklerin sağlandığını kabul eder.
Eğer kanaldaki keyfi olarak alınan a, b sembollerinden a nın yanlış nakledilme olasılığı
ile b nin yanlış nakledilme olasılığı aynıysa bu kanala “ Simetrik Kanal ” denir. Kanal
kabul edilir. Eğer p =
1
2
olursa kanalın çıktısı girişten bağımsız olur ve gönderme işlemi durdurulur. Çünkü p =
1
2
üzerinde tek bitin hata yapma olasılığı p ile gösterilirse p <
1
2
hata olasılıklı bir kanal sisteminde hataları tespit eden ve hataları düzelten bir kodlama
sistemi oluşturulmaz. Bunun yerine kanal üzerindeki doğruluk olasılığının yükseltilmesine
çalışılır. Bu nedenle Kodlama Teorisindeki çalışmalarımızı hata yapma olasılığı p <
1
2
olan
bir simetrik kanal üzerinde yapacağız.
Kodlama teorisini anlamak için yazılan bu girişten sonra artık kodlama teorisindeki bazı
temel bilgileri vererek esas çalışma alanımız olan polinom kodlarına geçebiliriz. Fakat
kodlama teorisine başlamadan önce önemli bir ifadenin bilinmesi gereklidir. Unutulmamalıdır ki kodlama teorisinde ulaşılmak istenen en iyi kodlama en az ilave sembolle en
fazla doğruya ulaşılabilen kodlamadır.
5
2
2.1
KODLAMA TEORİSİ
Kodlama Teorisindeki Temel Kavramlar
Kod kelimesinin ve kodlama fonksiyonunun matematiksel tanımını vermeden önce bazı
özellikleri yeniden gözden geçirmemiz gerekmektedir. Ayrıca şunu belirtmemiz gerekmektedir ki dijital iletişim sistemlerinde kullanılan alfabe sadece 0 ve 1 lerden oluştuğu için bu
bölümde yaptığımız incelemeler B := F2 cismi üzerinde olacaktır. Daha sonraki yapılan
incelemeler ise herhangi bir sonlu Fq cisminde yapılacaktır.
Tanım 2.1.1. Şimdi B = {0, 1} ve n bir pozitif tamsayı olmak üzere
¯
¯
B n := {a1 a2 . . . an ¯ i = 1, 2, 3, . . . , n için ai ∈ B}
olsun. Şimdi B n kümesi üzerinde ⊕ (toplama) işlemini tanımlayalım.
a := a1 a2 . . . an
b := b1 b2 . . . bn
olmak üzere
a ⊕ b := c1 c2 . . . cn
dir. Burada i = 1, 2, 3, . . . , n için
ci := (ai + bi ) mod 2
olarak tanımlanır. Bu şekilde tanımladığımız ⊕ işlemi B n kümesini değişmeli bir grup
yapar (Chapman 1996)
Tanım 2.1.2. m ≤ n olmak üzere bir ikili (m, n) kodlaması
E : B m −→ B n
ile tanımlanmış 1 − 1 bir kodlama fonksiyonu ve
D : B n −→ B m
6
şeklindeki bir kod çözme fonksiyonundan oluşur. Burada E fonksiyonunun görüntü kümesi
kod kelimeleri kümesi diye adlandırılır ve C := Im(E) ile gösterilir. C kümesinin her
elemanına da kod kelimesi denir (Chapman 1996)
Örnek 2.1.3. E : B 2 −→ B 3 olan bir C kodlamasını oluşturalım.
n
o
B 2 = 00, 01, 10, 11
n
o
3
B = 000, 001, 010, 100, 011, 110, 111, 101
kümeleri için E kodlama fonksiyonu aşağıdaki gibi tanımlansın.
E : B 2 −→ B 3
00
−→ 000
01
−→ 011
10
−→ 101
11
−→ 110
Bu durumda C kod kelimelerinin kümesi
n
C =
o
000, 011, 101, 100, 110
dir.
Tanım 2.1.4. (Uzaklık Fonksiyonu)
a, b ∈ B n ise a ve b arasındaki uzaklık

 0,
xi :=
 1,
eğer ai = bi ise
eğer ai 6= bi ise
olmak üzere
d(a, b) :=
n
X
xi
i=1
şeklinde tanımlanır.
Tanımdan kolayca gösterilebilir ki d(a, b) uzaklık fonksiyonu ∀a, b, c ∈ B n için
7
D1. d(a, b) = 0 ⇔ a = b
D2. d(a, b) = d(b, a)
D3. d(a, c) ≤ d(a, b) + d(b, c)
özelliklerini sağlar.
Dolayısıyla B n uzaklık fonksiyonuyla bir metrik olur (Chapman
1996)
Örnek 2.1.5. Bir kodlama sisteminde a ve b kod kelimeleri
a = 10011011
b = 11001101
şeklinde alınmış olsun. Bu durumda a ve b kod kelimeleri arasındaki uzaklık
d(a, b) = 4
dır.
Tanım 2.1.6. (Ağırlık Fonksiyonu) ∀a ∈ B n olmak üzere a kod kelimesinin ağırlığı a
dizisinin sıfırdan farklı bileşenlerinin sayısıdır. Yani
wt(a) :=
n
X
ai
i=1
dir (Chapman 1996)
Örnek 2.1.7. Bir kodlama sisteminde keyfi a kod kelimelerinin ağırlıkları yukarıdaki
ağırlık fonksiyonu tanımından
a = 11001101 ⇒ wt(a) = 5
a = 11100111 ⇒ wt(a) = 6
a = 10000000 ⇒ wt(a) = 1
şeklindedir.
8
Lemma 2.1.8. ∀ a, b ∈ B n için
d(a, b) = wt(a ⊕ b)
dir (Chapman 1996)
İspat
1 ≤ i ≤ n aralığındaki her i için
a := a1 a2 . . . an
b := b1 b2 . . . bn
olmak üzere
ai 6= bi ⇔ ai + bi = 1
dir. Buradan (ai , bi ) çiftinin d(a, b) uzaklığına 1 değerini vermesi için gerek ve yeter şart
wt(a ⊕ b) ağırlığına 1 değerini vermesidir. Bu ise
d(a, b) = wt(a ⊕ b)
olduğunu gösterir.
Tanım 2.1.9. (En Yakın Komşuluk Kodlama İlkesi)
En yakın komşuluk kodlama ilkesi , alınan r ∈ B n kelimesi bir kod kelimesi haline getirilirse D(r) = r olduğunu öne sürer. Burada eğer r bir kod kelimesi değilse yani yayılımda
bir hata oluşmuşsa r nin tüm kod kelimelerine olan uzaklığını ve bu uzaklıklar arasından
en küçük olanını bulmamız gerekir. Şimdi bulduğumuz bu en küçük uzaklığın d olduğunu
varsayalım. Bu durumda d(a, r) = d eşitliğini sağlayan bir kod kelimesi vardır. Bu
durumda en yakın komşuluk kodlama ilkesine göre eğer a ifadesi d(a, r) = d eşitliğini
sağlayan tek bir kod kelimesi ise D(r) = a denir. Eğer bu kodlamada r kelimesine uzaklığı
d ye eşit olan birden fazla kod kelimesi varsa kod çözme başarısızdır denir. Yukarıdaki
şekilde yapılan bu tip kodlama ilkesine en yakın komşuluk kodlama ilkesi denir (Chapman
1996)
9
Tanım 2.1.10. (Maksimum Olasılık Kod Çözme İlkesi)
Bir iletişim kanalında tüm kod kelimelerinin eşit hata yapma olasılığıyla iletileceği ve tek
sembol hata olasılığı
1
2
değerinden düşük olan ikili simetrik kanal durumunda kod çözme
işlemine maksimum olasılık kod çözme ilkesi denir (Chapman 1996)
Tanım 2.1.11. Eğer C kod kelimeleri kümesi B n kümesinin bir alt grubu oluyorsa bu
şekildeki (m, n) koduna bir grup kodu adı verilir (Chapman 1996)
Bundan sonraki işlemlerimizi aksi belirtilmediği müddetçe grup kodları üzerinde yapacağız.
Bu yüzden tekrarı önlemek amacıyla grup kodu yerine kod kelimesi ifadesini kullanacağız.
Tanım 2.1.12. Kod kelimeleri arasındaki en küçük uzaklığa o kodun minimum uzaklığı
adı verilir.
Minimum uzaklık d ile gösterilirse
d := min (d(a, b))
a, b∈ C
dir. Diğer taraftan bir C kodlamasında
∀a, b ∈ C için a ⊕ b ∈ C
olduğunu biliyoruz. Dolayısıyla bu sonuçtan ve Lemma 2.1.8 den dolayı minimum uzaklık
d = min (wt(a))
a∈ C
dir (Chapman 1996)
Tanım 2.1.13. Bir C kodlamasında b gönderilen kelime ve b∗ alınan kelime olmak üzere
b∗ = b ⊕ e
10
dir. Bu durumda
e = b∗ − b
olur. Buradaki e ifadesi B n kümesinin keyfi bir elemanıdır. Bu şekilde tanımlanan e
ifadesine hata vektörü adı verilir (Chapman 1996)
Örnek 2.1.14. B6 grubunda yapılan kodlamada
b∗ := 100011 ve b := 111001
olsun. Bu durumda
e := 011010
dir. Burada e ifadesinin ağırlığı kod kelimesinde kaç hata olduğunu gösterir. Örnekte
wt(e) = 3 olduğundan kodlamada 3 hata olmuştur diyebiliriz.
Gerçek iletişim sistemlerinde alıcının eline sadece b∗ geçeceğinden b
ve e
değerleri
hakkında bir bilgiye sahip olmayacaktır. Zaten kodlama teorisinin amacı kanalda meydana
gelen mevcut e değerlerini tespit edip bunları düzelterek b∗ değerlerinden b ifadelerine
ulaşmaktır. Fakat kanalda oluşan her e tespit edilemez ve düzeltilemez. Şimdi sırasıyla
bir C kodlamasında hangi hataların tespit edilip düzeltilebildiğini göreceğiz.
Tanım 2.1.15. (Tespit Edilebilen Hatalar)
Bir (m, n) kodlamasında eğer
a ∈ C için a ⊕ e 6∈ C
ise e hata vektörü tespit edilebilirdir denir. Bu durumda eğer
a ∈ C için a ⊕ e ∈ C
ise e hata vektörü tespit edilemezdir diye adlandırılır (Chapman 1996)
11
Teorem 2.1.16. Bir (m, n) kodlamasında ağırlığı en fazla k olan hata vektörlerinin
tespit edilebilmesi için gerek ve yeter şart herhangi iki kod kelimesi arasındaki minimum
uzaklığın en az (k + 1) olmasıdır (Chapman 1996)
İspat
(⇐:)
Verilen C kodlaması n uzunluklu tüm kod kelimelerinin kümesi olsun. Bu durumda
∀ b, b 0 ∈ C için d(b, b0 ) ≥ k + 1
olduğunu ve kanalın
wt(e) =
n
X
ei ≤ k
i=1
şeklinde e := e1 e2 . . . en hata vektörü oluşturduğunu varsayalım. Böylece alınan kelime
b ⊕ e olur ve
d(b ⊕ e, b) = wt(b ⊕ e ⊕ b) = wt(e ⊕ 2b) = wt(e) ≤ k
dir. Bu ise b ⊕ e ifadesinin bir kod kelimesi olmadığını gösterir. Buradan e hata vektörü
tespit edilebilirdir.
(:⇒)
∀ b, b 0 ∈ C için
d(b, b 0 ) ≤ k
ve
e := b ⊕ b
0
olsun. Bu durumda
wt(b ⊕ b 0 ) = wt(e) ≤ k ⇒ b ⊕ e = b ⊕ b ⊕ b 0 = b
⇒ b
0
0
kod kelimesi
⇒ hata vektörü bulunamaz
Bu bir çelişkidir. Buradan
∀ b, b 0 ∈ C için d(b, b 0 ) ≥ k + 1
12
dir.
Tanım 2.1.17. (Düzeltilebilen Hatalar)
∀ b ∈ C için D(b ⊕ e) = b ise e hata vektörü düzeltilebilirdir denir (Chapman 1996)
Teorem 2.1.18. Bir (m, n) kodlamasında ağırlığı en fazla k olan hatalar düzeltilebilir
ise herhangi iki kod kelimesi arasındaki minimum uzaklık en az 2k + 1 olur (Chapman
1996)
İspat
a := a1 a2 . . . an ve b := b1 b2 . . . bn kod kelimeleri için
d(a, b) ≤ 2k
olsun. Bu durumda
wt(a ⊕ b) = s ≤ 2k
dir. Buradan
wt(e) ≤ k , wt(e 0 ) ≤ k
olacak şekilde e , e
0
a⊕b = e⊕e
ve a ⊕ b := e ⊕ e
kelimelerini bulabiliriz. Böylece
0
⇒ e⊕a⊕b=e⊕e⊕e
0
olur. Şimdi her iki tarafa b eklenirse
a⊕e=b⊕e
dir.
Durum (i) s = 2t + 1 olsun.
13
0
0
Bu durumda wt(e) = t ve wt(e 0 ) = t + 1 ≤ k olduğunu varsayabiliriz. Böylece
d(a ⊕ e, a) = wt(a ⊕ e ⊕ a) = wt(e) < wt(e 0 ) = d(b ⊕ e 0 , b)
⇒ d(b ⊕ e 0 , a) = d(a ⊕ e, a) < d(b ⊕ e 0 , b)
dir. Kod çözme ilkesinin en yakın komşuluk ilkesi ile b ⊕ e 0 ifadesi a dan veya b den
farklı bir kod kelimesine dönüşür. Yani
d(b ⊕ e 0 , a) = d(a ⊕ e, a) < d(b ⊕ e 0 , b)
dir. Burada eğer D(b ⊕ e) = b olsaydı ∀x için
d(b ⊕ e, x) > d(b ⊕ e, b)
olurdu. Oysa biliyoruz ki
d(b ⊕ e, a) ≤ d(b ⊕ e, b)
dir. Bu ise bir çelişkidir. Buradan b ⊕ e 0 ifadesi
D(b ⊕ e 0 ) 6= a veya D(b ⊕ e 0 ) 6= b
olan bir kod kelimesidir. Böylece wt(e 0 ) ≤ k eşitsizliğini sağlayan e
0
hata vektörü
düzeltilemez. Buradan iki kod kelimesi arasındaki minimum uzaklık 2k + 1 olmalıdır.
Durum (ii) s = 2t olsun.
Bu durumda wt(e) = wt(e 0 ) = t olduğunu varsayabiliriz. Buradan
d(a ⊕ e, a) = wt(e) = t = wt(e 0 ) = d(b ⊕ e 0 , b)
dir. Şimdi alınan a + e kelimesi a ve b kelimelerine eşit uzaklıktadır. Yani
d(a ⊕ e, a) = d(a ⊕ e, b)
dir. Bu yüzden b + e 0 kelimesi de
D(b ⊕ e 0 ) 6= a veya D(b ⊕ e 0 ) 6= b
olan bir kod kelimesidir. Bu ise yine bir çelişkidir.
14
Teorem 2.1.19. Kod kelimeleri arasında minimum uzaklığın 2k + 1 olduğu bir kodlamada ağırlığı en fazla k olan hatalar düzeltilebilirdir (Chapman 1996)
İspat
Bir C kodlamasında d := 2k + 1 ve wt(e) ≤ k şeklinde alınsın. Ayrıca r = b ⊕ e
ve b∗ 6= b ifadeleri gerçeklensin. Bu durumda
d(r, b∗ ) = d(b ⊕ e, b∗ ) = wt(b ⊕ e ⊕ b∗ ) = wt(b ⊕ b∗ ⊕ e)
dir. Böylece wt(b ⊕ b∗ ) ≥ 2k + 1 ve wt(e) ≤ k olduğundan
wt(b ⊕ b∗ ⊕ e) ≥ k + 1
dir. Buradan
d(r, b∗ ) ≥ k + 1
dir. Böylece
d(r, b) = wt(r ⊕ b) = wt(b ⊕ e ⊕ b) = wt(e) ≤ k
dir. Buradan r ifadesine en yakın kod kelimesi b kelimesidir. Bu durumda alınan kelime
maksimum ağırlıklı kod çözme ilkesine göre D(r) = b ifadesini gerçekler. Böylece wt(e) ≤
k olan e hata vektörü düzeltilebilirdir. Sonuç olarak kod kelimeleri arasında minimum
uzaklığın 2k + 1 olduğu bir kodlamada ağırlığı en fazla k olan hatalar düzeltilebilirdir
diyebiliriz.
Örnek 2.1.20. E : B3 −→ B6 şeklinde bir kodlama fonksiyonu tanımlayalım. Bu durumda B3 kümesinin eleman sayısı 23 = 8 olduğundan oluşturacağımız kodda 8 tane kod
kelimesi olacaktır. Şimdi E kodlama fonksiyonuna göre kod kelimelerimiz aşağıdaki gibi
olsun.
000 −→ 000000
001 −→
001111
100 −→ 100110
110 −→
110101
010 −→ 010011
101 −→
101001
011 −→ 011100
111 −→
111010
15
Burada C kodlaması 000000 birim elemanıyla bir gup kodu oluşturur. Yani herhangi iki
kod kelimesinin toplamı yine bir kod kelimesidir. Şimdi kod kelimeleri arasından herhangi
iki kod kelimesi seçelim. Bu durumda
a := 100110
ve
b := 011100
olarak alınırsa d(a, b) = 4 dir. Örneğimizdeki kod kelimelerinin ağırlıkları
wt(000000) = 0
wt(001111) =
4
wt(100110) = 3
wt(110101) =
4
wt(010011) = 3
wt(101001) =
3
wt(011100) = 3
wt(111010) =
4
olduğundan minimum uzaklık
d = min (wt(a)) = 3
a∈ C
dir. Burada minimum uzaklık 3 olduğundan k + 1 = 3 ⇒ k = 2 elde edilir. Bu durumda
en fazla 2 ağırlıklı hatalar tespit edilebilirdir. Buna göre B6 kümesinin 2 ve 2 den küçük
ağırlıklı bütün elemanları tespit edilebilirdir. Bu durumda tespit edilebilen hatalar
000000
000110
000001
001001
000100
001010
001000
001100
010000
010001
100000
010010
000011
010100
000101
011000
100001
100010
100100
101000
110000
000010
Şimdi düzeltilebilen hataları bulalım. 2k + 1 = 3 ⇒ k = 1 olduğundan en fazla 1 ağırlıklı
16
hatalar düzeltilebilirdir. Bu durumda B6 kümesinde düzeltilebilen hatalar
000000
000001
000010
100000
000100
010000
001000
dir.
Teorem 2.1.21. Bir grup kodu için en küçük uzaklık sıfırdan farklı kod kelimelerinin
ağırlıklarının minimumuna eşittir (Chapman 1996)
İspat
Bir grup kodunun minimum uzaklığı d olarak alınsın. Bu durumda
d = d(b, b 0 ) = wt(b ⊕ b 0 )
olacak şekilde b ve b 0 kod kelimeleri vardır. Burada t sıfırdan farklı kod kelimelerinin
ağırlıklarının minimumu olsun. Bu durumda minimum uzaklıktan dolayı d ≥ t elde edilir.
t sıfırdan farklı kod kelimelerinin ağırlıklarının minimumu olduğundan
t = wt(b00 ) = d(b00 , 0) ≥ d
olacak şekilde sıfırdan farklı bir kod kelimesi vardır. Dolayısıyla d = t olur.
Sonuc. 2.1.22. Grup kodlarında sıfır olmayan kod kelimelerine karşılık gelen hatalar tespit
edilemez (Chapman 1996)
İspat Eğer e = b∗ ifadesi bir kod kelimesi ise her b kod kelimesi için b + e ifadesi yine
bir kod kelimesi olur. Bu durumda hata vektörü olan e tespit edilemez.
Tersine bir hata vektörü olan e tespit edilemesin. Bu durumda b bir kod kelimesidir.
Buradan b + e = b∗ bir kod kelimesi olur. Bu ise e = b + b∗ ifadesinin bir kod kelimesi
olduğunu gösterir.
17
Teorem 2.1.23. (Hata Alma Olasılığı)
C kodlaması p hata olasılıklı bir simetrik kanalda n uzunluklu bir kodlama olsun. Bu
durumda alınan bir kelimede k ağırlıklı bir hata olma olasılığı
pk (1 − p)n−k
dır ve k ağırlıklı hata vektörlerinin toplam sayısı
 
n
  pk (1 − p)n−k
k
dır (Pretzel 1992)
İspat
Bir kodlama sisteminde bir kod kelimesinde k ağırlıklı hata olması için alınan
kelimede k yerde hatalı sembolün olması gereklidir. Diğer taraftan bu durumda (n − k)
yerde de doğru sembol vardır. p bir sembolde hata olma olasılığı olduğu için bir sembolde
doğru olma olasılığı (1 − p) olur. Simetrik bir kanalda bu iki olay birbirinden bağımsız
olduğundan alınan kelimede k ağırlıklı hata olma olasılığı
pk (1 − p)n−k
dir. Bu durumda k ağırlıklı hata kelimelerinin toplam sayısı ise
 
n
  pk (1 − p)n−k
k
olur.
Bu teorem sonucunda şimdi göreceğimiz örneklerdeki basit iki kodu Örnek 2.1.26 de birbirleriyle karşılaştırabiliriz.
Örnek 2.1.24. (Eşitlik Kontrol Kodu)
18
B cismi üzerinde verilen bir a1 a2 . . . an mesajı
f : a1 a2 . . . an −→ b1 b2 . . . bn bn+1
fonksiyonu ile eğer i = 1, 2, 3, . . . , n için bi = ai şeklinde ve bn+1 için

Pn
 0,
eğer
i=1 ai = 0 ise
bn+1 :=
P
n
 1,
eğer
i=1 ai = 1 ise
şeklinde tanımlanmış ise böyle oluşturulan kodlamaya eşitlik kontrol kodu adı verilir. Bu
kodlamanın tanımından ötürü herhangi bir b1 b2 . . . bn bn+1 kod kelimesinin sembollerinin
toplamı sıfıra eşit olur. Eğer alınan kelimenin sembollerinin toplamı 1 e eşitse yayılımda
bir hata meydana geldiği anlaşılabilir. Fakat sadece bir kontrol kodu eklenerek oluşturulan
bu kodda hatanın yerinin tespit edilmesi ve hatanın düzeltilmesi olanaksızdır (Niederreiter
and Lidl 1984)
Örnek 2.1.25. (Tekrarlayan Kod)
Bir tekrarlayan kodlamada herbir kod kelimesi sadece a1 mesaj sembolünden meydana
gelir ve (n−1) tane olan c2 = c3 = . . . = cn kontrol sembollerinin hepsi a1 mesaj sembolüne
eşittir. Yani a1 mesaj sembolü (n − 1) kez tekrarlanmış olur. Örneğin n = 5 olan bir kod
kelimesi için mesaj sembolümüz 1 ise oluşacak kod kelimesi 11111 şeklinde olacaktır. Bu
kodlama sistemi mesajı olduğundan çok fazla büyüttüğü için tercih edilmeyen bir sistem
olup ekonomik değildir (Niederreiter and Lidl 1984)
Örnek 2.1.26. p =
1
1000
hata olasılıklı bir kanal boyunca 10000 bitlik bir mesajın
yayımlandığını farzedelim. Bu mesaj için hiçbir kodlama yapılmamışken yayılımın başarısının
olasılığı
0.99910000 ∼
= 0.000045
dir. Şimdi bildiğimiz iki kodlama sistemi sonucundaki eşitlikleri inceleyelim.
(8,7) eşitlik kontrol kodu :
19
Bu kodlamanın 7 bitlik bir mesaj bloğuna bir eşitlik kontrol biti eklediğini biliyoruz.
Bu durumda oran 7/8 dir. Bu kodlama 8 uzunluklu herbir kelimede bir hatanın tespit
edilmesini sağlar. Fakat hiçbir hatayı düzeltemez. Bu sonuçlar altında
kelimede hata olmama olasılığı
= (0.999)8
yayılımın düzeltilebilirlik olasılığı = (0.992028)10000/7 ∼
= 0.000011
hatanın tespit edilme olasılığı
= (0.999972)10000/7 ∼
= 0.961
Üçlü tekrarlı kod :
Bu kodlama sisteminde 1 −→ 111 ve 0 −→ 000 şeklinde kodlama yapılır. Bu durumda
oran 1/3 dür. Buradan üçlü bir blokta iki hata tespit edilebilir ve bir hata düzeltilebilirdir.
Böylece hata tespiti için
yayılımın düzeltilebilirlik olasılığı = (0.999)30000
= (1 − 10−9 )10000
hatanın tespit edilme olasılığı
∼
= 10−13
∼
= 0.99999
Hata düzeltmek için ise
= (0.999)3
bir blokta hata olmama olasılığı
yayılımın düzeltilebilirlik olasılığı = (0.999997)10000
∼
= 0.997003
∼
= 0.97
Bu değerler yapacağımız farklı kodlama sistemlerinin yayılımdaki hataların tespit ve
düzeltilmesindeki önemini göstermektedir (Pretzel 1992)
Teorem 2.1.27. (Shannon’s Teoremi)
C(p) kanal kapasitesi keyfi bir p hata olasılıklı simetrik kanalın kapasitesi olsun. Bu
durumda
C(p) = 1 + p log2 p + (1 − p) log2 (1 − p)
dir (Hill 1986)
Burada C(p) değeri keyfi bir değere yakınsa düzeltme olasılığı da 1 e yakındır.
20
Örnek 2.1.28.
p = 0.999 ⇒ C(0.999) = 0.9886
p = 0.01
⇒ C(0.01)
∼
= 0.92
p = 0.5
⇒ C(0.5)
= 0
Buradaki p = 0.5 durumu gerçek hayatta gözlenemez. Çünkü bir simetrik kanalda p 6=
1
2
seçilmişti (Pretzel 1992)
Teorem 2.1.29. C kodlaması n uzunluklu bir kodlama ve Ai , i ağırlıklı kod kelimelerinin
sayısı olsun. Bu durumda eğer C kodu hata tespit edebilme yeteneğine sahipse alınan
mesajın tespit edilememe olasılığı
P (C) =
Pn
i=1
Ai pi (1 − p)n−i
dir (Hill 1986)
Örnek 2.1.30. Bir C kodlaması
0000
1011
0101
1110
1000
0011
1101
0110
0100
1111
0001
1010
0010
1001
0111
1100
şeklinde oluşturulmuş olsun. Bu durumda eğer p = 0.01 ise
P (C) = p2 (1 − p)2 + 2p3 (1 − p)
= p2 − p4
= 0.00009999
elde edilir (Hill 1986)
21
2.2
Polinom Kodları
Kodlama işlemleri yapılırken bazı önemli cebirsel teknikler kullanılabilir. Bu tekniklerden
biri de polinom çarpımlarıyla ilgilidir. Bu yöntemle bulunan kodlara polinom kodları adı
verilir. Bu kısımda polinom kodlarındaki temel kavramlar ve onların özel bir hali olan
BCH kodları üzerinde durulacaktır.
Bu işlemler sırasında bazı önemli cebirsel kavramlarla karşılaşacağız. Bu nedenle daha
sonraki bölümlerimizde bu cebirsel kavramlar açıklanacaktır. Bölüm 3 de basit temel cebir
bilgileri verildikten sonra Bölüm 4 de BCH kodlarında üreteç polinom olarak kullandığımız
asal ve primitif polinomların bulunuş algoritmaları , Bölüm 5 de de bu algoritmalar için
gerekli olan kök bulma ve çarpanlara ayırma algoritmaları üzerinde durulacaktır.
Tanım 2.2.1. g(x) = g0 + g1 x + . . . + gk xk ∈ F[x] polinomu en fazla k dereceli bir
polinom olsun. Bu durumda polinom kodunun m uzunluklu her bir
a := (a0 , a1 , . . . , am−1 )
mesaj kelimesini
b := (b0 , b1 , . . . , bm+k−1 )
şeklinde kod kelimesine dönüştüren g(x) polinomuna üreteç (kodlama) polinomu denir.
Burada a := (a0 , a1 , . . . , am−1 ) mesaj kelimesine karşılık gelen polinoma
a(x) = a0 + a1 x + . . . + am−1 xm−1
mesaj polinomu adı verilir (Chapman 1996)
Bu şekildeki bir polinom kodunda b := (b0 , b1 , . . . , bm+k−1 ) kod kelimesine karşılık gelen
kod polinomu
b(x) = b0 + b1 x + . . . + bm+k−1 xm+k−1 = a(x) g(x)
şeklinde bulunur.
22
Bir polinom kodunda g(x) = g0 + g1 x + . . . + gk xk ∈ F[x] şeklindeki bir üreteç polinomu
g0 6= 0 ve gk 6= 0 olacak şekilde oluşturulur.
Önerme 2.2.2. g(x) = g0 + g1 x + . . . + gk xk ∈ F[x] polinomu ile üretilen n = m + k
uzunluklu bir polinom kodu F n vektör uzayının bir alt uzayıdır (Chapman 1996)
İspat n = m + k uzunluklu ve g(x) = g0 + g1 x + . . . + gk xk ∈ F[x] polinomu ile üretilen
bir polinom kodunda
a = (a0 , a1 , . . . , am−1 )
b = (b0 , b1 , . . . , bm−1 )
a ve b iki mesaj kelimesi olsun. Bu mesaj kelimelerine karşılık gelen mesaj polinomları
a(x) = a0 + a1 x + . . . + am−1 xm−1
b(x) = b0 + b1 x + . . . + bm−1 xm−1
dir. Buradan α , β ∈ F için α a(x) + β b(x) mesaj polinomuna karşılık gelen kod polinomu
[α a(x) + β b(x)] g(x) = (α a(x)) g(x) + (β b(x)) g(x)
= α (a(x) g(x)) + β (b(x) g(x))
dır.
Bu durumda bir vektör uzayı toplama altında bir grup olduğundan bir polinom kodu her
zaman bir grup kodu olur.
Önerme 2.2.3. g(x) üreteç polinomlu bir polinom kodunun minimum uzaklığı sıfırdan
farklı b(x) = a(x) g(x) kod polinomlarının ağırlığı olan
wt(a(x) g(x))
ifadesine eşittir. Bir kod polinomunun ağırlığı, polinomdaki sıfırdan farklı terimlerin
sayısıdır (Chapman 1996)
23
Örnek 2.2.4. b(x) = x + x2 + x3 + x6 şeklindeki bir kod polinomunun ağırlığı
wt(x + x2 + x3 + x6 ) = 4
dir.
Örnek 2.2.5. B cismi üzerinde 1 + x2 + x3 üreteç polinomu ile üretilen 7 uzunluklu bir
ikili polinom kodunu gözönüne alalım. Bu durumda 1 + x2 + x3 üreteç polinomlu mesaj
kelimeleri 4 uzunlukludur. Buradan herhangi bir (a0 , a1 , a2 , a3 ) mesaj kelimesine karşılık
gelen mesaj polinomu
a(x) = a0 + a1 x + a2 x2 + a3 x3
dir. Dolayısıyla buna karşılık gelen kod polinomu
b(x) = (a0 + a1 x + a2 x2 + a3 x3 ) (1 + x2 + x3 )
= a0 + a1 x + (a0 + a2 ) x2 + (a0 + a1 + a3 ) x3 + (a1 + a2 ) x4
+(a2 + a3 ) x5 + a3 x6
24
dir. Bu durumda bu kodlamanın kod kelimeleri
(a0 , a1 , a2 , a3 ) −→ (a0 , a1 , a0 + a2 , a0 + a1 + a3 , a1 + a2 , a2 + a3 , a3 )
0 0 0 0 −→ 0 0 0 0 0 0 0
0 0 0 1 −→ 0 0 0 1 0 1 1
0 0 1 0 −→ 0 0 1 0 1 1 0
0 1 0 0 −→ 0 1 0 1 1 0 0
1 0 0 0 −→ 1 0 1 1 0 0 0
0 0 1 1 −→ 0 0 1 1 1 0 1
0 1 0 1 −→ 0 1 0 0 1 1 1
1 0 0 1 −→ 1 0 1 0 0 1 1
0 1 1 0 −→ 0 1 1 1 0 1 0
1 0 1 0 −→ 1 0 0 1 1 1 0
1 1 0 0 −→ 1 1 1 0 1 0 0
0 1 1 1 −→ 0 1 1 0 0 0 1
1 0 1 1 −→ 1 0 0 0 1 0 1
1 1 0 1 −→ 1 1 1 1 1 1 1
1 1 1 0 −→ 1 1 0 0 0 1 0
1 1 1 1 −→ 1 1 0 1 0 0 1
şeklindedir. Bu kodun minimum uzaklığı 3 dür.
Önerme 2.2.6. g(x) üreteçli bir (m , n) polinom kodunda bir e := (e0 , e1 , . . . , en−1 )
hata vektörünün tespit edilememesi için gerek ve yeter şart e := (e0 , e1 , . . . , en−1 ) hata
vektörüne karşılık gelen
e(x) = e0 + e1 x + . . . + en−1 xn−1
polinomu için
¯
¯
g(x) ¯ e(x)
olmasıdır (Chapman 1996)
25
Şimdi yukarıda temel kavramlarından bahsettiğimiz polinom kodlarının daha özel bir hali
olan BCH kodunu inceleyeceğiz. Fakat BCH kodlarına geçmeden önce verilen bir p asal
sayısı ve n dereceli bir asal polinom için pn mertebeli bir cismin nasıl oluşturulabildiğini
hatırlatma amacıyla bir örnekle açıklamak istiyoruz. Şunu belirtmek gereklidir ki burada
sadece B := F2 cisminde kullanacağımız asal polinom bulma , primitif polinom bulma v.b.
önemli cebirsel kavramlar ileriki bölümlerde herhangi bir Fq := Fpn cismi için ayrıntılı
olarak incelenecektir.
Örnek 2.2.7. Verilen bir B := F2 cisminde n = 4 dereceli f (x) = x4 + x + 1 ∈ B[x] asal
polinomu verilmiş olsun. Bu durumda Bölüm 3 deki Teorem 3.1.5 den
.
K := B[x] < x4 + x + 1 >
bölüm halkasının bir cisim olduğunu biliyoruz. Oluşturulan bu cismin eleman sayısı (mertebesi) pn = 24 = 16 dır.
Böylece bir Fp cismi üzerinde n dereceli bir asal polinom alarak pn = 24 = 16 mertebeli
.
K := B[x] < f > cismini oluşturmuş olduk.
2.3
BCH Kodları
Hocquenghem (1959), Bose ve Ray-Chaudhuri (1960) birbirlerinden bağımsız olarak maksimum hata düzeltebilen bir kodlama sistemi inşa edebilmek için dikkate değer bir teorem ispatlamışlardır.
Bu teoremden elde edilen kodlama sistemine Bose-Chaudhuri-
Hocquenghem (kısaca BCH kodları) kodlama sistemi adı verilir. BCH kodları polinom
kodunun daha özel bir halidir. Dolayısıyla burada da kodlama yapılabilmek için üreteç
polinomun bilinmesi gereklidir.
p bir asal sayı olmak üzere q := p a olmak üzere bir Fq cisminde n uzunluklu ve minimum
uzaklığı d olan bir BCH kodunun üreteç polinomu şu şekilde inşa edilebilir.
26
1. q r ≥ n + 1 eşitsizliğini sağlayan en küçük bir r tamsayısı seçilir.
2. Fq cisminin r dereceli bir K genişlemesi oluşturulur.
3. K cisminin bir α primitif elemanı belirlenir.
4. 1 ≤ i ≤ d − 1 için α i elemanlarının mi (x) minimal polinomları bulunur.
Bütün bu işlemler sonucunda g(x) üreteç polinomu
³
´
g(x) = ekok m1 (x) , m2 (x) , . . . , md−1 (x)
dir.
Teorem 2.3.1. Elemanları Fq cisminden alınan ve üreteç polinomu g(x) olan bir polinom
kodunun minimum uzaklığı en az d dir (Chapman 1996)
Örnek 2.3.2. 7 uzunluklu ve minimum uzaklığı 3 olan bir ikili BCH kodunu inşa edelim.
İlk olarak n = 7 için B cisminin r dereceli bir K genişlemesini inşa edeceğiz. Bu yüzden
öncelikle r tamsayısını belirlememiz gerekmektedir.
2r ≥ 7 + 1 = 8
eşitsizliğini sağlayan en küçük tamsayı 3 olduğundan r = 3 olarak alınır. Şimdi B cismi
üzerinde derecesi 3 olan bir x3 +x+1 primitif polinomu verilmiş olsun. Primitif polinomlar
aynı zamanda asal polinom olduklarından
.
K = B[x] < x3 + x + 1 >
bölüm halkası 8 mertebeli bir cisim olur. Burada K cisminin bir primitif elemanı
α = x+ < x3 + x + 1 >
dır. O halde α elemanı α3 + α + 1 = 0 , α7 = 1 eşitliklerini sağlar ve x3 + x + 1 polinomu α
elemanının minimal polinomu olur. Teorem 4.2.14 (v) den α ve α2 aynı minimal polinoma
sahip olduklarından BCH kodunun üreteç polinomu
g(x) = x3 + x + 1
27
dir. Bu durumda mesaj polinomunun derecesi en fazla 3 olmalıdır. Buradan keyfi bir
a(x) = a0 + a1 x + a2 x2 + a3 x3
mesaj polinomuna karşılık gelen kod polinomu
b(x) = (a0 + a1 x + a2 x2 + a3 x3 ) (x3 + x + 1)
= a0 + (a0 + a1 ) x + (a1 + a2 ) x2 + (a0 + a2 + a3 ) x3 + (a1 + a3 ) x4
+a2 x5 + a3 x6
dir. Bu durumda bu kodlamanın kod kelimeleri
(a0 , a1 , a2 , a3 ) −→ (a0 , a0 + a1 , a1 + a2 , a0 + a2 + a3 , a1 + a3 , a2 , a3 )
0 0 0 0 −→ 0 0 0 0 0 0 0
0 0 0 1 −→ 0 0 0 1 1 0 1
0 0 1 0 −→ 0 0 1 1 0 1 0
0 0 1 1 −→ 0 0 1 0 1 1 1
0 1 0 0 −→ 0 1 1 0 1 0 0
0 1 0 1 −→ 0 1 1 1 0 0 1
0 1 1 0 −→ 0 1 0 1 1 1 0
0 1 1 1 −→ 0 1 0 0 0 1 1
1 0 0 0 −→ 1 1 0 1 0 0 0
1 0 0 1 −→ 1 1 0 0 1 0 1
1 0 1 0 −→ 1 1 1 0 0 1 0
1 0 1 1 −→ 1 1 1 1 1 1 1
1 1 0 0 −→ 1 0 1 1 1 0 0
1 1 0 1 −→ 1 0 1 0 0 0 1
1 1 1 0 −→ 1 0 0 0 1 1 0
1 1 1 1 −→ 1 0 0 1 0 1 1
dir. Kodlama polinomunun sıfırdan farklı 3 terimi olduğundan minimum uzaklık 3 dür.
28
Örnek 2.3.3. 15 uzunluklu ve minimum uzaklığı 5 olan bir ikili BCH kodunu inşa edelim.
n = 15 ≥ 2r − 1
eşitsizliğini sağlayan en küçük tamsayı 4 olduğundan r = 4 olarak alınır. Şimdi B cismi
üzerinde derecesi 4 olan bir x4 + x + 1 primitif polinomu verilmiş olsun. Bu durumda
.
K = B[x] < x4 + x + 1 >
bölüm halkası 16 mertebeli bir cisim olur. Burada K cisminin bir primitif elemanı
α = x+ < x4 + x + 1 >
olsun. Bu durumda α elemanının minimal polinomu
m1 (x) = x4 + x + 1
dir. Ayrıca Teorem 4.2.14 (v) den
m2 (x) = m4 (x) = m1 (x)
olur. Şimdi α3 elemanının minimal polinomunu bulmak zorundayız. Yine α3 , α6 , α12 , α9
elemanları aynı minimal polinoma sahip olduklarından
m3 (x) = (x − α3 ) (x − α6 ) (x − α9 ) (x − α12 )
= x4 + x3 (α3 + α6 + α9 + α12 ) + x2 (α9 + α12 + α15 + α15 + α18 + α21 )
+x (α18 + α21 + α24 + α27 ) + α30
= x4 + x3 (α3 + α3 + α2 + α3 + α + α3 + α2 + α + 1)
+x2 (α9 + α12 + α3 + α6 ) + x (α3 + α6 + α9 + α12 ) + 1
= x4 + x3 + x2 + x + 1
Buradan minimum uzaklığı en az 5 olan BCH kodunun üreteç polinomu
g(x) = (x4 + x + 1) (x4 + x3 + x2 + x + 1)
= x8 + x7 + x6 + x4 + 1
29
dir. Diğer taraftan bulunan üreteç polinomun sıfırdan farklı 5 terimi olduğundan bu
BCH kodunun minimum uzaklığı tam olarak 5 dir. 15 uzunluklu bu kodda bir mesaj
polinomunun uzunluğu 15 − 8 = 7 den en fazla 7 dir. Yani bir mesaj polinomunun
derecesi en fazla 6 olmalıdır. Buna göre
a(x) = a0 + a1 x + a2 x2 + a3 x3 + a4 x4 + a5 x5 + a6 x6
şeklindeki bir mesaj polinomu için kod polinomu
b(x) = a(x) g(x)
= (a0 + a1 x + a2 x2 + a3 x3 + a4 x4 + a5 x5 + a6 x6 )(x8 + x7 + x6 + x4 + 1)
= a0 + a1 x + a2 x2 + a3 x3 + (a4 + a0 ) x4 + (a5 + a1 ) x5
+(a6 + a2 + a0 ) x6 + (a0 + a1 + a3 ) x7
+(a0 + a1 + a2 + a4 ) x8 + (a1 + a2 + a3 + a5 ) x9
+(a2 + a3 + a4 + a6 ) x10 + (a3 + a4 + a5 ) x11
+(a4 + a5 + a6 ) x12 + (a5 + a6 ) x13 + a6 x14
şeklindedir. Bu durumda b(x) kod polinomuna karşılık gelen kod kelimeleri
(a0 , a1 , a2 , a3 , a4 + a0 , a5 + a1 , a6 + a2 + a0 , a0 + a1 + a3 , a0 + a1 + a2 +
a4 , a1 + a2 + a3 + a5 , a2 + a3 + a4 + a6 , a3 + a4 + a5 , a4 + a5 + a6 , a5 + a6 , a6 )
dir.
Örnek 2.3.4. 31 uzunluklu ve minimum 5 uzaklıklı bir ikili BCH kodunu verilen bir
x5 + x2 + 1 ∈ B[x] asal polinomu ile oluşturalım. x5 + x2 + 1 ∈ B[x] asal polinomu ile
.
F = B[x] < x5 + x2 + 1 >
bölüm halkası 32 mertebeli bir cisim olur. Bu durumda 31 mertebeli (asal bir mertebe)
F∗ devirli grubunun birimden farklı her elemanı F cisminin bir primitif elemanıdır. Bu
30
durumda
α = x+ < x5 + x2 + 1 >
elemanı F cisminin bir primitif elemanıdır ve minimal polinomu x5 + x2 + 1 polinomudur.
Şimdi 1 ≤ i ≤ 4 için αi elemanlarının minimal polinomlarını mi (x) olarak alırsak
m1 (x) = m2 (x) = m4 (x) = x5 + x2 + 1
polinomu α , α2 , α4 elemanlarının minimal polinomu olur. Diğer taraftan α3 , α6 , α12 , α24 , α17
elemanlarının minimal polinomları aynıdır. Bu durumda
m3 (x) = (x − α3 ) (x − α6 ) (x − α12 ) (x − α17 ) (x − α24 )
dir. Buradan m3 (x) polinomunda
x4 ün katsayısı
α3 + α6 + α12 + α17 + α24 = α3 + α3 + α3 + α12 + (α3 + α)4 + (α2 + 1)(α6 + α2 )
= α + α12 + α12 + α4 + α8 + α6 + α4 + α2
= α + α2 + α6 + α8
= α + α2 + α3 + α + α3 (α2 + 1)
= α5 + α2
= 1
x3 ün katsayısı
α9 + α15 + α20 + α27 + α18 + α23 + α30 + α29 + α5 + α10
= α9 + α17 + α7 (α2 + 1)4 + α20 + (α4 + 1)(α8 + 1) + α9 (α8 + 1) + α7
= α9 + α17 + α15 + α7 + α8 + 1 + α12 + α8 + α4 + 1 + α17 + α9 + α7
= α15 + α12 + α4
31
= (α2 + 1)3 + α2 (α4 + 1) + α4
= α6 + α4 + α2 + 1 + α6 + α2 + α4
=1
x2 nin katsayısı
α21 + α26 + α2 + α + α8 + α13 + α4 + α11 + α16 + α22
= α23 + α2 + α + α10 + α4 + α13 + α2 (α8 + 1)
= α3 (α8 + 1) + α + α4 + α3 (α4 + 1)
= α11 + α + α4 + α7
= α(α4 + 1) + α + α4 + α2 (α2 + 1)
= α5 + α2
=1
x in katsayısı
α7 + α14 + α19 + α25 + α28 = α7 + α16 + α5 (α8 + 1) + α8 (α8 + 1)
= α7 + α13 + α5 + α8
= α2 (α2 + 1) + α10 + α5
= α4 + α2 + α4 + 1 + α2 + 1
= 0
sabit terimin değeri
α3+6+12+17+24 = α62 = 1
32
dir. Buradan
m3 (x) = x5 + x4 + x3 + x2 + 1
olur. Bu durumda B cismi üzerinde 31 uzunluklu BCH kodunun üreteç polinomu
g(x) = ekok(m1 (x), m2 (x), m3 (x), m4 (x))
= ekok(m1 (x), m3 (x))
= m1 (x) m3 (x)
= (x5 + x2 + 1)(x5 + x4 + x3 + x2 + 1)
= x10 + x9 + x8 + x6 + x5 + x3 + 1
dir. Oluşturulan bu kodlamada minimum uzaklık 5 olduğundan Teorem 2.1.18 den dolayı
en fazla 2 hata düzeltilebilirdir.
33
3
SONLU CİSİMLER
3.1
Giriş
Bir önceki bölümde gördüğümüz Kodlama Teorisinde çalışabilmemiz için öncelikle
1. bir p asal sayısı ve n ∈ N verildiğinde pn mertebeli bir K cismi inşa etmemiz
2. bir K cisminde bir primitif eleman bulmamız
gerektiğini gördük. Bu işlemleri yapabilmemiz için sonlu cisimler hakkında bazı temel
bilgileri kullanmamız gerekmektedir. Bu bölümde sonlu cisimlerdeki temel kavramlar
üzerinde durulacaktır. Daha sonraki bölümlerde ise bu temel kavramlar kullanılarak kodlama teorisi için gerekli olan asal polinom ve primitif polinom bulma algoritmaları üzerinde
incelemeler yapılacaktır. Bu bölümdeki temel kavramlar Rudolf Lidl & Harald Niderreiter
’in Cambridge Üniversitesi 1984 basımlı Finite Fields kitabından alınmıştır.
Tanım 3.1.1. p bir asal sayı olmak üzere p modülüne göre denklik sınıflarının kümesi
n
o
Zp := [0], [1], [2], . . . , [p − 1]
nin bir cisim olduğunu biliyoruz. Diğer yandan
n
o
Fp := 0, 1, 2, . . . , p − 1
kümesini gözönüne alalım. Zp deki her denklik sınıfında 0 ≤ a ≤ p − 1 olan bir tek a
tamsayı olacağından µ([a]) := a olacak şekilde
µ : Zp −→ Fp
fonksiyonunu tanımlayabiliriz. Burada
³
´
µ [a] + [b] = µ([a]) + µ([b])
34
ve
³
´
µ [a][b] = µ([a])µ([b])
olacağından µ : Zp −→ Fp bir izomorfizm olacaktır. Bu durumda µ fonksiyonu ile Zp
cismindeki cisim yapısı Fp üzerine taşınabilir.
Tanım 3.1.2. Keyfi bir R halkasında
∀r ∈ R için
nr = 0
eşitliğini sağlayan en küçük pozitif n tamsayısına R halkasının karakteristiği denir.
Kolayca görülebilir ki sonlu cisimlerin karakteristiği bir asal sayıdır.
Teorem 3.1.3. R bir tamlık bölgesi ve karakteristiği bir p asal sayısı olsun. Bu durumda
∀a, b ∈ R ve ∀n ∈ N için
n
n
n
n
n
n
(a + b)p = ap + bp
ve
(a − b)p = ap − bp
özellikleri sağlanır.
Bundan sonraki işlemlerimizde keyfi bir cisim F ifadesi ile gösterilecektir.
Teorem 3.1.4. a ∈ F, e1 , e2 , . . . , ek ∈ Z+ ve p1 , p2 , . . . , pk polinomları F[x] polinomlar
halkasında farklı monik, asal polinomlar olsun. Bu durumda her f ∈ F[x] polinomu
f = a pe11 pe22 . . . pekk
şeklinde tek türlü olarak yazılabilir.
.
Teorem 3.1.5. Bir f ∈ F[x] polinomu için F[x] < f > bölüm halkasının cisim olması
için gerek ve yeter şart f polinomunun F cisminde asal olmasıdır.
35
Tanım 3.1.6. Bir b ∈ F elemanı f ∈ F[x] polinomunda f (b) = 0 şartını sağlıyorsa bu
b ∈ F elemanına f ∈ F[x] polinomunun bir kökü (sıfırı) adı verilir.
Teorem 3.1.7. Bir b ∈ F elemanının f ∈ F[x] polinomunun bir kökü olması için gerek ve
¯
¯
yeter şart (x − b) ¯ f (x) olmasıdır.
Tanım 3.1.8. Bir b ∈ F elemanı f ∈ F[x] polinomunun bir kökü olsun. Eğer bir k pozitif
tamsayısı için f (x) polinomu (x − b)k ile bölünebilir fakat (x − b)k+1 ile bölünemezse bu
k tamsayısına b elemanının katlılığı denir. Burada eğer k = 1 ise b elemanına bir basit
kök, k ≥ 2 ise b elemanına bir katlı kök adı verilir.
Tanım 3.1.9. f (x) = a0 + a1 x + a2 x2 + . . . + an xn ∈ F[x] polinomu için
f 0 = f 0 (x) := a1 + 2a2 x + . . . + nan xn−1 ∈ F[x]
şeklinde tanımlanan polinoma f polinomunun türevi adı verilir.
Teorem 3.1.10. Bir b ∈ F elemanının f ∈ F[x] polinomunun bir katlı kökü olabilmesi
için gerek ve yeter şart b ∈ F elemanının hem f ∈ F[x] polinomunun hem de f 0 ∈ F[x]
polinomunun bir kökü olması gerekmektedir.
Teorem 3.1.11. f (x) polinomu bir F cisminde derecesi 2 veya 3 olan bir polinom olsun.
Bu durumda f polinomunun asal olması için gerek ve yeter şart F cismindeki hiçbir
elemanın f (x) polinomunun bir kökü olmamasıdır.
Teorem 3.1.12. (Lagrenge Interpolasyon Formülü)
n ≥ 0 tamsayısı için {a0 , a1 , . . . , an } elemanları F cisminin n + 1 tane farklı elemanı
ve {b0 , b1 , . . . , bn } elemanları da F cisminden alınan keyfi n + 1 tane eleman olsun. Bu
36
durumda i = 0, 1, . . . , n değerleri için derecesi n ve n den küçük olan f (ai ) = bi şeklinde
bir f ∈ F[x] polinomu vardır öyle ki
f (x) =
n
X
i=0
bi
n
Y
(ai − ak )−1 (x − ak )
k=0
k6=i
dir.
3.2
Cisim Genişlemeleri
Tanım 3.2.1. Bir F cisminin tüm alt cisimlerinin arakesitine F cisminin asal alt cismi
denir.
Bu asal alt cisim tektir ve aslında F cisminin en küçük alt cismidir.
Teorem 3.2.2. Bir F cisminin asal alt cismi Fp cismine veya Q rasyonel sayılar cismine
izomorftur. Bu durumda F cisminin karakteristiği sırasıyla bir p asalına veya sıfıra eşit
olur.
Böylece F herhangi bir cisim olduğunda F cisminin karakteristiği sıfırsa asal alt cismi Q
rasyonel sayılar cismine izomorf , bir p asal sayısına eşitse asal alt cismi Fp cismine izomorf
olur.
Tanım 3.2.3. K cismi , F cisminin bir alt cismi ve M kümesi de F cisminin herhangi
bir alt kümesi olsun. Bu durumda K(M ) , F cisminin K yı ve M yi kapsayan bütün alt
cisimlerinin arakesiti olarak tanımlanır ve K cismine M yi katmakla elde edilen bir cisim
genişlemesi olarak adlandırılır. K(M ) cisim genişlemesi K|M şeklinde de gösterilebilir.
n
Eğer M =
o
θ1 , θ2 , . . . , θn
şeklinde sonlu bir küme ise K cismine M yi katmakla elde
edilen cisim genişlemesi
K(M ) = K(θ1 , θ2 , . . . , θn )
37
şeklinde yazılabilir. Eğer M sadece bir θ ∈ F elemanından oluşturulmuşsa L = K(θ)
şeklindeki genişlemeye K cisminin bir basit genişlemesi adı verilir. Bu durumda θ ∈ F
elemanına K cismi üzerinde L cisminin bir tanımlayıcı elemanı denir.
Tanım 3.2.4. K cismi, F cisminin bir alt cismi olarak alındığında θ ∈ F olsun. Bu
durumda eğer θ elemanını kök kabul eden bir f (x) ∈ K[x] polinomu varsa θ elemanı K
cismi üzerinde cebirseldir denir. Eğer F cisminin her elemanı K cismi üzerinde cebirselse
F genişlemesi K üzerinde cebirseldir denir.
θ ∈ F elemanı K cismi üzerinde cebirsel olsun. Bu durumda
n
o
J := f ∈ K[x] : f (θ) = 0
şeklinde tanımladığımız küme K[x] polinomlar halkasının bir idealidir. K[x] bir esas ideal
bölgesi olduğundan m1 (x) ∈ K[x] üreteci vardır.
Eğer a ifadesi m1 (x) polinomunun baş katsayısı ise
m(x) := a−1 m1 (x)
şeklinde tanımlanan m(x) ∈ K[x] polinomu deg(m(x)) = deg(m1 (x)) ile bir monik polinom şeklinde seçilebilir. Ayrıca m(x) ∈ K[x] polinomu asaldır.
Gerçekten bir s(x), r(x) ∈ K[x] için m(x) = s(x)r(x) ise
olur. Bu durumda
r(θ) = 0
veya
s(θ) = 0
¯
¯
m(x) ¯ r(x)
veya
¯
¯
m(x) ¯ s(x)
dir. Diğer taraftan deg(m(x)) = deg(r(x)) + deg(s(x)) olduğundan
deg(r(x)) = 0
veya
deg(s(x)) = 0
dır. Böylece tanımladığımız m(x) polinomu asaldır. Ayrıca m(x) polinomunun tanımından
θ elemanını kök kabul eden en küçük dereceli monik polinom olduğu açıktır. Bu özellikleri
sağlayan m(x) ∈ K[x] polinomu monik olduğundan tek türlü olarak belirlidir.
38
Tanım 3.2.5. Yukarıdaki özellikleri sağlayan yani θ elemanını kök kabul eden en küçük
dereceli monik, asal m(x) polinomuna θ elemanının K cismi üzerindeki minimal polinomu
denir. Burada m(x) polinomunun derecesine, K cismi üzerindeki θ elemanının derecesi
denir.
Teorem 3.2.6. Eğer θ ∈ F elemanı K cismi üzerinde cebirsel ise K cismi üzerindeki g
minimal polinomu aşağıdaki özellikleri sağlar.
(1.) g minimal polinomu K cismi üzerinde asaldır.
(2.) f ∈ K[x] polinomunda f (θ) = 0 olması için gerek ve yeter şart g | f olmasıdır.
(3.) g ∈ K[x] minimal polinomu θ elemanını kök kabul eden en küçük dereceli polinomdur.
Tanım 3.2.7. L cismi, K cisminin bir cisim genişlemesi olsun. Eğer L cisminin K
üzerindeki vektör uzayı sonlu boyutlu ise L genişlemesi K üzerinde bir sonlu genişleme
diye adlandırılır. Bu durumda L vektör uzayının K üzerindeki boyutuna, K cisminin L
genişlemesinin derecesi denir ve [L : K] ile gösterilir.
Teorem 3.2.8. Eğer L cismi, K cisminin bir sonlu genişlemesi ve M de L cisminin bir
sonlu genişlemesi ise M cismi, K cisminin bir sonlu genişlemesidir ve
[M : K] = [M : L][L : K]
dır.
Teorem 3.2.9. K cisminin her sonlu genişlemesi K cismi üzerinde cebirseldir. Basit
genişlemeler bir sonlu genişleme olup cebirseldir.
Teorem 3.2.10. θ elemanı K cismi üzerinde n dereceli bir cebirsel eleman olsun ve K
üzerinde θ elemanının minimal polinomu g olarak alınsın. Bu durumda
39
.
(1.) K(θ) cisim genişlemesi K[x] < g > bölüm halkasına izomorftur.
n
(2.) [K(θ) : K] = n olup
2
1, θ, θ , . . . , θ
n−1
o
kümesi K cismi üzerinde K(θ) cisminin bir
bazıdır.
(3.) ∀α ∈ K(θ) elemanı K cismi üzerinde cebirseldir ve K üzerindeki derecesi n sayısının
bir bölenidir.
Teorem 3.2.11. f ∈ K[x] polinomu K cismi üzerinde bir asal polinom olsun. Bu durumda
f polinomunun bir kökü ile K cisminin bir basit cebirsel genişlemesi vardır. Burada f
polinomunun bu köküne bir tanımlayıcı eleman olarak bakılabilir.
Teorem 3.2.12. K cismi üzerinde asal olan f ∈ K[x] polinomunun keyfi iki kökü α ve β
olarak alındığında K(α) ve K(β) cisimleri izomorfiklerdir.
Tanım 3.2.13. f ∈ K[x] polinomu pozitif dereceli bir polinom olarak alındığında F cismi
K cisminin bir cisim genişlemesi olsun. Bu durumda eğer f polinomunun başkatsayısı a
ise α1 , α2 , . . . , αn ∈ F için
f (x) = a(x − α1 )(x − α2 ) . . . (x − αn )
oluyorsa yani f polinomu F[x] polinomlar halkasında lineer çarpanların çarpımı şeklinde
yazılabiliyorsa f polinomuna, F cismi üzerinde parçalanış denir.
Eğer f polinomu F cisminde bir parçalanış ise ve F = K(α1 , α2 , . . . , αn ) sağlanıyorsa F
cismine K üzerinde f polinomunun bir parçalanış cismi denir.
Eğer F cismi K üzerinde f polinomunun bir parçalanış cismi ise f polinomunun bütün
köklerini kapsayan en küçük cisimdir.
Teorem 3.2.14. (Parçalanış Cisminin Varlığı ve Tekliği)
40
Eğer K bir cisim ve f polinomu K[x] polinomlar halkasında pozitif dereceli keyfi bir
polinom ise f polinomunun K üzerinde bir parçalanış cismi vardır ve bu parçalanış cismi
tektir.
Tanım 3.2.15. Pozitif n ve m dereceli f ve g polinomları sırasıyla
f (x) = a0 xn + a1 xn−1 + . . . + an ∈ K[x]
ve
g(x) = b0 xm + b1 xm−1 + . . . + bm ∈ K[x]
olarak alınsınlar. Bu durumda bu iki polinomun R(f, g) resultantı
¯
¯
¯
¯
¯
¯
¯
¯
¯
¯
¯
¯
R(f, g) = ¯¯
¯
¯
¯
¯
¯
¯
¯
¯
¯
¯
a0
a1
...
an
0
0
..
.
a0
a1
...
an
0
...
0
a0
a1
b0
b1
...
0
..
.
b0
b1
...
0
...
0
b0
bm
b1
...
0
...
...
0
...
bm
...
...
¯
¯
0 ¯
¯
¯
0 ¯
¯
.. ¯
. ¯
¯
¯
an ¯
¯
¯
0 ¯
¯
¯
0 ¯
¯
.. ¯
. ¯
¯
¯
bm ¯
şeklinde tanımlanır.
Eğer K üzerinde f polinomunun parçalanış cisminde (a0 6= 0) iken
deg(f ) = n ve
f (x) = a0 (x − α1 )(x − α2 ) . . . (x − αn )
eşitlikleri sağlanıyor ise
R(f, g) = a0
m
n
Y
g(αi )
i=1
olur. Bu durumda R(f, g) = 0 ise f ve g polinomlarının bir ortak kökleri vardır.
41
3.3
Sonlu Cisimlerin Karakterizasyonu
Bir sonlu cisme Galois Cismi denir. pn mertebeli bir F cismi, F := GF(pn ) veya q := pn
olmak üzere F := Fpn = Fq şeklinde gösterilebilir.
Lemma 3.3.1. F bir sonlu cisim ve K, F cisminin q elemanlı bir alt cismi olsun. Bu
durumda eğer [F : K] = m ise F cismi q m elemanlı olur.
Teorem 3.3.2. F, p bir asal sayı olmak üzere karakteristiği p olan bir sonlu cisim olsun.
Bu durumda n ∈ Z+ için F cisminin asal alt cismi üzerindeki derecesi n ise bu F cisminin
eleman sayısı (mertebesi) pn dir.
Lemma 3.3.3. Eğer F sonlu cismi q elemanlı ise
∀a ∈ F
için
aq = a
dır.
Lemma 3.3.4. Eğer F cismi q elemanlı bir sonlu cisim ve K cismi de F nin bir alt cismi
ise xq − x ∈ K[x] polinomu
xq − x =
Y
(x − a)
a ∈ F
şeklinde yazılabilir ve F cismi K üzerinde xq − x polinomunun bir parçalanış cismi olur.
Teorem 3.3.5. (Sonlu Cisimlerin Varlığı ve Tekliği)
Her p asalı ve her n ∈ Z+ için pn elemanlı bir sonlu cisim vardır. q := pn elemanlı herhangi
bir sonlu cisim , Fp üzerinde xq − x polinomunun parçalanış cismine izomorftur.
Teorem 3.3.6. (Alt Cisim Kriteri)
42
Fq cismi q := pn elemanlı bir sonlu cisim olsun. m sayısı n nin bir pozitif böleni olduğunda
Fq cisminin her alt cismi pm mertebeli olur. Tersine eğer m sayısı n nin bir pozitif böleni
ise Fq cisminin pm elemanlı bir alt cismi mutlaka vardır.
Teorem 3.3.7. Her sonlu Fq cisminde, Fq cisminin sıfırdan farklı elemanlarından oluşan
F∗q çarpımsal grubu devirlidir.
Tanım 3.3.8. F∗q devirli grubunun bir üretecine Fq cisminin bir primitif elemanı denir.
Fq cisminin primitif eleman sayısı Φ(q − 1) dir. Burada Φ Euler fonsiyonudur.
Teorem 3.3.9. Fq bir sonlu cisim ve Fr bir sonlu cisim genişlemesi olsun. Bu durumda
Fr cismi Fq cisminin bir basit cisim genişlemesidir ve Fr cisminin her primitif elemanı Fq
cisminde Fr cisminin bir tanımlayıcı elemanı olur.
Sonuc. 3.3.10. Her sonlu Fq cismi ve her pozitif n ∈ Z+ sayısı için Fq [x] polinomlar
halkasında n dereceli bir asal polinom vardır.
3.4
Asal Polinomların Kökleri
Lemma 3.4.1. f ∈ Fq [x] polinomu bir Fq sonlu cisminde asal bir polinom olsun ve Fq
cisminin bir genişlemesinde f polinomunun bir kökü α olarak alınsın. Bu durumda bir
¯
¯
h ∈ Fq [x] polinomu alındığında h(α) = 0 olması için gerek ve yeter şart f ¯ h olmasıdır.
Lemma 3.4.2. f ∈ Fq [x] polinomu Fq cisminde m dereceli bir asal polinom olsun. Bu
durumda
¯
¯
¯ qn
¯
f (x) ¯ x − x ⇔ m ¯ n
dir.
43
Teorem 3.4.3. Eğer f polinomu Fq [x] polinomlar halkasında m dereceli bir asal polinom
ise f polinomu Fqm cisminde bir α köküne sahiptir. İlave olarak f polinomunun bütün
kökleri basittir ve Fqm cisminin
2
α, αq , αq , . . . , αq
m−1
şeklindeki m farklı elemanı ile verilirler.
Sonuc. 3.4.4. f polinomu Fq [x] polinomlar halkasında m dereceli bir asal polinom olsun.
Bu durumda Fq üzerinde f polinomunun parçalanış cismi Fqm cismidir.
Sonuc. 3.4.5. Fq [x] polinomlar halkasında aynı dereceli keyfi iki asal polinomun parçalanış
cisimleri birbirine izomorftur.
Tanım 3.4.6. Fqm cismi Fq cisminin bir genişlemesi ve α ∈ Fqm olsun. Bu durumda
2
α, αq , αq , . . . , αq
m−1
elemanlarına α nın Fq cismine ilişkin eşlenikleri denir.
Teorem 3.4.7. α ∈ F∗q elemanının Fq cisminin keyfi bir alt cismindeki eşlenikleri F∗q
çarpımsal grubunda aynı mertebeye sahiptirler.
Tanım 3.4.8. α ∈ F = Fqm ve K = Fq için K üzerinde α elemanının izi olan T rF/K (α)
2
T rF/K (α) = α + αq + αq + . . . + αq
m−1
şeklinde tanımlanır. K üzerinde α elemanının izi K ya ilişkin α nın eşleniklerinin toplamıdır.
İzin diğer bir tanımı aşağıdaki şekilde yapılabilir.
f ∈ K[x] polinomu K üzerinde α elemanının minimal polinomu olsun. Bu durumda d
derecesinin m nin bir böleni olduğunu biliyoruz. Bu şekildeki
g(x) = f (x)m/d ∈ K[x]
44
polinomuna K üzerinde α elemanının karakteristik polinomu denir. Bu durumda
g(x) = xm + am−1 xm−1 + . . . + a0
= (x − α)(x − αq ) . . . (x − αq
m−1
)
olur ki burada katsayıların karşılaştırılmasından g karakteristik polinomu için iz
T rF/K (α) = −am−1
elde edilir.
T rF/K (α) iz fonksiyonun sonucu her zaman K cisminin bir elemanıdır.
Teorem 3.4.9. K = Fq ve F = Fqm olarak alındığında T rF/K iz fonksiyonu aşağıdaki
özellikleri sağlar.
1. ∀α, β ∈ F için T rF/K (α + β) = T rF/K (α) + T rF/K (β)
2. ∀α ∈ F ve ∀c ∈ K için T rF/K (cα) = c T rF/K (α)
3. F ve K cisimlerine K üzerinde bir vektör uzayı olarak bakıldığında T rF/K iz fonksiyonu F cisminden K cismi üzerine bir lineer dönüşümdür.
4. ∀a ∈ K için T rF/K (a) = ma
5. ∀α ∈ F için T rF/K (αq ) = T rF/K (α)
Teorem 3.4.10. F cismi bir K sonlu cisminin sonlu bir genişlemesi olsun. Burada F ve
K cisimlerine K üzerinde bir vektör uzayı olarak bakıldığında ∀α ∈ F için β ∈ F olmak
üzere
Lβ (α) := T rF/K (βα)
45
şeklinde tanımlanan Lβ fonksiyonu F cisminden K cismi üzerine bir lineer dönüşümdür.
İlave olarak F cisminin farklı β, γ elemanları için
Lβ 6= Lγ
Tanım 3.4.11. α ∈ F = Fqm ve K = Fq için K üzerinde α elemanının normu olan NF/K (α)
NF/K (α) = α αq . . . αq
m−1
= α(q
/(q−1)
m −1)
şeklinde tanımlanır.
K cismi üzerinde α elemanının g karakteristik polinomu için NF/K (α)
NF/K (α) = (−1)m a0
dır.
NF/K (α) normu her zaman K cisminin bir elemanıdır.
Tanım 3.4.12. Bir K cismi üzerinde bir n pozitif tamsayısı için xn − 1 polinomunun
parçalanış cismine K cismi üzerinde n inci dairesel cisim denir ve K(n) ile gösterilir. K(n)
dairesel cismi üzerindeki xn − 1 polinomunun köklerine K cisminde birimin n inci kökleri
denir. Birimin n inci köklerinin oluşturduğu küme E(n) ile gösterilir.
Tanım 3.4.13. K bir p karakteristikli cisim ve n sayısı p ile bölünemeyen bir pozitif
tamsayı olarak alınsın. Bu durumda E(n) devirli grubunun bir üretecine K cismi üzerinde
birimin bir n inci primitif kökü denir.
K cismi üzerinde birimin Φ Euler fonksiyonu olmak üzere Φ(n) farklı n inci primitif kökü
vardır. Eğer ξ onlardan biri ise K cismi üzerinde birimin bütün n inci primitif kökleri
1 ≤ s ≤ n ve ebob(s, n) = 1 olduğunda ξ s ile verilebilir.
46
Tanım 3.4.14. K bir p karakteristikli cisim ve n sayısı p ile bölünemeyen bir pozitif
tamsayı olarak alınsın. Bu durumda eğer ξ elemanı K cismi üzerinde birimin bir n inci
primitif kökü ise
Qn (x) :=
n
Y
(x − ξ s )
s=1
ebob(s,n)=1
şeklinde tanımlanan Qn (x) polinomuna K cismi üzerinde n inci dairesel polinom denir.
Teorem 3.4.15. K(n) dairesel cismi K cisminin bir basit cebirsel genişlemesidir. İlave
olarak
1. Eğer K = Q ise Qn dairesel polinomu K cismi üzerinde asaldır ve [K(n) : K] = Φ(n)
dir.
2. Eğer K = Fq olduğunda ebob(q, n) = 1 ise Qn polinomu K[x] polinomlar halkasında
aynı d dereceli Φ(n)/d tane farklı, monik, asal çarpana sahiptir.
Ayrıca bu durumda K(n) dairesel cismi K üzerinde keyfi bir asal çarpanın parçalanış
cismidir ve q d ≡ 1 mod (n) ifadesini gerçekleyen en küçük pozitif tamsayı d olduğunda
[K(n) : K] = d dir.
47
4
SONLU CİSİMLERDE POLİNOMLAR
4.1
Polinomların Mertebesi ve Primitif Polinomlar
Bölüm 2 de incelenen BCH kodlarında kodlama sistemini oluşturabilmek için F2 cismi
üzerinde asal ve primitif polinomlara ihtiyaç duymuştuk. F2 cismi üzerinde bu asal ve
primitif polinomlar küçük dereceler için deneme-yanılma metoduyla makul çalışmalar
yapılarak belirlenebilir. Fakat bulunmak istenen polinomun derecesi arttıkça veya herhangi bir keyfi Fq cismi üzerinde q := pn değeri büyüdükçe bu polinomları belirlemek
oldukça güçleşecektir. Bu nedenle bu bölümde cebirin önemli bir konusu olan herhangi
bir keyfi Fq cismi üzerinde asal ve primitif polinom bulma yöntemleri (algoritmaları)
üzerinde çalışmalar yapılacaktır. Bu çalışmalara başlamadan önce incelenecek algoritmalar için gerekli olan polinom mertebeleri üzerinde de durmamız gerekmektedir.
¯
¯
Teorem 4.1.1. f ∈ Fq [x], deg(f ) = m ≥ 1 ve f 6= 0 için f (x) ¯ xe − 1 ve e ≤ q m − 1
olacak şekilde bir e pozitif tamsayısı vardır (Niederreiter and Lidl 1986)
.
< f > bölüm halkasının q m − 1 tane sıfırdan farklı elemanı vardır.
¯
¯
j = 0, 1, 2, . . . , q m − 1 için xj + < f > elemanları Fq [x] ¯ < f > halkasının sıfırdan farklı
İspat
Fq [x]
elemanlarıdır. j nin q m tane sıfırdan farklı değeri olduğundan 0 ≤ r < s ≤ q m − 1 için
xs ≡ xr mod f (x) olur. f (0) 6= 0 olduğundan x ile f (x) aralarında asaldır. Buradan
xs−r ≡ 1 mod f (x)
dir. Böylece
olur ki bu
¯
¯
f (x) ¯ xs − xr = xr (xs−r − 1)
¯
¯
f (x) ¯ xs−r − 1 ve 0 < s − r ≤ q m − 1
olduğunu gösterir.
48
Tanım 4.1.2. f ∈ Fq [x] polinomu sıfırdan farklı bir polinom olduğunda f (0) 6= 0 ise
¯
¯
f (x) ¯ xe − 1 şartını sağlayan en küçük pozitif e tamsayısına f polinomunun mertebesi
denir ve ord(f ) = e ile gösterilir (Niederreiter and Lidl 1986)
Eğer f (0) = 0 ise f (x) = xk g(x) olacak şekilde tek türlü h ∈ Z+ ve g(0) 6= 0 olan bir
g ∈ Fq [x] polinomu vardır. Bu durumda ord(f ) := ord(g) ile tanımlanır.
Teorem 4.1.3. f ∈ Fq [x] polinomu m dereceli f (0) 6= 0 özelliğini sağlayan bir asal
polinom olsun. Bu durumda ord(f ) mertebesi, F∗qm çarpım grubunda f polinomunun
keyfi bir kökünün mertebesine eşittir (Niederreiter and Lidl 1986)
İspat
f polinomunun parçalanış cismi Fqm cismidir. f polinomunun kökleri Teorem
3.4.7 den F∗qm çarpım grubunda aynı mertebeye sahiptir. α ∈ F∗qm elemanı f polinomunun
keyfi bir kökü olsun. Lemma 3.4.1 den
¯
¯
α = 1 ⇔ f (x) ¯ xe − 1
e
olduğunu biliyoruz. Bu durumda f polinomunun mertebesi , F∗qm grubunda α nın mertebesine eşit olur.
Sonuc. 4.1.4. Eğer f ∈ Fq [x] polinomu Fq üzerinde m dereceli bir asal polinom ise
¯
¯
ord(f ) ¯ q m − 1 sağlanır (Niederreiter and Lidl 1986)
İspat
F∗qm çarpım grubunun eleman sayısı q m − 1 tanedir. Sonlu grupta her elemanın
mertebesi grubun mertebesini böleceğinden ifade gerçeklenir.
Teorem 4.1.3 derecesi ve mertebesi verilen monik ve asal polinomların sayısına ilişkin bir
formül bulmamızı sağlar. Şimdi standart notasyonu verelim. n ∈ Z+ ve ebob(b, n) = 1
olsun. Euler Teoreminden
bΦ(n) ≡ 1 mod n
49
olduğunu biliyoruz. Buradaki Φ-Euler Φ fonksiyonudur. bk ≡ 1 mod n olacak şekilde en
küçük pozitif tamsayıya b elemanının modn ye göre mertebesi denir ve ordn (b) := k ile
gösterilir.
Teorem 4.1.5. Derecesi m ve mertebesi e olan Fq [x] halkasındaki monik ve asal polinomların sayısını T ile gösterirsek


 Φ(e)/m ,


T =
2,



 0,
eğer orde (q) := m ve e ≥ 2 ise
eğer m = e = 1 ise
aksi takdirde
Özellikle Fq [x] halkasında mertebesi e olan bir asal polinomun derecesi orde (q) dir (Niederreiter and Lidl 1986)
İspat
f (0) 6= 0 şartını sağlayan Fq [x] polinomlar halkasında asal bir polinom f ol-
sun. Teorem 4.1.3 den ord(f ) = e olması için gerek ve yeter şart f polinomunun bütün
köklerinin birin Fq cismi üzerindeki e nci primitif kökleri olmasıdır. Diğer bir deyişle
¯
¯
ord(f ) = e ⇔ f ¯ Qe
Teorem 3.4.15(ii) den Qe nin keyfi monik, asal çarpanı m derecesine sahiptir. Buradaki
m sayısı q m ≡ 1 mod e özelliğini sağlayan en küçük pozitif tamsayıdır. Bu durumda Qe
nin çarpanlarının sayısı Φ(e)/m ile verilir.
m = e = 1 olan polinomlar x ve x − 1 polinomlarıdır.
Lemma 4.1.6. c ∈ Z+ , f ∈ Fq [x] ve f (0) 6= 0 olduğunda
¯
¯
¯
¯ c
f ¯ x − 1 ⇔ ord(f ) ¯ c
dir (Niederreiter and Lidl 1986)
50
İspat
¯
¯
Eğer (e = ord(f )) ¯ c şartını gerçeklerse
¯
¯
f (x) ¯ xe − 1
ve
¯
¯
x − 1 ¯ xc − 1
e
¯
¯
olur. Buradan f (x) ¯ xc − 1 dir.
¯
¯
Tersine eğer f (x) ¯ xc − 1 ise c ≥ e dir. Bu durumda m ∈ N+ ve 0 ≤ r < e için
c = me + r
olacak şekilde m ve r elemanları vardır. Buradan
xc − 1 = (xme − 1)xr + (xr − 1)
¯
¯
şeklinde yazılabilir. Bu yazılıştan dolayı f (x) ¯ xr −1 olmak zorundadır. r < e olduğundan
¯
¯
bu durum sadece r = 0 da gerçeklenir. Buradan e ¯ c dir.
Sonuc. 4.1.7. e1 , e2 ∈ Z+ ve d = ebob(e1 , e2 ) olsun. Bu durumda Fq [x] halkasında
ebob(xe1 − 1, xe2 − 1) = xd − 1
olur (Niederreiter and Lidl 1986)
İspat f (x) polinomu xe1 − 1 ve xe2 − 1 polinomlarının monik olan en büyük ortak böleni
olsun. {i = 1, 2, 3, . . .} için xd − 1 polinomu xei − 1 polinomlarının bir ortak bölenidir.
¯
¯
Buradan xd − 1 ¯ f (x) olur.
Diğer taraftan f (x) polinomu {i = 1, 2, 3, . . .} için xei − 1 polinomlarının bir ortak
bölenidir. Bu durumda Lemma 4.1.6 dan ord(f ), e1 ve e2 yi böler. Sonuç olarak Lemma
¯
¯
¯
¯
4.1.6 dan ord(f ) ¯ d ve f (x) ¯ xd − 1 dir. Buradan
f (x) = xd − 1
dir.
51
Teorem 4.1.8. g(0) 6= 0 ve ord(g) = e gerçeklendiğinde p karakteristikli Fq cisminde
g ∈ Fq [x] polinomu asal bir polinom olsun. Ayrıca b ∈ Z+ için pt ≥ b şartını sağlayan en
küçük tamsayı t olduğunda f = g b şeklinde alınan f polinomunun mertebesi
ord(f ) = ept
dir (Niederreiter and Lidl 1986)
¯
¯
¯
¯ c
İspat c := ord(f ) olarak alındığında f (x) ¯ x − 1 olduğundan g(x) ¯ xc − 1 dir. Bu
¯
¯
¯
¯
¯
¯
durumda Lemma 4.1.6 dan e ¯ c dir. Aynı zamanda g(x) ¯ xe −1 olduğundan f (x) ¯ (xe −1)b
olur. Diğer taraftan
t
t
(xe − 1)p = xep − 1
¯
t
¯
t
dir. Bu durumda p ≥ b olduğundan f (x) ¯ xep − 1 olur. Bu ise 0 ≤ u ≤ t için c = epu
şeklinde yazılabilir. Ayrıca xe − 1 polinomunun sadece basit köklere sahip olmasından ve
Sonuç 4.1.4 den e mertebesinin p asal sayısının bir katı olmamasından dolayı
u
u
xep − 1 = (xe − 1)p
polinomunun bütün kökleri pu nun bir katı olur.
Diğer taraftan pu ≥ b olduğunda
¯
u
¯
g(x)b ¯ xep − 1
dir. Burada aynı zamanda u ≥ t olur. Fakat bu özelliği sağlayan en küçük sayı t
olduğundan u = t alınır. Buradan
c = ept
dir.
Teorem 4.1.9. g1 , g2 , . . . , gk ∈ Fq [x] polinomları sıfırdan farklı ve aralarında asal polinom
çiftleri olsunlar. Bu durumda f = g1 g2 g3 . . . gk polinomunun mertebesi
ord(f ) = ekok{ord(g1 ), ord(g2 ), . . . , ord(gk )}
dır (Niederreiter and Lidl 1984)
52
İspat
Kolayca görülebilir ki 1 ≤ i ≤ k için gi (0) 6= 0 olur. Şimdi 1 ≤ i ≤ k için
e := ord(f ), ei := ord(gi ) ve c = ekok(e1 , e2 , . . . , ek ) olarak alalım. Bu durumda herbir
1 ≤ i ≤ k için
¯
¯
gi (x) ¯ xei − 1
ve
¯
¯
gi (x) ¯ xc − 1
dir. Diğer taraftan g1 , g2 , . . . , gk polinomlarının aralarında asal olduğunu biliyoruz. Bu¯
¯
¯ c
¯
radan f (x) ¯ x − 1 sağlanır. Bu durumda Lemma 4.1.6 dan e ¯ c olur. Aynı zamanda f
¯
¯
polinomunun mertebesinden dolayı f (x) ¯ xe − 1 dir. Böylece 1 ≤ i ≤ k aralığında herbir
¯
¯
gi (x) polinomu için gi (x) ¯ xe − 1 sağlanır. Bu ise Lemma 4.1.6 dan 1 ≤ i ≤ k için herbir
ei nin e yi böldüğünü gösterir. Bu sonuçlardan c = e dir.
Bu sonuçlar gösterir ki sonlu sayıda sıfırdan farklı polinomların en küçük ortak katlarının
mertebesi, polinomların mertebesinin en küçük ortak katına eşittir.
Örnek 4.1.10. f (x) = x10 + x9 + x3 + x2 + 1 ∈ F2 [x] polinomunu ele alalım. F2 cisminde
f (x) polinomlarının asal çarpanları
f (x) = (x2 + x + 1)3 (x4 + x + 1)
şeklindedir. Bu durumda ord(x2 + x + 1) = 3 ve Teorem 4.1.8 den ord((x2 + x + 1)3 ) = 12
olur. Ayrıca ord(x4 + x + 1) = 15 dir. Bu ise Teorem 4.1.9 dan
ord(f ) = ekok(12, 15) = 60
dır. Burada ord(f ), 210 − 1 i bölmez. Bu ise Sonuç 4.1.4 ün asal polinomlar için geçerli
olduğunu gösterir.
Teorem 4.1.11. p karakteristikli Fq sonlu cisminde f ∈ Fq [x] polinomu pozitif dereceli
ve f (0) 6= 0 özelliklerini sağlasın.
a ∈ Fq , b1 , b2 , . . . , bk ∈ N olduğunda f1 , f2 , . . . , fk ∈ Fq [x] polinomları birbirinden farklı ,
monik ve asal polinomlar olarak alındığında f = af1b1 f2b2 f3b3 . . . fkbk şeklinde yazılabilsin.
Bu durumda
e = ekok{ord(f1 ), ord(f2 ), . . . , ord(fk )}
53
olduğunda
ord(f ) = ept
dir. Buradaki t sayısı pt ≥ maks(b1 , b2 , . . . , bk ) şartını sağlayan en küçük tamsayıdır
(Niederreiter and Lidl 1986)
Fq [x] polinomlar halkasında f asal polinomunun mertebesini bulabilmek için uygun bir
metot vardır. Şimdi f polinomu Fq cisminde asal, ord(f ) = e, deg(f ) = m ve f (0) 6= 0
şeklinde olsun. Daha önceden f (0) 6= 0 özelliğini sağlayan f asal polinomunun mertebesi
olan e değerinin
xe ≡ 1 mod f (x)
denkliğini sağlayan en küçük pozitif tamsayı olduğunu biliyoruz. Ayrıca Sonuç 4.1.4 den
¯
¯
e ¯ qm − 1
olur.
Bu durumda q m > 2 alalım. q m = 2 olduğunda q = 2 ve m = 1 olur ki bu durumdaki
polinomların mertebelerinin e = 1 olduğunu zaten biliyoruz. Şimdi q m > 2 için
s
Y
m
q −1=
r
pj j
j=1
şeklinde pj değerleri asal ve rj değerleri asal kuvvetleri olmak üzere asal çarpanların
çarpımı şeklinde yazabiliriz. Burada 1 ≤ j ≤ s değerleri için
x(q
m −1)/p
j
mod f (x)
değerlerini hesaplayalım. Yukarıdaki değerleri hesaplayabilmek için
2
x, xq , xq , . . . , xq
m−1
2
değerlerini bulmak yeterlidir. x, xq , xq , . . . , xq
çarpımlarının çeşitli kombinasyonları x(q
m−1
m −1)/p
54
mod f (x)
j
mod f (x) değerlerinin kendi aralarında
mod f (x) değerlerini verecektir.
Burada eğer
x(q
m −1)/p
j
6≡ 1 mod f (x)
r
ise e mertebesi pj j nin bir katıdır. Fakat eğer
x(q
m −1)/p
j
≡ 1 mod f (x)
r
sağlanıyorsa e mertebesi pj j nin bir katı değildir. Bu durumda sağlanan bu denkliğin
en küçük kuvvet olup olmadığını kontrol etmek için x(q
m −1)/p2
j
ifadesinin modf (x) deki
değerine bakılır. Burada eğer
x(q
r −1
sağlanıyorsa e mertebesi pj j
r −1
6≡ 1 mod f (x)
nin bir katıdır. Fakat eğer
x(q
oluyorsa e mertebesi pj j
m −1)/p2
j
m −1)/p2
j
≡ 1 mod f (x)
nin bir katı değildir. Bu ifadeyi sağlayan daha küçük pj kuvvet-
leri olup olmadığına bakmak için işleme devam edilir ve işlem pj kuvvetleri arasında
x(q
r
m −1)/p j
j
ifadesine modf (x) de 1 den farklı bir sonuç bulana kadar devam edilir. Bu
r
sonuçlar pj j kuvvetine kadar 1 e denk oluyorsa en son x(q
x(q
r
m −1)/p j
j
r
m −1)/p j
j
değerine bakılır ve
6≡ 1 mod f (x)
ise e mertebesi pj nin bir katıdır. Fakat eğer
x(q
r
m −1)/p j
j
≡ 1 mod f (x)
ise yani hala 1 e denk oluyorsa e mertebesi pj nin bir katı değildir denir ve q m −1 değerinin
başka bir asal çarpanına geçilir. Bu hesaplamalar q m − 1 in her asal çarpanı için yinelenir.
Örnek 4.1.12.
f (x) = x3 + x2 + 2 ∈ F3 [x] polinomu F3 cisminde asaldır. Ayrıca
q m = 33 > 2 sağlanır. Şimdi yukarıdaki algoritmayı kullanarak f (x) polinomunun e
mertebesini bulalım.
q m − 1 = 26 = 13.2
55
dir. Bu durumda f (x) polinomunun e mertebesini bulmak için
x26/13 = x2
ve
x26/2 = x13
ifadelerinin modf (x) deki değerlerini hesaplamalıyız.
x2 6≡ 1 mod f (x)
olduğundan e mertebesi 13 sayısının bir katıdır. Diğer taraftan x13 ifadesinin modf (x)
deki değerini bulmamız gerekmektedir.
x3 ≡
2x2 + 1 modf (x)
x9 ≡ x2 + 2x + 1 modf (x)
x13 = x9 .x3 .x
olup
x13 ≡ 1 mod f (x)
Bu sonuç e mertebesinin 2 nin bir katı olmadığını gösterir. Buradan
ord(f ) = e = 13
dir. Gerçekten de
x13 − 1 = (x3 + x2 + 2)(x10 − x9 + x8 − x6 − x5 + x4 + x3 + x2 + 1)
olup x13 − 1 polinomu f (x) polinomunun böldüğü xe − 1 formundaki en küçük dereceli
polinomdur.
Şimdi basit cebirsel dönüşümlerle biri diğerinden bulunabilen polinom mertebelerini göreceğiz.
Tanım 4.1.13. an 6= 0 için
f (x) = an xn + an−1 xn−1 + . . . + a1 x + a0 ∈ Fq [x]
olsun. Bu durumda
f ∗ (x) = xn f
³1´
x
= a0 xn + a1 xn−1 + . . . + an−1 x + an
şeklindeki f ∗ polinomuna f polinomunun resiprokal polinomu denir (Niederreiter and Lidl
1984)
56
Teorem 4.1.14.
f polinomu Fq [x] polinomlar halkasında sıfırdan farklı bir polinom
olduğunda f ∗ , f polinomunun resiprokal polinomu olsun. Bu durumda
ord(f ) = ord(f ∗ )
dır (Niederreiter and Lidl 1984)
İspat
f (0) 6= 0 olsun. Bu durumda
¯
¯
f (x) ¯ xe − 1 ⇔ f ∗ (x)
¯
¯ e
¯ x −1
dir. f (0) = 0 ise h ∈ N, g ∈ Fq [x] ve g(0) 6= 0 iken
f (x) = xh g(x)
yazabiliriz. Buradan ise
ord(f ) = ord(g) = ord(g ∗ ) = ord(f ∗ )
dir. Bu ise g ∗ = f ∗ olduğunu gösterir.
Teorem 4.1.15. q herhangi bir tek sayı olmak üzere f ∈ Fq [x] polinomunu pozitif dereceli ve f (0) 6= 0 özelliğini sağlayacak şekilde aldığımızda ord(f (x)) = e ve ord(f (−x)) = E
olsun. Bu durumda
(i) e ≡ 0 mod 4 ise E = e
(ii) e ≡ 1 mod 2 ise E = 2e
(iii) Eğer h bir tek sayı olmak üzere e = 2h şeklinde iken
(1) f polinomunun bütün asal çarpanları çift mertebeli ise E = e/2
(2) Diğer durumlarda E = e olur.
ifadeleri gerçeklenir (Niederreiter and Lidl 1986)
57
İspat
ord(f ) = e iken
¯
¯
¯
³
´ ³
´
¯
¯
¯
f (x) ¯ x2e − 1 ve f (−x) ¯ (−x)2e − 1 = f (−x) ¯ x2e − 1
¯
¯
¯
¯
olur ki Lemma 4.1.6 dan E ¯ 2e dir. Yine aynı argümandan e ¯ 2E olur. Bu ise E nin
sadece 2e, e, e/2 değerlerinden birini alabileceğini gösterir.
Eğer e mertebesi 4 ün bir katı ise E ve e çifttir. Bu durumda
¯
¯
´
³
¯
¯
f (x) ¯ xe − 1 ve f (x) ¯ (−x)e − 1 = xe − 1
¯
¯
¯
¯
olup E ¯ e dir. Benzer olarak e ¯ E dir. Buradan E = e dir.
Eğer e bir tek sayı ise
¯
´
¯
e
f (−x) ¯ (−x) − 1 = −xe − 1
¯
¯
¯ e
¯
dir ve bu f (−x) ¯ x + 1 olduğunu gösterir. Fakat f (−x) ¯ xe − 1 sağlanmayabilir. Bu
³
durumda E = 2e dir.
Şimdi h bir tek sayı olmak üzere e = 2h olsun. f ∈ Fq [x] polinomu da asal bir polinomun
kuvveti şeklinde alınsın. f polinomunun mertebesinden dolayı
¯
¯
f (x) ¯ (xh − 1)(xh + 1)
¯
¯
olup f (x) 6 ¯ (xh − 1) dir. (xh − 1) ve (xh + 1) polinomları aralarında asal olduklarından
¯
¯
f (x) ¯ (xh + 1) dir. Buradan
³
¯
´
¯
f (−x) ¯ (−x)h + 1 = −xh + 1
¯
¯
olup f (−x) ¯ (xh − 1) dir. Bu durumda E = e/2 dir.
Şimdi 1 ≤ i ≤ k için gi ∈ Fq [x] polinomlarının herbiri bir asal polinomun bir kuvveti olsun
ve g1 , g2 , . . . , gk polinomları aralarında asal olarak alınsın. f = g1 g2 g3 . . . gk olduğunda
Teorem 4.1.9 a uygun olacak şekilde
2h = ekok{ord(g1 ), ord(g2 ), . . . , ord(gk )}
58
olsun. Burada gi polinomları 1 ≤ i ≤ m için ord(gi ) = 2hi ve m + 1 ≤ i ≤ k için
ord(gi ) = hi olacak şekilde düzenlenebilir. hi bir tek sayı ve ekok(h1 , h2 , . . . , hk ) = h
olduğunda
1 ≤ i ≤ m için ord{gi (−x)} = 2hi
ve
m + 1 ≤ i ≤ k için ord{gi (−x)} = 2hi
dır ve Teorem 4.1.9 dan
E = ekok(h1 , h2 , . . . , hm , 2hm+1 , . . . , 2hk )
dır. Bu eşitlikte m = k ise E = h = e/2 olur. Ayrıca m < k için E = 2h = e dir.
Teorem 4.1.1 ve Tanım 4.1.2 den Fq cisminde degm ≥ 1 olan herhangi bir polinomun
mertebesi en fazla q m − 1 olur.
Tanım 4.1.16.
deg(f ) = m ≥ 1 olan f ∈ Fq [x] polinomu primitiftir denir eğer Fqm
cisminin bir primitif elemanının Fq cismindeki minimal polinomu f ise.
Benzer olarak Fq cisminde deg(f ) = m ≥ 1 olan asal, monik ve bir α ∈ Fqm kökü Fqm
cisminin çarpım grubunu üreten bir f polinomuna Fq cisminde m dereceli bir primitif
polinom denir (Pretzel 1992)
Teorem 4.1.17. deg(f ) = m olan f ∈ Fq [x] polinomu Fq cisminde bir primitif polinomdur
⇔ f monik, f (0) 6= 0 ve ord(f ) = q m − 1 dir (Hill 1986)
İspat
f polinomu Fq cisminde primitif bir polinom olsun. Bu durumda f polinomu
monik ve f (0) 6= 0 dir. Ayrıca f polinomu Fq cisminde asaldır. Böylece Teorem 4.1.3 den
ord(f ) = q m − 1 dir ve f polinomu Fqm cisminin bir primitif elemanına sahip olur. Bu ise
f polinomunun bir köküdür.
59
Tersine ord(f ) = q m − 1 olduğundan m ≥ 1 dir. Bu durumda Fq cisminde f polinomunun
asal olduğunu iddia ediyoruz. Farzedelimki f polinomu asal olmasın. f polinomu asal
bir polinom değilse bir asal polinomun kuvveti veya pozitif dereceli aralarında asal iki
polinomun çarpımı şeklindedir. g ∈ Fq [x] polinomu Fq cisminde asal bir polinom olmak
üzere f = g b şeklinde ise g(0) 6= 0 ve b ≥ 2 dir. Teorem 4.1.8 den Fq cisminin karakteristiği
p olmak üzere
¯
¯
¯
¯
¯
¯
p ¯ ord(f ) ve ord(f ) ¯ q m − 1 olduğundan p ¯ q m − 1
olur. Bu ise bir çelişkidir. İkinci durumda deg(g1 ) = m1 ve deg(g2 ) = m2 için g1 , g2 ∈ Fq [x]
monik ve aralarında asal polinomlar olmak üzere f = g1 g2 olsun. i = 1, 2 için eğer
ei = ord(gi ) ise Teorem 4.1.9 dan
ord(f ) = ekok(e1 , e2 ) ≤ e1 e2
dir. Ayrıca Teorem 4.1.1 den i = 1, 2 için ei ≤ q mi − 1 dir. Bu sonuçlardan
ord(f ) ≤ (q m1 − 1)(q m2 − 1) < q m1 +m2 − 1 = q m − 1
Bu ise bir çelişkidir. Bu durumda f polinomu Fq cisminde asal bir polinomdur. Böylece
Teorem 4.1.3 den f polinomu Fq cisminde aynı zamanda bir primitif polinomdur.
Teorem 4.1.18. f ∈ Fq [x] ve f (0) 6= 0 şartını sağlayan f polinomunu alalım. Burada
xr ≡ a mod f (x) , a ∈ F∗q denkliğini sağlayan en küçük pozitif tamsayı r olsun. Bu durumda h , F∗q çarpım grubunda a nın mertebesi olmak üzere ord(f ) = hr olur (Niederreiter
and Lidl 1984)
İspat
ord(f ) = e olsun. f (0) 6= 0 olduğundan xe ≡ 1 mod f (x) dir. Burada e ≥ r
olmalıdır. Bölme algoritmasından e = sr + t ve 0 ≤ t ≤ r olacak şekilde s ve t pozitif
sayıları vardır. Şimdi
1 ≡ xe ≡ xsr+t ≡ as xt mod f (x)
(1)
60
Buradan xt ≡ a−s mod f (x) olur. r nin tanımından dolayı t = 0 dır. (1) denkliğinden
dolayı as ≡ 1 mod f (x) dir. Buradan as = 1 dir. Böylece s ≥ h ve e ≥ hr olur. Diğer
yandan
xhr ≡ ah ≡ 1 mod f (x) ⇒ e ≤ hr
dir. Bu sonuçlardan e = hr olur.
Teorem 4.1.19. f ∈ Fq [x] monik polinomu deg(f ) = m ≥ 1 olsun. f polinomu Fq
cisminde bir primitif polinomdur ⇔ (−1)m f (0) , Fq cisminde bir primitif elemandır ve
modf (x) e göre xr nin Fq cisminin bir elemanına denk olduğu en küçük kuvveti r ise
.
m
r = (q − 1) q − 1
olur. f polinomunun Fq cismi üzerinde primitif olduğu durumda
xr ≡ (−1)m f (0) mod f (x)
dir (Niederreiter and Lidl 1984)
İspat
(⇒)
Eğer f polinomu Fq cismi üzerinde primitif ise Fqm =< α > ve f (α) = 0 dır. Tanım
3.4.11 ve Lemma 3.3.3 ile norm hesaplandığında
NFqm /Fq (α) = α(q
m −1)/q−1
olur. F∗q çarpım grubunda [α(q
= (−1)m f (0) = (−1)m a0
m −1)/q−1
(2)
]q−1 = 1 ve
qm − 1
=q−1
ebob{(q m − 1)/q − 1, q m − 1}
olduğundan (−1)m f (0) elemanının mertebesi q − 1 olur. (−1)m f (0) bu durumda Fq cisminin bir primitif elemanıdır. f polinomu Fq cisminde α nın minimal polinomu olduğundan
ve
g(x) = x(q
m −1)/q−1
− α(q
m −1)/q−1
61
olduğunda g(α) = 0
sağlandığından
¯
m
m
¯
f (x) ¯ x(q −1)/q−1 − α(q −1)/q−1
dir. Buradan
x(q
m −1)/q−1
≡ (−1)m f (0) mod f (x)
olur. Böylece r ≤ (q m − 1)/q − 1 dir. Diğer taraftan
q m − 1 = ord(f ) ≤ (q − 1)r ⇒ r ≥ (q m − 1)/q − 1
olur Bu iki sonuçtan
.
r = (q − 1) q − 1
m
dir.
(⇐)
.
Tersine r = (q − 1) q − 1 olsun. Teorem 4.1.18 den
m
ord(f ) = hr = (q − 1)
qm − 1
= qm − 1
q−1
³
´
olur. Buradan ebob ord(f ), q = 1 dir. Teorem 4.1.11 gösterir ki fi polinomları Fq cisminde farklı monik, asal polinomlar olmak üzere f = f1 f2 . . . fk olacak şekilde çarpanlara
¯
¯
sahiptir. 1 ≤ i ≤ k ve mi := deg(fi ) olsun. Bu durumda ord(fi ) ¯ q mi − 1 dir.
.
d := (q m1 − 1)(q m2 − 1) . . . (q mk −1 ) (q − 1)k
¯
¯
¯
¯
olsun. Buradan 1 ≤ i ≤ k için ord(fi ) ¯ d ve 1 ≤ i ≤ k için fi (x) ¯ xd − 1 dir. xd ≡
¯
¯
1 mod f (x) ve xd ∈ Fq olduğundan f (x) ¯ xd − 1 dir. Eğer k ≥ 2 ise
d < (q
m1 +m2 +...+mk
.
.
m
− 1) q − 1 = (q − 1) q − 1 = r
olduğundan k = 1 ve d = q m − 1 dir. Bu durumda f asaldır. β ∈ Fqm ve f (β) = 0 olsun.
Böylece
β r = (−1)m f (0)
62
ve (2) eşitliğindeki hesaplamalardan
xr ≡ (−1)m f (0) mod f (x)
dir. Hipotezden F∗q çarpım grubunda (−1)m f (0) elemanının mertebesi q − 1 dir. Teorem
4.1.18 den
ord(f ) = (q − 1)
qm − 1
= qm − 1
q−1
olur. Buradan ve Lemma 4.1.17 dan f polinomu Fq cisminde primitiftir.
Örnek 4.1.20. f (x) = x4 + x3 + x2 + 2x + 2 ∈ F3 [x] polinomunu ele alalım. f polinomu
F3 cisminde asaldır. Ayrıca q m − 1 = 34 − 1 = 80 = 24 .5 dir. Bu durumda xq
ve xq
m −1/5
m −1/2
= x40
= x16 değerlerinin modf (x) deki karşılığını bulmalıyız.
x16 ≡ 2x3 + 1 6≡ 1 mod f (x)
x40 ≡ 2 6≡ 1 mod f (x)
olup buradan e = ord(f ) = q m − 1 = 24 .5 = 80 dir. Böylece Teorem 4.1.17 dan f
polinomu F3 cisminde primitiftir. Bu durumda (−1)m f (0) = 2 olduğundan Teorem 4.1.19
bize x40 ≡ 2 mod f (x) olduğunu söyler. Tersine (−1)m f (0) = 2 ∈ F3 elemanı < 2 >= F∗3
eşitliğini sağladığından F3 cisminin bir primitif elemanıdır. Diğer taraftan x40 ≡ 2 mod
f (x) olduğundan Teorem 4.1.19 den söyleyebiliriz ki f polinomu F3 cisminde bir primitif
polinomdur.
4.2
Asal Polinomlar
Teorem 4.2.1. n ∈ N ve Fq sonlu cisim olsun. Dereceleri n yi bölen Fq [x] polinomlar
n
halkasındaki bütün monik, asal polinomların çarpımı xq − x değerine eşittir (Chapman
1996)
İspat
n
Lemma 3.4.2 den g(x) = xq − x polinomu Fq [x] polinomlar halkasında monik,
asal çarpanların çarpımı şeklinde yazıldığında dereceleri n yi böler olduğunu biliyoruz.
63
Aynı zamanda burada g 0 (x) = −1 dir. Bu durumda Teorem 3.1.10 den dolayı g polinomu
Fq cisminde katlı bir köke sahip değildir. Buradan bütün monik, asal polinomlarının
herbirinin derecesi n yi böler. Böylece g polinomunun kanonikal çarpanlara ayrılması
tektir.
Sonuc. 4.2.2. Nq (d) , Fq [x] polinomlar halkasında derecesi d olan monik, asal polinomların
sayısını göstersin. Bu durumda
qn =
X
dNq (d)
d/n
dir (Niederreiter and Lidl 1986)
İspat
n
g(x) polinomunun kanonikal gösteriminin toplam derecesi ile g(x) = xq − x
polinomunun derecesi Teorem 4.2.1 ile karşılaştırılırsa yukarıdaki sonuç bulunur.
Tanım 4.2.3. N de Moebius fonksiyonu olan µ fonksiyonu





µ(n) =




1
(−1)k
0
n = 1 ise
n, k farklı asalın çarpımı ise
n,
bir asalın karesi ile bölünebilir ise
şeklinde tanımlanır (Niederreiter and Lidl 1986)
Lemma 4.2.4. n ∈ N için µ Moebius fonksiyonu olsun. Bu durumda

 1,
X
n = 1 ise
µ(d) =
 0,
n > 1 ise
d/n
olur (Niederreiter and Lidl 1986)
Teorem 4.2.5. [Moebius İnterpolasyon Formülü]
64
(i) Toplama Durumu: N den h ve H gibi iki fonksiyon aldığımızda G değişmeli grubu
altındaki toplamı n ∈ N için
H(n) =
X
h(d)
(3)
d/n
gerek ve yeter şart n ∈ N için
h(n) =
³n´
X ³n´
X
µ
H(d) =
µ(d)H
d
d
d/n
(4)
d/n
olmasıdır.
(ii) Çarpım Durumu: N den h ve H gibi iki fonksiyon aldığımızda G değişmeli grubu
altındaki çarpımı n ∈ N için
H(n) =
Y
h(d)
(5)
d/n
gerek ve yeter şart n ∈ N için
h(n) =
Y
H(d)µ(n/d) =
Y
d/n
d/n
H
³ n ´µ(d)
(6)
d
olmasıdır (Niederreiter and Lidl 1986)
Teorem 4.2.6. Nq (n), Fq [x] polinomlar halkasında n dereceli monik, asal polinomların
sayısı olarak alınırsa
Nq (n) =
1 X ³n´ d
1X
µ
µ(d)q n/d
q =
n
d
n
d/n
d/n
olur (Jungnickel 1993)
Örnek 4.2.7. Fq [x] polinomlar halkasında derecesi 20 olan monik, asal polinomların sayısı
´
1³
µ(1)q 20 + µ(2)q 10 + µ(4)q 5 + µ(5)q 4 + µ(10)q 2 + µ(20)q
20
´
1 ³ 20
q − q 10 − q 4 + q 2
=
20
Nq (20) =
65
Teorem 4.2.6 deki formül her sonlu Fq cismi ve her pozitif n tamsayısı için Fq cisminde n
dereceli asal bir polinom olduğunu gösterir. (Sonuç 3.3.10 ile karşılaştırılırsa).
∀d ∈ N için µ(1) = 1 ve µ(d) ≥ −1 kullanılırsa
¶
´ 1µ
qn − q
1³ n
n−1
n−2
n
Nq (n) ≥
q −q
−q
− ... − q =
q −
>0
n
n
q−1
Moebius İnterpolasyon Formülünün diğer bir uygulaması n inci dairesel polinom olan Qn
ile ilgili eşitliktir.
Teorem 4.2.8. p karakteristikli bir K cismi ve p ile bölünmeyen n ∈ N için K üzerindeki
n inci dairesel polinom olan Qn
Qn (x) =
Y³
´µ(d)
´µ(n/d) Y ³
n/d
x −1
x −1
=
d
d/n
d/n
dir (Jungnickel 1993)
Örnek 4.2.9. K cismi üzerinde Q12 dairesel polinomunu bulalım.
Q12 (x) =
Y³
´µ(d)
x12/d − 1
d/12
µ(1)
= (x12 − 1) (x6 − 1)
(x12 − 1)(x2 − 1)
=
(x6 − 1)(x4 − 1)
= x4 − x2 + 1
µ(2)
µ(3)
(x4 − 1)
µ(4)
(x3 − 1)
µ(6)
(x2 − 1)
(x − 1)µ(12)
dir.
Teorem 4.2.6 de Fq [x] polinomlar halkasında sabit dereceli monik, asal polinomların sayısı
belirlidir. Şimdi Fq [x] halkasında sabit dereceli bütün monik, asal polinomların çarpımını
veren bir formül vereceğiz.
66
Teorem 4.2.10. Fq [x] polinomlar halkasında n dereceli monik, asal bütün polinomların
çarpımı I(q, n ; x) olarak alındığında
I(q, n ; x) =
Y³
d
xq − x
´µ(n/d)
d/n
=
Y³
xq
n/d
−x
´µ(d)
d/n
dir (Jungnickel 1993)
İspat
Teorem 4.2.1 den
n
xq − x =
Y
I(q, d ; x)
d/n
dir. Fq cisminde sıfırdan farklı rasyonel fonksiyonların G çarpım grubuna Moebius İnterpolasyon
Formülünün çarpım durumu uygulandığında ∀n ∈ N için
h(n) = I(q, n ; x)
ve
n
H(n) = xq − x
yazıldığında istenilen sonuç elde edilir.
Örnek 4.2.11. q = 2 ve n = 4 için
³
I(2, 4 ; x) =
x
2(4/1)
−x
´µ(1) ³
x
2(4/2)
´µ(2) ³ (4/4)
´µ(4)
2
−x
x
−x
(x15 − 1)
(x16 − x)
=
(x4 − x)
(x3 − 1)
= x12 + x9 + x6 + x3 + 1
=
dir.
Fq [x] polinomlar halkasında n dereceli monik, asal bütün polinomlar I(q, n ; x) in çarpanları
arasında belirlidir.
Teorem 4.2.12. I(q, n ; x) değerini Teorem 4.2.10 dan alalım. n > 1 olduğunda Fq
cisminde m inci dairesel polinom Qm (x) olmak üzere mod(m) ye göre q nun çarpımsal
67
mertebesini gösteren ordm (q) := n için q n − 1 değerinin bütün pozitif bölenleri üzerindeki
çarpım
I(q, n ; x) =
Y
Qm (x)
(7)
m
dir (Jungnickel 1993)
İspat
n > 1 için Fqn cisminin elemanlarının kümesini S diye alalım. ∀α ∈ S elemanı
Fq cisminde n dereceli minimal polinoma sahiptir. Bu durumda I(q, n ; x) çarpımının
bir köküdür. Diğer bir ifadeyle eğer β elemanı I(q, n ; x) ifadesinin bir kökü ise β, Fq [x]
polinomlar halkasında n dereceli bazı monik, asal polinomların bir köküdür. Buradan
β ∈ S olur. Bu nedenle
I(q, n ; x) =
Y
(x − α)
α∈S
dir. Bir hatırlatma yapmak gerekirse ψ ∈
F∗qn
elemanı Fqn cisminin uygun bir alt cismi
d
olan Fqd cisminin bir elemanıdır ⇔ ψ q = ψ ⇔ (ψ
nin mertebesi)/q d − 1 olduğunu
önceden biliyoruz. Buradan eğer α ∈ S ise α ∈ F∗qn ve ayrıca α elemanının mertebesi
çarpım grubunda q n − 1 ifadesinin bir bölenidir. Böylece α ∈ S elemanının m mertebesi
q n ≡ 1 mod (m) şartını sağlar. Bu durumda n sayısı mod(m) ye göre q nun çarpımsal
mertebesidir. Yani ordm (q) = n olur. q n − 1 ifadesinin bir pozitif m böleni için S nin m
mertebeli elemanlarının kümesini Sm ile gösterelim. Buradan
I(q, n ; x) =
Y Y
m
(x − α)
α∈Sm
Bu durumda Sm , m mertebeli F∗qn çarpım grubunun bütün elemanlarını kapsar. Diğer
bir deyişle Sm , Fq cisminde birimin m inci primitif köklerinin kümesidir. Böylece dairesel
polinomun tanımından
Y
(x − α) = Qm (x)
α∈Sm
dir ve (7) eşitliği sağlanır.
68
Örnek 4.2.13. 4 üncü dereceden F2 cismindeki bütün monik, asal polinomları belirleyelim. q n − 1 = 24 − 1 = 15 olup 15 in bölenleri {3, 5, 15} sayılarıdır. Bu durumda
2 ≡ 2 mod 3
22 ≡ 1 mod 3
olduğundan
ord3 (2) = 2
dir. Ayrıca
2 ≡ 2 mod 5
22 ≡ 4 mod 5
23 ≡ 3 mod 5
24 ≡ 1 mod 5
ise
ord5 (2) = 4
dür ve
2 ≡ 2 mod 15
22 ≡ 4 mod 15
23 ≡ 8 mod 15
24 ≡ 1 mod 15
ise
ord15 (2) = 4
dür. Bu durumda (7) eşitliğinden
I(2, 4 ; x) = Q5 (x)Q15 (x)
69
olur. Diğer taraftan Teorem 3.4.15 (ii) den biliyoruz ki ebob(q, n) = 1 olduğunda Qn (x)
dairesel polinomu ordn (q) = d olmak üzere Φ(n)/d tane asal polinoma sahiptir. Bu
durumda
Q5 (x) =
Y
(x5/d − 1)
µ(d)
d/15
µ(1)
= (x − 1)µ(5) (x5 − 1)
(x5 − 1)
=
= x4 + x3 + x2 + x + 1
(x − 1)
Ayrıca Q5 (x) için Φ(5)/4 = 1 olduğundan Q5 (x) = x4 + x3 + x2 + x + 1 polinomu F2
cisminde asaldır. Yine Φ(15)/4 = 2 olduğundan Q15 (x) dairesel polinomunun F2 cisminde
4 üncü dereceden iki asal polinom çarpanı vardır.
Diğer taraftan Q5 (x + 1) = x4 + x3 + 1 polinomu F2 cisminde asal bir polinomdur. Bu
polinom Q15 (x) dairesel polinomunu bölmek zorundadır ve
Q15 (x) =
Y³
x
15/d
´µ(d)
−1
d/15
= (x15 − 1)
µ(1)
(x5 − 1)
µ(3)
µ(5)
(x3 − 1)
(x − 1)µ(15)
= x8 + x7 + x5 + x4 + x3 + x + 1
= (x4 + x3 + 1)(x4 + x + 1)
Bu durumda F2 cisminde 4 üncü dereceden asal polinomlar
x4 + x3 + 1, x4 + x + 1 ve x4 + x3 + x2 + x + 1
dir.
Bir cisim genişlemesinde elemanlarının minimal polinomları genellikle asal polinomlardır.
Minimal polinomların Tanım 3.2.5 de ve önemli özellikleri de Teorem 3.2.6 da belirtilmişti.
Şimdi sonlu cisimlerde minimal polinomlar hakkında faydalı özellikleri vereceğiz.
70
Teorem 4.2.14. Fq cisminin bir cisim genişlemesi Fqm olmak üzere α ∈ Fqm olsun. Fq
cisminde α elemanının derecesi d olduğunda g ∈ Fq [x] polinomu Fq cisminde α elemanının
minimal polinomu olsun. Bu durumda
¯
¯
(i) g polinomu Fq cisminde asaldır ve d ¯ m dir.
¯
¯
(ii) f ∈ Fq [x] polinomu için f (α) = 0 ⇔ g ¯ f dir.
(iii) Eğer f ∈ Fq [x] polinomu f (α) = 0 şartını sağlayan bir monik, asal polinom ⇒ f = g
dir.
¯
¯
¯ m
¯ qd
(iv) g(x) ¯ x − x ve g(x) ¯ xq − x dir.
(v) g(x) polinomunun kökleri α, αq , . . . , αq
d−1
dir ve g(x) polinomu Fq cisminde bütün
bu elemanlarla bir minimal polinomdur.
(vi) Eğer α 6= 0 ise ord(g), F∗qm çarpım grubunda α elemanının mertebesine eşittir.
(vii) g(x) polinomu Fq cisminde bir primitif polinomdur ⇔ F∗qm çarpım grubunda q d − 1
ifadesinin mertebesi α değerine eşittir.
(Niederreiter and Lidl 1984)
4.3
Asal Polinomların İnşası
Bu bölümde sayılar teorisinin sonuçlarını kullanarak bilinen bir asal polinomdan yeni asal
polinomlar üretmeyi göreceğiz. Bu bölüme geçmeden önce çarpım mertebesinin tanımını
vermemiz gerekir.
n ∈ Z+ , b ∈ Z için eğer ebob(b, n) = 1 ise bk ≡ 1 mod (n) ifadesini sağlayan en küçük
k ∈ Z+ sayısına b elemanının mod(n) deki çarpımsal mertebesi denir ve ordn (b) := k
ile gösterilir. Bu çarpım mertebesi bh ≡ 1 mod (n) ifadesini sağlayan keyfi bir h ∈ Z+
elemanını böler.
71
Lemma 4.3.1. n ∈ Z+ , t ∈ Z için ebob(b, n) = 1 iken ordn (b) := k için s ≥ 2 ve e ≥ 2,
t ≥ 2, ebob(s, e) = 1, orde (s) := m olduğunda t nin asal çarpanları e yi bölsün fakat aynı
¯³
´
¯
zamanda t 6 ¯ (sm − 1)/e sağlansın. Ayrıca t ≡ 0 mod 4 olduğunda sm ≡ 1 mod 4 olsun.
Bu durumda ordet (s) = mt dir (Niederreiter and Lidl 1986)
Teorem 4.3.2. Fq [x] polinomlar halkasında dereceleri m ve mertebeleri e olan asal ve
monik polinomlar
f1 (x), f2 (x), . . . , fN (x)
olsun. t ≥ 2 ve t ∈ Z+ için t nin asal çarpanları e yi bölsün fakat t , (q m − 1)/e sayısını
bölmesin. Aynı zamanda t ≡ 0 mod 4 olduğunda q m ≡ 1 mod 4 olsun. Bu durumda
derecesi mt ve mertebesi et olan Fq [x] polinomlar halkasındaki asal polinomlar
f1 (xt ), f2 (xt ), . . . , fN (xt )
polinomlarıdır (Niederreiter and Lidl 1986)
Örnek 4.3.3. F2 [x] polinomlar halkasında 4 dereceli ve 15 mertebeli asal polinomlar
x4 + x + 1 ve x4 + x3 + 1 polinomlarıdır. Yukarıdaki teoremi kullanarak derecesi mt ve
mertebesi et olan yeni asal polinomlar bulabiliriz. Bu işleme başlamadan önce teoremin
hipotezine uygun t değerlerini belirlememiz gerekmektedir. Buna göre seçtiğimiz
¯ (sm − 1)
¯
t6¯
e
¯
¯
değerlerinin çarpanları 15 i bölmeli ayrıca t 6 ¯(24 −1)/15 sağlanmalıdır. Buradan çarpanları
15 i bölen t değerleri, {3, 15, 25} kümesinin elemanıdır. Bu durumda asal polinomlarımız
t = 3 için F2 [x] polinomlar halkasındaki 12 dereceli ve 45 mertebeli asal polinomlar
x12 + x3 + 1 ve x12 + x9 + 1 dir.
t = 15 için F2 [x] polinomlar halkasındaki 60 dereceli ve 225 mertebeli asal polinomlar
x60 + x15 + 1 ve x60 + x45 + 1 dir.
72
t = 25 için F2 [x] polinomlar halkasındaki 100 dereceli ve 375 mertebeli asal polinomlar
x100 + x25 + 1 ve x100 + x75 + 1 dir.
Yukarıdaki teoremde t ≡ 0 mod 4 olduğunda q m ≡ −1 mod 4 olması halini hesaba katmadık. p bir asal sayı olmak üzere q = pk gibi bir değer olduğundan q m ≡ −1 mod 4
olması hali ancak q ≡ −1 mod 4 ve m bir tek sayı olduğunda gerçekleşir. Bu durum ise
şimdi göreceğimiz teoremde açıklanmaktadır.
Teorem 4.3.4. Fq [x] polinomlar halkasında m tek dereceli ve e mertebeli farklı monik,
asal polinomlar
f1 (x), f2 (x), . . . , fN (x)
olsun. a, b ≥ 2 için u ve v tek sayılar olmak üzere q := 2a u − 1, t := 2b v olsun. Ayrıca
t nin asal çarpanları e yi bölsün fakat (q m − 1)/e değerini bölmesin. k := min(a, b)
olsun. Bu durumda fj (xt ) polinomlarının herbiri 2k−1 tane monik, asal ve mt21−k dereceli
gij (x) ∈ Fq [x] polinomlarının bir çarpımı olarak yazılabilir Buradan
fj (xt ) =
k−1
2Y
gij (x)
j=1
deg(gij (x)) = mt21−k = mv2b+1−k ve ord(gij (x)) = et
olur. Ayrıca dereceleri mt21−k ve mertebesi et olan bütün monik, asal polinomlar 2k−1 N
tane gij (x) polinomlarıdır (Niederreiter and Lidl 1986)
Mertebesi e olan bir asal polinom verildiğinde mertebeleri e yi bölen bütün asal polinomların nasıl bulunduğunu göstereceğiz. Bu işlem sırasında g(x) 6= x ve g(0) 6= 0 dan farklı
polinomları düşüneceğiz. f polinomu f (0) 6= 0, deg(f ) = m ve ord(f ) = e olan asal,
monik bir polinom olsun. α ∈ Fqm elemanı f polinomunun bir kökü olsun ve ∀t ∈ Z+ için
Fq cisminde αt elemanının minimal polinomu gt ∈ Fq [x] olsun. Bu durumda ∀t ∈ Z+ için
t ≡ ti q b mod e
73
olacak şekilde b ≥ 0 ve 1 ≤ i ≤ n olmak üzere bir tek i sayısı vardır.
T := {t1 , t2 , . . . , tn } ⊂ Z+
kümesi sonlu bir kümedir. Şimdi T kümesini nasıl bulabileceğimizi görelim. Öncelikle
t1 = 1 alınır. Bu durumda tj elemanları 1 ≤ i ≤ j için
tj 6≡ ti q b mod e
ifadesini sağlayan en küçük pozitif tamsayıdır.
Yani t1 = 1 alındığında t2 için
∀b ≥ 0 için t2 6≡ q b mod e
ifadesini sağlayan değer hesaplanır.
t3 için ise
∀b ≥ 0 için t3 6≡ q b mod e ve t3 6≡ t2 q b mod e
ifadelerini sağlayan değerler hesaplanır. T kümesi sonlu bir küme olduğundan hesaplanan
t değerlerinin tümü makul bir çaba ile yukarıda anlatılan şekilde ilerlenerek bulunabilir.
Örnek 4.3.5. e = 7 ve q = 22 için olası t değerlerini hesaplayalım. Bu işlem için öncelikle
olası q b değerlerini bulalım.
q ≡ 4 mod 7
q 2 ≡ 2 mod 7
q 3 ≡ 1 mod 7
Buradan t1 = 1 olduğunda t2 için
t2 6≡ 1 mod 7
t2 6≡ 2 mod 7
t2 6≡ 4 mod 7
74
ifadeleri sağlanmalıdır. Bu durumda t2 = 3 dür. t3 ise
t3 6≡ 1 mod 7
t3 6≡ 2 mod 7
t3 6≡ 4 mod 7
t3 6≡ 3 mod 7
t3 6≡ 6 mod 7
t3 6≡ 5 mod 7
ifadelerini sağlamalıdır. Buradan t3 = 0 bulunur. Böylece bulunacak t değerleri bitmiş
olacaktır. Bu durumda T kümesi
T = {1, 3}
şeklinde oluşacaktır.
Teorem 4.3.6. Fq [x] polinomlar halkasında mertebeleri e yi bölen ve sabit terimleri
sıfırdan farklı olan bütün farklı asal, monik polinomlar
gt1 , gt2 , . . . , gtn
polinomlarıdır (Niederreiter and Lidl 1986)
Aşağıdaki işlemleri vermeden önce karakteristik polinomun tanımını vermemiz gerekmektedir.
F ⊂ K ve [K : F] = n < ∞ için KF bir cebirsel genişleme olsun. Burada ∀α ∈ K için asal,
monik bir tek f ∈ F[x] polinomu vardır ki f (α) = 0 ve deg(f ) = d dir.
F ⊂ F(α) ⊂ K ve [F(α) : F] = d
¯
¯
olduğundan d ¯ n olur. Bu durumda
g(x) := f (x)n/d ∈ F[x]
75
polinomuna α elemanının F cismi üzerindeki karakteristik polinomu denir.
Şimdi deg(f ) = m olan asal ve monik polinomu f ∈ Fq [x] olsun. Ayrıca α ∈ Fqm
ve f (α) = 0 için ord(f ) = e = ord(α) olur. αt elemanının minimal polinomu olan gt
polinomunun hesaplanması αt elemanının karakteristik polinomu olan ft polinomundan
yapılır. Karakteristik polinomun tanımından dolayı
ft = gtr
ifadesi sağlanır.
Fq ⊂ Fq (αt ) ⊂ Fqm
olup
[Fqm : Fq ] = m ve [Fq (αt ) : Fq ] = k
olduğundan burada r = m/k ve k = deg(gt ) dir.
gt polinomu Fq [x] polinomlar halkasında asal olduğundan k = ordd (q) olur. Buradaki
d = ord(gt ) aynı zamanda
´
ord(α ) = d = e/ebob(t, e)
t
³
dir. Dolayısıyla d, k ve r kolayca belirlenebilir.
ft polinomunun hesaplanması için birkaç farklı metot biliyoruz Aşağıdaki teorem onlardan
birini açıklamak içindir.
Teorem 4.3.7. Fq [x] polinomlar halkasında m dereceli bir monik, asal polinom f olsun.
f polinomunun bir kökü olan α ∈ Fqm elemanı için t ∈ N alındığında ft polinomu Fq
cismi üzerinde αt ∈ Fqm elemanının karakteristik polinomudur. Bu durumda Fq cisminde
birimin t inci kökleri olan ω1 , ω2 , . . . , ωt elemanları için
ft (xt ) = ( − 1)m(t+1)
t
Y
j=1
dir (Niederreiter and Lidl 1984)
76
f (ωj x)
Örnek 4.3.8. F2 [x] polinomlar halkasında f (x) = x4 + x + 1 polinomunu gözönüne alarak
f3 (x) polinomunu hesaplayalım. ω elemanı F4 cisminde x2 + x + 1 polinomunun bir kökü
olduğunda F2 cisminde birimin üçüncü kökleri {1, ω, ω 2 } elemanlarıdır. Bu durumda
f3 (x3 ) = (−1)16 f (x)f (ωx)f (ω 2 x)
= (x4 + x + 1)(ωx4 + ωx + 1)(ω 2 x4 + ω 2 x + 1)
= x12 + x9 + x6 + x3 + 1
Buradan
f3 (x) = x4 + x3 + x2 + x + 1
polinomudur.
ft polinomunun hesaplanmasındaki diğer bir metot matris teorisidir.
f (x) = xm − am−1 xm−1 − . . . − a1 x − a0
karakteristik polinomu olduğunda






A=





0 0 . . . 0 a0
1 0 . . . 0 a1
0 1 . . . 0 a2
.. .. . . .. ..
. . .
. .










0 0 . . . 1 am−1
şeklindeki ve (m × m) tipindeki A matrisine f polinomunun Kompenen Matrisi adı verilir.
Burada f polinomu A matrisinin karakteristik polinomudur ve I matrisi Fq cisminde
(m × m) tipinde birim matris olmak üzere f (x) = det(xI − A) dır. Bu durumda ∀t ∈ N
için At matrisi A matrisinin t inci kuvvetini göstermek üzere ft polinomu At matrisinin
karakteristik polinomu olur.
77
Örnek 4.3.9. Hangi t ler için ft polinomlarının Fq [x] polinomlar halkasında asal olduğunu
belirlemek önemlidir. Böylece Teorem 4.3.7 ün önündeki açıklamadan
ft polinomları Fq [x] polinomlar halkasında asal ⇒
r=1⇔
m=k⇒
ordd (q) = m, d = e/ebob(t, e)
olduğunu söyleyebiliriz. Şimdi q = 2, m = 6, e = 63 için hangi t değerlerinde ft polinomlarının Fq cismi üzerinde asal olduğunu belirleyelim.
¯
¯
¯
¯
d ¯ e ⇒ ordd (q) ¯ m
olacağından çarpımsal mertebe için m değerinden başka k = 1, 2, 3 olasılıkları vardır. Bu
durumda
q k − 1 = 2k − 1 = 1, 3, 7
değerleri olabilir. Buradan q k ≡ 1 mod (d) için d = 1, 3, 7 olabilir. Bu ise
ebob(t, 63) = 63, 21, 9
olduğunu gösterir. Burada ebob(t, 63) = 63, 21, 9 değerlerini veren t değerlerini bulacağız.
1 ≤ t ≤ 63 için
ebob(t, 63) = 9 ⇒ t ∈ {9, 18, 27, 36, 45, 54}
ebob(t, 63) = 21 ⇒ t ∈ {21, 42}
ebob(t, 63) = 63 ⇒ t = 63
⇒ t ∈ A = {9, 18, 21, 27, 36, 42, 45, 54, 63}
Bu durumda 1 ≤ t ≤ 63 için t 6∈ A ise ft polinomları F2 [x] polinomlar halkasında asaldır.
78
Pratikte asal polinomlar cisim genişlemesindeki elemanların minimal polinomları olarak
ortaya çıkarlar. f ∈ Fq [x] asal, monik, deg(f ) = m, ord(f ) = e = q m − 1 ve f (α) = 0 ve
α ∈ Fqm olduğunda yani f ∈ Fq [x] polinomu bir primitif polinom olarak alındığında Fqm
cismi
{1, α, α2 , . . . , αm−1 }
elemanlarından oluşur. Bu durumda F∗qm cisminin elemanlarının minimal polinomlarını
bulmalıyız. Böylece yukarıdaki metodun ana hatları kullanılarak F∗qm cisminin her elemanının Fq cismi üzerindeki minimal polinomu hesaplanabilir. Minimal polinomları belirlemenin açık bir yolu aşağıdaki gibidir.
f ∈ Fq [x] asal, monik, deg(f ) = m, ord(f ) = e = q m − 1 olduğunda f polinomunun
kökleri Fqm cisminin elemanıdırlar. f (θ) = 0 için Fqm cisminin bir Fq −tabanı
{1, θ, θ2 , . . . , θm−1 }
dir. Şimdi bir β ∈ Fqm elemanının g minimal polinomunu bulalım. Bu durumda g minimal
polinomu
g(x) = cm xm + . . . + c1 x + c0 ∈ Fq [x]
şeklinde olup g(β) = 0 ve g polinomu monik, asal özelliklerini sağlayan en küçük dereceli
polinomdur. Diğer taraftan
β 0 , β, β 2 , . . . , β m−1 ∈ Fqm
elemanları θ nın bazı kuvvetlerine eşit olur. Buradan 1 ≤ i ≤ m + 1 için
β i−1 =
m
X
bij θj−1
j=1
olarak alınır. Diğer taraftan g(β) = 0 olacağından
g(β) = cm β m + . . . + c1 β + c0 = 0
olup 1 ≤ j ≤ m için
m+1
X
ci−1 bij = 0
(8)
i=1
79
lineer eşitliği {c0 , c1 , . . . , cm } değerleri için homojen bir sistem olmasını gerektirir. B yi
sistemin katsayılar matrisi olarak aldığımızda B matrisi (m + 1) × m tipinde bij girişli ve
rankı r olan bir matris olur. Sistemin çözüm uzayının boyutu s = m + 1 − r ve 1 ≤ r ≤ m
olur. Bu durumda 1 ≤ s ≤ m dir. Buradan {c0 , c1 , . . . , cm } bilinmeyen değerleri s için
belirtilen değerlerdir ve tek olarak belirlidirler. Eğer s = 1 ise cm = 1 ve eğer s > 1 ise
cm = cm−1 = . . . = cm−s+2 = 0 ve cm−s+1 = 1 olur.
Örnek 4.3.10. θ ∈ F64 elemanı x6 + x + 1 ∈ F2 [x] asal polinomunun bir kökü olsun.
β = θ3 + θ4 için
β0 = 1
β
= θ3 + θ4
β 2 = 1 + θ + θ2 + θ3
β 3 = θ + θ2 + θ3
β 4 = θ + θ2 + θ4
β 5 = 1 + θ3 + θ4
β 6 = 1 + θ + θ2 + θ4
Bu durumda B matrisi









B=








1 0 0 0 0 0
0 0 0 1 1 0
1 1 1 1 0 0
0 1 1 1 0 0
0 1 1 0 1 0
1 0 0 1 1 0
















1 1 1 0 1 0
olup matrisin rankı 3 dür. Buradan s = m+1−r = 4 > 1 dir. Bu yüzden c6 = c5 = c4 = 0
ve c3 = 1 dir. Böylece (8) eşitliğinden c2 = 1, c1 = 0, c0 = 1 olur. Bu ise β elemanının
minimal polinomunun F2 cisminde
g(x) = x3 + x2 + 1
80
olduğunu gösterir.
Minimal polinomları belirlemenin diğer bir yolu Teorem 4.2.14 nin ifadesine dayanılarak
yapılan metottur. Buna göre eğer Fq cisminde β ∈ Fqm elemanının g minimal polinomunu
bulmayı istiyorsak
2
{β, β q , β q , . . .}
d
kuvvetlerini β q = β eşitliğinin en küçük d sayısı için gerçeklenene kadar hesaplamamız
gerekmektedir. Buradaki d tamsayısı g minimal polinomunun derecesidir ve
g(x) = (x − β)(x − β q ) . . . (x − β q
2
şeklindedir. {β, β q , β q , . . . , β q
d−1
d−1
)
} elemanları ise β ∈ Fqm elemanının Fq cismindeki farklı
kuvvetleri olup g polinomu bütün bu elemanlarla Fq cisminde bir minimal polinom olur.
Örnek 4.3.11. F16 cisminin bütün elemanlarının F2 cismindeki minimal polinomlarını
hesaplayalım. θ ∈ F16 elemanı F2 cisminde x4 + x + 1 primitif polinomunun bir kökü
olsun. Bu durumda F16 cisminin sıfırdan farklı her elemanı θ ∈ F16 elemanının bir kuvveti
81
şeklinde yazılabilir. Buradan
i θi
0 1
1 θ
2 θ2
3 θ3
4 1+θ
5 θ + θ2
6 θ2 + θ3
7 1 + θ + θ3
8 1 + θ2
9 θ + θ3
10 1 + θ + θ2
11 θ + θ2 + θ3
12 1 + θ + θ2 + θ3
13 1 + θ2 + θ3
14 1 + θ3
Böylece F2 cisminde F16 cisminin β elemanlarının minimal polinomları
β=0
için
g1 (x) = x
β=1
için
g2 (x) = x + 1
β=θ
için
θ elemanının F2 cismindeki farklı kuvvetleri {θ, θ2 , θ4 , θ8 } olup minimal polinom
g3 (x) = (x − θ)(x − θ2 )(x − θ4 )(x − θ8 ) = x4 + x + 1
olur.
β = θ3
için
82
θ3 elemanının F2 cismindeki farklı kuvvetleri {θ3 , θ6 , θ12 , θ24 = θ9 } olup minimal polinom
g4 (x) = (x − θ3 )(x − θ6 )(x − θ9 )(x − θ12 ) = x4 + x3 + x2 + x + 1
β = θ5
için
β 4 = β ve θ5 elemanının F2 cismindeki farklı kuvvetleri {θ5 , θ10 } olup minimal polinom
g5 (x) = (x − θ5 )(x − θ10 ) = x2 + x + 1
β = θ7
için
θ7 elemanının F2 cismindeki farklı kuvvetleri {θ7 , θ14 , θ28 = θ13 , θ56 = θ11 } olup minimal
polinom
g6 (x) = (x − θ7 )(x − θ11 )(x − θ13 )(x − θ14 ) = x4 + x3 + 1
Böylece bu elemanlarla F2 cisminden alınan katsayılarla F16 cisminin elemanları bitmiş
oldu.
Bu işlemler sırasında önemli bir problem primitif polinomların belirlenmesidir. Fq cisminde bütün primitif polinomların çarpımı e = q m − 1 olmak üzere m dereceli Qe dairesel
polinomuna eşittir. (Teorem 3.4.15(ii) ve Örnek 4.3.10) Buradan m dereceli Fq cismindeki
bütün primitif polinomlar Bölüm 5 deki Qe dairesel polinomunun çarpanlara ayrılması algoritmasıyla belirlidir.
Fqm cisminin bir primitif elemanını bulmak için diğer bir metot daha vardır. Ayrıca
bulunan bu primitif elemanın minimal polinomu yukarıdaki metotla belirlidir. Böylece
bu primitif elemana karşılık gelen primitif polinomu bulunabilir. F∗qm grubunda bir primitif
polinom bulmaya F∗qm çarpımsal grubunda q m − 1 mertebeli bir eleman bulmakla başlanır.
Burada {h1 , h2 , . . . , hk } aralarında asal pozitif tamsayılar olmak üzere
q m − 1 = h1 h2 . . . h k
83
şeklinde çarpanlara ayrılır. Eğer 1 ≤ i ≤ k aralığındaki ∀i için hi mertebeli bir αi ∈ F∗qm
elemanı bulunabilirse α1 α2 . . . αk çarpımı q m − 1 mertebeli olur ve bu durumda Fqm
cisminin bir primitif elemanı olur.
Örnek 4.3.12. F3 cismi üzerinde 4 üncü dereceden bir primitif polinom belirleyelim.
q m − 1 = 34 − 1 = 80 = 16.5
olur. Bu durumda F∗81 grubunda aralarında asal iki eleman 16 ve 5 elemanlarıdır.
16 mertebeli elemanlar
Y³
Q16 (x) =
´µ(d)
x16/d − 1
= x8 + 1 ∈ F3 [x]
d/16
dairesel polinomunun kökleridir. Ayrıca ord16 (3) = 4 elde edilir. Diğer taraftan Q16 (x)
dairesel polinomunun
Φ(n)/d = Φ(16)/4 = 2
eşitliğinden F3 [x] polinomlar halkasında 4 üncü dereceden 2 monik, asal polinoma sahip
olduğunu biliyoruz. Böylece
x8 + 1 = (x4 − 1)2 − x4
(x4 − 1 + x2 )(x4 − 1 − x2 )
olur. Burada f (x) = x4 − 1 − x2 polinomu F3 cisminde asaldır. Ayrıca f polinomunun
bir θ kökü F81 = F3 (θ) özelliğini sağlar. Yani F∗81 grubunun 16 mertebeli bir elemanı θ
elemanıdır.
Şimdi F∗81 grubunun 5 mertebeli bir α elemanını bulmalıyız. Buradaki α elemanı a, b, c, d ∈
F3 için
α = a + bθ + cθ2 + dθ3
84
şeklinde olup α10 = 1 eşitliğini sağlamak zorundadır. Böylece
1 = α9 α = (a + bθ9 + cθ18 + dθ27 )(a + bθ + cθ2 + dθ3 )
= (a − bθ + cθ2 − dθ3 )(a + bθ + cθ2 + dθ3 )
2
= (a + cθ2 ) − (bθ + dθ3 )
2
= a2 + (2ac − b2 )θ2 + (c2 − 2bd)θ4 − d2 θ6
= a2 + c2 − d2 + bd + (c2 + d2 − b2 − ac + bd)θ2
Burada katsayıların karşılaştırılmasından
a2 + c2 − d2 + bd = 1
c2 + d2 − b2 − ac + bd = 0
ve
olur. a = d = 0 için b2 = c2 = 1 alalım. b = c = 1 alındığında kolayca kontrol edilebilir ki
α = θ + θ2 olup 5 mertebelidir. Buradan
ξ = θα = θ2 + θ3
elemanı 80 mertebeli olur. Böylece ξ elemanı F81 cisminde bir primitif eleman olur. F3
cisminde ξ elemanının g minimal polinomu
g(x) = (x − ξ)(x − ξ 3 )(x − ξ 9 )(x − ξ 27 )
= (x − θ2 − θ3 )(x − 1 + θ + θ2 )(x − θ2 + θ3 )(x − 1 − θ + θ2 )
= x4 + x3 + x2 − x − 1
Bulunan g(x) polinomu 4 üncü dereceden F3 cismindeki bir primitif polinomdur.
Örnek 4.3.13. F2 cismi üzerinde 6 ncı dereceden bir primitif polinom belirleyelim.
q m − 1 = 26 − 1 = 63 = 9.7
85
olur. Bu durumda F∗64 grubunda aralarında asal iki eleman 9 ve 7 elemanlarıdır. Burada
ord9 (2) = 6 elde edilir.
9 mertebeli elemanları θ ile gösterirsek θ elemanları
Q9 (x) =
Y³
´µ(d)
x9/d − 1
= x6 + x3 + 1 ∈ F2 [x]
d/9
dairesel polinomunun kökleridirler ve F64 = F2 (θ) özelliğini sağlarlar. Ayrıca Q9 (x) dairesel polinomu F2 cisminde asaldır.
Diğer taraftan 7 mertebeli elemanları α ile gösterirsek α ∈ F∗64 olup α8 = α eşitliği
sağlanır. α elemanı θ cinsinden ifade edilebileceğinden α elemanını 0 ≤ i ≤ 5 ve ai ∈ F2
için
α=
5
X
ai θi
i=0
şeklinde yazabiliriz. Buradan
α =
5
X
i
ai θ =
5
³X
i=0
8
= a0 + a1 θ +
i=0
a2 θ 7
ai θ
i
´8
=
5
X
ai θ8i
i=0
6
+ a3 θ + a4 θ5 + a5 θ4
= a0 + a3 + a2 θ + a1 θ2 + a3 θ3 + (a2 + a5 )θ4 + (a1 + a4 )θ5
olur. Yukarıda katsayılar karşılaştırılırsa a3 = 0, a1 = a2 ve a4 = a2 + a5 elde edilir.
Ayrıca bu şartlar altında a0 = a3 = a4 = 0 ve a1 = a2 = a5 = 1 seçelim. Bu sonuçlar
sonucunda 7 mertebeli α elemanı
α = θ + θ2 + θ5
olur. Buradan
ξ = θα = 1 + θ2
86
elemanı F64 cisminin bir primitif elemanıdır. Böylece
ξ2
=
1 + θ4
ξ3
=
θ2 + θ3 + θ4
ξ4
=
1 + θ2 + θ5
ξ5
=
1 + θ + θ5
ξ6
=
1 + θ2 + θ3 + θ4 + θ5
elde edilir. Örnek 4.3.10 deki aynı metot uygulanarak ξ elemanının bir minimal polinomu
olan
g(x) = x6 + x4 + x3 + x + 1
polinomu bulunur. Bu g(x) polinomu 6 ncı dereceden bir primitif polinomdur.
Eğer Fq cisminde m dereceli g primitif polinomu bilinirse Fqm cisminde g polinomunun θ
kökünün bütün diğer primitif polinomları bilinir ve q m − 1 ile aralarında asal olan t ≤
q m − 1 değerleri için θt elemanlarının Fq cismindeki minimal polinomları belirlenebilir. Bu
bölümde minimal polinomları hesaplamakta kullandığımız metotları tanımladık. Şimdi
bir sonlu cisimdeki asal polinomun bir cisim genişlemesinde de asal olup olmadığına karar
vermek için kullanacağımız teoremi vereceğiz.
Teorem 4.3.14. k ∈ N olmak üzere f polinomu Fq cisminde n dereceli asal bir polinom
olsun. Bu durumda d = ebob(k, n) iken f polinomunun Fqk [x] polinomlar halkasındaki
n/d dereceli çarpanları d tane asal polinomdur. Özel olarak d = 1 için f polinomu Fqk
cisminde de asal olur (Niederreiter and Lidl 1984)
Sonuc. 4.3.15. Fq cisminde n dereceli asal bir polinomun Fqk cisminde de asal olması için
gerek ve yeter şart k ve n sayılarının da aralarında asal olmasıdır (Niederreiter and Lidl
1984)
Örnek 4.3.16. Örnek 4.3.13 den dolayı g(x) = x6 + x4 + x3 + x + 1 polinomu F2 cisminde
bir primitif polinomdur. Şimdi F16 cisminde nasıl bir polinom olduğuna bakalım. Teorem
87
4.3.14 daki notasyonu kullanabilmek için n, k, d değerlerini belirlemeliyiz. Burada n = 6,
k = 4 ve d = 2 dir. Buradan g polinomunun F16 cisminde iki kübik asal çarpanı vardır.
Örnek 4.3.13 deki notasyonu kullandığımızda g1 çarpanı ξ = 1 + θ2 köküne sahip olsun. g1
polinomunun F16 cisminde diğer kökleri ξ 16 ve ξ 256 = ξ 4 olmak zorundadır. Bu eşitlikler
F4 cisminde de sağlandığından g1 polinomu F4 cisminde de bir çarpandır. Ayrıca β = ξ 21
elemanı F2 cisminde birimin üçüncü primitif köküdür ve
F4 = {0, 1, β, β 2 }
olur. İlave olarak
g1 (x) = (x − ξ)(x − ξ 4 )(x − ξ 16 )
= x3 + (ξ + ξ 4 + ξ 16 )x2 + (ξ 5 + ξ 17 + ξ 20 )x + ξ 21
olur. Burada
ξ 4 = 1 + θ2 + θ5 ,
ξ 16 = 1 + θ5
ve
ξ + ξ 4 + ξ 16 = 1
dir. Basitçe söyleyebiliriz ki
ξ 5 + ξ 17 + ξ 20 = 1 ve
g1 (x) = x3 + x2 + x + β
olur. g polinomu g1 polinomunu bölmek zorunda olduğundan
³
´
g2 (x) = x3 + x2 + x + β 2
olmak üzere g(x) polinomu F4 [x] ve F16 [x] polinomlar halkasında
´
³
´³
g(x) = x3 + x2 + x + β x3 + x2 + x + β 2
şeklindedir. g polinomunun iki çarpanı da F4 cisminde primitiftir fakat F16 cisminde
primitif değillerdir. Sonuç 4.3.15 den g polinomu F2 cisminin diğer cisim genişlemelerinde
de asaldır. Örnek olarak F32 ve F128 cisimleri verilebilir (Niederreiter and Lidl 1984)
88
5
POLİNOMLARIN ÇARPANLARA AYRILMASI
Bir cisim üzerinde sabit olmayan bir polinom asal polinomların çarpımı şeklinde ifade
edilebilir. Sonlu bir cisimde verilen pozitif dereceli bir polinomu asal polinomların çarpımı
cinsinden düzenleyen makul ölçülerde verimli bazı algoritmalar vardır.
Sonlu cisim üzerinde polinomlar için uygulanabilir çarpanlara ayırma algoritmalarının
elde edilebilmesi kodlama teorisi ve sonlu cisimlerde çok önemlidir. Sonlu cisimlerin alanı
dışında cebirde çeşitli hesaplanabilir problemlerde ve sayılar teorisinde sonlu cisimlerde
polinomların çarpanlara ayrılmasına güvenilmektedir. Biz tamsayılar halkasında, cebirsel
sayı cisimlerinde rasyonel asalların ayrışmasının belirlenmesinde, rasyoneller üzerinde devirli grupların bir eşitinin hesaplanmasında ve cisim genişlemelerin inşasında polinomların
çarpanlara ayrılmasından sözedeceğiz. Benzer yöntemler çok değişkenli ve cebirsel katsayılı polinomlar için de yapılabilir.
Şimdi sonlu cisimlerde polinomların çarpanlara ayrılması için birkaç algoritma vermeliyiz.
Bir belirli çarpanlara ayırma problemi için algoritmanın seçimindeki karar genellikle sonlu
cismin büyük veya küçük olup olmadığı temeline bağlıdır. Birinci bölümde küçük sonlu
cisimlere daha iyi uyarlanabilen algoritmaları tanımlayacağız. İleriki bölümde ise büyük
sonlu cisimler için daha iyi çalışan algoritmaları göreceğiz. Algoritmaların bazıları polinomları çarpanlara ayırma problemini indirgeyerek belirli diğer polinomların köklerini
bulmaya yönelik olacaktır.
5.1
Küçük Sonlu Cisimlerde Çarpanlara Ayırma
f ∈ Fq [x] pozitif dereceli keyfi polinomunun Teorem 3.1.4 den bir kanonikal gösterime
sahip olduğunu biliyoruz. Çarpanlara ayırma algoritmalarında sadece monik polinomları
gözönüne alacağız.
89
Böylece bizim hedefimiz pozitif dereceli belirli bir f ∈ Fq [x] monik polinomunu f1 , f2 , . . . , fk ∈
Fq [x] farklı, monik ve asal polinomlar olmak üzere e1 , e2 , . . . , ek ∈ Z+ için
f = f1e1 f2e2 . . . fkek
(9)
şeklinde yazmak olacaktır.
Burada problemi basitleştirebilmek için ilk olarak yapacağımız işlem f polinomunu katlı
bir köke sahip olmayacak şekilde indirgemektir. Bu ise (9) eşitliğindeki e1 , e2 , . . . , ek ∈ Z+
kuvvetlerinin 1 e eşit olması anlamına gelir. Bu işlemler sonucunda katlı kökü olmayan
polinomlar için bulduğumuz algoritmayı katlı kökü olan her monik polinom için kullanabileceğiz. Bir f polinomunun katlı bir köke sahip olup olmadığını bilebilmek için öncelikle
f (x) polinomu ile f (x) polinomunun türevi olan f 0(x) polinomunun Euclidean Algoritmasıyla en büyük ortak bölenleri hesaplanır. Bu durumda
d(x) = ebob(f (x), f 0(x))
olsun. Burada eğer
d(x) = 1 ise Teorem 3.1.10 den dolayı f (x) polinomu tekrar eden bir köke sahip değildir.
Yani f (x) polinomunun katlı bir kökü yoktur. Eğer
d(x) = f (x) ise f 0(x) = 0 olmak zorundadır. f 0(x) = 0 olması Fq cisminin karakteristiği
p olarak alındığında g ∈ Fq [x] için f (x) polinomunun
f (x) = g(x)p
şeklinde olduğu anlamına gelmektedir. Bu durumda eğer gerekirse indirgeme işlemi g(x)
polinomuna yapılır. Eğer
d(x) 6= 1 ve d(x) 6= f (x) ise d(x) polinomu f (x) polinomunun aşikar olmayan bir
çarpanıdır ve bu halde f (x) polinomunun çarpanlara ayrılması d(x) ve f (x)/d(x) polinomlarının ayrı ayrı çarpanlara ayrılmasıyla bulunur. Bu durumda f (x)/d(x) polinomu tekrarlayan bir çarpana sahip değildir. Fakat d(x) polinomunun hala tekrarlayan çarpanları
90
olabilir. Böylece d(x) polinomuna, katlı köke sahip olmayacak şekilde indirgeme işlemleri
yapılır. Bu işlemleri yapabilmek için önce d(x) polinomunun türevi hesaplanır. Burada
k(x) = ebob(d(x), d 0 (x))
olduğunda
k(x) = 1 ise d(x) polinomu tekrar eden bir köke sahip değildir. Yani d(x) polinomunun
katlı bir kökü yoktur. Eğer
k(x) = d(x) ise d 0 (x) = 0 olmak zorundadır. d 0 (x) = 0 olması Fq cisminin karakteristiği
p olarak alındığında s ∈ Fq [x] için d(x) polinomunun
d(x) = s(x)p
şeklinde olduğu anlamına gelmektedir. Bu durumda eğer gerekirse indirgeme işlemi s(x)
polinomuna yapılır. Eğer
k(x) 6= 1 ve k(x) 6= d(x) ise k(x) polinomu d(x) polinomunun aşikar olmayan bir çarpanıdır
ve bu halde d(x) polinomunun çarpanlara ayrılması k(x) ve d(x)/k(x) polinomlarının ayrı
ayrı çarpanlara ayrılmasıyla bulunur. Bu durumda d(x)/k(x) polinomu tekrarlayan bir
çarpana sahip değildir fakat k(x) polinomunun hala tekrarlayan çarpanları olabilir. Bundan sonra k(x) polinomunun tekrarlayan çarpana sahip olmaması için aynı indirgeme
işlemleri k(x) polinomunun kendisine yapılır. Böylece yapacağımız sonlu sayıda işlemler
sonucunda f (x) polinomu tekrar etmeyen çarpanlar cinsinden yazılmış olacak. Bu durumda ise f (x) polinomunu çarpanlara ayırmak için tekrar etmeyen polinomlar için bulunmuş algoritmaları kullanabileceğiz.
Teorem 5.1.1. Eğer f ∈ Fq [x] monik polinomu için bir h ∈ Fq [x] polinomu
hq ≡ h mod f (x)
ifadesini sağlıyor ise
f (x) =
Y
ebob(f (x), h(x) − c)
(10)
c ∈ Fq
91
dir (Niederreiter and Lidl 1984)
Genelde (10) eşitliği f (x) polinomunun tam olarak çarpanlara ayrılmasını vermez. Yani
ebob(f (x), h(x) − c) polinomları asal olmayabilir. Ayrıca bazı c ∈ Fq için
h(x) ≡ c mod f (x)
ise Teorem 5.1.1 deki ifade f (x) polinomunun aşikar çarpanını verir. Bu yüzden f (x)
polinomunun çarpanlara ayrılmasında kullanılamaz. Bununla birlikte
h(x) 6≡ c mod f (x)
ise h polinomu f (x) polinomunun aşikar olmayan bir çarpanıdır. Böylece
hq ≡ h mod f (x) ve 0 < deg(h) < deg(f )
şartlarını sağlayan keyfi h polinomu bir f -indirgeyici polinom olur. Bu durumda f polinomunun indirgeyici polinomları oluşturma yöntemlerini bulabilmek için Teorem 5.1.1 e
dayanan bir algoritma bulmalıyız. Diğer taraftan Teorem 5.1.1 deki (10) algoritması için
q tane en büyük ortak bölen bulacağımızdan bu formülün direkt uygulaması Fq küçük
sonlu cisimleri için mümkündür.
f -indirgeyici polinomların inşasının ilk metodu polinomlar için Çin Kalan Teoreminin kullanılmasıyla yapılır. f polinomunu tekrar etmeyen polinomların bir çarpımı olarak alırsak
f = f1 f2 . . . f k
polinomu Fq cisminde farklı, monik, asal polinomların çarpımı olur. Eğer
c1 , c 2 , . . . , c k
elemanları Fq cisminde iseler Çin Kalan Teoremi, 1 ≤ i ≤ k için deg(h) < deg(f )
olduğunda
h(x) ≡ ci mod fi (x)
92
ifadesini gerçekleyen h ∈ Fq [x] polinomlarının tek olarak belirli olduğunu söyler. h(x)
polinomu 1 ≤ i ≤ k için
h(x)q ≡ ci q = ci ≡ h(x) mod fi (x)
ifadesini sağlar. Ayrıca deg(h) < deg(f ) için
hq ≡ h mod f
(11)
dir. Diğer taraftan eğer h polinomu (11) ifadesinin bir çözümü ise
h(x)q − h(x) =
Y
(h(x) − c)
c∈Fq
ifadesini gerçekler. Bu da gösterir ki f polinomunun her asal çarpanı (h(x) − c) polinomlarından birini böler. Böylece (11) ifadesinin bütün çözümleri 1 ≤ i ≤ k olduğunda Fq
cisminin bazı (c1 , c2 , . . . , ck ) elemanları için
h(x) ≡ ci mod fi (x)
denkliğini sağlar. Buradan (11) ifadesinin q k tane çözümü vardır. (11) ifadesinin bütün
çözümlerini bulabilmek için sistemi lineer bir sisteme dönüştürürüz. Bu durumda n =
deg(f ) olmak üzere 1 ≤ i, j ≤ n − 1 için n × n tipinde
B = (bij )
matrisini inşa ederek
xiq mod f (x)
kuvvetlerini hesaplamalıyız. Özel olarak 1 ≤ i ≤ n − 1 için
iq
x ≡
n−1
X
bij xj mod f (x)
(12)
j=0
alalım. Bu sonuç altında
h(x) = a0 + a1 x + . . . + an−1 xn−1 ∈ Fq [x]
93
polinomunun (11) ifadesinin bir çözümü olabilmesi için gerek ve yeter şart
(a0 , a1 , . . . , an−1 )B = (a0 , a1 , . . . , an−1 )
(13)
olmasıdır. Böylece (13) eşitliği sağlandığında
h(x) =
n−1
X
j=0
=
n−1
X
j
aj x =
n−1 X
n−1
X
j=0
ai bij xj
i=0
ai xiq = h(x)q mod f (x)
i=0
(13) eşitliğinden Fq cisminde In×n birim matrisi için
(a0 , a1 , . . . , an−1 )(B − I) = (0, 0, . . . , 0)
(14)
yazabiliriz. Böylece (14) sisteminin q k tane çözümü vardır ve (B − I) matrisinin sıfırlık
uzayının boyutu k olup bu değer f polinomunun farklı, monik ve asal çarpanlarının
sayısıdır. Ayrıca rank(B − I) = n − k olur. Açık bir şekilde h1 (x) = 1 sabit polinomu (11) ifadesinin her zaman bir çözümüdür ve (1, 0, . . . , 0) vektörü (14) sisteminin bir
çözümüdür.
h1 (x), h2 (x), . . . , hk (x)
polinomlarına karşılık gelen vektörler (B−I) matrisinin sıfırlık uzayı için birer baz olduğunda
derecesi n − 1 den küçük olan
h2 (x), h3 (x), . . . , hk (x)
polinomları varolacaktır. h2 (x), h3 (x), . . . , hk (x) polinomları pozitif derecelidir ve böylece
f −indirgeyici polinomlardır.
94
Bu yaklaşımda (B − I) matrisinin rankının bulunması önemlidir.
rank(B − I) = r
bilindiğinde n − r değeri f polinomunun farklı, monik, asal çarpanlarının sayısını verir.
Bu bilgiyle çarpanlara ayırma işleminin ne zaman sonlandırılacağına karar verebiliriz.
rank(B − I) = r bulunduğunda k = n − r olsun.
Burada eğer k = 1 ise f polinomu Fq cisminde asaldır. Böylece çarpanlara ayırma işlemi
sonlandırılır. Bu durumda (11) ifadesinin çözümleri sadece sabit polinomlardır ve (B − I)
matrisinin sıfırlık uzayı c ∈ Fq için
(c, 0, . . . , 0)
şeklindeki vektörlerdir.
Eğer k ≥ 2 ise h2 (x) baz polinomu f −indirgeyici polinom olarak alınır ve ∀c ∈ Fq için
ebob(f (x), h2 (x) − c)
değeri hesaplanır. Sonuçta (10) ifadesi ile f polinomunun aşikar olmayan bir çarpanı
bulunur.
Eğer h2 (x) polinomunu kullanarak f (x) polinomunun k çarpanını bulmayı başaramazsak
∀c ∈ Fq için
ebob(g(x), h3 (x) − c)
değerlerini hesaplarız ve g(x) polinomunun aşikar olmayan bütün çarpanlarını bulana
kadar hesaplama işlemine devam ederiz. Bu hesaplamalar f (x) polinomunun k çarpanı
olana kadar devam edilir.
Yukarıdaki işlemlerin tamamından bütün çarpanlar ergeç bulunmak zorundadır. Eğer
f (x) polinomunun f1 (x) ve f2 (x) gibi iki farklı, monik, asal çarpanını gözönüne alırsak
(11) ifadesindeki iddia ile 1 ≤ j ≤ k için
hj (x) ≡ cj1 mod f1 (x) ve hj (x) ≡ cj2 mod f2 (x)
ifadelerini gerçekleyen cj1 , cj2 ∈ Fq elemanları vardır. Farzadelimki 1 ≤ j ≤ k için cj1 = cj2
olsun. (11) ifadesinin keyfi bir çözümü h(x) olduğunda, h(x) polinomu Fq cismindeki
95
katsayılar kullanılarak
h1 (x), h2 (x), . . . , hk (x)
polinomlarının lineer bir kombinasyonu şeklinde yazılabilir. Bu durumda h(x) çözümü
c ∈ Fq için
h(x) ≡ c mod f1 (x) ve h(x) ≡ c mod f2 (x)
olur. Fakat (11) ifadesindeki tartışma h(x) çözümünün
h(x) ≡ 0 mod f1 (x) ve h(x) ≡ 1 mod f2 (x)
ifadelerini sağladığını gösterir. Bu çelişkiden dolayı 1 ≤ j ≤ k için cj1 6= cj2 olur.
(Gerçekte h1 (x) = 1 olduğundan j ≥ 2 alırız.) Bu yüzden hj (x) − cj1 polinomu f1 (x)
ile bölünebilir fakat f2 (x) ile bölünemez. Bu sebepten f (x) polinomunun keyfi iki farklı,
monik, asal çarpanları bazı hj (x) polinomları ile farklıdır. Bu temel çarpanlara ayırma
algoritması (14) sisteminin çözümleri ile f −indirgeyici polinomları belirler ve Berlekamp’s
Algoritması diye adlandırılır.
Örnek 5.1.2. f (x) = x8 + x6 + x4 + x3 + 1 ∈ F2 [x] polinomunu Berlekamp’s Algoritması
ile çarpanlara ayıralım. ebob(f (x), f (x)0 ) = 1 olduğundan f (x) polinomu tekrar eden bir
çarpana sahip değildir. Bu durumda q = 2 ve 0 ≤ i ≤ 7 için
xiq mod f (x)
değerlerini hesaplamalıyız.
x0
≡
1
x2
≡
x2
x4
≡
x4
x6
≡
x6
x8
≡
x6 + x4 + x3 + 1
x10
≡
x5 + x4 + x3 + x2 + 1
x12
≡
x7 + x6 + x5 + x4 + x2
x14
≡
x5 + x4 + x3 + x + 1
96
Bu durumda 8 × 8 lik B matrisi


B =



















1 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0
0 0 0 0 1 0 0 0
0 0 0 0 0 0 1 0
1 0 0 1 1 0 1 0
1 0 1 1 1 1 0 0
0 0 1 0 1 1 1 1



















1 1 0 1 1 1 0 0
ve 8 × 8 lik (B − I) matrisi










(B − I) = 










0 0 0 0 0 0 0 0
0 1 1 0 0 0 0 0
0 0 1 0 1 0 0 0
0 0 0 1 0 0 1 0
1 0 0 1 0 0 1 0
1 0 1 1 1 0 0 0
0 0 1 0 1 1 0 1



















1 1 0 1 1 1 0 1
dir. (B − I) matrisi için rank(B − I) = 6 olur ve (1, 0, 0, 0, 0, 0, 0, 0) ile (0, 1, 1, 0, 0, 1, 1, 1)
vektörleri (B − I) matrisinin sıfırlık uzayının birer bazıdırlar. Bu vektörlere karşılık gelen
polinomlar
h1 (x) = 1
ve
h2 (x) = x + x2 + x5 + x6 + x7
polinomlarıdır. Şimdi Euclidean Algoritmasıyla c ∈ F2 değerleri için
ebob(f (x), h2 (x) − c)
ifadelerini hesaplamalıyız. Buradan
ebob(f (x), h2 (x))
=
x6 + x5 + x4 + x + 1
ebob(f (x), h2 (x) − 1)
=
x2 + x + 1
97
dir. Böylece
f (x) = (x6 + x5 + x4 + x + 1)(x2 + x + 1)
dir (Niederreiter and Lidl 1986)
f −indirgeyici polinomları bulmanın ikinci bir yöntemi aralarında en az bir f −indirgeyici
polinomun bulunabileceği bir polinom ailesinin oluşturulmasına dayanır. f yine n dereceli
tekrar etmeyen çarpanlı monik bir polinom olsun.
f = f1 f2 . . . fk ∈ Fq [x]
polinomlar halkasında 1 ≤ j ≤ k olmak üzere n := deg(fj ) şeklinde bir çarpanlara ayrılış
olsun. Eğer N sayısı
N
xq ≡ x mod f (x)
denkliğini sağlayan en küçük pozitif tamsayı ise Teorem 4.2.1 den dolayı dereceleri N yi
bölen bütün monik, asal polinomların çarpımının
N
xq − x
olduğunu biliyoruz. Bu durumda
N
xq ≡ x mod f (x)
denkliğini sağlayan en küçük pozitif tamsayının
N = ekok(n1 , n2 , . . . , nk )
olduğunu söyleyebiliriz. Yine buradan açık olarak görülürki [F : Fq ] = N dir. Yani N
sayısı f polinomunun Fq cismi üzerindeki F parçalanış cisminin derecesidir. Şimdi bu
sonuçlar ışığı altında T ∈ Fq [x] polinomu (i = 0, 1, 2, . . . ) için
2
T (x) := x + xq + xq + . . . + xq
N −1
ve
Ti (x) = T (xi )
şeklinde tanımlansın. Bu durumda aşağıdaki sonuç f polinomunun asal olmaması durumunda Ti polinomları arasında f −indirgeyici polinom olabileceğini garanti eder.
98
Teorem 5.1.3. Eğer f polinomu Fq [x] polinomlar halkasında asal olmayan bir polinom
ise Ti polinomlarının en az biri f −indirgeyici polinomdur (Niederreiter and Lidl 1986)
Örnek 5.1.4. f (x) = x17 +x14 +x13 +x12 +x11 +x10 +x9 +x8 +x7 +x5 +x4 +x+1 ∈ F2 [x]
polinomunu gözönüne alalım. Bu durumda ebob(f (x), f 0 (x)) = x10 + x8 + 1 olup
f0 (x) =
f (x)
= x7 + x5 + x4 + x + 1
ebob(f (x), f 0 (x))
ifadesi tekrar etmeyen çarpanlara sahiptir. f0 çarpanı yukarıdaki tanımdan bir f0 −indirgeyici
polinom ile bulunabilir. Bu durumda
N
x2 ≡ x mod f0 (x)
denkliğini sağlayan en küçük pozitif tamsayı olan N yi bulabilmek için
x, x2 , x4 , . . . mod f0 (x)
ifadelerini hesaplamalıyız. Burada ifadeyi hesaplayabilmek için
Pn−1
i=0
ai xi polinomunu
sadece katsayıları yazarak göstereceğiz. Örneğin
f0 (x) = x7 + x5 + x4 + x + 1
polinomunu
f0 (x) = 11001101
şeklinde alacağız. Diğer taraftan N yi bulabilmemiz için gerekli olan
x, x2 , x4 , . . . mod f0 (x)
ifadelerini hesaplayabilmenin daha kolay olduğu bir yöntem kullanacağız. Bu yöntemde
x0 , x2 , x4 , . . . , x12 mod f0 (x)
99
çift kuvvetlerinin 7 × 7 matrisi ile a0 , a1 , . . . , a6 vektörü çarpılır. Bu durumda
x0
≡
1000000
x2
≡
0010000
x4
≡
0000100
x6
≡
0000001
x8
≡
0110011
x10
≡
1011001
x12
≡
0100101
7 × 7 matrisini a0 , a1 , . . . , a6 vektörü ile çarparsak

1 0


 0 0


 0 0


(a0 , a1 , a2 , a3 , a4 , a5 , a6 )  0 0


 0 1


 1 0

0 1

0 0 0 0 0
1 0 0 0 0
0 0 1 0 0
0 0 0 0 1
1 0 0 1 1
1 1 0 0 1
















0 0 1 0 1
= (a0 + a5 , a4 + a6 , a1 + a4 + a5 , a5 , a2 + a6 , a4 , a3 + a4 + a5 + a6 )
elde edilir. Böylece
x
≡
0100000
x2
≡
0010000
x4
≡
0000100
x8
≡
0110011
x16
≡
1101000
x32
≡
1010001
x64
≡
1100001
x128
≡
1110101
x256
≡
1000010
x512
≡
0011001
x1024
≡
0100000
100
Sonuçta 2N = 1024 olup N = 10 bulunur. Buradan
T1 (x) =
9
X
j
x2 = 1110001 mod f0 (x)
j=0
olur. T1 (x) polinomu modf0 (x) de bir sabite denk olmadığından f0 −indirgeyici bir polinom olur. Böylece
ebob(f0 (x), T1 (x)) = ebob(11001101, 1110001) = x5 + x4 + x3 + x2 + 1
ve
ebob(f0 (x), T1 (x) − 1) = ebob(11001101, 0110001) = x2 + x + 1
elde edilir ve bu durumda
f0 (x) = (x5 + x4 + x3 + x2 + 1)(x2 + x + 1)
olur. F2 cismi üzerinde x2 + x + 1 polinomunun asal olduğunu biliyoruz. Diğer taraftan
N = 10 sayısının f0 (x) polinomunun asal çarpanlarının derecelerinin en küçük ortak
katına eşit olduğunu biliyoruz. Bu durumda N = 10 olabilmesi için x5 + x4 + x3 + x2 + 1
polinomu da F2 cismi üzerinde asal olur.
Şimdi
ebob(f (x), f 0 (x)) = x10 + x8 + 1
polinomunu asal çarpanlarına ayıralım. F2 cismi üzerinde
x10 + x8 + 1 = (x5 + x4 + 1)
2
olduğunu biliyoruz. Ayrıca kontrol ettiğimizde x5 +x4 +1 polinomunun f0 (x) polinomunun
asal çarpanlarından biriyle bölünebildiğini görürüz. Böylece
x5 + x4 + 1 = (x3 + x + 1)(x2 + x + 1)
olur. x3 + x + 1 polinomu F2 cismi üzerinde asaldır. Buradan
2
f (x) = (x5 + x4 + x3 + x2 + 1)(x3 + x + 1) (x2 + x + 1)
dir (Niederreiter and Lidl 1986)
101
3
Dikkat edilmelidir ki genel olarak Ti , f −indirgeyici polinomları f polinomunun tam
olarak çarpanlara ayrılışını vermez. Çünkü N /nj değeri Fq cisminin karakteristiği ile
bölünebildiğinde Ti polinomları fj asal çarpanlarına ayrılamaz. Pratikte bununla birlikte
ilk f −indirgeyici polinom olan Ti hesaplanır. Daha sonra bulunan çarpan sonuçlarının
herbiri için yeni Ti değerleri hesaplanır. Bu yolla er-geç f polinomunun çarpanlara ayrılışı
tamamlanır.
Bununla birlikte f polinomunun bütün asal çarpanlarını bir defasında bulabilen Ri polinomlarının kümesini bulmak mümkündür. Kabul edebiliriz ki genel durumda bir kayıp
olmaksızın f (0) 6= 0 ve ord(f (x)) = e olsun. Bu durumda mertebe tanımından
¯
¯
f (x) ¯ xe − 1
olur. Diğer taraftan f polinomu tekrarlanan çarpanlara sahip değildir. Ayrıca Teorem
4.1.9 ve Sonuç 4.1.4 den e ve q sayıları aralarında asaldır. Şimdi herbir i ≥ 0 için mi sayısı
xiq
mi
≡ xi mod f (x)
(15)
ifadesini sağlayan en küçük tamsayı olarak tanımlansın. Ayrıca
2
Ri (x) := xi + xiq + xiq + . . . + xiq
mi −1
şeklinde alınsın. Bu durumda (15) ifadesinden ve mertebe tanımından
iq mi ≡ i mod (e)
(16)
elde edilir. Böylece (16) ifadesinden
³
´
q mi ≡ 1 mod e/ebob(e, i)
³
´
olur. Bu ise mi değerinin mod e/ebob(e, i) ye göre q nun çarpım mertebesi olduğunu
gösterir. Burada Ti ve mi ifadelerinin tanımlarını Ri nin tanımı ile karşılaştırırsak
Ti (x) =
N
Ri (x) mod f (x)
mi
102
elde ederiz. Diğer taraftan her i değeri için
Riq ≡ Ri mod f (x)
olduğunu biliyoruz. Bu durumda bütün Ri polinomları Teorem 5.1.1 deki
f (x) =
Y
ebob(f (x), h(x) − c)
c ∈ Fq
ifadesinde hi nin yerine konulursa f polinomu tamamen çarpanlara ayrılmış olur. Şimdi
Ri polinomlarının f polinomunu tamamen çarpanlara ayırabileceğini gösteren teoremi
vereceğiz.
Teorem 5.1.5. f ∈ Fq [x] polinomu f (0) 6= 0 ve ord(f ) = e olduğunda monik ve asal
olmayan bir polinom olsun. Ayrıca f polinomu tekrarlayan çarpanlara sahip olmasın. Bu
durumda 1 ≤ i ≤ e − 1 için bütün Ri polinomları (10) ifadesinde kullanılırsa f polinomu
tamamen çarpanlara ayrılmış olur (Niederreiter and Lidl 1986)
Ri polinomlarının herbirini hesaplayabilmek için her defasında
³
´
q mi ≡ 1 mod e/ebob(e, i)
denkliğinden yeni bir mi değeri buluruz. Bu mi değerini belirleyebilmemiz için mertebe
olan e değerini bilmemiz gerekmektedir. Fakat e değerinin direkt hesaplanması çok zaman
alan bir işlemdir.
Oysa bu problem
f (x) = xe − 1
ve
f (x) = Qe (x)
gibi özel durumlarda ortaya çıkmayacaktır. Burada Qe (x) polinomu e inci dairesel polinomu gösterdiğinden
ord(xe − 1) = ord(Qe (x)) = e
ifadesi gerçeklenir. Bu yüzden Ri polinomları dairesel ve binom polinomları için çarpanlara
ayırmada uygundur.
103
Örnek 5.1.6. Q52 (x) ∈ F3 [x] dairesel polinomunun çarpanlara ayrılmasını bulalım. Teorem 4.2.8 den
(x52 − 1)(x2 − 1)
(x26 − 1)(x4 − 1)
= x24 − x22 + x20 − x18 + x16 − x14 + x12 − x10 + x8 − x6 + x4 − x2 + 1
Q52 (x) =
olur. Ayrıca e = 52 için
m1
3
³
´
≡ 1 mod 52/ebob(52, 1)
ifadesinden m1 = 6 elde edilir. Yani
ord52 (3) = 6 = m1
dir. Buradan
R1 (x) = x + x3 + x9 + x27 + x81 + x243
olur. Diğer taraftan
x24 ≡ x22 − x20 + x18 − x16 + x14 − x12 + x10 − x8 + x6 − x4 + x2 − 1 mod Q52 (x)
denkliğinden x26 ≡ −1 mod Q52 (x) elde edilir. Böylece
R1 (x) = x + x3 + x9 + x27 + x81 + x243
= x + x3 + x9 + x26 x + x78 x3 + x234 x9
olduğundan R1 (x) ≡ 0 mod Q52 (x) elde edilir. Bu durumda R1 (x) polinomu Q52 −indirgeyici
polinom değildir. Şimdi
m2
3
³
´
≡ 1 mod 52/ebob(52, 2)
ifadesinden ord26 (3) = 3 = m2 elde edilir. Bu durumda
R2 (x) = x2 + x6 + x18
104
olur. Böylece (10) ifadesinden
ebob(Q52 (x), R2 (x))
=
x6 − x2 + 1
ebob(Q52 (x), R2 (x) + 1)
=
x6 + x4 − x2 + 1
ebob(Q52 (x), R2 (x) − 1)
=
x12 + x10 − x8 + x6 + x4 + x2 + 1 = g(x)
ifadeleri için
Q52 (x) = (x6 − x2 + 1)(x6 + x4 − x2 + 1)g(x)
olur. Diğer taraftan Teorem 3.4.15(ii) deki ifadeden dolayı Q52 (x) polinomu F3 cismi
üzerinde Φ(52)/6 = 4 (Φ− Euler fonksiyonu) tane 6 ıncı dereceden asal çarpandan oluşur.
Böylece g(x) polinomunun hala asal olmadığını ve çarpanlara ayrılabileceğini görürüz. Bu
durumda
³
´
3m3 ≡ 1 mod 52/ebob(52, 3)
ifadesinden ord52 (3) = 6 = m3 olup
R3 (x) = x3 + x9 + x27 + x81 + x243 + x729
dir. Ayrıca x26 ≡ −1 mod Q52 (x) olduğundan
R3 (x) ≡ 0 mod Q52 (x)
elde edilir. Şimdi R4 (x) için
³
´
3m4 ≡ 1 mod 52/ebob(52, 4)
ifadesinden ord13 (3) = 3 = m4 olur ve
R4 (x) = x4 + x12 + x36
dir. Diğer taraftan
x12 ≡ −x10 + x8 − x6 − x4 − x2 − 1 mod g(x)
ve
x36 ≡ −x10 mod g(x)
olduğundan
R4 (x) ≡ x10 + x8 − x6 − x2 − 1 mod g(x)
105
elde edilir. Böylece (10) ifadesinden
ebob(g(x), R4 (x))
= ebob(g(x), x10 + x8 − x6 − x2 − 1) = 1
ebob(g(x), R4 (x) + 1) = ebob(g(x), x10 + x8 − x6 − x2 )
= x6 − x4 + x2 + 1
ebob(g(x), R4 (x) − 1) = ebob(g(x), x10 + x8 − x6 − x2 + 1) = x6 − x4 + 1
ifadeleri için
Q52 (x) = (x6 − x2 + 1)(x6 + x4 − x2 + 1)(x6 − x4 + x2 + 1)(x6 − x4 + 1)
dir. Bu ise Q52 (x) polinomunun asal çarpanlarına ayrılmış şeklidir (Niederreiter and Lidl
1986)
5.2
Büyük Sonlu Cisimlerde Çarpanlara Ayırma
Eğer Fq sonlu cismindeki q sayısı büyük bir sayı olursa önceki bölümdeki metotların
pratikte yerine getirilmesi daha güç olacaktır. Bir f −indirgeyici polinomu makul bir
çaba ile bulabiliriz. Fakat bir direkt uygulamada (10) ifadesindeki temel formüle göre
q tane en büyük ortak bölen bulma işleminde problem ortaya çıkacaktır. Bu yüzden
büyük sonlu cisimler için f −indirgeyici polinomların kullanımını mümkün kılmalıyız. Bu
durumda mecburi olarak (10) ifadesindeki en büyük ortak bölenleri hesaplamada gerekli
olan c ∈ Fq elemanlarının sayısını azaltan bir metot tasarlamalıyız. Bu bağlamda eğer
q değeri polinomun derecesinden daha büyük bir sayı ise çarpanlara ayırma işleminde
Büyük Cisim olarak gözönüne alınacak.
Şimdi f polinomu yine Fq [x] polinomlar halkasında monik ve tekrar etmeyen çarpanlardan
oluşan bir polinom olsun. deg(f ) = n için f polinomunun farklı, monik, asal çarpanlarının
sayısı k ile gösterilsin. Ayrıca h ∈ Fq [x] için
hq ≡ h mod f
ve
0 < deg(h) < n
sağlansın. Bu durumda h polinomu bir f −indirgeyici polinomdur. Diğer taraftan (10)
ifadesindeki bazı ortak bölenler aralarında asal olacaktır. Açıkça görülebilir ki f polinomunun farklı, monik, asal çarpanlarının sayısı k olduğundan en fazla k tane en büyük
106
ortak bölen 1 den farklı olacaktır. Böylece problem
ebob(f (x), h(x) − c) 6= 1
ifadesini sağlayan c ∈ Fq elemanlarını önceden belirleme işlemine indirgenir.
Tanım 3.2.15 ve onu takip eden açıklamalardaki teori kullanılarak önceden belirleme işlemi
bulunabilir. Önceden belirleme işlemini bulabilmek için iki polinomun resultandından faydalanacağız. f (x) ve h(x) − c polinomlarının resultandını R(f (x), h(x) − c) ile gösterelim.
Resultant tanımından biliyoruz ki
ebob(f (x), h(x) − c) 6= 1 ⇔ R(f (x), h(x) − c) = 0
ifadesi gerçeklenir. Şimdi
F (y) := R(f (x), h(x) − y)
polinomunu gözönüne alalım. Resultant tanımından dolayı deg(y) ≤ n olur. Ayrıca
burada
ebob(f (x), h(x) − c) 6= 1 ⇔ F (y)
polinomunun bir kökü Fq cisminde c elemanıdır.
F (y) polinomu mertebesi 2n−1 veya 2n−1 den küçük olan bir determinantın tanımından
hesaplanabilen bir polinom olarak değerlendirilebilir. Bununla birlikte takip eden metot
bir çok durumda tercih edilebilir.
İlk olarak Fq cisminde n + 1 tane farklı c0 , c1 , . . . , cn ∈ Fq eleman seçilir. İkinci olarak
0 ≤ i ≤ n değerleri için
ri := R(f (x), h(x) − ci )
resultantları hesaplanır. Bu sonuçlardan sonra Lagrange Interpolasyon Formülünde F (ci ) =
ri değerlerinden derecesi ≤ n eşitsizliğini sağlayan F (y) polinomu bulunabilir. Burada bazı
ri değerleri sıfır ise F (y) polinomunun bazı sıfırlarını direkt olarak bulmuş olacağımızdan
bizim için avantajlı bir durum sözkonusu olur. Yani bu durumda Fq cisminde F (y) polinomunun kökleri otomatik olarak ele alınır. Böylece ebob(f (x), h(x) − c) 6= 1 ifadesini
sağlayan c ∈ Fq elemanlarının belirlenmesi sorusu şimdi artık belli bir oranda Fq cisminde
107
F (y) polinomunun köklerini bulma problemine indirgenmiş olur. Kök bulma yöntemi bir
sonraki kısımda incelenecektir.
Örnek 5.2.1. F23 cismi üzerinde
f (x) = x6 − 3x5 + 5x4 − 9x3 − 5x2 + 6x + 7
polinomunu asal çarpanlarına ayıralım. ebob(f (x), f 0 (x)) = 1 olduğundan f (x) polinomu
tekrarlayan bir çarpana sahip değildir. Bu durumda Berlekamp’s Algoritmasıyla 0 ≤ i ≤ 5
değerleri için
x23i mod f (x)
ifadesini hesaplayacağız. Bunun sonucunda 6 × 6 tipinde

1
0
0
0
0



5
0
−1
8
−3


 −10
10
10
0
1
B = 


0
7
9
−8
10


 11
0
−4
7
7

−3
0
− 10
9
2
matrisi elde edilir ve bu durumda

0
0



5
−1


 −10
10
B−I=


0
7


 11
0

−3
0

0
− 10
−9
− 11
2













−9

0
0
0
0
−1
8
−3
− 10
9
0
1
−9
9
−9
10
− 11
−4
7
6
2
− 10
9
2
− 10













dir. B − I matrisi eşelon forma konulduğunda rank(B − I) = rank(r) = 3 olur. Böylece
f (x) polinomu F23 cismi üzerinde k = 6 − r = 3 farklı asal çarpana sahiptir. B − I
matrisinin sıfırlık uzayı için
h1 (x) = 1
h2 (x) = x3 + 2x2 + 4x
h3 (x) = x5 + x4 + 9x2 − 2x
108
polinomlarına karşılık gelen
h1 = (1, 0, 0, 0, 0, 0)
h2 = (0, 4, 2, 1, 0, 0)
h3 = (0, −2, 9, 0, 1, 1)
vektörleri birer bazdır. Burada f −indirgeyici polinom olarak h2 (x) polinomunu alırsak
F (y) = R(f (x), h2 (x) − y)
¯
¯
¯
¯
¯
¯
¯
¯
¯
¯
¯
¯
¯
¯
=¯
¯
¯
¯
¯
¯
¯
¯
¯
¯
¯
¯
¯
1
−3
5
−9
−5
6
7
0
0
1
−3
5
−9
5
6
7
0
0
1
−3
5
−9
−5
6
1
2
4
−y
0
0
0
0
0
1
2
4
−y
0
0
0
0
0
1
2
4
−y
0
0
0
0
0
1
2
4
−y
0
0
0
0
0
1
2
4
−y
0
0
0
0
0
1
2
4
¯
¯
0 ¯
¯
¯
0 ¯
¯
¯
7 ¯
¯
¯
0 ¯
¯
¯
0 ¯
¯
¯
0 ¯
¯
¯
0 ¯
¯
¯
0 ¯¯
¯
−y ¯
Bu durumda F (y) polinomunun direkt hesaplanması mümkündür ve determinanttan
F (y) = y 6 + 4y 5 + 3y 4 − 7y 3 + 10y 2 + 11y + 7
bulunur. f (x) polinomu F23 cismi üzerinde 3 farklı, monik, asal çarpana sahiptir. F (y)
polinomunun F23 cismi üzerinde en fazla 3 kökü olabilir. İleriki bölümde bahsedeceğimiz
kök bulma algoritmalarından veya deneme-yanılma metoduyla F23 cismi üzerinde F (y)
polinomunun köklerini belirlediğimizde kökler {−3, 2, 6} bulunur. Bu durumda
ebob(f (x), h2 (x) + 3) = x − 4
ebob(f (x), h2 (x) − 2) = x2 − x + 7
ebob(f (x), h2 (x) − 6) = x3 + 2x2 + 4x − 6
elde edilir ki f (x) polinomunun F23 cismi üzerinde asal çarpanlarına ayrılmış şekli
f (x) = (x − 4)(x2 − x + 7)(x3 + 2x2 + 4x − 6)
109
dir (Niederreiter and Lidl 1984)
ebob(f (x), h(x) − c) 6= 1 ifadesini sağlayan c ∈ Fq elemanlarını belirlemenin bir diğer
yöntemi aşağıdaki gibidir.
n
o
C := c ∈ Fq : ebob(f (x), h(x) − c) 6= 1
şeklindeki C kümesini tanımlayalım. Böylece (10) ifadesinden
f (x) =
Y
ebob(f (x), h(x) − c)
(17)
c ∈ C
dir. Bu durumda
¯
¯ Y
f (x) ¯¯
(h(x) − c)
c ∈ C
sağlanır. Şimdi
G(y) :=
Y
(y − c)
c ∈ C
polinomunu tanımlayalım. Buradan
¯
¯
f (x) ¯ G(h(x))
dir. Bu açıklamalardan sonra G(y) polinomu aşağıdaki gibi karakterize edilebilir.
¯
¯
Teorem 5.2.2. f (x) ¯ g(h(x)) olacak şekilde g ∈ Fq [y] polinomları arasındaki en küçük
dereceli monik polinom G(y) polinomudur (Niederreiter and Lidl 1984)
Bu sonuç şu anlamda uygulanabilir. m değeri C kümesinin elemanlarının sayısı olarak
alınsın. Bu durumda bj ∈ Fq elemanları için
G(y) =
Y
(y − c) =
m
X
j=0
c ∈ C
110
bj y j
¯
¯
yazabiliriz. Burada f (x) ¯ G(h(x)) ⇒
m
X
bj h(x)j ≡ 0 mod f (x)
j=0
dir. bm = 1 (monik) olduğundan
Pm
j=0 bj
h(x)j ifadesine
1, h(x), h(x)2 , . . . , h(x)m
polinomlarının mod f (x) e göre kalanları arasındaki lineer bağımlılık ilişkisi olarak bakılabilir.
bm = 1 değeriyle Teorem 5.2.2 bu lineer bağımlılığın tek olduğunu söyler. Dolayısıyla
1, h(x), h(x)2 , . . . , h(x)m−1
polinomlarının modf (x) e göre kalanları lineer bağımsız olur. (17) ifadesinden m ≤ k
elde edilir. Böylece k sayısı kendisinden daha küçük bir sayıya indirgenmiş olur. Buradan
G polinomu h(x) polinomunun bir öncekilerle lineer bağımlı ilk kuvvetine kadar
{1, h(x), h(x)2 , . . . }
polinomlarının modf (x) e göre kalanları hesaplanarak bulunur. Bu lineer bağımlılıkta
bulacağımız katsayılar G polinomunun katsayılarıdır. Biz artık bu işlemler sırasında
Berlekamp’s Algoritmasında bulunan k sayısına kadar gitmemize gerek olmadığını biliyoruz. Bu durumda C kümesinin elemanları G polinomunun kökleridir. Böylece C kümesinin
elemanlarını bulmaya yönelik indirgeyici problemin bu metotu Fq cisminde bir polinomun
köklerini hesaplama problemine indirgenmiş oldu. Bu şekildeki algoritmaya Zassenhaus
Algoritması adı verilir.
Örnek 5.2.3. Örnek 5.2.1 deki f ∈ F23 [x] polinomunu yine gözönüne alalım. Berlekamp’s
algoritmasından k = 3 elde edildiğini biliyoruz. Ayrıca f −indirgeyici polinom olarak yine
h(x) = x3 + 2x2 + 4x ∈ F23 [x]
polinomunu alalım. Şimdi ebob(f (x), h(x) − c) 6= 1 ifadesini sağlayan c ∈ F23 elemanlarını
belirlemek için Zassenhaus Algoritmasını kullanalım. Böylece
h(x)
= x3 + 2x2 + 4x mod f (x)
h(x)2 = 7x5 + 7x4 + 2x3 − 2x2 − 6x − 7 mod f (x)
111
dir. Buradan açıkça görülebilir ki h(x)2 polinomu 1 ve h(x) polinomu ile lineer bağımsızdır.
Böylece diğeriyle lineer bağımlı olan h(x) polinomunun en küçük kuvveti h(x)3 polinomu
olmalıdır.
h(x)3 = −11x5 − 11x4 − x3 − 9x2 − 5x − 2 mod f (x)
dir. Lineer bağımlılık ilişkisinden
h(x)3 − 5h(x)2 + 11h(x) − 10 ≡ 0 mod f (x)
olur. Böylece
G(y) = y 3 − 5y 2 + 11y − 10
elde edilir. Bu durumda ileriki bölümde bahsedilecek kök bulma algoritmalarından biriyle
yada deneme-yanılma metoduyla G polinomunun kökleri {−3, 2, 6} olarak bulunur. Kökler
bulunduktan sonra Örnek 5.2.1 deki metodun aynısı kullanılarak f (x) polinomu asal
çarpanlarına ayrılır. Böylece f (x) polinomunun F23 cismi üzerinde asal çarpanlarına
ayrılmış şekli
f (x) = (x − 4)(x2 − x + 7)(x3 + 2x2 + 4x − 6)
dir (Niederreiter and Lidl 1984)
5.3
Polinomların Köklerinin Hesaplanması
Bir önceki bölümde bir polinomun kanonikal çarpanlarının belirlenmesi probleminin bir
sonlu cisimde bir polinomun köklerinin bulunması problemine dönüştüğünü gördük. Bir
polinomun köklerinin bulunması başlı başına bağımsız incelenmesi gereken bir meseledir.
Genelde bir polinomun köklerinin belirlenmesindeki ilginçlik, katsayılar cisminin herhangi
bir genişlemesinde polinomların köklerinin belirlenmesidir. Bununla birlikte Fq cisminde
pozitif dereceli bir f ∈ Fq [x] polinomunun kökleri sorulduğunda bir alt cisimdeki bir
polinomun görüntüsüne bakmak yeterli olacaktır.
112
Açıkça söylenebilir ki her çarpanlara ayırma algoritması özelde Fq [x] polinomlar halkasında
f (x) polinomunun asal çarpanları arasındaki lineer çarpanlardan belirlenebilen bir kök
bulma algoritmasıdır. Bu nedenle bu bölümün daha önceki kısımlarında anlatılan çarpanlara
ayırma algoritmaları aynı zamanda köklerin belirlenmesi için de kullanılacaktır. Bununla
birlikte bu algoritmalar köklerin hesaplanmasındaki daha özel ve ayrıntılı durumlarda
yeterli olmayacaklardır. Bu yüzden amacımız bu özel durumlar için daha iyi metotlar
araştırmak olacaktır.
İlk iş olarak f (x) polinomunun Fq cismindeki köklerini kapsayan bir parçasını bulmak
olacaktır. xq − x polinomu Fq [x] polinomlar halkasında bütün monik, lineer polinomların
çarpımıdır. Bu durumda
ebob(f (x), xq − x)
en büyük ortak böleni Fq cismi üzerinde f (x) polinomunu bölen bütün monik, lineer
polinomların çarpımına eşit olur. Böylece Fq cismi üzerinde f (x) polinomunun kökleri
f (x) polinomunu bölen bütün monik, lineer polinomların çarpımındadır.
Bunun için kullanılan bir metotta ilk adım olarak p bir asal sayı olmak üzere Fp asal cismi
gözönüne alınır. Burada
Fp ⊂ Fq
ve
q = pn
şeklindedir. Yukarıdaki açıklamadan görülebilir ki Fp cisminin farklı c1 , c2 , . . . , cn elemanları için
f (x) =
n
Y
(x − ci )
i=1
dir. Eğer burada p asal sayısı küçük bir sayı ise f (x) polinomunun kökleri deneme-yanılma
yoluyla yani
f (0), f (1), . . . , f (p − 1)
değerleri basitçe hesaplanarak yapılabilir. Fakat p asal sayısının büyük olması durumunda
deneme-yanılma yolu kullanılamayacağından takip eden metodu uygularız.
113
Şimdi p bir tek sayı ve b ∈ Fp alındığında b + ci ∈ Fp olacağından
f (x − b) =
n ³
Y
´
x − (b + ci )
i=1
dir. Ayrıca
¯
¯
f (x − b) ¯ xp − x
olduğunu biliyoruz. Diğer taraftan p bir tek sayı olduğundan p−1 bir çift sayı olacağından
iki kare farkı uygulandığında
³
´³
´
xp − x = x x(p−1)/2 + 1 x(p−1)/2 − 1
elde edilir. Bu durumda
¯ ³
´³
´
¯
(p−1)/2
(p−1)/2
¯
f (x − b) ¯ x x
+1 x
−1
dir. Burada eğer x ifadesi f (x − b) polinomunun bir çarpanı ise f (−b) = 0 olur. Böylece
f (x) polinomunun bir kökü bulunmuş olur. Eğer x ifadesi f (x − b) polinomunun bir
çarpanı değilse
³
´
³
´
f (x − b) = ebob f (x − b), (x(p−1)/2 + 1) ebob f (x − b), (x(p−1)/2 − 1)
(18)
eşitliği elde edilir. Bu durumda x(p−1)/2 ifadesinin modf (x − b) deki kalanlarına bakılır.
Eğer
x(p−1)/2 6≡ ∓1 mod f (x − b)
ise (18) ifadesinin sonucu f (x − b) polinomunun bir aşikar olmayan kısmi çarpanlara
ayrılmış şeklidir. Eğer
x(p−1)/2 ≡ ∓1 mod f (x − b)
ise kök bulma işlemine başka bir b ∈ Fp elemanına geçilerek devam edilir. Böylece b ∈ Fp
elemanları için f (x) polinomunun bir kökü veya f (x) polinomunun aşikar olmayan bir
kısmi çarpanı bulunur. Eğer f (x) polinomunun aşikar olmayan bir kısmi çarpanı bulunduysa aynı işlemler o kısmi çarpanının bir kökünü bulana kadar devam ettirilir. Devam
114
eden bu metotlarla ilerlenildiğinde f (x) polinomunun bütün kökleri elde edilecektir. Bu
algoritma tam olarak belirli bir algoritma değildir. Fakat olasılıksal bir kök bulma algoritmasıdır. Olasılıksal bir algoritma olmasının nedeni ise b ∈ Fp elemanlarının seçilişindeki
keyfiliktir (Niederreiter and Lidl 1984)
Örnek 5.3.1. f (x) = x6 − 7x5 + 3x4 − 7x3 + 4x2 − x − 2 ∈ F17 [x] polinomunun köklerini
belirleyelim. F17 cisminde f (x) polinomun kökleri
g(x) = ebob(f (x), x17 − x)
polinomundadır. Euclidean algoritması ile
g(x) = x4 + 6x3 − 5x2 + 7x − 2
elde edilir. Yukarıdaki algoritma uygulanarak g(x) polinomunun kökleri bulunabilir. İlk
olarak b = 0 seçelim. Bu durumda
x(p−1)/2 = x(17−1)/2 = x8 ≡ 1 mod g(x)
olacağından b = 0 değeri için g(x) polinomunun aşikar olmayan kısmi bir çarpanı bulunamaz. Bu nedenle başka bir b değerine geçmeliyiz. Şimdi b = 1 seçelim. Böylece
g(x − 1) = x4 + 2x3 − 3x − 2
elde edilir. Buradan
x8 ≡ −4x3 − 7x2 + 8x − 5 mod g(x − 1)
dir. x ifadesi bir çarpan olmadığından ve
x8 6≡ ∓1 mod g(x − 1)
sağlandığından b = 1 değeri için g(x−1) polinomunun aşikar olmayan bir kısmi çarpanlara
ayrılması bulunabilir.
³
´
³
´
ebob g(x − 1), (x8 + 1) = ebob x4 + 2x3 − 3x − 2, −4x3 − 7x2 + 8x − 4
= x2 − 7x + 4
115
ve
³
´
³
´
ebob g(x − 1), (x8 − 1) = ebob x4 + 2x3 − 3x − 2, −4x3 − 7x2 + 8x − 6
= x2 − 8x + 8
Bu sonuçlarla (18) ifadesinden
g(x − 1) = (x2 − 7x + 4)(x2 − 8x + 8)
elde edilir. Böylece
g(x) = (x2 − 5x − 2)(x2 − 6x + 1) = g1 (x)g2 (x)
olur. Şimdi g1 (x) ve g2 (x) polinomlarının köklerini belirlemek için aynı metodu bu polinomlara uygulacağız. g1 (x) ve g2 (x) polinomlarının her ikisi için de b = 2 değerini seçelim.
Bu durumda
g1 (x − 2) = x2 + 8x − 5
ve buradan
x8 ≡ −8x + 2 mod g1 (x − 2)
dir. Böylece g1 (x) polinomunu da çarpanlarına ayırabiliriz.
³
8
ebob g1 (x − 2), (x + 1)
´
³
2
´
= ebob x + 8x − 5, −8x + 3
= x+6
bulunur. g1 (x − 2) polinomunun bir çarpanını bulduktan sonra diğer çarpanı uzun bölme
işlemi sonucunda x + 2 olarak buluruz. Buradan
g1 (x − 2) = (x + 6)(x + 2)
dir. g1 (x) polinomu ise
g1 (x) = (x + 8)(x + 4)
116
şeklindedir. Aynı işlemleri g2 (x) polinomu için yaparsak
g2 (x − 2) = x2 + 7x = x(x + 7)
bulunur. x bir çarpan olduğundan g2 (x) polinomunun bir kökü −2 dir. Bu durumda
g2 (x) = (x + 2)(x − 8)
dir. Bu çarpanların tamamından
g(x) = (x + 8)(x + 4)(x + 2)(x − 8)
elde edilir. Böylece F17 cismi üzerinde g(x) ve hem de f (x) polinomunun kökleri
{ − 8, −4, −2, 8}
dir (Niederreiter and Lidl 1984)
Şimdi küçük p karakteristikli bir büyük Fq sonlu cismi için bir kök bulma algoritması
tasarlayacağız. Farklı
δ1 , δ2 , . . . , δn ∈ Fq
elemanları için
f (x) =
n
Y
(x − δi )
i=1
m
olduğunu biliyoruz. Burada q := p için
S(x) :=
m−1
X
j
xp
j=0
polinomunu tanımlayalım. Tanım 3.4.8 deki iz fonksiyonu T rFq olmak üzere δ ∈ Fq için
S(δ) = T rFq (δ) ∈ Fp
olduğunu Teorem 3.4.9 (iii) den biliyoruz. Çünkü ∀c ∈ Fp için S(δ) = c eşitliği pm−1 tane
δ ∈ Fq çözümüne sahiptir. Bu sonuçtan
xq − x =
Y
(S(x) − c)
(19)
c ∈ Fp
117
dir. Ayrıca
¯
¯
f (x) ¯ xq − x
olduğundan
Y
(S(x) − c) ≡ 0 mod f (x)
c ∈ Fp
dir ve hem de
f (x) =
Y
³
´
ebob f (x), (S(x) − c)
(20)
c ∈ Fp
olur. Bu sonuç p tane ortak bölenin hesaplanmasıyla bulunan f (x) polinomunun bir kısmi
çarpanlara ayrılmasıdır. Eğer p sayısı küçük bir sayı ise bu kesinlikle uygulanabilir bir
metotdur. Bununla birlikte bazı c ∈ Fp değerleri için
S(x) ≡ c mod f (x)
oluyorsa (20) ifadesindeki çarpanlara ayırma işlemi kesinlikle aşikar bir çarpanlara ayırmadır.
Bu durumda S(x) yardımcı polinomu ile diğer yardımcı polinomlar kullanılmak zorundadır. Şimdi β elemanı Fp cismi üzerinde Fq cisminin tanımlayıcı elemanı olarak alınsın.
Bu durumda
{1, β, β 2 , . . . , β m−1 }
elemanları Fp cismi üzerinde Fq cisminin bir bazıdır. j = 0, 1, . . . , m − 1 değerleri için (19)
ifadesinde x ifadesinin yerine β j x yazalım. Buradan
´
Y ³
q
(β j ) xq − β j x =
S(β j x) − c
c ∈ Fp
dir. (β j )q = β j olduğundan
q
x −x=β
´
Y ³
j
S(β x) − c
−j
c ∈ Fp
olur. Bu sonuçlarla 0 ≤ j ≤ m − 1 değerleri için (20) ifadesinin bir genelleştirilmesi olan
f (x) =
Y
³
´
ebob f (x), S(β x) − c
j
(21)
c ∈ Fp
118
elde edilir. Şimdi (21) ifadesindeki kısmi çarpanlara ayırma ifadesinin eğer n = deg(f ) ≥ 2
ise 0 ≤ j ≤ m − 1 aralığından alınan en azından bir j değeri için aşikar çarpanlara ayırma
olmadığını gösterebiliriz. Kabul edelim ki (21) ifadesindeki kısmi çarpanlara ayırma bütün
j değerleri için aşikar olsun. Biliyoruz ki 0 ≤ j ≤ m − 1 aralığındaki herbir j değeri için
S(β j x) ≡ cj mod f (x)
olacak şekilde bir cj ∈ Fp vardır. Özel olarak 0 ≤ j ≤ m − 1 için
S(β j δ1 ) = S(β j δ2 ) = cj
alalım. İz fonksiyonunun lineerliği ile 0 ≤ j ≤ m − 1 değerleri için
³
´
j
T rFq (δ1 − δ2 )β = 0
ve ∀α ∈ Fq elemanı için
³
´
T rFq (δ1 − δ2 )α = 0
elde edilir. Bu durumda Teorem 3.4.10 ün ikinci bölümü kullanılarak
δ1 − δ2 = 0
bulunur ki bu bir çelişkidir. Böylece en az bir j değeri için (21) ifadesindeki çarpanlara
ayırma işlemi aşikar değildir.
(21) ifadesinde kullanılan Fp cismi üzerinde Fq cisminin β tanımlayıcı elemanı, Fp [x] polinomlar halkasında m dereceli bilinen bir asal polinomun bir kökü olarak seçilir. (21) formunun aşikar olmayan bir çarpanlara ayrılması bulunduğunda metot diğer j değerlerinin
kullanılması ile aşikar olmayan çarpanlara ayrılmış ifadenin herbir çarpanına uygulanır.
Böylece yukarıdaki metot (21) ifadesinde j nin bütün değerleri kullanılarak f (x) polinomunun bütün farklı köklerinin er-geç bulunabileceğini gösterir (Niederreiter and Lidl
1984)
Örnek 5.3.2. β elemanı F2 [x] polinomlar halkasında x6 + x + 1 asal polinomunun bir
kökü olarak alındığında F64 = F2 (β) olur. F64 [x] polinomlar halkasında
f (x) = x4 + (β 5 + β 4 + β 3 + β 2 )x3 + (β 5 + β 4 + β 2 + β + 1)x2 + (β 4 + β 3 + β)x + β 3 + β
119
alalım. Ayrıca
x6 ≡ (β 5 + β + 1)x3 + (β 4 + β 3 + β 2 )x2 + (β 5 + β 3 + β 2 + 1)x + β 5 + β 4 + β 2 + 1 mod f (x)
denkliğini kullanarak x ifadesinin modf (x) e göre kuvvetlerini hesaplayalım. Bu durumda
x
≡ x
x2
≡ x2
x4
≡ (β 5 + β 4 + β 3 + β 2 )x3 + (β 5 + β 4 + β 2 + β + 1)x2 + (β 4 + β 3 + β)x + β 3 + β
x8
≡ (β 4 + β 3 + β 2 )x3 + (β 5 + β + 1)x2 + (β 5 + β + 1)x + β 5 + β 4
x16 ≡ (β 5 + β 3 + β)x3 + (β 3 + β)x2 + β 5 x + β 4 + β 3 + β 2 + β + 1
x32 ≡ (β 5 + β 2 + 1)x3 + (β 5 + β 4 + β 3 + β 2 + β + 1)x2 + (β 4 + β 2 )x + β 5 + β 3
x64 ≡ x
elde edilir. Buradan
¯
¯
f (x) ¯ x64 − x
olup f (x) polinomu F64 cisminde dört farklı köke sahiptir. Şimdi
S(x) = x + x2 + x4 + x8 + x16 + x32
polinomunu ele alalım. Yukarıdaki denkliklerden
S(x) ≡ (β 5 + β 3 + β 2 + β + 1)x3 + β 5 x2 + (β 3 + β 2 )x + β 3 + β 2 + 1 mod f (x)
bulunur ve böylece ebob(f (x), S(x)) ,
³
´
ebob f (x), (β 5 + β 3 + β 2 + β + 1)x3 + β 5 x2 + (β 3 + β 2 )x + β 3 + β 2 + 1
= x3 + (β 4 + β 3 + β 2 )x2 + (β 5 + β 2 + 1)x + β 3 + β 2
= g(x)
ifadesine eşit olur. Yine ebob(f (x), S(x) − 1) ,
³
´
ebob f (x), (β 5 + β 3 + β 2 + β + 1)x3 + β 5 x2 + (β 3 + β 2 )x + β 3 + β 2
= x + β5
120
dir.(21) ifadesindeki sonuçtan
f (x) = g(x)(x + β 5 )
(22)
bulunur. Şimdi g(x) polinomunun köklerini bulabilmek için (21) ifadesinde j = 1 değerini
kullanalım.
S(βx) = βx + β 2 x2 + β 4 x4 + β 8 x8 + β 16 x16 + β 32 x32
= βx + β 2 x2 + β 4 x4 + (β 3 + β 2 )x8 + (β 4 + β + 1)x16 + (β 3 + 1)x32
dir. Yukarıdaki x ifadesinin modf (x) e göre kuvvetlerinin denkliğinden
S(βx) ≡ (β 2 + 1)x3 + (β 3 + β + 1)x2 + (β 5 + β 4 + β 3 + β 2 + β + 1)x
+β 4 + β 2 + β mod f (x)
¯
¯
bulunur ve g(x) ¯ f (x) olduğundan bu ifade modg(x) e göre de aynıdır. Buna göre
S(βx) ≡ (β 2 + 1)x3 + (β 3 + β + 1)x2 + (β 5 + β 4 + β 3 + β 2 + β + 1)x
+β 4 + β 2 + β
≡ (β 5 + β 2 )x2 + β 3 x + β 5 + β 3 + β mod g(x)
dir. Buradan
³
´
³
´
5
2 2
3
5
3
ebob g(x), S(βx) = ebob g(x), (β + β )x + β x + β + β + β
= x2 + (β 3 + 1)x + β 4 + β 3 + β 2 + β
= h(x)
121
olur ve
³
´
³
´
ebob g(x), S(βx) − 1 = ebob g(x), (β 5 + β 2 )x2 + β 3 x + β 5 + β 3 + β + 1
= x + β4 + β2 + 1
elde edilir. Böylece (21) ifadesi j = 1 değeri için
g(x) = h(x)(x + β 4 + β 2 + 1)
(23)
değerini alır. h(x) polinomunun köklerini bulabilmek için (21) ifadesinde j = 2 değerini
kullanalım.
S(β 2 x) = β 2 x + β 4 x2 + β 8 x4 + β 16 x8 + β 32 x16 + β 64 x32
= β 2 x + β 4 x2 + (β 3 + β 2 )x4 + (β 4 + β + 1)x8 + (β 3 + 1)x16 + βx32
ve S(βx) deki gibi bir basit hesaplama ile
S(β 2 x) ≡ (β 5 + β 2 + 1)x + β 5 + β 3 + β 2 mod h(x)
bulunur. Buradan
³
´
³
´
ebob h(x), S(β 2 x) = ebob h(x), (β 5 + β 2 + 1)x + β 5 + β 3 + β 2
= x+β+1
ve
³
´
³
´
ebob h(x), S(β 2 x) − 1 = ebob h(x), (β 5 + β 2 + 1)x + β 5 + β 3 + β 2 + 1
= x + β3 + β
122
dir. Böylece (21) ifadesinde j = 2 aldığımızda
h(x) = (x + β + 1)(x + β 3 + β)
(24)
elde edilir. Sonuç olarak (22),(23) ve (24) ifadeleri birleştirilerek
f (x) = (x + β + 1)(x + β 3 + β)(x + β 4 + β 2 + 1)(x + β 5 )
bulunur. Böylece f (x) polinomunun kökleri
n
o
3
4
2
5
β + 1, β + β, β + β + 1, β
dir (Niederreiter and Lidl 1984)
123
KAYNAKLAR
Niederreiter, H. and Lidl, R. 1984. Finite Fields. Cambridge University Press, 35-184,
Cambridge.
Niederreiter, H. and Lidl, R. 1986. Introduction To Finite Fields And Their Applications.
Cambridge University Press, 40-160, Cambridge.
Chapman, H. 1996. Coding Theory. St Edmundsbury Press, 12-105, Great Britian.
Hill, R. 1986. A First Course in Coding Theory. Clarendon Press, 28-73, Great Britian.
Pretzel, O. 1992. Error Correcting Codes and Finite Fields. Clarendon Press, 3-45;
201-267, London.
Jungnickel, D. 1993. Finite Fields (Structure And Arithmetics). Druckerei Progressdruck
GmbH Press, 15-83, Germany.
124
ÖZGEÇMİŞ
Adı Soyadı
: Burcu ÇAPKIN
Doğum Yeri
: Boyabat / SİNOP
Doğum Tarihi : 21.07.1978
Medeni Hali
: Bekar
Yabancı Dili
: İngilizce
Eğitim Durumu
Lise
: Mehmet Akif Ersoy Lisesi, 1992-1995
Lisans
: Ankara Üniversitesi, 1995-1999
Yüksek Lisans : Ankara Üniversitesi, 2002-2005
Çalıştığı Kurumlar
Tüney İlköretim Okulu
, 1999-2001
Genelkurmay Başkanlığı , 2001-2005
125
Download