ANKARA. Burcu ÇAPKIN

Benzer belgeler
KPSS MATEMATÝK. SOYUT CEBÝR ( Genel Tekrar Testi-1) N tam sayılar kümesinde i N için, A = 1 i,i 1

1. GRUPLAR. c (Birleşme özelliği) sağlanır. 2) a G için a e e a a olacak şekilde e G (e ye birim eleman denir) vardır.

SOYUT CEBİR Tanım 1: Uzunluğu 2 olan dairesel permütasyona transpozisyon denir.

10. DİREKT ÇARPIMLAR

Normal Alt Gruplar ve Bölüm Grupları...37

MAT 302 SOYUT CEBİR II SORULAR. (b) = ise =

Modül Teori. Modüller. Prof. Dr. Neşet AYDIN. [01/07] Mart Prof. Dr. Neşet AYDIN (ÇOMÜ - Matematik Bölümü) Modül Teori [01/07] Mart / 50

13.Konu Reel sayılar

VEKTÖR UZAYLARI 1.GİRİŞ

6. Ders. Mahir Bilen Can. Mayıs 16, 2016

Leyla Bugay Doktora Nisan, 2011

Temel Kavramlar. (r) Sıfırdan farklı kompleks sayılar kümesi: C. (i) Rasyonel sayılar kümesi: Q = { a b

İleri Diferansiyel Denklemler

için Örnek 7.1. simetri grubunu göz önüne alalım. Şu halde dür. Şimdi kalan sınıflarını göz önüne alalım. Eğer ve olarak alırsak işlemini kullanarak

Ders 9: Bézout teoremi

Grup Homomorfizmaları ve

Kablosuz Kanallarda Kodlama. İrfan Köprücü

1.GRUPLAR. c (Birleşme özelliği) sağlanır. 2) a G için a e e a a olacak şekilde e G. vardır. 3) a G için denir) vardır.

6 Devirli Kodlar. 6.1 Temel Tan mlar

8. HOMOMORFİZMALAR VE İZOMORFİZMALAR

olsun. Bu halde g g1 g1 g e ve g g2 g2 g e eşitlikleri olur. b G için a b b a değişme özelliği sağlanıyorsa

Soyut Cebir. Prof. Dr. Dursun TAŞCI

Ç.Ü Fen ve Mühendislik Bilimleri Dergisi Yıl:2012 Cilt:28-2

Bu kısımda işlem adı verilen özel bir fonksiyon çeşidini ve işlemlerin önemli özelliklerini inceleyeceğiz.

Galois Teorisi. David Pierce. Matematik Bölümü, MSGSÜ mat.msgsu.edu.tr/~dpierce/

HOMOGEN OLMAYAN DENKLEMLER

T I M U R K A R A Ç AY - H AY D A R E Ş C A L C U L U S S E Ç K I N YAY I N C I L I K A N K A R A

İleri Diferansiyel Denklemler

LYS MATEMATİK DENEME - 1

8. HOMOMORFİZMALAR VE İZOMORFİZMALAR

10.Konu Tam sayıların inşası

8.Konu Vektör uzayları, Alt Uzaylar

İç-Çarpım Uzayları ÜNİTE. Amaçlar. İçindekiler. Yazar Öğr. Grv. Dr. Nevin ORHUN

Şimdi de [ ] vektörünün ile gösterilen boyu veya büyüklüğü Pisagor. teoreminini iki kere kullanarak

EŞİTLİK KISITLI TÜREVLİ YÖNTEMLER

Örnek...3 : Aşağıdaki ifadelerden hangileri bir dizinin genel terim i olabilir?

SAYILAR DOĞAL VE TAM SAYILAR

Lineer Dönüşümler ÜNİTE. Amaçlar. İçindekiler. Yazar Öğr. Grv.Dr. Nevin ORHUN

İKİNCİ DERECEDEN DENKLEMLER

Sonlu Cisimler (MATH332) Ders Detayları

(m+2) +5<0. 7/m+3 + EŞİTSİZLİKLER A. TANIM

Özdeğer ve Özvektörler

İleri Diferansiyel Denklemler

Tanım 2.1. X boş olmayan bir küme olmak üzere X den X üzerine bire-bir fonksiyona permütasyon denir.

MAT 321SOYUT CEBİR I KONU TEKRAR SORULARI. ise < A > nedir?

Bir özvektörün sıfırdan farklı herhangi bri sabitle çarpımı yine bir özvektördür.

Mustafa Sezer PEHLİVAN. Yüksek İhtisas Üniversitesi Beslenme ve Diyetetik Bölümü

İleri Diferansiyel Denklemler

DEĞİŞMELİ BANACH CEBİRLERİNİN GELFAND SPEKTRUMLARI ÜZERİNE

2. SİMETRİK GRUPLAR. Tanım 2.1. X boş olmayan bir küme olmak üzere X den X e birebir örten fonksiyona permütasyon denir.

Leyla Bugay Haziran, 2012

Cebir Notları. Gökhan DEMĐR, ÖRNEK : A ve A x A nın bir alt kümesinden A ya her fonksiyona

1.4. KISMİ SIRALAMA VE DENKLİK BAĞINTILARI

için doğrudur. olmak üzere tüm r mertebeli gruplar için lemma nın doğru olduğunu kabul edelim. G grubunun mertebesi n olsun. ve olsun.

2. Matematiksel kavramları organize bir şekilde sunarak, bu kavramları içselleştirmenizi sağlayacak pedagojik bir alt yapı ile yazılmıştır.

1 Vektör Uzayları 2. Lineer Cebir. David Pierce. Matematik Bölümü, MSGSÜ mat.msgsu.edu.tr/~dpierce/

Kuantum Grupları. Orta Doğu Teknik Üniversitesi, Ankara. Münevver Çelik. Feza Gürsey Enstitüsü, İstanbul 10 Şubat, 2010

Mustafa Özdemir İrtibat İçin : veya Altın Nokta Yayınevi

Fonksiyon Optimizasyonunda Genetik Algoritmalar

İleri Diferansiyel Denklemler

YÜKSEK LİSANS TEZİ Hande BÜYÜKÇAVUŞOĞLU DANIŞMAN Prof. Dr. Muhittin BAŞER MATEMATİK ANABİLİM DALI

Örnek...3 : Aşağıdaki ifadelerden hangileri bir dizinin genel terim i olabilir? Örnek...4 : Genel terimi w n. Örnek...1 : Örnek...5 : Genel terimi r n

İNJEKTİF MODÜLLERE. Ali Pancar Burcu Nişancı Türkmen

SÜREKLİLİK. 9.1 Süreklilik ve Süreksizlik Kavramları

Denklemler İkinci Dereceden Denklemler. İkinci dereceden Bir Bilinmeyenli Denklemler. a,b,c IR ve a 0 olmak üzere,

1 Primitif Kökler. [Fermat ] p asal, p a a p 1 1 (mod p) a Z, a p a (mod p) [Euler] ebob(a, m) = 1, a φ(m) 1 (mod m) φ(1) := 1

Sunum ve Sistematik. Bu başlıklar altında uygulamalar yaparak öğrenciye yorum, analiz, sentez yetisinin geliştirilmesi hedeflenmiştir.

9. Ders. Mahir Bilen Can. Mayıs 19, 2016

Cebir 1. MIT Açık Ders Malzemeleri

kavramını tanımlayıp bazı özelliklerini inceleyeceğiz. Ayrıca bir grup üzerinde tanımlı

Mühendislik Mekaniği Statik. Yrd.Doç.Dr. Akın Ataş

YÖNEYLEM ARAŞTIRMASI - III

12. Ders. Mahir Bilen Can. Mayıs 24, Son dersten hatırlayacağınız üzere simetrikleştirme operasyonundan elde ettiğimiz fonksiyon.

5. Salih Zeki Matematik Araştırma Projeleri Yarışması PROJENİN ADI DİZİ DİZİ ÜRETEÇ PROJEYİ HAZIRLAYAN ESRA DAĞ ELİF BETÜL ACAR

Math 322 Diferensiyel Denklemler Ders Notları 2012

3. işleminin birim elemanı vardır, yani her x A için x e = e x = x olacak şekilde e A vardır.

Lineer Bağımlılık ve Lineer Bağımsızlık

1. BÖLÜM Polinomlar BÖLÜM II. Dereceden Denklemler BÖLÜM II. Dereceden Eşitsizlikler BÖLÜM Parabol

Ayrık Fourier Dönüşümü

ÇUKUROVA ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ

İTÜ Bilgisayar Mühendisliği Bölümü, BLG433-Bilgisayar Haberleşmesi ders notları, Dr. Sema Oktuğ

ÜNİTE. MATEMATİK-1 Doç.Dr.Erdal KARADUMAN İÇİNDEKİLER HEDEFLER ÖZDEŞLİKLER, DENKLEMLER VE EŞİTSİZLİKLER

7. BÖLÜM İÇ ÇARPIM UZAYLARI İÇ ÇARPIM UZAYLARI İÇ ÇARPIM UZAYLARI İÇ ÇARPIM UZAYLARI .= Genel: Vektörler bölümünde vektörel iç çarpım;

1.4 Tam Metrik Uzay ve Tamlaması

Sayılar Kuramına Giriş Özet

Math 103 Lineer Cebir Dersi Final Sınavı

Ortak Akıl MATEMATİK DENEME SINAVI

DERS: CEBİRDEN SEÇME KONULAR KONU: ENDOMORFİZMA HALKALARI

xy, de iki polinom verildiğinde bunların

Data Communications. Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü. 10. Hata Kontrolü

7. Ders. Mahir Bilen Can. Mayıs 17, 2016

Bu bölümde cebirsel yapıların temelini oluşturan Grup ve özelliklerini inceleyeceğiz.

TÜREV VE UYGULAMALARI

MAK 210 SAYISAL ANALİZ

2(1+ 5 ) b = LYS MATEMATİK DENEMESİ. işleminin sonucu kaçtır? A)2 5 B)3 5 C)2+ 5 D)3+ 5 E) işleminin sonucu kaçtır?

T.C. Ölçme, Seçme ve Yerleştirme Merkezi

HOMOLOJİ CEBİRE GİRİŞ ARA SINAV CEVAP ANAHTARI

T.C. Ölçme, Seçme ve Yerleştirme Merkezi

kpss Önce biz sorduk 50 Soruda SORU Güncellenmiş Yeni Baskı ÖABT LİSE MATEMATİK SOYUT CEBİR LİNEER CEBİR

+..+b 0 Polinomlarının. kongüransını inceleyeceğiz.

Transkript:

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 F q GF(p n ) F[x] C Fq I n k c T d(a, b) wt(a) deg(f(x)) g f q mertebeli sonlu cisim q := p n mertebeli sonlu cisim Polinomlar halkası Kod kelimeleri kümesi F q cisminin sıfırdan farklı elemanlarının oluşturduğu çarpımsal grup n k boyutlu birim matris Bir c matrisinin transpozu Herhangi iki kod kelimesi arasındaki uzaklık Bir a kod kelimesinin ağırlığı 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 r F/K (α) α elemanının izi N F/K (α) α elemanının normu K (n) Q n (x) ord(f) f N q (d) Dairesel cisim Dairesel polinom f polinomunun mertebesi f polinomunun resiprokal polinomu F q [x] de derecesi d olan bütün monik, asal polinomların sayısı vi

µ Moebius fonksiyonu I(q, n; x) F q [x] de n dereceli monik, asal polinomların çarpımı ord n (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 F q cisminde farzedebiliriz. a i F q olmak üzere a 1 a 2... a k şeklindeki k sembolden oluşan bir bloğun kodlanması n k için c j F q olmak üzere c 1 c 2... c n 2

şeklinde yapılmaktadır. Kod kelimesine n boyutlu F n q vektör uzayında c satır vektörü gibi bakılabilir. Bu durumda bir mesaj kelimesi olan a 1 a 2... a k kontrol sembolü eklenerek için kod kelimesi (n k) a 1 a 2... a k c k+1 c k+2... c n şekline dönüştürülmüş olur. A matrisi (n k) k tipinde bir matris ve I n k matrisi n k mertebeli bir birim matris olsun. Şimdi elemanları F q cisminden alınan n k ranklı (n k) n tipinde bir H matrisini H := (A, I n k ) şeklinde tanımlayalım. Burada c kod kelimeleri olmak üzere c k+1 c k+2... c n kontrol sembolleri Hc T = 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 F 2 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 c 1, c 2, c 3, c 4 için c 1 + c 3 + c 4 + c 5 = 0 c 1 + c 2 + c 4 + c 6 = 0 c 1 + c 2 + c 3 + c 7 = 0 ise c 5, c 6, c 7 kontrol sembolleri c 5 = c 1 + c 3 + c 4 c 6 = c 1 + c 2 + c 4 c 7 = c 1 + c 2 + c 3 elde edilir. Buradan f : F2 4 F2 7 şeklindeki kodlama fonksiyonu (a 1, a 2, a 3, a 4 ) (a 1, a 2, a 3, a 4, a 1 + a 3 + a 4, a 1 + a 2 + a 4, a 1 + a 2 + a 3 ) 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 üzerinde tek bitin hata yapma olasılığı p ile gösterilirse p < 1 kabul edilir. Eğer p = 1 2 2 olursa kanalın çıktısı girişten bağımsız olur ve gönderme işlemi durdurulur. Çünkü 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 olan 2 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 KODLAMA TEORİSİ 2.1 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 := F 2 cismi üzerinde olacaktır. Daha sonraki yapılan incelemeler ise herhangi bir sonlu F q cisminde yapılacaktır. Tanım 2.1.1. Şimdi B = {0, 1} ve n bir pozitif tamsayı olmak üzere B n := {a 1 a 2... a n i = 1, 2, 3,..., n için ai B} olsun. Şimdi B n kümesi üzerinde (toplama) işlemini tanımlayalım. olmak üzere a := a 1 a 2... a n b := b 1 b 2... b n a b := c 1 c 2... c n dir. Burada i = 1, 2, 3,..., n için c i := (a i + b i ) 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. { } B 2 = 00, 01, 10, 11 { } B 3 = 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 C = { } 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, eğer a i = b i ise x i := 1, eğer a i b i ise olmak üzere şeklinde tanımlanır. d(a, b) := n i=1 x i 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) := dir (Chapman 1996) n i=1 a i Ö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 := a 1 a 2... a n b := b 1 b 2... b n olmak üzere a i b i a i + b i = 1 dir. Buradan (a i, b i ) ç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 değerinden düşük olan ikili simetrik kanal durumunda kod çözme 2 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 dir. Diğer taraftan bir C kodlamasında d := min (d(a, b)) a, b C 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 dir (Chapman 1996) d = min a C (wt(a)) 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. B 6 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. wt(e) = 3 olduğundan kodlamada 3 hata olmuştur diyebiliriz. Örnekte 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 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 C için d(b, b ) k + 1 olduğunu ve kanalın n wt(e) = e i k i=1 şeklinde e := e 1 e 2... e n 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 C için olsun. Bu durumda d(b, b ) k ve e := b b wt(b b ) = wt(e) k b e = b b b = b b kod kelimesi hata vektörü bulunamaz Bu bir çelişkidir. Buradan b, b C için d(b, b ) 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 := a 1 a 2... a n ve b := b 1 b 2... b n kod kelimeleri için d(a, b) 2k olsun. Bu durumda dir. Buradan olacak şekilde e, e wt(a b) = s 2k wt(e) k, wt(e ) k ve a b := e e kelimelerini bulabiliriz. Böylece a b = e e e a b = e e e olur. Şimdi her iki tarafa b eklenirse a e = b e dir. Durum (i) s = 2t + 1 olsun. 13

Bu durumda wt(e) = t ve wt(e ) = t + 1 k olduğunu varsayabiliriz. Böylece d(a e, a) = wt(a e a) = wt(e) < wt(e ) = d(b e, b) d(b e, a) = d(a e, a) < d(b e, b) dir. Kod çözme ilkesinin en yakın komşuluk ilkesi ile b e ifadesi a dan veya b den farklı bir kod kelimesine dönüşür. Yani d(b e, a) = d(a e, a) < d(b e, 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 ifadesi D(b e ) a veya D(b e ) b olan bir kod kelimesidir. Böylece wt(e ) k eşitsizliğini sağlayan e 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 ) = t olduğunu varsayabiliriz. Buradan d(a e, a) = wt(e) = t = wt(e ) = d(b e, 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 kelimesi de D(b e ) a veya D(b e ) 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 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 dir. Böylece d(r, b ) k + 1 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 : B 3 B 6 şeklinde bir kodlama fonksiyonu tanımlayalım. Bu durumda B 3 kümesinin eleman sayısı 2 3 = 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 a C (wt(a)) = 3 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 B 6 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 B 6 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 ) = wt(b b ) olacak şekilde b ve b 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(b ) = d(b, 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ığı p k (1 p) n k dır ve k ağırlıklı hata vektörlerinin toplam sayısı n k p k (1 p) n 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ığı p k (1 p) n k dir. Bu durumda k ağırlıklı hata kelimelerinin toplam sayısı ise n k p k (1 p) n 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 a 1 a 2... a n mesajı f : a 1 a 2... a n b 1 b 2... b n b n+1 fonksiyonu ile eğer i = 1, 2, 3,..., n için b i = a i şeklinde ve b n+1 için 0, eğer n i=1 b n+1 := a i = 0 ise 1, eğer n i=1 a i = 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 b 1 b 2... b n b n+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 a 1 mesaj sembolünden meydana gelir ve (n 1) tane olan c 2 = c 3 =... = c n kontrol sembollerinin hepsi a 1 mesaj sembolüne eşittir. Yani a 1 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.999 10000 = 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 = 10 13 hatanın tespit edilme olasılığı = (1 10 9 ) 10000 = 0.99999 Hata düzeltmek için ise bir blokta hata olmama olasılığı = (0.999) 3 = 0.997003 yayılımın düzeltilebilirlik olasılığı = (0.999997) 10000 = 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 log 2 p + (1 p) log 2 (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 1 2 seçilmişti (Pretzel 1992) Teorem 2.1.29. C kodlaması n uzunluklu bir kodlama ve A i, 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ığı dir (Hill 1986) P (C) = n i=1 A ip i (1 p) n i Ö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) = p 2 (1 p) 2 + 2p 3 (1 p) = p 2 p 4 = 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) = g 0 + g 1 x +... + g k x k F[x] polinomu en fazla k dereceli bir polinom olsun. Bu durumda polinom kodunun m uzunluklu her bir a := (a 0, a 1,..., a m 1 ) mesaj kelimesini b := (b 0, b 1,..., b m+k 1 ) şeklinde kod kelimesine dönüştüren g(x) polinomuna üreteç (kodlama) polinomu denir. Burada a := (a 0, a 1,..., a m 1 ) mesaj kelimesine karşılık gelen polinoma a(x) = a 0 + a 1 x +... + a m 1 x m 1 mesaj polinomu adı verilir (Chapman 1996) Bu şekildeki bir polinom kodunda b := (b 0, b 1,..., b m+k 1 ) kod kelimesine karşılık gelen kod polinomu b(x) = b 0 + b 1 x +... + b m+k 1 x m+k 1 = a(x) g(x) şeklinde bulunur. 22

Bir polinom kodunda g(x) = g 0 + g 1 x +... + g k x k F[x] şeklindeki bir üreteç polinomu g 0 0 ve g k 0 olacak şekilde oluşturulur. Önerme 2.2.2. g(x) = g 0 + g 1 x +... + g k x k 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) = g 0 + g 1 x +... + g k x k F[x] polinomu ile üretilen bir polinom kodunda a = (a 0, a 1,..., a m 1 ) b = (b 0, b 1,..., b m 1 ) a ve b iki mesaj kelimesi olsun. Bu mesaj kelimelerine karşılık gelen mesaj polinomları a(x) = a 0 + a 1 x +... + a m 1 x m 1 b(x) = b 0 + b 1 x +... + b m 1 x m 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 + x 2 + x 3 + x 6 şeklindeki bir kod polinomunun ağırlığı wt(x + x 2 + x 3 + x 6 ) = 4 dir. Örnek 2.2.5. B cismi üzerinde 1 + x 2 + x 3 üreteç polinomu ile üretilen 7 uzunluklu bir ikili polinom kodunu gözönüne alalım. Bu durumda 1 + x 2 + x 3 üreteç polinomlu mesaj kelimeleri 4 uzunlukludur. Buradan herhangi bir (a 0, a 1, a 2, a 3 ) mesaj kelimesine karşılık gelen mesaj polinomu a(x) = a 0 + a 1 x + a 2 x 2 + a 3 x 3 dir. Dolayısıyla buna karşılık gelen kod polinomu b(x) = (a 0 + a 1 x + a 2 x 2 + a 3 x 3 ) (1 + x 2 + x 3 ) = a 0 + a 1 x + (a 0 + a 2 ) x 2 + (a 0 + a 1 + a 3 ) x 3 + (a 1 + a 2 ) x 4 +(a 2 + a 3 ) x 5 + a 3 x 6 24

dir. Bu durumda bu kodlamanın kod kelimeleri (a 0, a 1, a 2, a 3 ) (a 0, a 1, a 0 + a 2, a 0 + a 1 + a 3, a 1 + a 2, a 2 + a 3, a 3 ) 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 := (e 0, e 1,..., e n 1 ) hata vektörünün tespit edilememesi için gerek ve yeter şart e := (e 0, e 1,..., e n 1 ) hata vektörüne karşılık gelen e(x) = e 0 + e 1 x +... + e n 1 x n 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 p n mertebeli bir cismin nasıl oluşturulabildiğini hatırlatma amacıyla bir örnekle açıklamak istiyoruz. Şunu belirtmek gereklidir ki burada sadece B := F 2 cisminde kullanacağımız asal polinom bulma, primitif polinom bulma v.b. önemli cebirsel kavramlar ileriki bölümlerde herhangi bir F q := F p n cismi için ayrıntılı olarak incelenecektir. Örnek 2.2.7. Verilen bir B := F 2 cisminde n = 4 dereceli f(x) = x 4 + x + 1 B[x] asal polinomu verilmiş olsun. Bu durumda Bölüm 3 deki Teorem 3.1.5 den / K := B[x] < x 4 + x + 1 > bölüm halkasının bir cisim olduğunu biliyoruz. Oluşturulan bu cismin eleman sayısı (mertebesi) p n = 2 4 = 16 dır. Böylece bir F p cismi üzerinde n dereceli bir asal polinom alarak p n = 2 4 = 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 F q 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. F q 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 m i (x) minimal polinomları bulunur. Bütün bu işlemler sonucunda g(x) üreteç polinomu ( ) g(x) = ekok m 1 (x), m 2 (x),..., m d 1 (x) dir. Teorem 2.3.1. Elemanları F q 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. 2 r 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 x 3 +x+1 primitif polinomu verilmiş olsun. Primitif polinomlar aynı zamanda asal polinom olduklarından / K = B[x] < x 3 + x + 1 > bölüm halkası 8 mertebeli bir cisim olur. Burada K cisminin bir primitif elemanı α = x+ < x 3 + x + 1 > dır. O halde α elemanı α 3 +α+1 = 0, α 7 = 1 eşitliklerini sağlar ve x 3 +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) = x 3 + x + 1 27

dir. Bu durumda mesaj polinomunun derecesi en fazla 3 olmalıdır. Buradan keyfi bir a(x) = a 0 + a 1 x + a 2 x 2 + a 3 x 3 mesaj polinomuna karşılık gelen kod polinomu b(x) = (a 0 + a 1 x + a 2 x 2 + a 3 x 3 ) (x 3 + x + 1) = a 0 + (a 0 + a 1 ) x + (a 1 + a 2 ) x 2 + (a 0 + a 2 + a 3 ) x 3 + (a 1 + a 3 ) x 4 +a 2 x 5 + a 3 x 6 dir. Bu durumda bu kodlamanın kod kelimeleri (a 0, a 1, a 2, a 3 ) (a 0, a 0 + a 1, a 1 + a 2, a 0 + a 2 + a 3, a 1 + a 3, a 2, a 3 ) 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 2 r 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 x 4 + x + 1 primitif polinomu verilmiş olsun. Bu durumda / K = B[x] < x 4 + x + 1 > bölüm halkası 16 mertebeli bir cisim olur. Burada K cisminin bir primitif elemanı α = x+ < x 4 + x + 1 > olsun. Bu durumda α elemanının minimal polinomu m 1 (x) = x 4 + x + 1 dir. Ayrıca Teorem 4.2.14 (v) den m 2 (x) = m 4 (x) = m 1 (x) olur. Şimdi α 3 elemanının minimal polinomunu bulmak zorundayız. Yine α 3, α 6, α 12, α 9 elemanları aynı minimal polinoma sahip olduklarından m 3 (x) = (x α 3 ) (x α 6 ) (x α 9 ) (x α 12 ) = x 4 + x 3 (α 3 + α 6 + α 9 + α 12 ) + x 2 (α 9 + α 12 + α 15 + α 15 + α 18 + α 21 ) +x (α 18 + α 21 + α 24 + α 27 ) + α 30 = x 4 + x 3 (α 3 + α 3 + α 2 + α 3 + α + α 3 + α 2 + α + 1) +x 2 (α 9 + α 12 + α 3 + α 6 ) + x (α 3 + α 6 + α 9 + α 12 ) + 1 = x 4 + x 3 + x 2 + x + 1 Buradan minimum uzaklığı en az 5 olan BCH kodunun üreteç polinomu g(x) = (x 4 + x + 1) (x 4 + x 3 + x 2 + x + 1) = x 8 + x 7 + x 6 + x 4 + 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) = a 0 + a 1 x + a 2 x 2 + a 3 x 3 + a 4 x 4 + a 5 x 5 + a 6 x 6 şeklindeki bir mesaj polinomu için kod polinomu b(x) = a(x) g(x) = (a 0 + a 1 x + a 2 x 2 + a 3 x 3 + a 4 x 4 + a 5 x 5 + a 6 x 6 )(x 8 + x 7 + x 6 + x 4 + 1) = a 0 + a 1 x + a 2 x 2 + a 3 x 3 + (a 4 + a 0 ) x 4 + (a 5 + a 1 ) x 5 +(a 6 + a 2 + a 0 ) x 6 + (a 0 + a 1 + a 3 ) x 7 +(a 0 + a 1 + a 2 + a 4 ) x 8 + (a 1 + a 2 + a 3 + a 5 ) x 9 +(a 2 + a 3 + a 4 + a 6 ) x 10 + (a 3 + a 4 + a 5 ) x 11 +(a 4 + a 5 + a 6 ) x 12 + (a 5 + a 6 ) x 13 + a 6 x 14 şeklindedir. Bu durumda b(x) kod polinomuna karşılık gelen kod kelimeleri (a 0, a 1, a 2, a 3, a 4 + a 0, a 5 + a 1, a 6 + a 2 + a 0, a 0 + a 1 + a 3, a 0 + a 1 + a 2 + a 4, a 1 + a 2 + a 3 + a 5, a 2 + a 3 + a 4 + a 6, a 3 + a 4 + a 5, a 4 + a 5 + a 6, a 5 + a 6, a 6 ) dir. Örnek 2.3.4. 31 uzunluklu ve minimum 5 uzaklıklı bir ikili BCH kodunu verilen bir x 5 + x 2 + 1 B[x] asal polinomu ile oluşturalım. x 5 + x 2 + 1 B[x] asal polinomu ile / F = B[x] < x 5 + x 2 + 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+ < x 5 + x 2 + 1 > elemanı F cisminin bir primitif elemanıdır ve minimal polinomu x 5 + x 2 + 1 polinomudur. Şimdi 1 i 4 için α i elemanlarının minimal polinomlarını m i (x) olarak alırsak m 1 (x) = m 2 (x) = m 4 (x) = x 5 + x 2 + 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 m 3 (x) = (x α 3 ) (x α 6 ) (x α 12 ) (x α 17 ) (x α 24 ) dir. Buradan m 3 (x) polinomunda x 4 ü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 x 3 ü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 x 2 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 m 3 (x) = x 5 + x 4 + x 3 + x 2 + 1 olur. Bu durumda B cismi üzerinde 31 uzunluklu BCH kodunun üreteç polinomu g(x) = ekok(m 1 (x), m 2 (x), m 3 (x), m 4 (x)) = ekok(m 1 (x), m 3 (x)) = m 1 (x) m 3 (x) = (x 5 + x 2 + 1)(x 5 + x 4 + x 3 + x 2 + 1) = x 10 + x 9 + x 8 + x 6 + x 5 + x 3 + 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 p n 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 Z p := nin bir cisim olduğunu biliyoruz. Diğer yandan F p := { } [0], [1], [2],..., [p 1] { } 0, 1, 2,..., p 1 kümesini gözönüne alalım. Z p deki her denklik sınıfında 0 a p 1 olan bir tek a tamsayı olacağından µ([a]) := a olacak şekilde µ : Z p F p fonksiyonunu tanımlayabiliriz. Burada ( ) µ [a] + [b] = µ([a]) + µ([b]) 34

ve ( ) µ [a][b] = µ([a])µ([b]) olacağından µ : Z p F p bir izomorfizm olacaktır. Bu durumda µ fonksiyonu ile Z p cismindeki cisim yapısı F p ü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 (a + b) pn = a pn + b pn ve (a b) pn = a pn b pn özellikleri sağlanır. Bundan sonraki işlemlerimizde keyfi bir cisim F ifadesi ile gösterilecektir. Teorem 3.1.4. a F, e 1, e 2,..., e k Z + ve p 1, p 2,..., p k polinomları F[x] polinomlar halkasında farklı monik, asal polinomlar olsun. Bu durumda her f F[x] polinomu şeklinde tek türlü olarak yazılabilir. f = a p e 1 1 p e 2 2... p e k k / 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) = a 0 + a 1 x + a 2 x 2 +... + a n x n F[x] polinomu için f = f (x) := a 1 + 2a 2 x +... + na n x n 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 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 {a 0, a 1,..., a n } elemanları F cisminin n + 1 tane farklı elemanı ve {b 0, b 1,..., b n } 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(a i ) = b i şeklinde bir f F[x] polinomu vardır öyle ki f(x) = n i=0 b i n k=0 k i (a i a k ) 1 (x a k ) 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 F p 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 F p 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. } Eğer M = {θ 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 { } 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 m 1 (x) K[x] üreteci vardır. Eğer a ifadesi m 1 (x) polinomunun baş katsayısı ise m(x) := a 1 m 1 (x) şeklinde tanımlanan m(x) K[x] polinomu deg(m(x)) = deg(m 1 (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 r(θ) = 0 veya s(θ) = 0 olur. Bu durumda 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. genişlemeler bir sonlu genişleme olup cebirseldir. Basit 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. } (2.) [K(θ) : K] = n olup {1, θ, θ 2,..., θ n 1 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