Documente Academic
Documente Profesional
Documente Cultură
?
¾»
- +
-
½¼
- -
Aceste trei tipuri de conectori se pot grupa arbitrar - folosind eventual şi noduri
obişnuite. Utilizarea practică revine la obţinerea de circuite liniare care pot realiza
automat operaţii uzuale cu polinoame: adunări, scăderi, ı̂nmulţiri şi ı̂mpărţiri.
85
86 PRELEGEREA 8. CIRCUITE LINIARE ŞI EXTENSII GALOIS
a0 a1 ... an −→
Figura 8.1:
- +n - ... - +n - +n -
6
6 6 6
º· º· º· º·
bn bn−1 b1 b0
¹¸ ¹¸ ¹¸ ¹¸
6 6 6 6
a(X) s - s - - ... - s - -
De remarcat că multiplicarea cu 1 se face prin arc simplu (fără conector), iar
multiplicarea cu 0 revine la suprimarea arcului. În cazul operaţiilor cu polinoame
din Z2 [X], toţi multiplicatorii se reduc la aceste două cazuri.
8.1. CIRCUITE LINIARE PENTRU OPERAŢII ELEMENTARE 87
Dacă dorim să ı̂nmulţim h(X) cu polinomul a(X) = 2X + 8 (vector a = (8, 2)),
circuitul liniar va funcţiona 5 tacţi (până când toate elementele de ı̂nmagazinare
revin la 0); comportarea sa este relatată de tabelul:
Figura 8.2:
²¯ ²¯ ²¯ ²¯
- -+ - - + - ... -+ - -+ -
6 ±° ±° ±° ±°
6 6 6 6
¾» ¾» ¾» ¾» ¾»
b0 b1 b2 bn−1 bn
½¼ ½¼ ½¼ ½¼ ½¼
6 6 6 6 6
s s s - ... s -
a(X)h(X) + b(X)g(X)
De remarcat că polinoamele g(X) şi h(X) pot avea grade diferite; ı̂n acest caz se
alege n ca fiind gradul cel mai mare şi se completează celălalt polinom cu coeficienţi
nuli până la gradul n.
Exemplul 8.3 Fie polinoamele g(X) = 1 + X 2 , h(X) = X + X 2 + X 4 cu coeficienţi
ı̂n Z2 ; deci vectorii corespunzători vor fi h = (0, 1, 1, 0, 1), g = (1, 0, 1, 0, 0). Cir-
cuitul liniar care realizează expresia a(X)h(X) + b(X)g(X) este:
b(X) s -
²¯ ²¯? ²¯
? - -+ - -+ - - -+ -
±° ±° ±°
6
s s6 -6
a(X)
Figura 8.3:
¾ s ... ¾ s -
#Ã
? #Ã
? #Ã
? 6
#Ã
?
²¯
-+ - -
±°
Vectorii (1, 1, 0, 1, 0, 1) - de pe ultima linie şi (0, 1, 0, 0, 1) - scris mai gros şi ı̂n
ordine inversă pe ultima coloană - reprezintă restul 1 + X + X 3 + X 5 respectiv câtul
X + X 4 ı̂mpărţirii lui a(X) la g(X).
90 PRELEGEREA 8. CIRCUITE LINIARE ŞI EXTENSII GALOIS
h0 h1 hn−1 hn
½¼ ½¼ ½¼ ½¼
6 6
s - ... 6
s -6
Când gradele polinoamelor sunt diferite, se construieşte ı̂ntâi circuitul liniar co-
respunzător polinomului de grad maxim, după care se completează cu circuitul cores-
punzător celuilalt polinom.
− 0 0 0 0 −
2 2 2 0 2 −
2 1 2 2 2 2
1 0 0 2 0 2
−3 2
½¼ ½¼
?
²¯ ?
²¯ ²¯
- - -+ - -+ - -+
6 ±° ±° ±°
6 6
¾» ¾»
−1 2
½¼ ½¼
6
s -6
− 0 0 0 0 −
1 1 0 −7 4 2
−2 −2 1 2 −7 0
0 0 −2 22 −12 −7
0 0 0 34 −2 −12
Figura 8.4:
¾ s ... ¾ s
#Ã
? #Ã
? #Ã
? 6
#Ã
Deci circuitul de ı̂mpărţire cu polinomul g(X) poate fi utilizat pentru ı̂nmulţirea lui
b(α) cu α.
Demonstraţie:
8.2. EXTENSII GALOIS 93
unde, la momentul iniţial, ı̂n elementele de ı̂nmagazinare este vectorul (1, 0, 0, 0).
Conform Teoremei 8.1, α este o rădăcină a polinomului 1 + X + X 4 , adică
1 + α + α4 = 0.
Lăsând circuitul să funcţioneze, ı̂n elementele de ı̂nmagazinare se obţin toate ele-
mentele lui GF (24 ), pe care le interpretăm fie ca vectori cu patru componente peste
Z2 , fie ca polinoame de gradul 3 ı̂n α cu coeficienţi ı̂n Z2
94 α0 PRELEGEREA
= 1 8. CIRCUITE LINIARE
1 0ŞI EXTENSII
0 0 GALOIS
α1 = α 0 1 0 0
α2 = α 2
0 0 1 0
α3 = α 3
0 0 0 1
α4 = 1 + α 1 1 0 0
α5 = α + α 2
0 1 1 0
α6 = α2 + α3 0 0 1 1
α7 = 1 + α + α 3
1 1 0 1
α8 = 1 + α 2
1 0 1 0
α9 = α + α3 0 1 0 1
α10 = 1 + α + α 2
1 1 1 0
α11 = α + α2 + α3 0 1 1 1
α12 = 1 + α + α + α2 3
1 1 1 1
α13 = 1 2
+ α + α 3
1 0 1 1
α14 = 1 + α3 1 0 0 1
α15 = 1 1 0 0 0
Vedem deci că polinomul 1 + X + X 4 este primitiv, puterile lui α epuizând toţi
vectorii nenuli din GF (24 ) = {0, α0 , α, . . . , α14 }.
Exemplul 8.9 Tabelul din exemplul precedent descrie operaţia de ı̂nmulţire din
GF (24 ), generată de rădăcina α a polinomului primitiv 1 + X + X 4 . Dacă s-ar
alege α ca rădăcină a altui polinom primitiv - de exemplu 1 + X 3 + X 4 , se va genera
tot GF (24 ), dar ı̂ntr-o altă ordine. Lăsăm ca exerciţiu această generare.
În GF (24 ) se poate defini şi operaţia de adunare, ı̂nsumând modulo 2 cei doi
operanzi, pe componente. Astfel, dacă reluăm GF (24 ) generat ı̂n Exemplul 8.8 de
rădăcina polinomului 1 + X + X 4 , tabela de adunare va fi:
• Se ignoră ieşirea;
Pentru calculul unei valori de forma a(α)αj , (j ≥ 0 fixat), se pot construi circuite
liniare care să realizeze direct acest produs.
8.3 Exerciţii
8.1 Să se realizeze circuite liniar (ı̂n ambele modalităţi de construcţie) care să
efectueze ı̂nmulţiri cu polinoamele:
h(X) = 1 + 2X + 3X 2 + 4X 3 ∈ Z[X]
h(X) = 1 + 2X + X 5 ∈ Z7 [X]
8.3 Se dă cavântul g = (1, 0, 0, −1, 0, 1). Să se realizeze circuitul de ı̂nmulţire
cu polinomul corespunzător şi să se reprezinte comportamentul acestui circuit la
ı̂nmulţirea cu a = (1) şi a = (1, 1, 1, 0, 0, 0, 1).
8.4 Să se realizeze un circuit liniar care realizează produsul a(X)g(X) + b(X)h(X)
pentru polinoamele:
g(X) = 1 + X + X 3 , h(X) = 1 − 5X − 2X 2 + 3X 3 ;
g(X) = −4X 3 + X 5 − 2X 8 , h(X) = X 2 + 2X 4 + X 6 ;
g(X) = X − X 3 + 3X 4 , h(X) = 2X 3 + X 5 + X 9 .
8.5 Să se facă ı̂mpărţirea ı̂n Q[X] la polinomul g(X) = X 2 −2X +1 a polinoamelor
a(X) = X 5 − 4X 3 − 2X + 5, a(X) = X + 7.
8.6 Aceeaşi problemă pentru polinoamele g(X) = 2X −1 şi respectiv a(X) = X 3 −3.
(1) : În Q[X];
(2) : În Z3 [X].
8.7 Să realizeze un circuit care să efectueze (ı̂n Q) ı̂nmulţirea cu polinomul
g(X) = 1 − 2X + X 3 şi ı̂mpărţirea cu polinomul h(X) = g(X).
8.11 Folosind elementele din Exemplul 8.10 să se construiască circuite de generare
pentru a(α)α, a(α)α2 şi a(α)α7 .
8.12 Să se construiască circuite de generare ı̂n GF (25 ) pentru a(α) şi a(α)α10 ,
unde α este rădăcină a polinomului 1 + X 2 + X 5 ∈ Z2 [X].