• Non ci sono risultati.

Teoria dei numeri Lezione del giorno 14 maggio 2008

N/A
N/A
Protected

Academic year: 2021

Condividi "Teoria dei numeri Lezione del giorno 14 maggio 2008"

Copied!
1
0
0

Testo completo

(1)

Teoria dei numeri

Lezione del giorno 14 maggio 2008

Vedremo che vi è uno stretto legame fra la teoria di numeri perfetti e quella dei numeri di Mersenne.

Cominceremo con la dimostrazione del seguente risultato di Euclide: dato il numero di Mersenne primo Mk=2k-1 (quindi con k primo), il numero naturale n=2k-1Mk=2k-1(2k-1) è perfetto.

Teorema (Euclide).

Se il numero di Mersenne Mk=2k-1 è primo, il numero n=2k-1(2k-1)=2kM è perfetto.

Dimostrazione.

Essendo Mk dispari, i numeri 2k-1, p sono coprimi, e per un risultato precedente si ha:

(n)=(2k-1)(Mk).

Essendo Mk primo si ha (Mk)=1+Mk=1+(2k-1)= 2k.

I divisori di 2k-1 sono le potenze 20, 21, …., 2k-1, dunque (2k-1)= 20+21+22+….+2k-1=2k-1(dove si è sfruttata l’identità (x-1)(1+x+x2+….+xk-1)=(xk-1) per x=2).

In totale si ottiene (n)=2k(2k-1)=2[2k-1(2k-1)]=2n ed n è perfetto.

Eulero dimostrò un parziale viceversa:

Teorema (Eulero).

Se n è un naturale pari perfetto, allora n è della forma n=2k-1Mk dove Mk=2k-1 è un numero di Mersenne primo.

Dimostrazione:

Poiché n è pari, se 2t (con t>0) è la massima potenza di 2 che divide n, si può scrivere n=2tm con m dispari.

Poniamo k=t+1>1, in modo che n=2k-1m.

Essendo m dispari, i numeri 2k-1, m sono coprimi, e dunque (n)=(2k-1)(m).

Come nella dimostrazione del Teorema precedente si ha (2k-1)=2k-1.

Poiché n è perfetto per ipotesi, si ottiene 2km=2n=(n)=(2k-1)(m)=(2k-1)(m).

Dunque 2k-1 è divisore del prodotto 2km; ma 2k, 2k-1 sono coprimi (perché consecutivi), quindi 2k-1 è divisore del fattore m, e si ha m=(2k-1)M, con M naturale.

Sostituendo si ha: 2km=2k(2k-1)M=(2k-1)(m), da cui (m)=2kM.

Si ha allora m+M=(2k-1)M+M=2kM=(m).

Essendo m,M entrambi divisori (distinti) di m, ed essendo (m) la somma di tutti i divisori di m, concludiamo che m,M sono gli unici divisori di m (e dunque necessariamente M=1), ossia m è primo ed inoltre:

m=(2k-1)M=(2k-1)=Mk, ed n=2k-1m=2k-1Mk, come voleva la tesi.

Dai Teoremi di Euclide ed Eulero segue che un naturale pari n è perfetto se e solo se è della forma n=2k-1(2k-1) con k naturale >1, e con Mk=2k-1 numero di Mersenne primo.

Per esempio, per k=2, il numero 22-1=3 è primo, e si ottiene il numero perfetto n=2(22-1)=6.

Analogamente per k=3, il numero 23-1=7 è primo, e si ottiene il numero perfetto n=22(23-1)=28.

Per quanto riguarda i numeri perfetti dispari, la questione è tutt’ora aperta: non sono stati trovati numeri perfetti dispari, né è stata trovata una loro caratterizzazione, come nel caso dei perfetti pari.

(2)

La caratterizzazione dei numeri perfetti pari induce una corrispondenza biunivoca fra essi e i numeri di Mersenne primi: poiché sono stati trovati 44 numeri di Mersenne primi, altrettanti sono i numeri perfetti pari attualmente conosciuti.

Algoritmo per il calcolo della radice n-esima

Sia dato il numero naturale x (radicando), e, fissato un numero naturale n>1, costruiamo un algoritmo che, dato in input x, calcoli la parte intera della radice n-esima di x, ossia il più grande intero y tale che ynx.

Rappresentiamo x in base 2, e raggruppiamo le cifre binarie a blocchi di n cifre:

x = 12……k

dove ogni i è un blocco di n cifre binarie (aggiungiamo eventualmente degli zeri a sinistra per rendere il blocco 1 di n cifre, e in ogni caso 10).

Si ha ovviamente 0i2n-1 per ogni i, essendo ogni i un blocco di n cifre binarie che rappresenta un numero intero 0 in base 2.

Escludiamo il caso banale in cui l’input x abbia non più di n cifre (nel qual caso il numero dei blocchi è k=1) perché in tale caso si ha 2n>x quindi la parte intera della radice n-esima di x è <2 cioè è =1.

Descriviamo il seguente algoritmo che genera 2 successioni di numeri interi 0:

yi , xi (con i=0,1,…,k) 1) Si pone y0=x0=0

2) Per i=1,….,k si ripete il seguente blocco di istruzioni:

a) Si calcola la massima cifra binaria {0,1} tale che (2yi-1+)n2nxi-1+i

b) Si pone yi=2yi-1+, xi=2nxi-1+i

Alla fine l’algoritmo esce con output “yk = parte intera della radice n-esima di x”.

Esaminando l’algoritmo si vede che ad ogni iterazione nel passo 2) il numero xi si ottiene shiftando verso sinistra il numero xi-1 di n cifre binarie e aggiungendo il blocco i : quindi, partendo dal valore iniziale xi=0, è ovvio che alla fine del ciclo si avrà xk=x.

D’altro canto il numero yi si ottiene shiftando verso sinistra il numero yi-1 di 1 cifra binaria e aggiungendo la cifra binaria  trovata nel passo a): quindi le successive cifre binarie  trovate nella iterazione della a) sono proprio le cifre binarie dell’output yk .

Inoltre ad ogni iterazione, esaminando le istruzioni a),b), si nota che yinxi, e in particolare yknxk=x.

Dimostriamo inoltre che per ogni i=1,2,…,k si ha:

(yi+1)n > xi

Ragioniamo per induzione (Ia forma).

Per i=1 è vero, perché il valore  nella a) è in questo caso =1 (in quanto (2y0+1)n=12nx0+1=1) dunque y1=2y0+1=1, x1=2nx0+1=1 , 1n=11.

Supponiamolo vero per i-1, e dimostriamolo vero per i.

Dunque supponiamo che (yi-1+1)2 > xi-1 , e dimostriamo che (yi+1)n > xi .

Se nell’iterazione i-esima al passo a) il valore di  è 0 (quindi se (2yi-1+1)n>2nxi-1+i ) allora è ovvio perché appunto (yi+1)n=(2yi-1+1)n>2nxi-1+i = xi .

Se invece il valore di  è 1, e se fosse per assurdo (yi+1)n  xi , si avrebbe:

(yi+1)n=(2yi-1+2)n=2n(yi-1+1)n xi=2nxi-1+i da cui:

2n[(yi-1+1)n-xi-1]  i

ed essendo per l’ipotesi induttiva (yi-1+1)n-xi-1>0, si avrebbe 2n i , in contraddizione con quanto notato all’inizio.

(3)

In particolare per i=k si ottiene:

yknxk=x (yk+1)n > xk=x

Dunque l’output yk è effettivamente il più grande intero y tale che la ynx , quindi yk è la parte intera della radice n-esima dell’input x.

Resta da esaminare la complessità di calcolo dell’algoritmo.

Riferimenti

Documenti correlati

Il numero dei valori possibili per la scelta dell’elemento casuale a nel test è (n-1); vediamo come possiamo valutare il numero dei valori a per i quali il test è superato, cioè

Dato un qualunque grafo semplice non orientato G, si chiama grafo duale di G il grafo semplice non orientato G’ che ha gli stessi vertici di G, ma nel quale due vertici distinti

Questa eguaglianza ci dice che il numero x di blocchi di un disegno di parametri (v,k,r) dipende dai 3 parametri secondo l’equazione x=(vr)/k, quindi non può essere

Se tutti i vertici del grafo hanno grado pari, per il Teorema di Eulero (essendo il grafo connesso) esiste nel grafo un cammino ciclico Euleriano, che percorre tutti gli archi del

4) per il Teorema di Eulero esiste nel nuovo grafo un cammino ciclico Euleriano che percorre tutti gli archi (del nuovo grafo) ognuno 1 sola volta; si costruisce tale cammino

Infatti basta per esempio scegliere m=minimo naturale ³j che sia multiplo di k-j : per tale scelta di m si ha allora b m =b 2m (perché m,2m³j, e perché 2mm (mod k-j),

[r]

Alcuni dei principali argomenti trattati nel corso saranno i seguenti: studio della Teoria dei Numeri (soprattutto l’aritmetica dei numeri interi e in particolare dei numeri