Matematica Discreta Lezione del giorno 16 dicembre 2011 Resta da risolvere il Problema 2 della precedente lezione: dati i numeri naturali a, b, come calcolare gli interi relativi x,y tali che mcd(a,b)=ax+by ? Illustreremo un algoritmo (detto Algoritmo Euclideo esteso) per calcolare i coefficienti interi relativi x,y tali che mcd(a,b)=ax+by: tale algoritmo è basato sull’algoritmo Euclideo delle divisioni successive. Se n è il numero delle divisioni successive effettuate nell’algoritmo Euclideo, lo schema di tali divisioni è il seguente: (se r1>0) (se r2>0) (se r3>0) (se r4>0) . . (se ri-1>0) . . . (se rn-2>0) (se rn-1>0) divisione numero 1 divisione numero 2 divisione numero 3 divisione numero 4 divisione numero 5 a=bq1+r1 b=r1q2+r2 r1=r2q3+r3 r2=r3q4+r4 r3=r4q5+r5 con q1,r1 interi 0, r1<b con q2,r2 interi 0, r2<r1 con q3,r3 interi 0, r3<r2 con q4,r4 interi 0, r4<r3 con q5,r5 interi 0, r5<r4 divisione numero i ri-2=ri-1qi+ri con qi,ri interi 0, ri<ri-1 divisione numero (n-1) divisione numero n rn-3=rn-2qn-1+rn-1 rn-2=rn-1qn+rn con qn-1,rn-1 interi 0, rn-1<rn-2 con qn,rn interi 0, rn=0 Nell’ultima divisione numero n si è ottenuto resto rn=0 e si conclude che il penultimo resto rn-1 è proprio il mcd(a,b). Osserviamo che: se il resto ri-1 ed il resto ri-2 si possono ciascuno esprimere come combinazione lineare di a,b a coefficienti interi relativi, allora anche il resto ri si può esprimere come combinazione lineare di a,b a coefficienti interi relativi. Per verificare tale affermazione basta supporre che ri-1 si possa esprimere come combinazione lineare di a,b a coefficienti interi relativi che indicheremo con si, ti: ri-1 = asi + bti e che ri-2 si possa esprimere come combinazione lineare di a,b a coefficienti interi relativi che indicheremo con si-1, ti-1: ri-2 = asi-1 + bti-1 e calcolare il valore del resto ri ricavandolo dalla divisione numero i: ri=ri-2-ri-1qi=(asi-1 + bti-1)-(asi + bti)qi=a(si-1-siqi)+b(ti-1-tiqi) per concludere che in effetti il resto ri si può esprimere come combinazione lineare di a,b a coefficienti interi relativi si+1=si-1-siqi , ti+1=ti-1-tiqi . Ma i primi 2 resti r1, r2 si possono esprimere certamente come combinazione lineare di a,b a coefficienti interi relativi perché dalla prima divisione si ricava: r1=a-bq1 (cioè r1 si può esprimere come combinazione lineare di a,b a coefficienti interi relativi s2=1, t2= -q1) mentre dalla seconda divisione si ricava: r2=b-r1q2=b-(a-bq1)q2=a(-q2)+b(1+q1q2) (cioè r2 si può esprimere come combinazione lineare di a,b a coefficienti interi relativi s3=-q2, t3= 1+q1q2). In questo modo, con il ragionamento precedente, si può allora esprimere il resto r3 come combinazione lineare di a,b (perché r1,r2 si possono esprimere in questo modo), poi il resto r4 come combinazione lineare di a,b a coefficienti interi relativi (perché r2,r3 si possono esprimere in questo modo) e così via fino ad esprimere alla fine il resto rn-1 (che è =mcd(a,b)) come combinazione lineare di a,b a coefficienti interi relativi, e risolvere così il Problema 2. Seguendo il ragionamento precedente si vede che è necessario costruire in forma ricorsiva 2 successioni di numeri interi relativi: - la successione s2,s3,s4……. - la successione t2,t3,t4,……. che permettono di esprimere r1 nella forma as2+bt2, di esprimere r2 nella forma as3+bt3 e così via , in generale esprimendo ri nella forma asi+1+bti+1, e infine esprimendo rn-1=mcd(a,b) nella forma asn+btn (quindi i coefficienti x,y cercati nel Problema 2 sono proprio x=sn, y=tn). Nelle successioni così costruite vi sono regole ricorsive che legano ogni termine con i 2 termini che lo precedono, e che sono state trovate nel ragionamento precedente: si+1=si-1-siqi , ti+1=ti-1-tiqi (dove qi è il quoziente della divisione numero i). Tali regole però non permetterebbero di calcolare i termini s2,s3 (perché essi non hanno 2 termini che li precedono) né t2,t3 (per lo stesso motivo). A ciò si può ovviare definendo 2 termini “iniziali” per ognuna delle successioni, nel modo seguente: s0=1, s1=0, t0=0, t1=1 Questo rende valida le regola ricorsive anche per i termini s2,s3 e t2,t3. Infatti si ha : (dalla divisione numero 1) r1=a-bq1=as2+bt2 dove s2=1, t2= -q1 (vengono così rispettate le regole ricorsive s2=s0-s1q1 , t2=t0-t1q1) (dalla divisione numero 2) r2=b-r1q2=b-(a-bq1)q2=as3+bt3 dove s3= -q2, t3= 1+q1q2 (vengono rispettate di nuovo le regole ricorsive s3=s1-s2q2 , t3=t1-t2q2) Riassumendo: per calcolare i coefficienti interi relativi x,y che permettono di esprimere il mcd(a,b) nella forma ax+by (combinazione lineare di a,b) si devono eseguire le n divisioni dell’Algoritmo Euclideo (che servono per calcolare il mcd(a,b)) e costruire 2 le successioni: s0,s1,s2,……. ; t0,t1,t2,……. definite ricorsivamente dai valori iniziali s0=1, s1=0; t0=0, t1=1 e dalle regole ricorsive: si+1=si-1-siqi , ti+1=ti-1-tiqi (dove qi è il quoziente della divisione numero i). Alla fine i coefficienti cercati sono proprio x=sn, y=tn . Esempio: riprendiamo l’esempio della lezione precedente mcd(371,98)=7, in cui sono state effettuate n=5 divisioni successive: 371=983+77 98=771+21 77=213+14 21=141+7 14=72+0 q1=3, r1=77 q2=1, r2=21 q3=3, r3=14 q4=1, r4=7 q5=2, r5=0 ottenendo appunto 7=mcd(371,98). La costruzione delle successioni si e ti porta ai seguenti valori: s0=1, s1=0, s2=s0-s1q1=1, s3=s1-s2q2= -1, s4=s2-s3q3= 4, s5=s3-s4q4= -5 t0=0, t1=1, t2= t0-t1q1= -3, t3= t1-t2q2=4, t4= t2-t3q3= -15, t5= t3-t4q4= 19 da cui si ricava x=s5=-5, y=t5=19 e infine 7= mcd(371,98)=371•(-5)+98•19 . Un’applicazione di questi risultati si trova nella ricerca di soluzioni intere di una equazione di primo grado in 2 incognite x,y della forma seguente: ax + by = c dove a,b,c sono numeri naturali fissati. Si dimostra il seguente risultato: l’equazione ha soluzioni intere in x,y mcd(a,b) è divisore di c. Dimostriamo l’implicazione : Se esistono due valori interi x=x0, y=y0 che risolvono l’equazione, si ha ax0 + by0 = c, e se poniamo d=mcd(a,b), essendo d divisore comune di a,b esistono numeri naturali s,t tali che ds=a, dt=b, da cui c=ax0+by0=dsx0+dty0=d(sx0+ty0) e si ha che d è divisore di c, cioè la tesi. Dimostriamo l’implicazione : Se d=mcd(a,b) è divisore di c, esiste un numero naturale t tale che dt=c; ma dai ragionamenti precedenti segue che è possibile esprimere d come combinazione lineare di a,b d= ax’+by’ a coefficienti interi relativi x’,y’ da cui si ha: c=dt=ax’t+by’t dunque l’equazione ax + by = c ha soluzioni intere x=x’t, y=y’t , cioè la tesi. Esempio: l’equazione 12x+8y=10 non ha soluzioni intere in x,y perché mcd(12,8)=4 non è divisore di 10. Invece l’equazione: 371x+98y=14 ha soluzioni intere in x,y perché (vedere esempio precedente) mcd(371,98)=7 è divisore di 14. Per trovare le effettive soluzioni in x,y si può seguire il procedimento illustrato nella dimostrazione dell’implicazione vista sopra: essendo 7=mcd(371,98) divisore di c=14, esiste un numero naturale t tale che 7t=14 (ed è t=2). Dagli esempi precedenti sappiamo che è possibile esprimere 7=mcd(371,98) come combinazione lineare della forma 371x’+98y’ dove x’= -5, y’=19. Soluzioni intere dell’equazione 371x+98y=14 sono allora x=x’t= -10, y=y’t=38. Numeri primi Sia a un qualunque numero naturale. Dall’eguaglianza a=a•1 segue che a,1 sono in ogni caso divisori di a (detti divisori banali di a). Definiamo numero primo un numero naturale a>1 i cui unici divisori sono i divisori banali 1,a . Nota: osserviamo che, nella definizione di numero primo, il numero naturale 1 non è considerato primo. Il motivo di questa esclusione del numero 1 dai numeri primi sarà chiarito nella dimostrazione del “Teorema di fattorizzazione unica”. Nota: nell’agosto del 2008 è stato trovato il più grande numero primo attualmente conosciuto (esso ha quasi 13.000.000 cifre in base 10). Utili notizie possono essere trovate sul sito www.mersenne.org Fattorizzazione in primi Dimostreremo che i numeri primi sono come i “mattoni” elementari con cui si possono “costruire “ tutti i numeri naturali >1, nel senso che ogni numero naturale >1 è prodotto di numeri primi e tale rappresentazione è sotto certi aspetti “unica”. Ricordiamo che per convenzione il termine “prodotto” si intende al limite anche con 1 solo fattore (nel quale caso il risultato del prodotto è l’unico fattore coinvolto). Premettiamo un risultato preliminare sui numeri primi: Teorema. Se a è un numero primo e se a é divisore del prodotto di 2 numeri naturali b,c allora a è divisore di almeno uno dei fattori b,c. Dimostrazione: Per assurdo supponiamo che a non sia divisore né di b né di c. Essendo per ipotesi a(bc) esiste un numero naturale t tale che at=bc. Poniamo d=mcd(a,b). Essendo da, db ed essendo a numero primo, si ha d=1 oppure d=a. Ma non può essere d=a (perché d è divisore di b mentre a non lo è) dunque è d=1. Per una proprietà del mcd(a,b), esistono 2 interi relativi x, y tali che d=1=ax+by. Moltiplicando ambo i membri per c e tenendo conto che at=bc si ha: c=acx+bcy=acx+aty=a(cx+ty) e si ottiene ac (contraddizione). Osservazione. Il risultato ora dimostrato si può estendere facilmente al caso del prodotto di 3 o più fattori. Per esempio se il numero primo a è divisore di un prodotto bcd di 3 numeri naturali b,c,d allora, utilizzando la proprietà associativa del prodotto, si può osservare che a sarà divisore del prodotto (bc)d di 2 fattori bc,d dunque (utilizzando la proprietà precedente valida per 2 fattori) si otterrà a(bc) oppure ad, e di nuovo applicando la proprietà precedente sarà ab oppure ac oppure ad, quindi a sarà divisore di almeno uno dei 3 fattori b,c,d. Con ragionamenti analoghi si ottiene che se un numero primo a è divisore del prodotto di n numeri naturali, allora a è divisore di almeno uno degli n fattori (qualunque sia il numero n di fattori).