Το μόνο, ίσως, μειονέκτημά τους είναι ότι το μήκος τους υπόκειται σε περιορισμό από το πλήθος των στοιχείων του σώματος επί του οποίου ορίζονται.

Σχετικά έγγραφα
ΚΕΦΑΛΑΙΟ 2. Γραμμικοί Κώδικες. 2.1 Η έννοια του Γραμμικού κώδικα

ΚΕΦΑΛΑΙΟ 3. Πολυωνυμικοί-Κυκλικοί Κώδικες. 3.1 Πολυωνυμικοί κώδικες

ΚΕΦΑΛΑΙΟ 4. Ενδιαφέροντες'' Κώδικες

Ποιες από τις παρακάτω προτάσεις είναι αληθείς; Δικαιολογήστε την απάντησή σας.

Ασκήσεις1 Πολυώνυμα. x x c. με το. b. Να βρεθούν όλες οι τιμές των a, Να βρεθεί ο μκδ και το εκπ τους

Ασκήσεις3 Διαγωνισιμότητα Βασικά σημεία Διαγωνίσιμοι πίνακες: o Ορισμός και παραδείγματα.

b. Για κάθε θετικό ακέραιο m και για κάθε A. , υπάρχουν άπειρα το πλήθος πολυώνυμα ( x) [ x] m και ( A) 0.

Ασκήσεις3 Διαγωνίσιμες Γραμμικές Απεικονίσεις

Θέµατα ( ικαιολογείστε πλήρως όλες τις απαντήσεις σας)

βαθμού 1 με A 2. Υπολογίστε τα χαρακτηριστικά και ελάχιστα πολυώνυμα των

ΚΕΦΑΛΑΙΟ 3 ΤΟ ΔΙΩΝΥΜΙΚΟ ΘΕΩΡΗΜΑ

1.3 Ιδεώδη και Περιοχές κυρίων Ιδεωδών 1.3. Ι Π Ι. Για το σύμβολο δεχόμαστε ότι n N {0}, < n καθώς και ότι:

9 Πολυώνυμα Διαίρεση πολυωνύμων

Δακτύλιοι και Πρότυπα Ασκήσεις 6. Η ύλη των ασκήσεων αυτών είναι η Ενότητα6, Εφαρμογές Θεωρημάτων Δομής στη Γραμμική Αλγεβρα.

Μεταθέσεις και πίνακες μεταθέσεων

Ασκήσεις4 48. P AP τριγωνικό. Αφού δείξτε ότι ο A δεν είναι διαγωνίσιμος, βρείτε αντιστρέψιμο A 1 3 1

Αριθμητική Ανάλυση και Εφαρμογές

1. Για καθένα από τους ακόλουθους διανυσματικούς χώρους βρείτε μια βάση και τη διάσταση. 3. U x y z x y z x y. {(,, ) } a b. c d

Διδάσκων: Καθηγητής Μαρμαρίδης Νικόλαος - Θεοδόσιος

Κεφάλαιο 1 Πρότυπα. Στο κεφάλαιο αυτό εισάγουμε την έννοια του προτύπου πάνω από δακτύλιο.

Εφαρμοσμένα Μαθηματικά ΙΙ 9ο Σετ Ασκήσεων (Λύσεις) Διανυσματικοί Χώροι

Αριθμητική Ανάλυση και Εφαρμογές

(a + b) + c = a + (b + c), (ab)c = a(bc) a + b = b + a, ab = ba. a(b + c) = ab + ac

ΚΕΦΑΛΑΙΟ 6. Κώδικες και συνδυαστικές κατασκευές. 6.1 Σχεδιασμοί και Κώδικες

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ Ι (ΑΡΤΙΟΙ) Ασκησεις - Φυλλαδιο 4

Τι είναι βαθμωτό μέγεθος? Ένα μέγεθος που περιγράφεται μόνο με έναν αριθμό (π.χ. πίεση)

ΚΕΦΑΛΑΙΟ 8: Εφαρμογή: Το θεώρημα του Burnside

ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΜΑΘΗΜΑΤΙΚΑ Ι (ΘΕ ΠΛΗ 12) ΕΡΓΑΣΙΑ 2 η Ημερομηνία Αποστολής στον Φοιτητή: 28 Νοεμβρίου 2011

Παραδείγματα (1 ο σετ) Διανυσματικοί Χώροι

Θέµατα ( ικαιολογείστε πλήρως όλες τις απαντήσεις σας)

Γραμμική Άλγεβρα II Εαρινό εξάμηνο

ΚΕΦΑΛΑΙΟ 1: Πρότυπα. x y x z για κάθε x, y, R με την ιδιότητα 1R. x για κάθε x R, iii) υπάρχει στοιχείο 1 R. ii) ( x y) z x ( y z)

1. Να χαρακτηρίσετε τις προτάσεις που ακολουθούν γράφοντας την ένδειξη Σωστό ή Λάθος και να δικαιολογήσετε την απάντησή σας.

Παραδείγματα Διανυσματικοί Χώροι Ι. Λυχναρόπουλος

2ογελ ΣΥΚΕΩΝ 2ογελ ΣΥΚΕΩΝ ΠΟΛΥΩΝΥΜΙΚΕΣ ΣΥΝΑΡΤΗΣΕΙΣ Β Λυκει(ου ΠΟΛΥΩΝΥΜΙΚΕΣ ΣΥΝΑΡΤΗΣΕΙΣ

Αλγεβρικές Δομές ΙΙ. 1 Ομάδα I. Ά σ κ η σ η 1.1 Έστω R ένας δακτύλιος. Δείξτε ότι το σύνολο

KΕΦΑΛΑΙΟ 1 ΧΡΗΣΙΜΕΣ ΜΑΘΗΜΑΤΙΚΕΣ ΕΝΝΟΙΕΣ. { 1,2,3,..., n,...

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ Ι (ΠΕΡΙΤΤΟΙ) Ασκησεις - Φυλλαδιο 4

ΠΑΡΑΡΤΗΜΑ Αʹ. Στοιχεία από την Άλγεβρα

Α Δ Ι. Παρασκευή 25 Οκτωβρίου Ασκηση 1. Στο σύνολο των πραγματικών αριθμών R ορίζουμε μια σχέση R R R ως εξής:

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr

L = F +. Είναι, 1 F, άρα και 1 L. Επεκτείνουµε τις πράξεις του F έτσι ώστε

Βασική Άλγεβρα. Ασκήσεις (εκδοχή )

ΚΕΦΑΛΑΙΟ 4: Ριζικό του Jacobson

Ασκήσεις2 8. ; Αληθεύει ότι το (1, 0, 1, 2) είναι ιδιοδιάνυσμα της f ; b. Να βρεθούν οι ιδιοτιμές και τα ιδιοδιανύσματα της γραμμικής απεικόνισης 3 3

Εφαρμοσμένα Μαθηματικά ΙΙ

Γραμμική Άλγεβρα II. Ασκήσεις με Υποδείξεις - Απαντήσεις. Περιεχόμενα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ Τμήμα Φυσικής Σημειώσεις Ανάλυσης Ι (ανανεωμένο στις 5 Δεκεμβρίου 2012)

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ (ΗΥ-119)

Εφαρμοσμένα Μαθηματικά ΙΙ

Αλγεβρικες οµες ΙΙ. ιδάσκουσα : Χ. Χαραλάµπους. Θέµατα προηγουµένων ετών

12. ΑΝΙΣΩΣΕΙΣ Α ΒΑΘΜΟΥ. είναι δύο παραστάσεις μιας μεταβλητής x πού παίρνει τιμές στο

1. a. Έστω b. Να βρεθούν οι ιδιοτιμές και τα ιδιοδιανύσματα του A Έστω A και ( x) [ x]

Εφαρμοσμένα Μαθηματικά ΙΙ Τελική Εξέταση Ι. Λυχναρόπουλος

,..., v n. W πεπερασμένα παραγόμενοι και dimv. Τα ακόλουθα είναι ισοδύναμα f είναι ισομορφιμός. f είναι 1-1. f είναι επί.

Παραδείγματα (2) Διανυσματικοί Χώροι

Γραμμική Άλγεβρα Ενότητα 2: Διανυσματικοί χώροι

a = a a Z n. a = a mod n.

ΚΕΦΑΛΑΙΟ 7: Αναπαραστάσεις Πεπερασμένων Ομάδων Ι

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ Ι (ΑΡΤΙΟΙ) Προτεινοµενες Ασκησεις - Φυλλαδιο 4

Περιεχόμενα. Πρόλογος 3

Αριθμητική Ανάλυση και Εφαρμογές

7 Μάθημα Πορεία μελέτης Ακόμη μία Άσκηση

8.1 Διαγωνοποίηση πίνακα

Παραδείγματα (2 ο σετ) Διανυσματικοί Χώροι Επιμέλεια: Ι. Λυχναρόπουλος

1 Η εναλλάσσουσα ομάδα

Κεφάλαιο 4 Διανυσματικοί Χώροι

Παραδείγματα Ιδιοτιμές Ιδιοδιανύσματα

ΚΕΦΑΛΑΙΟ 6: Κεντρικές Απλές Άλγεβρες

Κώδικες Reed - Solomon. και. Βασικές Επεκτάσεις τους

n ίδια n διαφορετικά n n 0 n n n 1 n n n n 0 4

Βασική Άλγεβρα. Ασκήσεις (εκδοχή )

ΚΕΦΑΛΑΙΟ 2: Ημιαπλοί Δακτύλιοι

Κεφάλαιο 4 Διανυσματικοί Χώροι

f(t) = (1 t)a + tb. f(n) =

Kεφάλαιο 4. Συστήματα διαφορικών εξισώσεων. F : : F = F r, όπου r xy

Θεωρία Galois. Πρόχειρες σημειώσεις (εκδοχή )

Καναλιού. Καναλιού. Προχωρημένα Θέματα Τηλεπικοινωνιών. Κατηγορίες Κωδικών Καναλιού. Τι πετυχαίνει η Κωδ. Καναλιού. Κωδικοποίηση Καναλιού.

Κεφάλαιο 5. Το Συμπτωτικό Πολυώνυμο

2.0 ΔΙΑΝΥΣΜΑΤΙΚΟΙ ΧΩΡΟΙ ΚΑΙ ΓΡΑΜΜΙΚΑ ΣΥΣΤΗΜΑΤΑ

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ Ι (ΠΕΡΙΤΤΟΙ) Προτεινοµενες Ασκησεις - Φυλλαδιο 4

A, και εξετάστε αν είναι διαγωνίσιμη.

Α Δ Ι. Παρασκευή 15 Νοεμβρίου Ασκηση 1. Να ευρεθεί η τάξη τού στοιχείου a τής ομάδας (G, ), όπου. (4) a = ( 1 + i 3)/2, (G, ) = (C, ),

Γραµµικη Αλγεβρα ΙΙ Ασκησεις - Φυλλαδιο 10

Ε Μέχρι 18 Μαΐου 2015.

Τμήμα Μηχανικών Οικονομίας και Διοίκησης Εφαρμοσμένη Θεωρία Πινάκων. Quiz 3. Σύντομες Λύσεις

Α Δ Ι. Δευτέρα 13 Ιανουαρίου 2014

α) f(x(t), y(t)) = 0,

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ ΙΙ (ΠΕΡΙΤΤΟΙ) Ασκησεις - Φυλλαδιο 9 Επαναληπτικες Ασκησεις

Περιεχόμενα. Πρόλογος 3

Pr(10 X 15) = Pr(15 X 20) = 1/2, (10.2)

Πεπερασμένα σώματα και Κρυπτογραφία Σύμφωνα με τις παραδόσεις του Α. Κοντογεώργη. Τσουκνίδας Ι.

ΤΕΤΥ Εφαρμοσμένα Μαθηματικά 1. Τελεστές και πίνακες. 1. Τελεστές και πίνακες Γενικά. Τι είναι συνάρτηση? Απεικόνιση ενός αριθμού σε έναν άλλο.

Μαθηματικά Γ Γυμνασίου

G 1 = G/H. I 3 = {f R : f(1) = 2f(2) ή f(1) = 3f(2)}. I 5 = {f R : f(1) = 0}.

Ασκήσεις6 Διαγωνοποίηση Ερμιτιανών Πινάκων

- ΟΡΙΟ - ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ ΕΝΟΤΗΤΑ 6: ΜΗ ΠΕΠΕΡΑΣΜΕΝΟ ΟΡΙΟ ΣΤΟ

ΕΝΑΣ ΔΙΚΡΙΤΗΡΙΟΣ ΑΛΓΟΡΙΘΜΟΣ SIMPLEX

Ισότητα, Αλγεβρικές και Αναλυτικές Ιδιότητες Πραγματικών Ακολουθιών

Transcript:

ΚΕΦΑΛΑΙΟ 5 Κώδικες Reed-Solomo και συναφείς κώδικες To 1959 o Hocqueghe και, ανεξάρτητα, το 1960 οι Bose Ray-Chaudhuri επινόησαν μια κατηγορία κωδίκων τους λεγόμενους BCH κώδικες. Οι κώδικες αυτοί είναι πολύ σημαντικοί για πολλούς λόγους. Για παράδειγμα, έχουν ικανότητα διόρθωσης μεγάλου αριθμού λαθών ακόμη και αν το μήκος τους είναι σχετικά μικρό. Η κωδικοποίηση και αποκωδικοποίση γίνεται σχετικά εύκολα. Αποτελούν την βάση για κατασκευή άλλων κωδίκων. Το σπουδαιότερο όμως είναι ότι μπορούν να κατασκευασθούν επί ενός πεπερασμένου σώματος με επιθυμητή ελάχιστη απόσταση (κώδικες προσχεδιασμένης απόστασης). Το μόνο, ίσως, μειονέκτημά τους είναι ότι το μήκος τους υπόκειται σε περιορισμό από το πλήθος των στοιχείων του σώματος επί του οποίου ορίζονται. Αν και αρχικά είχαν επινοηθεί και μελετηθεί επί ενός πεπερασμένου σώματος χαρακτηριστικής 2 (και μάλιστα μόνον ορισμένες ειδικές περιπτώσεις), σχεδόν αμέσως η μελέτη τους γενικεύθηκε το 1961, από τους Gorestei και Zierler, επί πεπερασμένων σωμάτων οποιασδήποτε χαρακτηριστικής p. 305

306 Κεφάλαιο 5. Κώδικες Reed-Solomo και συναφείς κώδικες 5.1 BCH Κώδικες Έστω F ένα πεπερασμένο σώμα με q το πλήθος στοιχεία. Έστω, δ θετικοί ακέραιοι με 2 δ και b ένας μη αρνητικός ακέραιος. Θα κατασκευάσουμε έναν πολυωνυμικό κώδικα επί του F με μήκος και ελάχιστη απόσταση τουλάχιστον ίση με δ. Επιλέγουμε τον ελάχιστο θετικό ακέραιο s με την ιδιότητα q s + 1.¹ Έστω K μια επέκταση του σώματος F βαθμού s και α ένα πρωταρχικό στοιχείο του σώματος K. Για κάθε 0 i δ 2 έστω m i+1 (x) το ελάχιστο πολυώνυμο του α b+i επί του F και γ(x) = εκπ( m i+1 (x), 0 i δ 2). Δηλαδή το πολυώνυμο γ(x) είναι το μικροτέρου βαθμού μονικό πολυώνυμο επί του F, το οποίο έχει ως ρίζες τα στοιχεία α b, α b+1,, α b+δ 2. (Παρατηρήστε ότι οι εκθέτες του α στις ρίζες του πολυωνύμου γ(x) είναι διαδοχικοί ακέραιοι). Ορισμός 5.1.1. Ο πολυωνυμικός κώδικας (ιδέ τον Ορισμό 3.1.3) BCH = BCH(, δ, α, b) μήκους με γεννήτορα πολυώνυμο το πολυώνυμο γ(x) F[x] ονομάζεται BCH κώδικας προσχεδιασμένης απόστασης δ επί του σώματος F. Διαφορετικά θα μπορούσαμε να ορίσουμε έναν BCH κώδικα ως εξής: BCH(, δ, α, b) = { f(x) F 1 [x] α b+i είναι ρίζα του f(x) για όλα τα 0 i δ 2 } = {r = r 0 r 1 r 1 το πολυώνυμο r 0 + r 1 x + + r 1 x 1 F 1 [x] έχει ως ρίζες τα α b+i για όλα τα 0 i δ 2}. Παρατηρήσεις 5.1.2. 1. Έστω k ο βαθμός του πολυωνύμου γ(x), τότε, επειδή κάθε πολυώνυμο m i (x) διαιρεί το πολυώνυμο x qs 1 1 (γιατί;), έχουμε ότι k q s 1. Αυτό δεν είναι αρκετό για να μπορεί να ορισθεί ένας BCH κώδικας. Αναγκαστικά θα πρέπει να ισχύει k 1 q s 2. ¹Στην πράξη οι πλέον ενδιαφέρουσες περιπτώσεις είναι όταν ο είναι διαιρέτης του q s 1. Για τον λόγο αυτόν πολλοί συγγραφείς θέτουν αυτή την υπόθεση στον ορισμό.

5.1. BCH Κώδικες 307 Θα δούμε στα επόμενα ικανές συνθήκες (ως προς τα, δ, και b) ώστε πράγματι να μπορεί να ορισθεί ένας BCH κώδικας. (Πρόταση 5.1.7). 2. Στην πράξη ο μη αρνητικός ακέραιος b δεν χρειάζεται να υπερβαίνει τον q s 1 (γιατί;). Όπως επίσης δεν είναι ανάγκη να υποτεθεί μη αρνητικός (γιατί;). 3. Όπως έχουμε επισημάνει πολλοί θέτουν τον περιορισμό, από την αρχή, ο να διαιρεί τον q s 1. Άλλοι δεν απαιτούν το στοιχείο α να είναι πρωταρχικό στοιχείο του σώματος K, αλλά να είναι ένα στοιχείο τάξης. Στην περίπτωση αυτή έπεται ότι, αφ ενός μεν ο διαιρεί τον q s 1, αφ ετέρου δε ότι ο κώδικας είναι κυκλικός (γιατί;). Οι περιπτώσεις αυτές αποτελούν τις πλέον ενδιαφέρουσες και στα επόμενα θα επισημαίνεται αυτό. 4. Από τον τρόπο ορισμού ενός BCH κώδικα BCH(, δ, α, b) ο κώδικας αυτός εξαρτάται (και) από την επιλογή του πρωταρχικού στοιχείου α. Επομένως γεννάται το ερώτημα, αν επιλέξουμε ένα άλλο πρωταρχικό στοιχείο β, τί σχέση έχουν οι δύο κώδικες: BCH(, δ, α, b) και BCH(, δ, β, b); (βλέπε την άσκηση 2 στο τέλος της παραγράφου). Στην ειδική περίπτωση όπου b = 1 ο κώδικας: BCH(, δ, α, 1) = BCH(, δ, α) ονομάζεται υπό την στενή έννοια BCH κώδικας. Στην ειδική περίπτωση όπου q s = + 1, ο κώδικας BCH(q s 1, δ, α, b) ονομάζεται πρωταρχικός BCH κώδικας. Στην πλέον δε ειδική περίπτωση, όπου s = 1, δηλαδή = q 1 ο κώδικας BCH(q 1, δ, α, b) ονομάζεται κώδικας Reed-Solomo. Οι ειδικές αυτές περιπτώσεις παρουσιάζουν μεγαλύτερο πρακτικό ενδιαφέρον και είχαν μελετηθεί πριν από την γενική περίπτωση των BCH κωδίκων. Στην περίπτωση ενός πρωταρχικού BCH κώδικα ( = q s 1) το πρωταρχικό στοιχείο α του σώματος K είναι μια -οστη πρωταρχική ρίζα της μονάδας

308 Κεφάλαιο 5. Κώδικες Reed-Solomo και συναφείς κώδικες και ο αντίστοιχος (πρωταρχικός) BCH κώδικας είναι κυκλικός (βλέπε και την τελευταία από τις προηγούμενες παρατηρήσεις). Θεώρημα 5.1.3. Σε έναν BCH κώδικα BCH(, δ, α, b) με γεννήτορα πολυώνυμο γ(x) για την ελάχιστη απόστασή του, έστω d, ισχύει deg(γ(x)) + 1 d δ. Απόδειξη. Θεωρούμε τον δ 1 πίνακα: 1 α b (α b ) 2 (α b ) 1 1 α b+1 (α b+1 ) 2 (α b+1 ) 1 H = 1 α b+2 (α b+2 ) 2 (α b+2 ) 1. 1 α b+δ 2 (α b+δ 2 ) 2 (α b+δ 2 ) 1 Παρατηρούμε ότι κάθε δ 1 δ 1 υποπίνακας του πίνακα H είναι ο ανάστροφος πίνακας ενός πίνακα Vadermode, άρα αντιστρέψιμος. Επομένως κάθε δ 1 το πλήθος στήλες του πίνακα H είναι γραμμικά ανεξάρτητες, ενώ κάθε δ το πλήθος στήλες είναι γραμμικά εξαρτημένες. Υποθέτουμε ότι υπάρχει ένα στοιχείο c = c 0 c 1 c 2 c 1 του κώδικα με βάρος w μικρότερο από δ. Από τον τρόπο ορισμού του κώδικα BCH(, δ, α, b) έχουμε ότι το στοιχείο c = c 0 c 1 c 1 ανήκει στον κώδικα αν και μόνο αν (c 0, c 1,, c 1 ) H t = 0. Από την σχέση αυτή βλέπουμε ότι οι w το πλήθος στήλες του πίνακα H που αντιστοιχούν στα μη μηδενικά στοιχεία της (κωδικο)λέξης c είναι γραμμικά εξαρτημένες, άτοπο. Άρα d δ. Διαφορετικά θα μπορούσαμε να επιχειρηματολογίσουμε ως εξής: Αν c ήταν μια (κωδικο)λέξη με βάρος ίσο με την ελάχιστη απόσταση d του κώδικα, τότε πάλι από την σχέση ch t = 0, έχουμε ότι d το πλήθος στήλες του πίνακα που αντιστοιχούν στα μη μηδενικά στοιχεία της c είναι γραμμικά εξαρτημένες, δηλαδή δ d. O κώδικας BCH(, δ, α, b) είναι πολυωνυμικός με γεννήτορα πολυώνυμο το γ(x). Από την Παρατήρηση 3.1.5 έχουμε ότι η διάσταση του κώδικα είναι ίση με deg(γ(x)). Γνωρίζουμε όμως ότι d ( deg(γ(x))) + 1 = deg(γ(x))+1 (φράγμα του Sigleto για γραμμικούς κώδικες Πρόταση 2.1.13). ό.έ.δ.

5.1. BCH Κώδικες 309 Παρατηρήσεις 5.1.4. 1. H σχέση d δ δικαιολογεί την ονομασία προσχεδιασμένη απόσταση. Στα επόμενα θα δούμε περιπτώσεις, όπου έχουμε ισότητα και περιπτώσεις όπου έχουμε γνήσια ανισότητα. 2. H απόδειξη του προηγουμένου θεωρήματος είναι στην πραγματικότητα η απόδειξη της Πρότασης 2.2.25. Εκεί είχαμε έναν πίνακα ελέγχου ισοτιμίας του κώδικα. Εδώ ο πίνακας H δεν είναι πίνακας ελέγχου ισοτιμίας του κώδικα BCH(, δ, α, b). Περισσότερα επ αυτού στα επόμενα. 3. Υπάρχουν περιπτώσεις όπου d = deg(γ(x)) + 1. Δηλαδή υπάρχουν BCH κώδικες, οι οποίοι είναι μέγιστης απόστασης. Στο προηγούμενο θεώρημα, για να δείξουμε ότι η ελάχιστη απόσταση του κώδικα φράσσεται (από κάτω) από την προσχεδιασμένη τιμή δ, κρίσιμο σημείο ήταν η ύπαρξη πινάκων Vadermode. Αυτό οφείλεται στο ότι οι ρίζες του γεννήτορα πολυωνύμου είναι τα στοιχεία α b, α b+1,, α b+δ 2, τα οποία είναι δυνάμεις του ίδίου στοιχείου α με εκθέτες διαδοχικούς ακεραίους. Επομένως θα μπορούσαμε να γενικεύσουμε σε τυχαίους κυκλικούς κώδικες. Πρόταση 5.1.5. (Το φράγμα BCH) Έστω ω μια πρωταρχική -οστή ρίζα της μονάδας επί του πεπερασμένου σώματος F και C ένας κυκλικός κώδικας μήκους με γεννήτορα πολυώνυμο g(x) F[x]. Υποθέτουμε ότι μεταξύ των ριζών του g(x) είναι και τα δ 1 το πλήθος στοιχεία ω b, ω b+1,, ω b+δ 2, όπου b 0. Τότε η ελάχιστη απόσταση του κώδικα C είναι τουλάχιστον ίση με δ. Απόδειξη. Η απόδειξη είναι ακριβώς η ίδια με το πρώτο μέρος της απόδειξης του προηγουμένου θεωρήματος. ό.έ.δ. Παραδείγματα 5.1.6. 1. Θα κατασκευάσουμε έναν δυαδικό υπό την στενή έννοια BCH κώδικα (b = 1) μήκους = 7 και προσχεδιασμένης απόστασης δ = 3.

310 Κεφάλαιο 5. Κώδικες Reed-Solomo και συναφείς κώδικες Σύμφωνα με τον ορισμό 5.1.1 θα πρέπει να κατασκευάσουμε μια επέκταση K του σώματος Z 2 βαθμού s = 3 (καθότι πρέπει να ισχύει 2 3 7 + 1 = 8). Δηλαδή θα έχουμε έναν πρωταρχικό κώδικα. Το πολυώνυμο x 3 + x + 1 Z 2 [x] είναι ανάγωγο επί του Z 2, οπότε έχουμε το σώμα K = Z 2 [x]/ x 3 + x + 1, το οποίο είναι μια επέκταση του Z 2 βαθμού 3. Το στοιχείο α = x + x 3 + x + 1 είναι πρωταρχικό στοιχείο του σώματος K (γιατί;) με ελάχιστο πολυώνυμο (επί του Z 2 ) το m 1 (x) = x 3 +x+1, αλλά και το στοιχείο α 2 έχει το ίδιο ελάχιστο πολυώνυμο (γιατί;). Συνεπώς το πολυώνυμο γεννήτορας του BCH κώδικα που αναζητούμε είναι το πολυώνυμο γ(x) = x 3 + x + 1. Οπότε η διάσταση του κώδικα είναι ίση με deg(γ(x)) = 7 3 = 4 και σύμφωνα με το προηγούμενο θεώρημα έχουμε ότι η ελάχιστη απόσταση ικανοποιεί την σχέση 4 d 3. Επειδή το πολυώνυμο γεννήτορας έχει τρεις μη μηδενικούς όρους, η ελάχιστη απόσταση του κώδικα ισούται με τρία. Αν θελήσουμε να περιγράψουμε τα στοιχεία του κώδικα, έχουμε: BCH = { f(x) x 3 + x + 1 f(x) = a 3 x 3 + a 2 x 2 + a 1 x + a 0, a i Z 2 } = { (a 0, a 1 + a 0, a 2 + a 1, a 3 + a 2 + a 0, a 3 + a 1, a 2, a 3 ) a i Z 2 }. 2. Θα κατασκευάσουμε έναν δυαδικό υπό την στενή έννοια BCH κώδικα (b = 1) μήκους = 15, ο οποίος θα διορθώνει (τουλάχιστον) 2 λάθη. Θα πρέπει να κατασκευάσουμε μια επέκταση K του σώματος Z 2 βαθμού s = 4 (καθότι πρέπει να ισχύει 2 4 15 + 1 = 16). Δηλαδή θα έχουμε έναν πρωταρχικό κώδικα. Επίσης, επειδή θέλουμε να διορθώνει (τουλάχιστον) 2 λάθη, η προσχεδιασμένη απόσταση θα είναι ίση δ = 5. Όπως στο προηγούμενο παράδειγμα το πολυώνυμο x 4 + x + 1 Z 2 [x] είναι ανάγωγο επί του Z 2, οπότε έχουμε το σώμα K = Z 2 [x]/ x 4 +x+1, το οποίο είναι μια επέκταση του Z 2 βαθμού 4. Το στοιχείο α = x+ x 4 + x + 1 είναι πρωταρχικό στοιχείο του σώματος K (γιατί;) με ελάχιστο πολυώνυμο (επί του Z 2 ) το m 1 (x) = x 4 + x + 1.

5.1. BCH Κώδικες 311 Το πολυώνυμο γεννήτορας του BCH κώδικα που αναζητούμε, το πολυώνυμο γ(x), είναι το μικροτέρου βαθμού μονικό πολυώνυμο επί του Z 2, το οποίο έχει ως ρίζες τα στοιχεία α, α 2, α 3, α 4. Αλλά τα στοιχεία α 2, α 4 έχουν το ίδιο ελάχιστο πολυώνυμο με το στοιχείο α (γιατί;). Συνεπώς γ(x) = m 1 (x)m 3 (x). Επομένως πρέπει να υπολογίσουμε το m 3 (x), το ελάχιστο πολυώνυμο του α 3. Έχουμε m 3 (x) = (x α 3 )(x α 6 )(x α 9 )(x α 12 ). Το στοιχείο α ικανοποιεί τις σχέσεις α 15 = 1 και α 4 + α + 1 = 0. Οπότε κάνοντας τις πράξεις στο δεξιό μέρος της σχέσης m 3 (x) = (x α 3 )(x α 6 )(x α 9 )(x α 12 ) καταλήγουμε ότι m 3 (x) = x 4 + x 3 + x 2 + x + 1 (να κάνετε τις πράξεις και να επιβεβαιώσετε το αποτέλεσμα). Άρα γ(x) = m 1 (x)m 3 (x) = (x 4 + x + 1)(x 4 + x 3 + x 2 + x + 1) = x 8 + x 7 + x 6 + x 4 + 1. Οπότε η διάσταση του κώδικα είναι ίση με deg(γ(x)) = 15 8 = 7 και σύμφωνα με το προηγούμενο θεώρημα έχουμε ότι η ελάχιστη απόσταση ικανοποιεί την σχέση 9 d 5. Επειδή το πολυώνυμο γεννήτορας έχει πέντε μη μηδενικούς όρους, η ελάχιστη απόσταση του κώδικα ισούται με πέντε. Άρα ο κώδικας που κατασκευάσαμε μπορεί να περιγρφεί ως εξής: BCH(15, 5, α) = { f(x) (Z 2 ) 14 [x] α 1+i είναι ρίζα του f(x) για όλα τα 0 i 3} = {(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, a 2, a 3, a 4, a 5, a 6 Z 2 } = {r = r 0 r 1 r 14 το πολυώνυμο r 0 + r 1 x + + r 14 x 14 (Z 2 ) 14 [x] έχει ως ρίζες τα α 1+i για όλα τα 0 i 3}. 3. Θα κατασκευάσουμε έναν τριαδικό υπό την στενή έννοια BCH κώδικα (b = 1) μήκους = 8, ο οποίος θα διορθώνει (τουλάχιστον) 2 λάθη. Θα πρέπει να κατασκευάσουμε μια επέκταση K του σώματος Z 3 βαθμού s = 2 (καθότι πρέπει να ισχύει 3 2 8 + 1 = 9). Δηλαδή θα έχουμε

312 Κεφάλαιο 5. Κώδικες Reed-Solomo και συναφείς κώδικες έναν πρωταρχικό κώδικα. Επίσης, επειδή θέλουμε να διορθώνει (τουλάχιστον) 2 λάθη, η προσχεδιασμένη απόσταση θα είναι ίση δ = 5. Όπως στα προηγούμενα παραδείγματα επιλέγουμε το πολυώνυμο x 2 + x+2 Z 3 [x], το οποίο είναι ανάγωγο επί του Z 3, οπότε έχουμε το σώμα K = Z 3 [x]/ x 2 + x + 2, το οποίο είναι μια επέκταση του Z 3 βαθμού 2. Το στοιχείο α = x+ x 2 +x+2 είναι πρωταρχικό στοιχείο του σώματος K (γιατί;) με ελάχιστο πολυώνυμο (επί του Z 3 ) το m 1 (x) = x 2 + x + 2. Το πολυώνυμο γεννήτορας του BCH κώδικα που αναζητούμε, το πολυώνυμο γ(x), είναι το μικροτέρου βαθμού μονικό πολυώνυμο επί του Z 3, το οποίο έχει ως ρίζες τα στοιχεία α, α 2, α 3, α 4. Αλλά το στοιχείο α 3 έχει το ίδιο ελάχιστο πολυώνυμο με το στοιχείο α (γιατί;), όπως επίσης τα στοιχεία α 2 και α 6. Συνεπώς γ(x) = m 1 (x)m 2 (x)m 4 (x). Επομένως πρέπει να υπολογίσουμε τα m 2 (x) και m 4 (x). Το στοιχείο α ικανοποιεί τη σχέση α 8 = 1. Επομένως εύκολα βλέπουμε ότι α 4 = 2. Συνεπώς: m 2 (x) = (x α 2 )(x α 6 ) = (x α 2 )(x 2α 2 ) = x 2 + 2α 4 = x 2 + 1. Eπίσης m 4 (x) = x α 4 = x 2 = x + 1. Άρα: γ(x) = m 1 (x)m 2 (x)m 4 (x) = (x 2 + x + 2)(x 2 + 1)(x + 1) = x 5 + 2x 4 + x 3 + x 2 + 2. Οπότε η διάσταση του κώδικα είναι ίση με deg(γ(x)) = 8 5 = 3 και σύμφωνα με το προηγούμενο θεώρημα έχουμε ότι η ελάχιστη απόσταση ικανοποιεί την σχέση 5 + 1 d 5. Επειδή το πολυώνυμο γεννήτορας έχει πέντε μη μηδενικούς όρους, η ελάχιστη απόσταση του κώδικα ισούται με πέντε.

5.1. BCH Κώδικες 313 Άρα ο κώδικας που κατασκευάσαμε μπορεί να περιγραφεί ως εξής: BCH(8, 5, α) = { f(x) (Z 3 ) 7 [x] α 1+i είναι ρίζα του f(x) για όλα τα 0 i 3 } = {(a 0 + a 1 x + a 2 x 2 )(x 5 + 2x 4 + x 3 + x 2 + 2) a 0, a 1, a 2 Z 2 } = {r = r 0 r 1 r 7 το πολυώνυμο r 0 + r 1 x + + r 7 x 7 (Z 2 ) 7 [x] έχει ως ρίζες τα α 1+i για όλα τα 0 i 3}. 4. Έστω r 2 ένας ακέραιος. Θα κατασκευάσουμε έναν πρωταρχικό, υπό την στενή έννοια, δυαδικό BCH κώδικα προσχεδιασμένης απόστασης δ = 3. Έστω = 2 r 1 και K μια επέκταση του Z 2 βαθμού r, επιλέγουμε ένα πρωταρχικό στοιχείο α του σώματος K (δηλαδή μια πρωταρχική -οστή ρίζα της μονάδος). Σύμφωνα με τον Oρισμό 5.1.1 ο πρωταρχικός ( = 2 r 1), υπό την στενή έννοια (b = 1) BCH κώδικας έχει γεννήτορα πολυώνυμο το γ(x) = εκπ( m i+1 (x), 0 i δ 2), όπου, για κάθε 0 i δ 2, το m i+1 (x) είναι το ελάχιστο πολυώνυμο του α b+i επί του Z 2. Αλλά b = 1 και δ = 3, οπότε γ(x) = εκπ( m 1 (x), m 2 (x) ). Τα στοιχεία όμως α και α 2 έχουν το ίδιο ελάχιστο πολυώνυμο. Συνεπώς έχουμε κατασκευάσει τον κώδικα BCH( = 2 r 1, δ = 3, α) με γεννήτορα πολυώνυμο γ(x) = m 1 (x) = m α (x). Θα δούμε την σχέση αυτού του κώδικα με τους δυαδικούς Hammig κώδικες. Έστω H(r, 2) ο δυαδικός Hammig κώδικας με παραμέτρους: [ = 2 r 1, k = 2 r 1 r, d = 3]. Στο Θεώρημα 4.1.9 είχαμε δεί ότι ο κώδικας H(r, 2) είναι ισοδύναμος με τον κυκλικό κώδικα που έχει γεννήτορα πολυώνυμο το ελάχιστο πολυώνυμο m ω (x), όπου ω είναι μια πρωταρχική -οστη ρίζα της μονάδος επί του Z 2.

314 Κεφάλαιο 5. Κώδικες Reed-Solomo και συναφείς κώδικες Άρα αποδείξαμε ότι οι δυαδικοί Hammig κώδικες αποτελούν μια ειδική περίπτωση των δυαδικών BCH κωδίκων. Πρόταση 5.1.7. Έστω F ένα σώμα με q το πλήθος στοιχεία. Έστω = q s 1, δ = qt + 1 θετικοί ακέραιοι με 2 δ. Πάντα μπορούμε να κατασκευάσουμε επί του F έναν BCH (υπό την στενή έννοια) κώδικα μήκους και προσχεδιασμένης απόστασης δ με γεννήτορα πολυώνυμο γ(x) βαθμού το πολύ (q 1)ts. Απόδειξη. Έστω K μια επέκταση του F βαθμού s και α ένα πρωταρχικό στοιχείο του σώματος K. Για κάθε 1 i δ 1 = qt έστω m i (x) το ελάχιστο πολυώνυμο του α i επί του F και γ(x) = εκπ( m i (x), 1 i δ 1 = qt). Όπως στον ορισμό, κατασκευάζουμε τον BCH κώδικα BCH(, δ, α). Κάθε πολυώνυμο m i (x) έχει βαθμό s, άρα το πολυώνυμο γεννήτορας γ(x) έχει βαθμό το πολύ (qt)s. Γνωρίζουμε ότι οι ρίζες α και α q έχουν το ίδιο ελάχιστο πολυώνυμο και γενικά οι ρίζες α i και (α i ) q έχουν το ίδιο ελάχιστο πολυώνυμο. Επομένως τα t το πλήθος πολυώνυμα m q (x), m 2q (x),, m tq (x) δεν χρειάζεται να συμπεριληφθούν στον υπολογισμό του ε.κ.π. των m i (x), 1 i δ 1 = qt. Συνεπώς για το εκπ( m i (x), 1 i δ 1 = qt) αρκούν qt t το πλήθος πολυώνυμα, δηλαδή το πολυώνυμο γεννήτορας γ(x) έχει βαθμό το πολύ (q 1)ts. ό.έ.δ. Παρατήρηση 5.1.8. Στην ειδική περίπτωση των δυαδικών κωδίκων, αν υποθέσουμε ότι έχουμε περιττή προσχεδιασμένη απόσταση, δ = 2t+1, όπως στην προηγούμενη πρόταση, έχουμε ότι m 1 (x) = m δ 1 (x), καθότι οι ρίζες α και α 2t έχουν το ίδιο ελάχιστο πολυώνυμο. Επομένως γ(x) = εκπ( m i (x), 1 i δ 1 = 2t) = εκπ( m i (x), 1 i δ 2 = 2t 1). Συνεπώς οι κώδικες C(, δ, α) και C(, δ 1, α) συμπίπτουν. Η παρατήρηση αυτή μας επιτρέπει (άνευ βλάβης) να υποθέτουμε πάντα ότι οι, υπό την στενή έννοια, δυαδικοί BCH κώδικες έχουν περιττή προσχεδιασμένη απόσταση. Έστω BCH(, δ, α, b) ένας BCH κώδικας επί ενός σώματος F. Στο Θεώρημα 5.1.3 για να αποδείξουμε ότι ο αριθμός δ αποτελεί ένα κάτω φράγμα για την ελάχιστη απόσταση του κώδικα είχαμε χρησιμοποιήσει

5.1. BCH Κώδικες 315 τον (δ 1) πίνακα: 1 α b (α b ) 2 (α b ) 1 1 α b+1 (α b+1 ) 2 (α b+1 ) 1 H = 1 α b+2 (α b+2 ) 2 (α b+2 ) 1. 1 α b+δ 2 (α b+δ 2 ) 2 (α b+δ 2 ) 1 Αν και ο πίνακας H δεν είναι ο πίνακας ελέγχου ισοτιμίας του κώδικα BCH (Παρατήρηση 5.1.4), στην απόδειξη επικαλεσθήκαμε επιχειρήματα που σχετίζονται με ιδιότητες ενός πίνακα ελέγχου ισοτιμίας του κώδικα. Θα κατασκευάσουμε έναν πίνακα ελέγχου ισοτιμίας για τον κώδικα BCH με την βοήθεια του πίνακα H. Στην θέση (i, j) αντιστοιχεί το στοιχείο h ij = (α b+i 1 ) j 1. Το στοιχείο αυτό ανήκει στο σώμα K, το οποίο είναι μια επέκταση του σώματος F βαθμού s. Θεωρούμε το σώμα K ως διανυσματικό χώρο επί του F, επιλέγουμε και σταθεροποιούμε μια διατεταγμένη βάση του B = { e 1, e 2,, e s }. Κάθε h ij το εκφράζουμε ως γραμμικό συνδυασμό των διανυσμάτων της βάσης που επιλέξαμε και με [r j i ] συμβολίζουμε το διάνυσμα στήλη των συντελεστών στην έκφραση αυτή. Δηλαδή h ij = [r j i ]t (e 1, e 2,, e s ) t. Από τον τρόπο ορισμού του κώδικα BCH(, δ, α, b) έχουμε ότι το στοιχείο c = c 1 c 2 c ανήκει στον κώδικα αν και μόνο αν (c 1, c 2,, c ) H t = 0. Οπότε, σε συνδυασμό με την προηγούμενη σχέση έχουμε ότι το c = c 1 c 2 c ανήκει στον κώδικα αν και μόνο αν c 1 [r 1 i ] + c 2[r 2 i ] + c [r i ] = 0 για κάθε i = 1, 2,, δ 1. Κατασκευάζουμε τον πίνακα: P = [r 1 1 ] [r2 1 ] [r3 1 ] [r 1 ] [r 1 2 ] [r2 2 ] [r3 2 ] [r 2 ] [r 1 3 ] [r2 3 ] [r3 3 ] [r 3 ] [r 1 δ 1 ] [r2 δ 1 ] [r3 δ 1 ] [r δ 1 ] ο οποίος προκύπτει από τον πίνακα H με την αντικατάσταση κάθε h ij με το διάνυσμα στήλη [r j i ] των συντελεστών του στην έκφρασή του ως γραμμικό,

316 Κεφάλαιο 5. Κώδικες Reed-Solomo και συναφείς κώδικες συνδυασμό των διανυσμάτων της βάσης B. Προφανώς από τα προηγούμενα έπεται ότι το στοιχείο c = c 1 c 2 c ανήκει στον κώδικα αν και μόνο αν (c 1, c 2,, c ) P t = 0. Στον πίνακα P, αν αναπτύξουμε κάθε στήλη [r j i ], η οποία περιλαμβάνει s το πλήθος στοιχεία, τότε προκύπτει ένας (δ 1)s πίνακας H, του οποίου τα στοιχεία είναι από το σώμα F και για τον οποίο ισχύει ότι το στοιχείο c = c 1 c 2 c ανήκει στον κώδικα αν και μόνο αν (c 1, c 2,, c ) H t = 0. Συνεπώς με την διαδικασία αυτή κατασκευάσαμε έναν πίνακα ελέγχου ισοτιμίας για τον BCH κώδικα BCH(, δ, α, b) επί του σώματος F. Παρατήρηση 5.1.9. Η διαδικασία, που περιγράψαμε για την κατασκευή ενός πίνακα ελέγχου ισοτιμίας για τον BCH κώδικα BCH(, δ, α, b), είναι η ίδια που παρουσιάσαμε στην σελίδα 191 για την κατασκευή ενός πίνακα ελέγχου ισοτιμίας σε έναν κυκλικό κώδικα. Παράδειγμα 5.1.10. Στο Παράδειγμα 5.1.6 1 είχαμε κατασκευάσει έναν, υπό την στενή έννοια (b = 1), δυαδικό BCH κώδικα BCH μήκους = 7 και προσχεδιασμένης απόστασης δ = 3, του οποίου το πολυώνυμο γεννήτορας ήταν το γ(x) = x 3 + x + 1. Λαμβάνοντας το στοιχείο α = x + x 3 + x + 1 στην επέκταση K = Z 2 [x]/ x 3 + x + 1 κατασκευάζουμε τον 2 7 πίνακα: H = ( 1 α α2 α 3 α 4 α 5 α 6 1 α 2 (α 2 ) 2 (α 2 ) 3 (α 2 ) 4 (α 2 ) 5 (α 2 ) 6 ), ο οποίος δεν είναι ο πίνακας ελέγχου ισοτιμίας του κώδικα BCH. Θα κατασκευάσουμε έναν πίνακα ελέγχου ισοτιμίας για τον κώδικα με την βοήθεια του πίνακα H. Η επέκταση K είναι βαθμού 3 επί του Z 2. Eπιλέγουμε και σταθεροποιούμε την διατεταγμένη βάση B = { 1, α, α 2 }. Κάθε στοιχείο του πίνακα το εκφράζουμε ως γραμμικό συνδυασμό των διανυσμάτων της βάσης που επιλέξαμε και με [r j i ] συμβολίζουμε το διάνυσμα στήλη των συντελεστών του στοιχείου στη θέση (i, j) στην έκφραση αυτή. Για παράδειγμα: 1 = [r 1 1 ]t (1, α, α 2 ) t = (1, 0, 0) (1, α, α 2 ) t, α 6 = [r 4 2 ]t (1, α, α 2 ) t = (1, 0, 1) (1, α, α 2 ) t.

5.1. BCH Κώδικες 317 Τελικά ο (2 3) 7 πίνακας: H = 1 0 0 1 0 1 1 0 1 0 1 1 1 0 0 0 1 0 1 1 1 1 0 0 1 0 1 1 0 0 1 0 1 1 1 0 1 1 1 0 0 1, ο οποίος κατασκευάστηκε με την διαδικασία που περιγράψαμε (να κάνετε τον έλεγχο των πράξεων), είναι ένας πίνακας ελέγχου ισοτιμίας για τον κώδικα C, καθότι τα στοιχεία είναι από το σώμα Z 2 και ισχύει ότι το στοιχείο c = c 1 c 2 c ανήκει στον κώδικα αν και μόνο αν (c 1, c 2,, c ) H t = 0. 5.1.1 Ασκήσεις 1. Να απαντήσετε σε όλα τα γιατί; αυτής της παραγράφου. 2. Έστω ένας BCH κώδικας. Kατά πόσον η δομή του κώδικα αυτού εξαρτάται από την επιλογή του πρωταρχικού στοιχείου α; Δηλαδή, αν επιλέξουμε ένα άλλο πρωταρχικό στοιχείο β, τί σχέση έχουν οι δύο κώδικες BCH(, δ, α, b) και BCH(, δ, β, b); (Εξετάστε πρώτα την περίπτωση, όπου οι κώδικες είναι υπό την στενή έννοια πρωταρχικοί κώδικες). 3. Να προσδιορίσετε όλους τους δυαδικούς BCH κώδικες μήκους 15. 4. Nα κατασκευάσετε έναν υπό την στενή έννοια τριαδικό BCH κώδικα BCH(26, 5, α). 5. Ως γνωστόν ένας κώδικας C ονομάζεται αυτο-ορθογώνιος αν ισχύει C C. Να βρεθεί ένας αυτο-ορθογώνιος δυαδικός BCH κώδικας μήκους = 7. (βλέπε Ασκήσεις 3.2.5 14, 15, 16 ).

318 Κεφάλαιο 5. Κώδικες Reed-Solomo και συναφείς κώδικες 6. Ποίος είναι ο λόγος πληροφορίας ενός υπό την στενή έννοια BCH κώδικα μήκους 31, ο οποίος διορθώνει δύο λάθη; (α) Επί του σώματος Z 2. (β) Επί του σώματος Z 3. 7. Να υπολογίσετε το πολυώνυμο γεννήτορα και το πολυώνυμο ελέγχου ισοτιμίας για έναν δυαδικό BCH κώδικα, ο οποίος διορθώνει τρία λάθη. (α) Μήκους 15. (β) Μήκους 31. (γ) Με τον κώδικα αυτό κωδικοποιήστε την πληροφορία, της οποίας όλοι οι χαρακτήρες είναι ίσοι με το 1. 5.2 Συμβατικοί Κώδικες Reed-Solomo Στην προηγουμένη παράγραφο αναφερθήκαμε στην κατασκευή των BCH κωδίκων επί ενός σώματος F χρησιμοποιώντας μια επέκταση K του F. Εδώ θα γενικεύσουμε την προηγουμένη κατασκευή και θα λάβουμε τους BCH κώδικες ως υποκώδικες άλλων κωδίκων. Έστω F ένα πεπερασμένο σώμα με q το πλήθος στοιχεία. Έστω, δ θετικοί ακέραιοι με 2 δ και b ένας μη αρνητικός ακέραιος. Έστω K μια επέκταση του σώματος F βαθμού s με την ιδιότητα K = q s + 1 και α ένα πρωταρχικό στοιχείο του σώματος K. Ορίζουμε το πολυώνυμο: γ(x) = (x α b )(x α b+1 )(x α b+2 ) (x α b+δ 2 ) K[x]. Ορισμός 5.2.1. Ο πολυωνυμικός κώδικας CRS = CRS(, δ, α, b)² μήκους με πολυώνυμο γεννήτορα το πολυώνυμο γ(x) K[x] ονομάζεται Συμβατικός κώδικας Reed-Solomo προσχεδιασμένης απόστασης δ (με σώμα βάσης το F). code. ²Ο συμβολισμός CRS προέρχεται από την διεθνή ονομασία Covesioal Reed-Solomo

5.2. Συμβατικοί Κώδικες Reed-Solomo 319 Διαφορετικά θα μπορούσαμε να ορίσουμε έναν συμβατικό κώδικα Reed- Solomo ως εξής: CRS(, δ, α, b) = { f(x) K 1 [x] α b+i είναι ρίζα του f(x) Παρατηρήσεις 5.2.2. = {r = r 0 r 1 r 1 το πολυώνυμο για όλα τα 0 i δ 2 } r 0 + r 1 x + + r 1 x 1 K 1 [x] έχει ως ρίζες τα α b+i για όλα τα 0 i δ 2}. 1. Αν και ξεκινήσαμε με αφετηρία το σώμα F, ο κώδικας CRS που κατασκευάσαμε έχει ως αλφάβητο τα στοιχεία μιας επέκτασης K του σώματος F. Ο μόνος λόγος που κάνουμε αυτό είναι να επανέλθουμε στα επόμενα για να δούμε τους BCH κώδικες ως (υπο)κώδικες των συμβατικών κωδίκων Reed-Solomo. Συνεπώς θα μπορούσαμε να ορίσουμε τους συμβατικούς κώδικες Reed- Solomo ως εξής: Έστω K ένα πεπερασμένο σώμα, δ θετικοί ακέραιοι με 2 δ K 1 και b ένας μη αρνητικός ακέραιος. Έστω α ένα πρωταρχικό στοιχείο του σώματος K. Ορίζουμε το πολυώνυμο α b+2 ) (x α b+δ 2 ) K[x]. γ(x) = (x α b )(x α b+1 )(x Ο πολυωνυμικός κώδικας CRS = CRS(, δ, α, b) μήκους με πολυώνυμο γεννήτορα το πολυώνυμο κώδικας Reed-Solomo. γ(x) K[x] ονομάζεται συμβατικός Η πλέον ενδιαφέρουσα κατηγορία συμβατικώνν κωδίκων Reed-Solomo είναι οι πρωταρχικοί συμβατικοί κώδικες Reed-Solomo (στο εξής θα αναφέρονται απλά ως κώδικες Reed-Solomo), όπου το μήκος τους ισούται με το πλήθος των μη μηδενικών στοιχείων του σώματος K ( = K 1) που αποτελεί το αλφάβητο του κώδικα. Μάλιστα δε οι κώδικες αυτοί είναι κυκλικοί, καθότι το πολυώνυμο γ(x) = (x α b )(x α b+1 )(x α b+2 ) (x b+δ 2 α ) K[x] διαιρεί το x 1,

320 Κεφάλαιο 5. Κώδικες Reed-Solomo και συναφείς κώδικες αφού κάθε στοιχείο c του σώματος K ικανοποιεί την σχέση c = 1. 2. Θεωρούμε τον (δ 1) πίνακα: H = 1 α b (α b ) 2 (α b ) 1 1 α b+1 (α b+1 ) 2 (α b+1 ) 1 1 α b+2 (α b+2 ) 2 (α b+2 ) 1 1 α b+δ 2 (α b+δ 2 ) 2 (α b+δ 2 ) 1. Εύκολα βλέπουμε ότι ο πίνακας H είναι ένας πίνακας ελέγχου ισοτιμίας για τον συμβατικό κώδικα Reed-Solomo καθότι, από τον τρόπο ορισμού του κώδικα CRS(, δ, α, b), έχουμε ότι το στοιχείο c = c 0 c 1 c 1 ανήκει στον κώδικα αν και μόνο αν (c 0, c 1,, c 1 ) H t = 0. Μπορούμε να αποδείξουμε ένα θεώρημα ανάλογο με το Θεώρημα 5.1.3. Θεώρημα 5.2.3. Ένας συμβατικός κώδικας Reed-Solomo CRS(, δ, α, b) με πολυώνυμο γεννήτορα γ(x) είναι κώδικας μέγιστης (ελάχιστης) απόστασης (MDS κώδικας). Μάλιστα δε για την ελάχιστη απόστασή του, έστω d, ισχύει deg( γ(x)) + 1 = d = δ. Απόδειξη. Από την προηγουμένη παρατήρηση, ο πίνακας H είναι ένας πίνακας ελέγχου ισοτιμίας του οποίου η τάξη ισούται με το πλήθος γραμμών του δ 1. Επομένως, σύμφωνα με την Πρόταση 2.2.25, έχουμε ότι η ελάχιστη απόστασή του είναι ίση με d = δ. Από το δεύτερο μέρος της απόδειξης του Θεωρήματος 5.1.3 έχουμε ότι ο κώδικας είναι MDS. ό.έ.δ. Παράδειγμα 5.2.4. Θα κατασκευάσουμε,τώρα, έναν κώδικα Reed-Solomo CRS(7, 3, α) μήκους = 7, προσχεδιασμένης απόστασης δ = 3 (b = 1), όπου α = x + x 3 + x + 1 είναι ένα πρωταρχικό στοιχείο του σώματος K = Z 2 [x]/ x 3 + x + 1. Kατασκευάζουμε τον 2 6 πίνακα: H = ( 1 α α2 α 3 α 4 α 5 1 α 2 (α 2 ) 2 (α 2 ) 3 (α 2 ) 4 (α 2 ) 5 ).

5.2. Συμβατικοί Κώδικες Reed-Solomo 321 Ο κώδικας που αναζητούμε έχει ως πίνακα ελέγχου ισοτιμίας τον πίνακα H και ως γεννήτορα πολυώνυμο το πολυώνυμο Δηλαδή γ(x) = (x α)(x α 2 ) K[x]. C(7, 3, α) = { f(x) K 6 [x] α, α 2 είναι ρίζες του f(x)} = {r = r 0 r 1 r 6 το πολυώνυμο r 0 + r 1 x + + r 6 x 6 K 6 [x] έχει ως ρίζες τα α, α 2 } = {r = r 0 r 1 r 6 K 7 rh t = 0}. 5.2.1 Οι BCH κώδικες ως υποκώδικες των συμβατικών κωδίκων Reed-Solomo Έστω F ένα πεπερασμένο σώμα με q το πλήθος στοιχεία. Έστω, δ θετικοί ακέραιοι με 2 δ και b ένας μη αρνητικός ακέραιος. Έστω K μια επέκταση του σώματος F βαθμού s με την ιδιότητα q s + 1 και α ένα πρωταρχικό στοιχείο του σώματος K. Έστω CRS = CRS(, δ, α, b) ο συμβατικός κώδικας Reed-Solomo μήκους με πολυώνυμο γεννήτορα το πολυώνυμο γ(x) = (x α b )(x α b+1 )(x α b+2 ) (x α b+δ 2 ) K[x]. Από τον κώδικα CRS επιλέγουμε μόνο τις (κωδικο)λέξεις, των οποίων τα γράμματα (οι χαρακτήρες) ανήκουν στο (αρχικό) σώμα F. Δηλαδή παίρνουμε την τομή A = F CRS. Το σύνολο A είναι ένας (υπο)κώδικας του κώδικα CRS και μάλιστα γραμμικός (ως τομή διανυσματικών χώρων επί του ιδίου σώματος F). Μάλιστα δε ως υποκώδικας του CRS είναι αραιώτερος, δηλαδή η ελάχιστη απόστασή του είναι τουλάχιστον ίση με δ. Θα περιγράψουμε τα στοιχεία του κώδικα A. Για κάθε 0 i δ 2 έστω m i (x) το ελάχιστο πολυώνυμο του α b+i επί του F και γ(x) = εκπ( m i (x), 0 i δ 2). Δηλαδή το πολυώνυμο γ(x) είναι το μικροτέρου βαθμού μονικό πολυώνυμο επί του F, το οποίο έχει ως ρίζες τα στοιχεία α b, α b+1,, α b+δ 2. Από την άλλη πλευρά το πολυώνυμο γ(x) = (x α b )(x α b+1 )(x α b+2 ) (x α b+δ 2 ) K[x] έχει ακριβώς τα στοιχεία α b, α b+1,, α b+δ 2 ως ρίζες. Δη-

322 Κεφάλαιο 5. Κώδικες Reed-Solomo και συναφείς κώδικες λαδή το πολυώνυμο δακτύλιο K[x]). γ(x) διαιρεί το πολυώνυμο γ(x) (η διαίρεση γίνεται στο Έστω r = r 0 r 1 r 1 ένα στοιχείο του κώδικα A, δηλαδή το πολυώνυμο r 0 +r 1 x+ +r 1 x 1 F 1 [x] έχει ως ρίζες τα α b+i για όλα τα 0 i δ 2. Από τον ορισμό του πολυωνύμου γ(x), το γ(x) διαιρεί το πολυώνυμο r 0 +r 1 x+ + r 1 x 1 F 1 [x]. Αυτό σημαίνει ότι το στοιχείο r = r 0 r 1 r 1 ανήκει στον BCH κώδικα BCH = BCH(, δ, α, b). Προφανώς ισχύει ότι BCH = BCH(, δ, α, b) A. Ανακεφαλαιώνοντας έχουμε: Θεώρημα 5.2.5. Κάθε BCH κώδικας BCH = BCH(, δ, α, b) επί ενός πεπερασμένου σώματος F προέρχεται από την αποδελτίωση (σμίκρυνση) ενός συμβατικού κώδικα Reed-Solomo. Απόδειξη. Η απόδειξη έχει προηγηθεί. ό.έ.δ. Πόρισμα 5.2.6. Έστω K ένα πεπερασμένο σώμα και CRS ένας συμβατικός κώδικας Reed-Solomo μήκους (επί του K). Για κάθε υπόσωμα F του K ορίζεται ένας BCH κώδικας BCH F = CRS F. Αντίστροφα, έστω F ένα πεπερασμένο σώμα και BCH ένας BCH κώδικας. Τότε υπάρχει μια επέκταση K του σώματος F επί του οποίου ορίζεται ένας συμβατικός κώδικας Reed-Solomo CRS. Παράδειγμα 5.2.7. Στο Παράδειγμα 5.2.4 είχαμε κατασκευάσει έναν κώδικα Reed-Solomo RS(7, 3, α) επί του αλφαβήτου K = Z 2 [x]/ x 3 + x + 1. Στο Παράδειγμα 5.1.6 1 είχαμε κατασκευάσει έναν δυαδικό BCH κώδικα BCH(7, 3, α). Προφανώς ισχύει ότι BCH = RS Z 7 2. Δηλαδή ο BCH κώδικας BCH επί του σώματος Z 2 προέρχεται από την αποδελτίωση (σμίκρυνση) του κώδικα Reed-Solomo RS(7, 3, α) επί του αλφαβήτου K. Σχόλιο 5.2.8. Είδαμε ότι ένας BCH κώδικας μπορεί να προέλθει ως υποκώδικας ενός συμβατικού κώδικα Reed-Solomo. Από την άλλη πλευρά έχουμε ορίσει τους κώδικες Reed-Solomo ως πρωταρχικούς συμβατικούς κώδικες Reed-Solomo.

5.2. Συμβατικοί Κώδικες Reed-Solomo 323 Οι έννοιες πρωταρχικός BCH κώδικας και κώδικας Reed-Solomo ταυτίζονται υπό την εξής έννοια: Έστω F ένα πεπερασμένο σώμα με q το πλήθος στοιχεία και K μια επέκτασή του βαθμού s = 1 (F = K). Σύμφωνα με τον Ορισμό 5.1.1 ορίζεται ο πρωταρχικός BCH κώδικας BCH = BCH(, δ, α, b) μήκους = q 1 επί του σώματος F = K. Στην Παρατήρηση 5.2.2 1 όμως, όπως και στη σελίδα 5.1, είδαμε ότι αυτός ειναι και ο ορισμός ενός κώδικα Reed-Solomo. 5.2.2 Ασκήσεις 1. Να απαντήσετε σε όλα τα γιατί; αυτής της παραγράφου. 2. Έστω F = Z 13. (αʹ) Να κατασκευάσετε έναν υπό την στενή έννοια συμβατικό κώδικα Reed-Solomo (με σώμα βάσης το Z 2 ) μήκους 15 και διάστασης 11. Ποιά είναι η ελάχιστη απόστασή του; (βʹ) Να κατασκευάσετε έναν υπό τη στενή έννοια κώδικα Reed-Solomo RS(, δ, α) επί του F μήκους = 12, προσχεδιασμέμης απόστασης δ = 5 και με πρωταρχικό στοιχείο α = 2. Συγκεκριμμένα να υπολογίσετε το πολυώνυμο γεννήτορα και έναν πίνακα ελέγχου ισοτιμίας. (γʹ) Να μελετήσετε τον δυϊκό κώδικα του RS(, δ, α). Συγκεκριμμένα να υπολογίσετε το πολυώνυμο γεννήτορα και έναν πίνακα ελέγχου ισοτιμίας. Επίσης να υπολογίσετε την ελάχιστη απόστασή του. (δʹ) Έστω γ(x) το πολυώνυμο γεννήτορας του κώδικα RS(, δ, α). Να μελετήσετε το κυκλικό συμπλήρωμά του. Δηλαδή τον κυκλικό κώδικα που έχει ως πολυώνυμο γεννήτορα το πολυώνυμο g(x) με την ιδιότητα x 12 1 = γ(x) g(x). δείξτε ότι και αυτός ο κώδικας είναι ένας κώδικας Reed-Solomo. 3. Έστω F ένα σώμα με q το πλήθος στοιχεία και α ένα πρωταρχικό στοιχείο του. Έστω k ένας ακέραιος με 1 k = q 1.

324 Κεφάλαιο 5. Κώδικες Reed-Solomo και συναφείς κώδικες Ορίζουμε έναν κώδικα ως εξής: C = { (φ(1), φ(α), φ(α 2 ),, φ(α q 2 )) φ(x) F k 1 [x]}. Δείξτε ότι ο κώδικας αυτός είναι ένας, υπό την στενή έννοια, κώδικας Reed-Solomo επί του F. Υπολογίστε το πολυώνυμο γεννήτορα και έναν πίνακα ελέγχου ισοτιμίας. (Η άσκηση αυτή αποτελεί έναν ισοδύναμο ορισμό ενός, υπό την στενή έννοια, κώδικα Reed-Solomo. Βλέπε και την Παρατήρηση 5.3.7). 4. (Συνέχεια της προηγουμένης άσκησης) Έστω ότι έχουμε τον κώδικα: C = { (φ(1), φ(α), φ(α 2 ),, φ(α q 2 )) φ(x) F k 1 [x]}. Επιλέγουμε ως πηγή πληροφοριών το F k και ως συνάρτηση κωδικοποίησης την f F k C με: f(r 0, r 1,, r k 1 ) = (φ(1), φ(α), φ(α 2 ),, φ(α q 2 )), όπου φ(x) = r 0 + r 1 x+, + r k 1 x k 1. Δείξτε ότι η f είναι πράγματι συνάρτηση κωδικοποίησης. Να κωδικοποιήσετε την λέξη (1, 1,, 1). 5. Έστω CRS( = 9, δ = 4, α, b = 0) ένας συμβατικός κώδικας Reed- Solomo επί ενός σώματος F με 2 6 το πλήθος στοιχεία, και το α F να είναι τάξης 9. (αʹ) Δείξτε ότι ο κώδικας αυτός είναι κυκλικός. (βʹ) Υπολογίστε έναν γεννήτορα πίνακά του. (γʹ) Δείξτε ότι το στοιχείο: (1, α 3, α 3, 1, α 3, α 3, 1, α 3, α 3 ) F αποτελεί (κωδικο)λέξη.

5.3. Γενικευμένοι κώδικες Reed-Solomo 325 5.3 Γενικευμένοι κώδικες Reed-Solomo Στην προηγουμένη παράγραφο ορίσαμε τους συμβατικούς κώδικες Reed- Solomo μήκους και προσχεδιασμένης απόστασης δ επί ενός σώματος με την βοήθεια ενός πρωταρχικού στοιχείου α του σώματος, λαμβάνοντας ως πίνακα ελέγχου ισοτιμίας του κώδικα τον (δ 1) πίνακα: H = 1 α b (α b ) 2 (α b ) 1 1 α b+1 (α b+1 ) 2 (α b+1 ) 1 1 α b+2 (α b+2 ) 2 (α b+2 ) 1 1 α b+δ 2 (α b+δ 2 ) 2 (α b+δ 2 ) 1, όπου b είναι ένας μη αρνητικός ακέραιος. Θα δούμε πώς μπορούμε να γενικεύσουμε την ανωτέρω κατασκευή. Έστω F ένα πεπερασμένο σώμα με q το πλήθος στοιχεία και α 1, α 2,, α διακεκριμένα μη μηδενικά στοιχεία του F. Επίσης έστω u 1, u 2,, u μη μηδενικά (όχι κατ ανάγκη διακεκριμένα) στοιχεία του F και δ ένας ακέραιος με 2 δ. Ο γραμμικός κώδικας GRS που ορίζεται έχοντας ως πίνακα ελέγχου ισοτιμίας τον πίνακα H = 1 1 1 1 α 1 α 2 α 3 α α 2 1 α 2 2 α 2 3 α 2 (α 1 ) δ 2 (α 2 ) δ 2 (α 3 ) δ 2 (α ) δ 2 u 1 0 0 0 0 u 2 0 0 0 0 u 3 0 0 0 0 u με στοιχεία από το αλφάβητο F ονομάζεται Γενικευμένος κώδικας Reed- Solomo επί του σώματος F και ο πίνακας H ο κανονικός πίνακας ελέγχου ισοτιμίας του. Από τον ορισμό απαιτήται το μήκος του κώδικα να μην υπερβαίνει το πλήθος των μη μηδενικών στοιχείων του σώματος επί του οποίου ορίζεται. Αν κάνουμε τον πολλαπλασιασμό των δύο ανωτέρω πινάκων βλέπουμε ότι η i-στήλη του πρώτου πίνακα πολλαπλασιάζεται με το στοιχείο u i. Για τον

326 Κεφάλαιο 5. Κώδικες Reed-Solomo και συναφείς κώδικες λόγο αυτό τα στοιχεία u i, i = 1,, ονομάζονται συντελεστές στηλών ενώ τα στοιχεία α i, i = 1,, ονομάζονται εντοπισμοί του κώδικα. Πριν προχωρήσουμε ας δούμε ένα παράδειγμα. Έστω α ένα πρωταρχικό στοιχείο του σώματος F και b ένας μη αρνητικός ακέραιος. Θέτουμε α i = α i 1 και u i = α b(i 1), i = 1,,. Στην περίπτωση αυτή έχουμε ότι: 1 α b (α b ) 2 (α b ) 1 1 α b+1 (α b+1 ) 2 (α b+1 ) 1 H = 1 α b+2 (α b+2 ) 2 (α b+2 ) 1. 1 α b+δ 2 (α b+δ 2 ) 2 (α b+δ 2 ) 1 Παρατηρούμε ότι ο πίνακας H είναι ο πίνακας ελέγχου ισοτιμίας ενός συμβατικού κώδικα Reed-Solomo. Το γεγονός αυτό δικαιολογεί την ονομασία γενικευμένοι κώδικες Reed-Solomo. Θέτουμε k = δ + 1. Θεώρημα 5.3.1. Ένας γενικευμένος κώδικας Reed-Solomo GRS είναι ένας κώδικας με παραμέτρους [, k, d = k + 1], δηλαδή ένας μέγιστης (ελάχιστης) απόστασης (MDS κώδικας). Απόδειξη. Ο πίνακας ελέγχου ισοτιμίας H του κώδικα έχει δ 1 = k το πλήθος γραμμές. Η απόδειξη είναι παρόμοια με την απόδειξη του Θεωρήματος 5.2.3 με μόνη παρατήρηση ότι ο πολλαπλασιασμός των στηλών ενός πίνακα Vadermode με μη μηδενικά στοιχεία δεν αλλάζει την τάξη του. (Βλέπε και Θεώρημα 2.6.6). ό.έ.δ. Έστω ένας γενικευμένος κώδικας Reed-Solomo GRS. Όπως προηγουμένως, αν ο κώδικας έχει μήκος = q 1 θα ονομάζεται πρωταρχικός. Στην περίπτωση, όπου οι συντελεστές στηλών είναι ίσοι με τους αντιστοίχους εντοπισμούς του κώδικα (u i = α i, 1 i ), ο κώδικας θα ονομάζεται υπό την στενή έννοια γενικευμένος κώδικας Reed-Solomo. (Στους συμβατικούς κώδικες Reed-Solomo αυτό ισχύει όταν b = 1). Στην περίπτωση, όπου όλοι οι συντελεστές στηλών είναι ίσοι με 1 (u i = 1, 1 i ), ο κώδικας θα ονομάζεται κανονικοποιημένος. (Στους συμβατικούς κώδικες Reed-Solomo αυτό ισχύει όταν b = 0).

5.3. Γενικευμένοι κώδικες Reed-Solomo 327 5.3.1 Μια άλλη παρουσίαση των γενικευμένων κωδίκων Reed- Solomo Στο παρόν εδάφιο θα δούμε τους γενικευμένους κώδικες Reed-Solomo υπό άλλη οπτική γωνία. Έστω F ένα πεπερασμένο σώμα με q το πλήθος στοιχεία και GRS ένας γενικευμένος κώδικας Reed-Solomo με παραμέτρους [, k, d = k + 1] και πίνακα ελέγχου ισοτιμίας: H = 1 1 1 1 α 1 α 2 α 3 α α 2 1 α 2 2 α 2 3 α 2 α k 1 1 α k 1 2 α k 1 3 α k 1 u 1 0 0 0 0 u 2 0 0 0 0 u 3 0 0 0 0 u (Δεν ξεχνάμε ότι έχουμε θέσει k = δ + 1, οπότε δ 2 = k 1). Ως γνωστόν (Θεώρημα 2.6.3), ο δυϊκός κώδικας GRS είναι και αυτός ένας MDS κώδικας. Θα δείξουμε επιπλέον ότι και αυτός ο κώδικας είναι ένας γενικευμένος κώδικας Reed-Solomo. Θεωρούμε τον k πίνακα: 1 1 1 1 α 1 α 2 α 3 α α 2 1 α 2 2 α 2 3 α 2 α k 1 1 α k 1 2 α k 1 3 α k 1. Θα δείξουμε ότι υπάρχουν v 1, v 2,, v μη μηδενικά στοιχεία του F με την ιδιότητα: 1 1 1 1 α 1 α 2 α 3 α α 2 1 α 2 2 α 2 3 α 2 α k 1 1 α k 1 2 α k 1 3 α k 1 v 1 0 0 0 0 v 2 0 0 0 0 v 3 0 0 0 0 v H t = 0 ( )

328 Κεφάλαιο 5. Κώδικες Reed-Solomo και συναφείς κώδικες Αν αποδείξουμε τη σχέση αυτή θα έχουμε αποδείξει ότι ο πίνακας: G = 1 1 1 1 α 1 α 2 α 3 α α 2 1 α 2 2 α 2 3 α 2 α k 1 1 α k 1 2 α k 1 3 α k 1 v 1 0 0 0 0 v 2 0 0 0 0 v 3 0 0 0 0 v είναι γεννήτορας πίνακας του κώδικα GRS και ταυτόχρονα πίνακας ελέγχου ισοτιμίας του δυϊκού κώδικα GRS (Πρόταση 2.2.12). Κάνοντας τις πράξεις στην σχέση ( ), έπεται ότι αναζητούμε μη μηδενικά στοιχεία v 1, v 2,, v F έτσι ώστε ο k ( k) πίνακας ( r = 1 u rv r α i+j r ) να είναι ο μηδενικός πίνακας, όπου τα i = 0, 1, 2,, k 1 και j = 0, 1, 2,, k 1 διατρέχουν τις γραμμές και στήλες αντίστοιχα του πίνακα αυτού. Δηλαδή αναζητούμε μη μηδενικά στοιχεία v 1, v 2,, v αποτελούν λύση του εξής γραμμικού συστήματος: F, τα οποία να u 1 u 2 u 3 u u 1 α 1 u 2 α 2 u 3 α 3 u α u 1 α 2 1 u 2 α 2 2 u 3 α 2 3 u α 2 u 1 α 2 1 u 2 α 2 2 u 3 α 2 3 u α 2 v 1 v 2 v 3 v = 0. Το σύστημα αυτό έχει ως πίνακα συντελεστών έναν ( 1) πίνακα με τάξη ίση με 1 (γιατί;). Συνεπώς ο χώρος λύσεων του συστήματος αυτού είναι διανυσματικός υπόχωρος διάστασης ίσης με 1 και για κάθε (μη μηδενική) λύση του v 1, v 2,, v ισχύει ότι v i 0 για όλα τα i = 1, 2,, (γιατί;). Συνεπώς ανακεφαλαιώνοντας έχουμε: Θεώρημα 5.3.2. Έστω GRS ένας [, k, k+1] γενικευμένος κώδικας Reed- Solomo επί ενός πεπερασμένου σώματος F. Τότε ο δυϊκός κώδικας GRS είναι επίσης ένας [, k, k + 1] γενικευμένος κώδικας Reed-Solomo. Μάλιστα δε και οι δύο κώδικες μπορούν να ορισθούν επί των ιδίων εντοπισμών α i, i = 1,,. Απόδειξη. Η απόδειξη έχει προηγηθεί. ό.έ.δ.

5.3. Γενικευμένοι κώδικες Reed-Solomo 329 Παρατηρήσεις 5.3.3. 1. Το προηγούμενο σύστημα έχει πολλές λύσεις, που σημαίνει ότι ένας γενικευμένος κώδικας Reed-Solomo μπορεί να ορισθεί με διαφορετικούς συντελεστές στηλών. (Βλέπε και την Άσκηση 2 στο τέλος της παραγράφου). 2. Σύμφωνα με τον ορισμό ενός γενικευμένου κώδικα Reed-Solomo και το Θεώρημα 5.3.1, o πίνακας: 1 1 1 1 α 1 α 2 α 3 α α 2 1 α 2 2 α 2 3 α 2 α 2 1 α 2 2 α 2 3 α 2 u 1 0 0 0 0 u 2 0 0 0 0 u 3 0 0 0 0 u του προηγουμένου συστήματος είναι ο πίνακας ελέγχου ισοτιμίας ενός (άλλου) γενικευμένου κώδικα Reed-Solomo με παραμέτρους [, 1, ]. Επειδή η ελάχιστη απόσταση στον κώδικα αυτόν είναι ίση με το μήκος του κώδικα, έπεται ότι όλα τα στοιχεία του έχουν βάρος ίσον με. Άρα, πράγματι για κάθε μη μηδενική λύση v 1, v 2,, v ισχύει ότι v i 0 για όλα τα i = 1, 2,,. 3. Στο προηγούμενο θεώρημα είδαμε ότι ο δυϊκός κώδικας ενός γενικευμένου κώδικα Reed-Solomo είναι και αυτός γενικευμένος κώδικας Reed- Solomo. Στην περίπτωση των BCH κωδίκων αυτό δεν ισχύει γενικά. Πράγματι, στο Παράδειγμα 5.1.6 2 είχαμε κατασκευάσει έναν πρωταρχικό υπο την στενή έννοια BCH κώδικα BCH επί του Z 2 μήκους 15. Ο κώδικας αυτός είναι κυκλικός και έχει πολυώνυμο γεννήτορα το γ(x) = x 8 +x 7 +x 6 +x 4 +1 Z 2 [x]. Το σύνολο ριζών του πολυωνύμου αυτού είναι το { α, α 2, α 3, α 4, α 6, α 8, α 9, α 12 }, όπου α = x+ x 4 +x+1 K = Z 2 [x]/ x 4 + x + 1. Από την σχέση x 15 1 = (x 8 + x 7 + x 6 + x 4 + 1)(x 7 + x 6 + x 4 + 1) έχουμε ότι το πολυώνυμο γεννήτορας του δυϊκού κώδικα BCH είναι το πολυώνυμο d(x) = x 7 +x 3 +x+1 (γιατί;) (βλέπε Θεώρημα 3.2.16). Οι ρίζες του d(x) είναι οι α 0 = 1, α, α 2, α 4, α 5, α 8, α 10. Έστω m 0 (x) = x

330 Κεφάλαιο 5. Κώδικες Reed-Solomo και συναφείς κώδικες 1 το ελάχιστο πολυώνυμο του 1, m 1 (x) το ελάχιστο πολυώνυμο του α και m 5 (x) το ελάχιστο πολυώνυμο του α 5, τότε d(x) = m 0 (x) m 1 (x) m 5 (x). Αν ο κώδικας BCH ήταν ένας BCH κώδικας, τότε, σύμφωνα με τον ορισμό ενός BCH κώδικα (Ορισμός 5.1.1), θα υπήρχαν ακέραιοι b και δ με b 0 και 15 δ 2 έτσι ώστε κάθε ένα από τα πολυώνυμα m 0 (x), m 1 (x) και m 5 (x) να έχει ως ρίζα τουλάχιστον ένα από τα στοιχεία α b, α b+1,, α b+δ 2 και επιπλέον όλα τα στοιχεία αυτά να είναι ρίζες του d(x). Αυτό όμως είναι αδύνατον καθότι, αν, για παράδειγμα, το α 5, το οποίο είναι ρίζα του m 5 (x), ήταν της μορφής α 5 = α b+i, i = 0,, δ 2, τότε αναγκαστικά τουλάχιστον ένα από τα α 3 και α 6 θα ήταν ρίζα του d(x), άτοπο. Όμοια αποκλείονται και οι υπόλοιπες περιπτώσεις. Παραδείγματα 5.3.4. 1. Έστω GRS ένας πρωταρχικός γενικευμένος κώδικας Reed-Solomo επί ενός πεπερασμένου σώματος F με q το πλήθος στοιχεία. Υποθέτουμε ότι α 1, α 2, α 3,, α είναι οι εντοπισμοί και u 1, u 2, u 3,, u είναι οι συντελεστές στηλών του. Τότε οι συντελεστές στηλών του δυϊκού κώδικα είναι οι v r = α r /u r, r = 1, 2,,. Πράγματι, ο κώδικας έχει υποτεθεί πρωταρχικός ( = q 1). Aντικαθιστούμε στην σχέση r = 1 u rv r α i+j r τα v r με τα α r /u r και έχουμε: q 1 u r α r /u r α i+j r = r = 1 q 1 α r α i+j r. r = 1 Έστω α ένα πρωταρχικό στοιχείο του σώματος F. Τα μη μηδενικά στοιχεία του σώματος F (με μια αναρίθμηση, αν είναι αναγκαία) είναι της μορφής α r = α r για όλα τα r = 1, 2,, q 1, οπότε συνεχίζοντας την προηγουμένη ισότητα έχουμε: q 1 q 1 α r α i+j r = α r (α r ) i+j r = 1 r = 1 = q 1 r = 1 (α r ) i+j+1 = q 1 r = 1 (α i+j+1 ) r = (α (i+j+1)q α i+j+1 )/(α i+j+1 1) = 0

5.3. Γενικευμένοι κώδικες Reed-Solomo 331 καθότι α q 1 = 1. Η τελευταία ισότητα ισχύει για όλα τα i = 0, 1, 2,, k 1 και j = 0, 1, 2,, k 1. Αυτό αποδεικνύει τον ισχυρισμό. 2. Ο Δυϊκός κώδικας ενός κανονικοποιημένου, πρωταρχικού γενικευμένου κώδικα Reed-Solomo είναι ένας υπό την στενή έννοια πρωταρχικός κώδικας Reed-Solomo. Πράγματι, επειδή ο κώδικας έχει υποτεθεί κανονικοποιημένος έχουμε ότι όλοι οι συντελεστές στηλών είναι ίσοι με 1 (u i = 1). Από το προηγούμενο παράδειγμα έπεται ότι οι συντελεστές στηλών του δυϊκού κώδικα είναι ίσοι με τους εντοπισμούς του κώδικα (v i = α i ). Αυτό σημαίνει ότι ο δυϊκός κώδικας είναι υπό την στενή έννοια γενικευμένος κώδικας Reed-Solomo. Έστω GRS ένας [, k, k + 1] γενικευμένος κώδικας Reed-Solomo επί ενός πεπερασμένου σώματος F. Από τα προηγούμενα έχουμε ότι ένας γεννήτορας πίνακάς του είναι της μορφής: G = 1 1 1 1 α 1 α 2 α 3 α α 2 1 α 2 2 α 2 3 α 2 α k 1 1 α k 1 2 α k 1 3 α k 1 v 1 0 0 0 0 v 2 0 0 0 0 v 3 0 0 0 0 v. Επομένως έχουμε ότι GRS = { (c 0, c 1,, c k 1 ) G (c 0, c 1,, c k 1 ) F k }. Αν, ως συνήθως, ταυτοποιήσουμε την προς κωδικοποίηση λέξη (c 0, c 1,, c k 1 ) με το πολυώνυμο φ(x) = c 0 + c 1 x + + c k 1 x k 1 F k 1 [x], τότε εύκολα βλέπουμε ότι (c 0, c 1,, c k 1 ) G = (v 1 φ(α 1 ), v 2 φ(α 2 ),, v φ(α )). Δηλαδή GRS = { ( v 1 φ(α 1 ), v 2 φ(α 2 ),, v φ(α )) φ(x) F k 1 [x]}. Η τελευταία έκφραση ενός γενικευμένου κώδικα Reed-Solomo αποτελεί έναν ισοδύναμο ορισμό των γενικευμένων κωδίκων Reed-Solomo και δικαιολογεί την ονομασία των α i ως εντοπισμούς του κώδικα. Παρατήρηση 5.3.5. Η αποκωδικοποίηση με έναν γενικευμένο κώδικα Reed- Solomo με ελάχιστη απόσταση d = k + 1 μπορεί να διατυπωθεί τώρα

332 Κεφάλαιο 5. Κώδικες Reed-Solomo και συναφείς κώδικες ως εξής: Υποθέτουμε ότι οι τιμές ενός πολυωνύμου φ(x) = c 0 + c 1 x + + c k 1 x k 1 F k 1 [x] στις θέσεις α 1, α 2, α 3,, α έχουν υπολογισθεί και έχουμε φ(α i ) = b i, i = 1, 2,,. Αν, κατά τους υπολογισμούς, έχουν γίνει λάθη το πολύ σε [(d 1)/2] = [( k)/2] θέσεις, τότε μπορούμε να υπολογίσουμε τους συντελεστές c 0, c 1,, c k 1 του πολυωνύμου. Ως γνωστόν (Παρεμβολή Lagrage. Παράρτημα: Θεώρημα Αʹ.2.36) ένα πολυώνυμο βαθμού 1 μπορεί να υπολογισθεί αν γνωρίζουμε τις τιμές του σε το πλήθος διακεκριμένες θέσεις. Αυτό αποτελεί ειδική περίπτωση όπου d = 1 ( = k), δηλαδή δεν επιτρέπεται να υπεισέλθουν λάθη κατά τους υπολογισμούς. Εδώ επιτρέπεται να έχουμε λάθη, οπότε θα μπορούσαμε να μιλήσουμε για Θορυβώδη παρεμβολή Lagrage. Παράδειγμα 5.3.6. Έστω RS ένας [, k, k+1] πρωταρχικός, υπό την στενή έννοια, συμβατικός κώδικας Reed-Solomo επί ενός πεπερασμένου σώματος F. Στην σελίδα 5.3 είχαμε δει ότι αυτός αποτελεί ειδική περίπτωση ενός γενικευμένου κώδικα Reed-Solomo με στοιχεία εντοπισμού α i = α i 1 και συντελεστές στηλών u i = α i 1, i = 1, 2,,, όπου α είναι ένα πρωταρχικό στοιχείο του σώματος. Τότε, σύμφωνα με το παράδειγμα 5.3.4 οι συντελεστές στηλών του δυϊκού κώδικα είναι οι v i = α i /u i = 1, i = 1, 2,,. Συνεπώς από τα προηγούμενα έχουμε ότι: RS = { ( φ(1), φ(α),, φ(α 1 )) φ(x) F k 1 [x]}. Παρατήρηση 5.3.7. Στο προηγούμενο παράδειγμα η έκφραση ενός πρωταρχικού, υπό την στενή έννοια, συμβατικού κώδικα Reed-Solomo [, k, k+1] ως RS = { ( φ(1), φ(α),, φ(α 1 )) φ(x) F k 1 [x]} αποτέλεσε, ιστορικά, τον πρώτο ορισμό των κωδίκων Reed-Solomo με όλες τις γενικεύσεις και παραλλαγές, που παρουσιάσαμε μέχρι τώρα, να έπονται. Επίσης αυτό απετέλεσε και την βάση για τον ορισμό των Goppa κωδίκων, τους οποίους θα μελετήσουμε στα επόμενα. Το κυριώτερο όμως είναι ότι ο ορισμός αυτός αποτελεί την πύλη για την είσοδο σε μια ευρύτατη και άκρως ενδιαφέρουσα περιοχή των Μαθηματικών την Αλγεβρική Γεωμετρία και Κώδικες, η οποία αποτελεί πεδίο σύγχρονης έρευνας και μια περαιτέρω αναφορά είναι πέραν του σκοπού αυτού του βιβλίου.

5.3. Γενικευμένοι κώδικες Reed-Solomo 333 Για μια πρώτη επαφή ο ενδιαφερόμενος αναγνώστης μπορεί να ανατρέξει στα: Walker, J. L. [2000] και Huffma, C. W. ad Pless, V. [2003]. 5.3.2 Εναλλασόμενοι Κώδικες Στην παράγραφο 5.2.1 σελίδα 321 είχαμε παρουσιάσει τους BCH κώδικες ως υποκώδικες των συμβατικών κωδίκων Reed-Solomo. Εδώ θα δούμε πως μπορούμε να το γενικεύσουμε στην περίπτωση των γενικευμένων κωδίκων Reed-Solomo. Έστω F ένα πεπερασμένο σώμα με q το πλήθος στοιχεία, K μια επέκταση του σώματος F βαθμού s και GRS ένας γενικευμένος κώδικας Reed-Solomo επί του σώματος K με παραμέτρους [, k, d = k + 1] (o κώδικας είναι MDS). Θεωρούμε τον κώδικα A = F GRS, δηλαδή από τον κώδικα GRS επιλέγουμε μόνο τις (κωδικο)λέξεις, των οποίων τα γράμματα (οι χαρακτήρες) ανήκουν στο (αρχικό) σώμα F. Ο κώδικας A είναι ένας υποκώδικας του κώδικα GRS και μάλιστα γραμμικός (ως τομή διανυσματικών χώρων επί του ιδίου σώματος F). Μάλιστα δε ως υποκώδικας του CRS είναι αραιώτερος, δηλαδή η ελάχιστη απόστασή του είναι τουλάχιστον ίση με d. Ορισμός 5.3.8. Το ζεύγος των κωδίκων GRS και A ονομάζονται Εναλλασόμενοι κώδικες και καθένας μεμονωμένα εναλλακτικός (ως προς τον άλλο) κώδικας. Έστω H = ( h ij ) ένας πίνακας ελέγχου ισοτιμίας του κώδικα GRS. Με την βοήθεια του πίνακα αυτού θα κατασκευάσουμε έναν πίνακα ελέγχου ισοτιμίας του εναλλακτικού κώδικα A. Κάθε στοιχείο h ij ανήκει στο σώμα K, το οποίο είναι μια επέκταση του σώματος F βαθμού s. Θεωρούμε το σώμα K ως διανυσματικό χώρο επί του F και επιλέγουμε και σταθεροποιούμε μια διατεταγμένη βάση του B = { e 1, e 2,, e s }. Κάθε h ij το εκφράζουμε ως γραμμικό συνδυασμό των δυανυσμάτων της βάσης που επιλέξαμε και με [r j i ] συμβολίζουμε το διάνυσμα στήλη των συντελεστών στην έκφραση αυτή. Δηλαδή h ij = [r j i ]t (e 1, e 2,, e s ) t.

334 Κεφάλαιο 5. Κώδικες Reed-Solomo και συναφείς κώδικες Από τον τρόπο ορισμού του κώδικα A έχουμε ότι το στοιχείο c = c 1 c 2 c ανήκει στον κώδικα αν και μόνο αν (c 1, c 2,, c ) H t = 0. Οπότε, σε συνδυασμό με την προηγούμενη σχέση έχουμε ότι το c = c 1 c 2 c ανήκει στον κώδικα αν και μόνο αν c 1 [ri 1]+c 2[ri 2]+ c [ri ] = 0 για κάθε i = 1, 2,, d 1. Κατασκευάζουμε τον πίνακα: P = [r 1 1 ] [r2 1 ] [r3 1 ] [r 1 ] [r 1 2 ] [r2 2 ] [r3 2 ] [r 2 ] [r 1 3 ] [r2 3 ] [r3 3 ] [r 3 ] [r 1 d 1 ] [r2 d 1 ] [r3 d 1 ] [r d 1 ] ο οποίος προκύπτει από τον πίνακα H με την αντικατάσταση κάθε h ij με το διάνυσμα στήλη [r j i ] των συντελεστών του στην έκφρασή του ως γραμμικό συνδυασμό των διανυσμάτων της βάσης B. Προφανώς από τα προηγούμενα έπεται ότι το στοιχείο c = c 1 c 2 c ανήκει στον κώδικα αν και μόνο αν (c 1, c 2,, c ) P t = 0. Στον πίνακα P, αν αναπτύξουμε κάθε στήλη [r j i ], η οποία περιλαμβάνει s το πλήθος στοιχεία, τότε προκύπτει ένας (d 1)s πίνακας H, του οποίου τα στοιχεία είναι από το σώμα F και για τον οποίο ισχύει ότι το στοιχείο c = c 1 c 2 c ανήκει στον κώδικα αν και μόνο αν (c 1, c 2,, c ) H t = 0., Συνεπώς με την διαδικασία αυτή κατασκευάσαμε έναν πίνακα ελέγχου ισοτιμίας για τον εναλλακτικό κώδικα A επί του σώματος F. Συνοψίζοντας, οι παράμετροι του κώδικα A είναι οι εξής: Το μήκος του είναι, ίσον με το μήκος του γενικευμένου κώδικα Reed- Solomo GRS, του οποίου σμίκρυνση αποτελεί ο κώδικας A. Η ελάχιστη απόστασή του είναι μεγαλύτερη ή ίση από την ελάχιστη απόσταση d του κώδικα GRS. Η διάστασή του, έστω r, ικανοποιεί την σχέση r (d 1)s, καθότι η διαφορά r δεν υπερβαίνει το πλήθος των γραμμών του πίνακα ελέγχου ισοτιμίας του. Από την τελευταία σχέση έχουμε r (d 1)s, δηλαδή προκύπτει ένα κάτω φράγμα για την διάσταση του κώδικα A. Ανακεφαλαιώνοντας έχουμε:

5.3. Γενικευμένοι κώδικες Reed-Solomo 335 Αν θέλουμε να κατασκευάσουμε έναν κώδικα, επί ενός πεπερασμένου σώματος F με q το πλήθος στοιχεία, μήκους και με επιθυμητή ελάχιστη απόσταση τουλάχιστον ίση με d, τότε αρκεί να επιλέξουμε έναν θετικό ακέραιο s, μια επέκταση K του σώματος F βαθμού s και να κατασκευάσουμε έναν γενικευμένο κώδικα Reed-Solomo GRS επί του K με παραμέτρους [, d+1, d]. Οπότε ο εναλλακτικός κώδικας A που κατασκευάσαμε προηγουμένως πληροί τις απαιτήσεις μας. Επιπλέον η απαίτηση ο κώδικας να είναι όσον το δυνατόν μεγαλύτερος (να έχει ικανότητα κωδικοποίησης μεγάλου όγκου πληροφοριών) επιβάλει το κάτω φράγμα στη σχέση r (d 1)s να είναι όσον το δυνατόν μεγαλύτερο, δηλαδή ο βαθμός επέκτασης s να είναι όσον το δυνατόν μικρότερος. Από την άλλη πλευρά ο περιορισμός, σε έναν γενικευμένο κώδικα Reed-Solomo GRS, το μήκος του κώδικα δεν πρέπει να υπερβαίνει το μέγεθος του σώματος K ( q s ) επιβάλλει s [log q ]. Παρατηρήσεις 5.3.9. 1. Η όλη διαδικασία μετάβασης από έναν κώδικα σε έναν άλλο και αντίστροφα, την οποία παρουσιάσαμε προηγουμένως διακαιολογεί την ονομασία εναλλασόμενοι/εναλλακτικοί κώδικες. 2. Όπως θα έχετε ήδη παρατηρήσει, η διαδικασία κατασκευής του εναλλακτικού κώδικα A = F GRS, ως προς τον γενικευμένο κώδικα Reed-Solomo GRS, αποτελεί μια εφαρμογή όσων έχουν παρουσιασθεί στην Παράγραφο 2.3.2. Παράδειγμα 5.3.10. Έστω F = Z 2, = 7, d = 3 και s = 3. Λαμβάνουμε την επέκταση K = Z 2 [x]/ x 3 + x + 1 και το πρωταρχικό στοιχείο α = x + x 3 + x + 1. Επί του σώματος K κατασκευάζουμε τον πρωταρχικό, κανονικοποιημένο γενικευμένο κώδικα Reed-Solomo GRS με παραμέτρους [ = 7, d + 1 = 5, d = 3], ο οποίος έχει ως πίνακα ελέγχου ισοτιμίας τον πίνακα: H = ( 1 1 1 1 1 1 1 1 α α 2 α 3 α 4 α 5 α 6 ). Eπιλέγουμε και σταθεροποιούμε την διατεταγμένη βάση B = { 1, α, α 2 } το σώματος K επί του F = Z 2. Κάθε στοιχείο του πίνακα το εκφράζουμε ως

336 Κεφάλαιο 5. Κώδικες Reed-Solomo και συναφείς κώδικες γραμμικό συνδυασμό των διανυσμάτων της βάσης που επιλέξαμε και με [r j i ] συμβολίζουμε το διάνυσμα στήλη των συντελεστών του στοιχείου στη θέση (i, j) στην έκφραση αυτή. Για παράδειγμα: 1 = [r1 1]t (1, α, α 2 ) t = (1, 0, 0) (1, α, α 2 ) t, α 6 = [r2 4]t (1, α, α 2 ) t = (1, 0, 1) (1, α, α 2 ) t. Τελικά ο (2 3) 7) πίνακας: 1 0 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 H =, 1 0 0 1 0 1 1 0 1 0 1 1 1 0 0 0 1 0 1 1 1 ο οποίος κατασκευάστηκε με την διαδικασία που περιγράψαμε, είναι ένας πίνακας ελέγχου ισοτιμίας για τον κώδικα A. Προφανώς μπορούμε να διαγράψουμε την δεύτερη και τρίτη γραμμή του πίνακα H και να προκύψει ο πίνακας: 1 0 0 1 0 1 1 Ĥ = 1 0 0 1 0 1 1 0 1 0 1 1 1 0, 0 0 1 0 1 1 1 ο οποίος είναι ένας άλλος πίνακας ελέγχου ισοτιμίας του κώδικα A. Εύκολα βλέπουμε τώρα ότι οι παράμετροι του κώδικα A είναι [7, 3, 4], δηλαδή η ελάχιστη απόσταση του κώδικα A είναι γνήσια μεγαλύτερη από την ελάχιστη απόσταση του κώδικα GRS. Οι κώδικες GRS και A αποτελούν ένα ζεύγος εναλλασομένων κωδίκων. Συγκρίνετε το παράδειγμα αυτό με το παράδειγμα 5.1.10. 5.3.3 Ασκήσεις 1. Να απαντήσετε σε όλα τα γιατί; αυτής της παραγράφου.