• Non ci sono risultati.

Dati 2 polinomi a coefficienti interi relativi f(x), g(x), il polinomio x

N/A
N/A
Protected

Academic year: 2021

Condividi "Dati 2 polinomi a coefficienti interi relativi f(x), g(x), il polinomio x"

Copied!
1
0
0

Testo completo

(1)

Lezione del 19 maggio 2008

Nel test di primalità AKS si sfrutta una “doppia riduzione” modulo m, e modulo x

r

-1, per un opportuno r, dove m è l’input, nel senso che ora diremo.

Dati 2 polinomi a coefficienti interi relativi f(x), g(x), il polinomio x

r

-1 (con r>1), e un naturale m>1, diremo che f(x) è congruo g(x) modulo (x

r

-1,m) se la differenza f(x)-g(x) è una combinazione lineare di x

r

-1,m cioé se esistono due polinomi s(x), t(x) a coefficienti interi relativi tale che si abbia f(x)-g(x)=ms(x)+ (x

r

-1)t(x). In tale caso scriveremo f(x)g(x) (mod x

r

-1,m).

Anche tale relazione di doppia congruenza è una relazione di equivalenza nell’insieme dei polinomi a coefficienti interi relativi, e che gode delle usuali proprietà: si possono per esempio moltiplicare e sommare congruenze fra polinomi modulo (x

r

-1,m).

Notiamo che se f(x)g(x) (mod x

r

-1), allora in particolare f(x)g(x) (mod x

r

-1,m) , perché se esiste un polinomio t(x) tale che f(x)-g(x)=(x

r

-1)t(x), allora f(x)-g(x)=ms(x)+ (x

r

-1)t(x), con s(x)=0.

Analogamente se f(x)g(x) (mod m), allora f(x)g(x) (mod x

r

-1,m).

Ma in generale se f(x)g(x) (mod x

r

-1,m) non sempre f(x)g(x) (mod m), e f(x)g(x) (mod x

r

-1), come vedremo dopo in un esempio.

Dato un polinomio qualunque f(x) a coefficienti interi relativi, se costruiamo la riduzione modulo x

r

-1 (riducendo gli esponenti modulo r):

g(x)=f(x)mod(x

r

-1)

e se di g(x) costruiamo la riduzione modulo m (riducendo i coefficienti modulo m):

h(x)=g(x)modm

allora si ha f(x)g(x) (mod x

r

-1), f(x)-g(x)=s(x)(x

r

-1), g(x)h(x) (mod m), g(x)-h(x)=mt(x), da cui f(x)-h(x)=s(x)(x

r

-1)+mt(x), e si conclude che f(x)h(x) (mod x

r

-1,m).

Questo polinomio h(x) (ottenuto per “doppia” riduzione) ha per costruzione grado <r, e tutti i coefficienti compresi fra 0 e (m-1), ed è l’unico con tale proprietà, come si dimostra con metodi simili ai precedenti: tale polinomio k(x) è detto riduzione di f(x) modulo (x

r

-1,m), e indicato con f(x)mod(x

r

-1,m).

Anche in questo caso, un algoritmo per verificare se f(x)g(x) (mod x

r

-1,m), è quello di verificare se le riduzioni dei 2 polinomi modulo (x

r

-1,m)coincidono.

Esempio.

Dati m=3, x

5

-1, se riduciamo modulo (x

5

-1) i polinomi f(x)=1+x

5

+5x

6

+2x

11

, g(x)=5+2x+2x

6

, otteniamo f(x)mod(x

5

-1)=2+7x, g(x)mod(x

5

-1)=5+4x, e riducendo i risultati modulo 3 otteniamo f(x)mod(x

5

-1,3)=2+x=g(x)mod(x

5

-1,3), dunque si conclude che f(x)g(x) (mod x

5

-1,3).

Notare che però non sono valide le congruenze f(x)g(x) (mod x

5

-1), f(x)g(x) (mod 3): la prima non è valida perché f(x)mod(x

5

-1)g(x)mod(x

5

-1), e la seconda perché per esempio i termini noti di f(x), g(x) non sono congrui modulo 3.

Fissiamo ora un esponente intero positivo k, e costruiamo un algoritmo per calcolare la riduzione della potenza f(x)

k

modulo (x

r

-1,m), dove f(x) è un polinomio a coefficienti interi relativi.

Tale algoritmo è la esponenziazione modulare per polinomi, che è molto simile a quella già illustrata per ridurre modulo m una potenza numerica.

Sia t la lunghezza binaria di k, cioé il numero di cifre binarie dell’esponente k:

k=a

t-1

2

t-1

+ a

t-2

2

t-2

+….+a

1

2+a

0

(con 0a

i

t-1, con a

t-1

=1)

Costruiamo una successione f

0

(x),f

1

(x),...,f

t

(x) di polinomi a coefficienti interi ponendo:

f

0

(x)=1; per ogni i>0 f

i

(x)= (f i 1 2 (x)f(x) a

ti

) mod(x

r

-1,m)

(2)

L’ultimo termine f

t

(x) della successione sarà la riduzione f(x)

k

mod(x

r

-1,m) cercata (la dimostrazione di tale affermazione si ottiene con ragionamenti simili a quelli utilizzati nel caso dell’esponenziazione modulare numerica).

Dimostreremo ora che, dato in input il numero m, di lunghezza binaria h, l’algoritmo precedente ha complessità di ordine polinomiale rispetto ad h, a patto che siano soddisfatte le seguenti ipotesi:

- l’esponente k è m

- il polinomio f(x) a coefficienti interi relativi è di grado < r e ha tutti i coefficienti compresi fra 0 e (m-1)

- r ha ordine polinomiale O(h

n

) rispetto ad h

Per calcolare la complessità di tale algoritmo, osserviamo che ogni elemento della successione f

i

(x) con i>0 si calcola dal precedente moltiplicando f

i-1

(x) per sé stesso e per f(x)

ati

(quest’ultima potenza uguale ad f(x) oppure ad 1) e riducendo il risultato modulo (x

r

-1,m).

Poiché f

i-1

(x) è a sua volta una riduzione modulo (x

r

-1,m), esso è un polinomio di grado <r, e tutti i suoi coefficienti (in numero r) sono compresi fra 0 e (m-1); lo stesso vale per il polinomio f(x).

Per moltiplicare f

i-1

(x) per sé stesso e per f(x)

ati

si esegue un numero r

3

di prodotti fra i coefficienti di f

i-1

(x) e di f(x)

ati

, e si ottiene un polinomio di grado <r

3

; si deve poi ridurre il risultato modulo x

r

-1 (quindi ridurre modulo r ognuno degli esponenti, in numero r

3

) ottenendo un polinomio di grado <r, e infine ridurre il risultato modulo m (quindi ridurre modulo m ognuno dei coefficienti, sempre in numero r): tutte queste operazioni hanno complessità di ordine polinomiale rispetto ad h, perché r ha ordine polinomiale rispetto ad h.

Dunque il calcolo di ogni termine della successione f

i

(x) è di complessità polinomiale.

Infine il numero degli elementi della successione è t, numero di cifre binarie dell’esponente k , e quindi (essendo km) non superiore al numero di cifre binarie h di m.

Complessivamente l’algoritmo ha complessità polinomiale rispetto ad h.

Riferimenti

Documenti correlati

Matematica

Corso di Laurea in Ingegneria Edile Anno Accademico 2015/2016..

Per chi ha bisogno di impratichirsi sulle regole di

Uno studente ha nel proprio curriculum 9 esami da 6 crediti, nei quali ha riportato una media di 24/30 , e 6 esami da 9 crediti, nei quali ha riportato una media di 21/30.. Qual `e

Esame di MATEMATICA Cognome e Nome Matricola. Appello del 12

Esame di MATEMATICA Cognome e Nome Matricola Appello del 14 giugno

[r]

Uno studente ha nel proprio curriculum 12 esami da 6 crediti, nei quali ha riportato una media di 27/30 , e 4 esami da 9 crediti, nei quali ha riportato una media di 24/30.. Qual `e