Matematica Discreta Lezione dei giorni 2,4,8 e 9 febbraio 2011 La funzione di Eulero. Dati 2 numeri naturali a,b, diremo che a,b sono numeri coprimi se mcd(a,b)=1. Poiché il massimo comune divisore di a,b è il più grande dei divisori comuni di a,b, in pratica affermare che a,b sono coprimi equivale ad affermare che l’unico divisore comune di a,b è 1. Fissato un numero naturale n, si chiama funzione di Eulero la funzione φ: N N che associa ad ogni numero naturale nN il numero φ(n) di tutti i numeri naturali x tali che 1xn ed x,n sono coprimi. E’ ovvio che φ(1)=1, dunque studieremo solo il caso n>1. Esempio: se n=15, i numeri naturali x tali che 1x15 ed x,15 sono coprimi sono 1,2,4,7,8,11,13,14 quindi φ(15)=8 . Cercheremo una formula che permetta di calcolare φ(n) conoscendo la fattorizzazione di n in prodotto di numeri primi. Premettiamo 2 risultati preliminari: 1) Siano p1, p2,….., pr dei numeri primi distinti e supponiamo che ognuno di essi sia divisore del numero naturale c. Allora anche il prodotto (p1p2…..pr) è divisore di c. Dimostrazione: per ipotesi esiste un naturale b tale che p1b=c; se fattorizziamo sia c che b in prodotto di numeri primi: b=q1q2…..qs , c=t1t2…..tm si ha l’eguaglianza: p1q1q2…..qs = t1t2…..tm e per l’unicità della fattorizzazione segue che p1 coincide con uno dei fattori t1, t2, …., tm e (riordinando opportunamente i fattori) possiamo fare in modo che p1=t1. Analogamente, ragionando su p2, si ottiene che p2 coincide con uno dei fattori t1, t2, …., tm (ma non con t1 perché p1p2) e (riordinando opportunamente i fattori) possiamo fare in modo che p2=t2. Procediamo fino ad ottenere pr=tr da cui c = t1t2…..tm = (p1p2…..pr)tr+1…..tm e si ha la tesi. 2) Siano x1, x2,…,xr delle variabili (che possono assumere come valori numerici arbitrari) e calcoliamo il valore dell’espressione algebrica seguente: (1-x1)(1-x2)……(1-xr) Per r=2 si ha, utilizzando la proprietà distributiva e sviluppando i calcoli : (1-x1)(1-x2)=1-(x1+x2)+x1x2 Per r=3 con calcoli analoghi si ha: (1-x1)(1-x2)(1-x3)=1-(x1+x2+x3)+(x1x2+x1x3+x2x3)-x1x2x3 Si può in generale dimostrare (con una dimostrazione per induzione che omettiamo) che per qualunque numero r di variabili vale la seguente formula: (1-x1)(1-x2)……(1-xr)=1-α1+α2-α3+α4+…….±αr dove α1 è la somma delle singole variabili ; α2 è la somma dei prodotti delle variabili prese a 2 a 2; α3 è la somma dei prodotti delle variabili prese a 3 a 3; …….. ……; r è il prodotto delle r variabili, preceduto da un segno + se r è pari, da un segno – se r è dispari. Torniamo ora al calcolo della funzione di Eulero φ(n), per n>1. Possiamo considerare la fattorizzazione di n in prodotto di numeri primi: raccogliendo i fattori primi uguali sotto forma di potenza, n si può rappresentare nella forma n = p1k1 p 2 k 2 .....p r k r dove p1, p2, …., pr sono fattori primi distinti di n. Dato un numero naturale x, affinché x,n siano coprimi (cioè affinché 1 sia l’unico divisore comune di x,n) si deve ovviamente avere che nessuno dei primi p1, p2,…,pr (che sono divisori di n) sia divisore di x. Come conseguenza di tale risultato, per calcolare φ(n) dobbiamo calcolare il numero dei numeri naturali x tali che 1xn e che non soddisfano nessuna delle seguenti r proprietà: p1 è divisore di x; p2 è divisore di x; ….. ; pr è divisore di x. Usando in forma negativa il principio di inclusione-esclusione, costruiamo allora l’insieme X di tutti i numeri naturali x tali che 1xn, e gli r sottoinsiemi di X: Xi = {xX / pi è divisore di x} ( al variare di i=1,2,…,r) Si avrà: φ(n)= X-X1X2…Xr= n -X1X2…Xr. Calcolando la cardinalità dell’unione con la formula del principio di incluione-esclusione si ottiene: X1X2…Xr=α1-α2+α3-α4+…….±αr dove α1 è la somma delle cardinalità dei singoli insiemi Xi; α2 è la somma delle cardinalità di tutte le possibili intersezioni a 2 a 2 degli insiemi Xi;……, αr è la cardinalità dell’intersezione di tutti gli insiemi Xi, preceduta da un segno + se r è dispari, da un segno – se r è pari. Poiché X1 contiene tutti i multipli di p1 compresi fra 1 ed n si ha: X1 = {1•p1,2•p1,…,n=(n/p1)•p1} dunque tali interi sono in numero di n/p1, quindi X1=n/p1 . Analogamente X2=n/p2, X3=n/p3 ,…., Xr=n/pr . Poiché X1∩X2 contiene tutti i numeri naturali x tali che 1xn e che sono multipli sia di p1 che di p2, per il risultato preliminare 1) essi sono esattamente tutti i multipli del prodotto p1p2: analogamente a quanto dimostrato sopra, i multipli di p1p2 compresi fra 1 ed n sono in numero di n/(p1p2), quindi X1∩X2=n/(p1p2) . Analogamente si ha X1∩X3=n/(p1p3) e così via . Così procedendo, alla fine si ottiene: φ(n)=n-X1X2…Xr= n-[(n/p1+n/p2+….+n/pr)-(n/(p1p2)+n/(p1p3)+….)+…..±n/(p1p2…pr)]= =n[1-(1/p1+1/p2+….+1/pr)+ (1/(p1p2)+1/(p1p3)+….)-…..±1/(p1p2…pr)], dove l’ultimo segno é + se r é pari, - se r é dispari. Applicando allora il risultato preliminare 2) (dove si fanno assumere alle variabili i valori x1=1/p1,….,xr=1/pr) la formula si semplifica come segue: φ(n)=n(1-1/p1)(1-1/p2)…..(1-1/pr) (dove p1, p2,…., pr sono sempre i fattori primi distinti di n) Esempio: se n=2000=2453, il calcolo della funzione di Eulero è: φ(2000)=2000(1-1/2)(1-1/5)=800 Considerata la fattorizzazione di n in prodotto di potenze di numeri primi distinti n = p1k1 p 2 k 2 .....p r k r si ha dalla formula precedente: φ(n)=n(1-1/p1)(1-1/p2)…..(1-1/pr)=n[(p1-1)/p1][(p2-1)/p2]......[(pr-1)/pr]= = p1k1 p 2 k 2 .....p r k r [(p1-1)/p1][(p2-1)/p2]......[(pr-1)/pr]= = p1k1 1p2k 2 1.....pr k r 1 (p1-1)(p2-1)......(pr-1) e si ottiene così una formula alternativa per il calcolo della funzione di Eulero : φ(n)= p1k1 1p2k 2 1.....pr k r 1 (p1-1)(p2-1)......(pr-1) (nella quale però, oltre la conoscenza dei fattori primi distinti p1,p2,…..,pr, è anche necessaria la conoscenza degli esponenti k1,k2,…..,kr). Relazioni di equivalenza in un insieme. Supponiamo che A sia un insieme non vuoto e che sia definita una relazione R dall’insieme A all’insieme A (si dice anche che R è una relazione definita in A): quindi la relazione R associa elementi di A con elementi di A (spesso mediante un predicato P(x,y) in 2 variabili). Ricordiamo che con il simbolo aRb (dove a,b sono elementi di A) si intende indicare che l’elemento a è associato all’elemento b nella relazione R (quindi i valori x=a, y=b rendono vera la proposizione P(a,b)). Diremo che R è una relazione di equivalenza se R soddisfa le seguenti 3 proprietà: 1) riflessiva: per ogni aA si ha aRa (quindi ogni elemento a di A è associato a sé stesso) 2) simmetrica: per ogni a,bA, se aRb allora bRa (quindi se un elemento a di A è associato ad un elemento b di A, allora l’elemento b è associato all’elemento a) 3) transitiva: per ogni a,b,cA, se aRb e bRc allora aRc (quindi se un elemento a di A è associato ad un elemento b di A, e se l’elemento b è associato ad un elemento c di A, allora l’elemento a è associato all’elemento c). Esempio: definiamo la relazione R nell’insieme dei numeri naturali N mediante il predicato “x+y è pari”, e verifichiamo se è una relazione di equivalenza. Proprietà riflessiva: per ogni aA si ha aRa, perché a+a=2a è pari. Proprietà simmetrica: per ogni a,bA, se aRb allora bRa, perché se a+b è pari anche b+a=a+b lo è (per la proprietà commutativa della somma). Proprietà transitiva: per ogni a,b,cA, se aRb e bRc allora aRc, perché se a+b, b+c sono pari, allora è pari la loro somma a+c+2b, dunque, sottraendo il pari 2b, anche a+c è pari. Si conclude che R è un esempio di relazione di equivalenza definita nell’insieme N dei numeri naturali. Classi di equivalenza Sia definita nell’insieme A una relazione di equivalenza R. Fissato un aA, possiamo costruire il sottoinsieme di A formato dagli elementi x che sono associati ad a nella relazione R : { xA / aRx } (notiamo che è equivalente scrivere aRx oppure xRa per la proprietà simmetrica) Tale sottoinsieme contiene almeno l’elemento a stesso (infatti per la proprietà riflessiva si ha aRa) dunque non è vuoto: esso è chiamato classe di equivalenza rappresentata dall’elemento a ed è indicato con il simbolo [a]: [a] = { xA / aRx } (l’elemento a è detto rappresentante della classe [a] ). Esempio: nella relazione R dell’esempio precedente, costruiamo alcune classi di equivalenza fissando vari rappresentanti: [3] = { xN / 3Rx } = { xN / 3+x è pari }= {1,3,5,7,….} = {numeri naturali dispari} [8] = { xN / 8Rx } = { xN / 8+x è pari }= {2,4,6,8,….} = {numeri naturali pari} [5] = { xN / 5Rx } = { xN / 5+x è pari }= {1,3,5,7,….} = {numeri naturali dispari} In generale, ricordando che la somma di 2 numeri naturali è pari solo quando sono entrambi pari o dispari, si ottiene che per un generico rappresentante aN la classe [a] da esso rappresentata coincide con l’insieme dei numeri naturali dispari (se a è dispari) o con l’insieme dei numeri naturali pari (se a è pari): dunque in questo esempio le diverse classi di equivalenza sono in tutto 2 sottoinsiemi di N: {numeri naturali dispari}, {numeri naturali pari}. Come visto nell’ultimo esempio, elementi diversi dell’insieme possono essere rappresentanti di classi di equivalenza uguali: il numero 3 e il numero 5 sono rappresentanti della stessa classe di equivalenza [3]=[5]={numeri naturali dispari}. Il criterio per stabilire quando due elementi sono rappresentanti della stessa classe di equivalenza è il seguente: Teorema. Sia definita nell’insieme A una relazione di equivalenza R. Allora dati a,bA si ha: [a ] = [b] aRb Dimostrazione: (): per ipotesi [a] = [b]; l’elemento a [a] (per la proprietà riflessiva), e dunque a[b] (essendo per ipotesi [a] = [b]), ossia aRb (tesi). (): per ipotesi aRb; la tesi [a]=[b] richiede la dimostrazione di una doppia inclusione insiemistica [a] [b] e [a] [b]. Dimostriamo che [a] [b] : preso un generico elemento x[a] si ha xRa; da xRa e dall’ipotesi aRb si ha bRx (per la proprietà transitiva), dunque x [b], e si può concludere che [a] [b]. Viceversa dimostriamo che [b] [a]: preso un generico elemento x[b] si ha xRb; dall’ipotesi aRb segue bRa (per la proprietà simmetrica); da xRb e da bRa si ha xRa (per la proprietà transitiva), dunque x [a], e si può concludere che [b] [a]. Nota: nella dimostrazione precedente, tutte e 3 le proprietà simmetrica, riflessiva e transitiva sono utilizzate. Le classi di equivalenza hanno una importante proprietà: Teorema. Sia definita nell’insieme A una relazione di equivalenza R. Allora le diverse classi di equivalenza formano una partizione dell’insieme A. Dimostrazione: Dimostriamo le proprietà che caratterizzano una partizione di A 1) Le classi di equivalenza sono sottoinsiemi non vuoti di A: questo è già stato notato prima, sfruttando la proprietà riflessiva (la classe rappresentata da a contiene almeno l’elemento a) 2) Date 2 generiche classi diverse [a]≠[b], esse sono disgiunte, ossia hanno intersezione vuota: per assurdo supponiamo che abbiano un elemento in comune x; dunque xRa (perché x[a]) e anche xRb (perché x[b]). Ma allora da aRx segue xRa (per la simmetrica) e da aRx e xRb segue aRb (per la transitiva). Infine da aRb segue, per il teorema precedente, l’eguaglianza [a]=[b], contraddizione. 3) L’unione di tutte le classi di equivalenza è uguale all’insieme A: ciò è ovvio, perché preso un generico elemento aA, tale elemento appartiene ad almeno una classe di equivalenza (per esempio alla classe [a], sempre per la proprietà riflessiva). Esempio: nell’esempio precedente si sono ottenute 2 diverse classi di equivalenza {numeri naturali pari} e {numeri naturali dispari}, e in effetti esse costituiscono una partizione di N, come affermato dal Teorema. Congruenze aritmetiche Esamineremo alcune particolari relazioni di equivalenza definite nell’insieme Z dei numeri interi relativi (cioè positivi, negativi e lo 0). Estendiamo dapprima i concetti di divisore e di multiplo dall’insieme N dei numeri naturali all’insieme Z dei numeri interi relativi: se a,bZ diremo che a è divisore di b (o che b è multiplo di a) e scriveremo ab , se esiste un cZ tale che ac=b. Per esempio (-3)15 perché esiste –5Z tale che (-3)(-5)=15. Osservazioni: 1) Per ogni aZ si ha 1a per l’identità 1a = a 2) Per ogni aZ si ha a0 per l’identità a0 = 0 3) L’unico aZ tale che 0a è a = 0 (in quanto se 0a esiste un cZ tale che 0c = a da cui a = 0). Fissiamo un intero relativo mZ (detto modulo) e definiamo una particolare relazione nell’insieme Z mediante il predicato P(x,y)=”m(x-y)”. Dunque un numero intero relativo a è associato (in tale relazione) ad un numero intero relativo b quando m è divisore della differenza (a-b), o equivalentemente quando la differenza (a-b) è un multiplo di m. Tale relazione è detta congruenza aritmetica modulo m, e se un intero relativo a è associato (in tale relazione) ad un intero relativo b, diremo che a è congruo b modulo m e scriveremo: a≡b (mod m) Per esempio: 12≡2 (mod 5) perché 5 è divisore della differenza (12-2)=10;-16≡5 (mod -7) perché -7 è divisore della differenza -16-5=-21. Teorema. Fissato un qualunque intero relativo mZ, la relazione di congruenza modulo m è una relazione di equivalenza. Dimostrazione: Proprietà riflessiva: per ogni aZ si ha a≡a (mod m) perché a-a=0=m0 è multiplo di m. Proprietà simmetrica: per ogni a,bZ se a≡b (mod m) allora si ha b≡a (mod m) perché se a-b=mk con kZ, allora b-a=-(a-b)=m(-k) con (-k)Z. Proprietà transitiva: per ogni a,b,cZ se a≡b (mod m) e se b≡c (mod m) allora si ha a≡c (mod m) perché se a-b=mk, b-c=mh con k,hZ, allora a-c=(b+mk)-(b-mh)=m(h+k) con (h+k)Z. Notiamo che se a≡b (mod m) allora esiste cZ tale che (a-b)=mc, da cui (a-b)=(-m)(-c) quindi si ha anche a≡b (mod -m); viceversa se a≡b (mod -m) allora si ha anche (con ragionamenti analoghi) che a≡b (mod m). Dunque la relazione di congruenza modulo m coincide con la relazione di congruenza modulo –m, da cui si deduce che possiamo limitarci a studiare le congruenze con modulo non negativo. Quindi supporremo d’ora in poi che il modulo m sia sempre 0 . Studiamo alcuni casi particolari con moduli 0 a) il caso del modulo m=0: in tale caso si ha a≡b (mod 0) se (a-b) è multiplo di 0, quindi se esiste cZ tale che a-b=0c=0 ossia se a=b. Dunque la relazione di congruenza modulo 0 coincide con la relazione di eguaglianza: ogni classe di equivalenza contiene un solo elemento (il rappresentante della classe) e si ottengono infinite classi. b) il caso del modulo m=1: si ha a≡b (mod 1) se (a-b) è multiplo di 1, ma ciò è sempre vero (ogni xZ è multiplo di 1 per l’identità x =1x) . Dunque nella congruenza modulo 1 tutti gli interi relativi sono congrui fra loro: esiste allora un’unica classe di equivalenza, coincidente con l’intero insieme Z. Avendo studiato in dettaglio tali casi particolari, ci limiteremo a studiare solo i casi rimanenti: quindi supporremo sempre d’ora in poi che il modulo m sia >1. Cercheremo di risolvere i seguenti problemi relativi alla relazione di congruenza modulo m: 1) Fissato il rappresentante aZ, quali sono i numeri interi relativi contenuti nella classe [a] ? 2) Quante sono le diverse classi di equivalenza ? Per quanto riguarda il problema 1), se scegliamo ad arbitrio un rappresentante aZ, dalla teoria delle classi di equivalenza sappiamo che la classe di congruenza [a] rappresentata da a è definita come segue: [a] = { xZ / x≡a (mod m) } = { xZ / m è divisore di x-a } = { xZ / x-a=mk con kZ }= = { xZ / x=a+mk con kZ }. Dunque gli elementi di [a] sono della forma x=a+mk con k che varia in Z: al variare del parametro k fra tutti gli interi relativi, si ottengono tutti gli elementi della classe [a] (che sono dunque infiniti numeri interi relativi). Possiamo calcolare qualche elemento di [a] facendo assumere al coefficiente k alcuni particolari valori interi relativi (k=0,1,-1,2,-2,…..): [a] = {a , a+m , a-m , a+2m , a-2m ,….} Esempio: nella congruenza modulo m=9, la classe [5] rappresentata da a=5 contiene i numeri della forma x=5+9k, con k che varia in Z: [5] = { 5, 14, -4, 23, -13, ….}. Per quanto riguarda il problema 2), abbiamo visto che ogni classe di congruenza modulo m contiene infiniti numeri interi relativi, e conosciamo la struttura che hanno i numeri di ogni classe, ma quante sono in tutto le distinte classi di congruenza modulo m ? Esaminiamo prima un esempi particolare. Esempio. Studiamo le classi di congruenza modulo m=3. Costruiamo una di tali classi, fissando per esempio il rappresentante a=5: [5] = { xZ / x≡5 (mod 3) } = { xZ / x=5+3k con kZ } = {5, 8, 2, 11, -1, …} Se vogliamo costruire una classe di congruenza diversa da [5], dobbiamo scegliere un rappresentante che non sia congruo 5 modulo 3 (perché sappiamo da un Teorema precedente che se aRb allora [a]=[b]). Possiamo per esempio scegliere a=9 (la differenza 9-5=4 non è multiplo di m=3): [9] = { xZ / x≡9 (mod 3) } = { xZ / x=9+3k con kZ } = {9, 12, 6, 15, 3, …} Se vogliamo costruire una classe di equivalenza diversa dalle 2 classi già costruite, dobbiamo scegliere un rappresentante a che non sia congruo 5 modulo 3 e che non sia congruo 9 modulo 3. Possiamo per esempio scegliere a=-2 (le differenze -2-5=-2, -2-9=-11 non sono multipli di m=3): [-2] = { xZ / x≡-2 (mod 3) } = { xZ / x=-2+3k con kZ } = {-2, 1, -5, 4, -8, …} A questo punto, anche facendo diversi tentativi, ci accorgiamo di non riuscire a costruire una classe di equivalenza diversa dalle 3 già costruite, perché non riusciamo a trovare un rappresentante a che non sia congruo 5 modulo 3, che non sia congruo 9 modulo 3, e che non sia congruo -2 modulo 3. Da questo ragionamento un po’ empirico, possiamo concludere che le classi di congruenza distinte modulo 3 sono: [5], [9], [-2] ossia le classi sono in numero di 3, cioè in numero uguale al modulo. Il prossimo teorema dimostrerà che ciò non è casuale. Premettiamo però una generalizzazione dell’algoritmo della divisione, che abbiamo dimostrato già valido per una coppia di numeri naturali a,b, ma che estenderemo anche al caso in cui il primo numero a è <0. Teorema (Algoritmo della divisione generalizzato). Dati comunque i numeri interi non nulli a,b tali che sia b>0, esistono (e sono unici) due numeri interi relativi q,r (detti quoziente e resto) tali che a=bq+r, con r0 ed r<b. (notare che non si pretende più che il quoziente q sia 0). Dimostrazione: Se a>0 la tesi è ovvia, perché si tratta dell’algoritmo della divisione per numeri naturali, già dimostrato in precedenza. Quindi supponiamo a<0. Essendo a<0 si ha (–a)>0, dunque possiamo applicare l’algoritmo della divisione per numeri naturali, dividendo il numero –a>0 per il numero b>0 e trovando quoziente q0 e resto r0 (interi 0) tali che (-a)=bq0+r0 con r0<b. Distinguiamo 2 casi possibili: I° caso: r0=0. In questo caso si ha (-a)=bq0 quindi a=(-bq0)=b(-q0)+0 e basta porre q=-q0, r=0, per ottenere l’esistenza di q,r e quindi la tesi. II° caso: r0>0. In questo caso si ha a= -bq0-r0= -bq0-b+b-r0 = b(-q0-1)+b-r0 e basta porre q=-q0-1, r=b-r0, per ottenere l’esistenza di q,r e quindi la tesi (notare che la proprietà r<b è soddisfatta perché r0>0). L’unicità del quoziente q e del resto r si dimostra con metodi simili a quelli utilizzati nell’algoritmo della divisione per i numeri naturali. Nel prossimo Teorema dimostreremo quali e quante sono le classi di congruenza distinte modulo m>1. Teorema. Fissato il modulo intero m>1, le seguenti classi di congruenza modulo m: [0], [1], ………., [m-1] (*) sono tutte distinte ed esauriscono tutte le classi di congruenza modulo m. In particolare vi sono dunque esattamente m distinte classi di congruenza modulo m. Dimostrazione: La tesi richiede la dimostrazione di 2 affermazioni: a) le classi (*) sono tutte le classi di congruenza modulo m. b) le classi (*) sono distinte Dimostriamo la a): comunque preso un rappresentante aZ la tesi è che [a] coincide con una delle classi (*). Se a è uno dei numeri 0,1,….,m-1, non c’è niente da dimostrare. Sia dunque a diverso da 0,1,….,m-1. Possiamo applicare l’algoritmo della divisione generalizzato ai numeri a,m, trovando quoziente q e resto r (interi relativi) tali che a=mq+r, con r0 ed r<m. Si ha allora a-r=mq, ossia a≡r (mod m) e da ciò si ricava [a]=[r]. Ma i valori possibili del resto r sono i numeri 0,1,…,m-1, dunque [a] coincide con una delle classi (*), come volevamo dimostrare nella a). Dimostriamo la b): la tesi è che le classi (*) sono distinte. Se per assurdo 2 di tali classi coincidessero, si avrebbe [x] = [y], con 0≤x,y≤m-1, e con xy (per esempio sia x>y: nel caso opposto x<y si ragiona in modo analogo). Da [x]=[y] seguirebbe x≡y(mod m), ossia x-y sarebbe un multiplo di m, cioè x-y=kt con k intero; ma x-y>0 (perché x>y) ed inoltre x-y<m (perché x<m) e ciò implicherebbe k>0 e k<1, contraddizione perché k è intero. Esempio: consideriamo il modulo m=6. Per il Teorema precedente vi sono 6 distinte classi di congruenza modulo 6 ed esse sono [0], [1], [2], [3], [4], [5]. Se prendiamo una qualunque classe di congruenza modulo 6, essa coinciderà con una di queste 6 classi. Nell’esempio precedente in cui abbiamo studiato empiricamente le classi di congruenza modulo 3, trovando le 3 classi: [5], [9], [-2] possiamo notare che [5]=[2], [9]=[0], [-2]=[1] dunque le 3 classi di congruenza distinte modulo 3 sono: [0], [1], [2] coerentemente con l’ultimo teorema dimostrato. Operazioni in un insieme. In aritmetica é ben noto il concetto di “operazione” fra numeri: un esempio sono le operazioni di somma e prodotto fra numeri naturali. Ma cos’è formalmente un’operazione ? Se esaminiamo la somma fra numeri naturali, essa non è altro che una regola che associa ad ogni coppia (x,y) di numeri naturali (detti “addendi”) un unico numero naturale x+y (detto “somma”). Nel linguaggio insiemistico dunque la somma fra numeri naturali è una funzione f. NxNN. Da queste osservazioni si perviene facilmente alla seguente definizione più generale: Un’operazione definita nell’insieme (non vuoto) A è una funzione f : AxA → A (dove AxA = {(x,y) / x,yA } è il prodotto cartesiano contenente le coppie ordinate di elementi di A) che associa ad ogni coppia ordinata (x,y) di elementi di A uno e un solo elemento f(x,y)A. Gli elementi x,y sono detti operandi (l’elemento x è il primo operando, l’elemento y è il secondo operando), mentre l’elemento f(x,y) è detto risultato dell’operazione sugli operandi x,y. Useremo spesso il simbolo xy per indicare il risultato f(x,y) dell’operazione sugli operandi x,y. Esempio. Nell’insieme N dei numeri naturali sono esempi di operazioni quelle definite ponendo: xy = x+y (somma) xy = x∙y (prodotto) xy = xy (elevamento a potenza) Poiché un’operazione non è altro che una funzione, un’operazione in un insieme A può essere definita: - in modo implicito: dati 2 operandi variabili x,y in A si definisce un’operazione ponendo xy = ……… dove dopo il segno di eguaglianza vi è una “formula” nelle variabili x, y che permette di calcolare il risultato, dati gli operandi x,y. Gli esempi precedenti di operazioni di somma, prodotto, elevamento a potenza in N sono definiti in modo implicito. Ovviamente nello stesso insieme N potremmo definire in modo implicito altre operazioni, ovviamente meno “utili” di quelle precedenti (che sono legate al procedimento di “contare”). Per esempio potremmo definire in modo implicito un’operazione in N ponendo: xy = x + y + xy Se volessimo allora calcolare in particolare in questa operazione il risultato 32 dovremmo calcolare: 32 = 3 + 2 + 32 = 11 - in modo esplicito (tale modalità è praticabile solo nel caso in cui l’insieme A sia finito): per ognuna delle possibili coppie di operandi x,y in A si indica esplicitamente il risultato xy (che deve essere un unico elemento di A). Per esempio nell’insieme A = {a, b, c} delle prime 3 lettere dell’alfabeto, possiamo definire un’operazione indicando, per ognuna delle 9 coppie possibili di operandi in A, il risultato nel modo seguente: aa=b, bb=b, cc=a, ab=c, ba=a, ac=b, ca=c, bc=a, cb=a Si può rendere la definizione esplicita di una operazione (definita in un insieme finito A di cardinalità n) utilizzando una tavola operazionale: è una matrice quadrata di n2 caselle disposte in n righe e n colonne, in cui si fanno corrispondere alle righe e alle colonne ordinatamente gli elementi di A (in un ordine prefissato), e inserendo in ogni casella il risultato xy, dove x è l’operando corrispondente alla riga della casella, y è l’operando corrispondente alla colonna della casella. Nell’ esempio precedente, l’operazione definita nell’insieme A = {a, b, c} di cardinalità 3 avrebbe la seguente tavola operazionale 3x3 (rispetto all’ordine prefissato a,b,c): a b c a b a c b c b a c b a a Operazioni compatibili con una relazione di equivalenza. Consideriamo un insieme A in cui sia definita una relazione di equivalenza R: ricordiamo che se l’elemento xA è associato nella relazione R all’elemento yA scriviamo il simbolo xRy. Inoltre per ipotesi R soddisfa le proprietà riflessiva, simmetrica e transitiva. Sappiamo che, fissato xA, si può costruire la classe di equivalenza rappresentata da x, contenente tutti gli elementi di A che sono associati ad x nella relazione R: [x] = { yA / xRy } Ricordiamo inoltre che le distinte classi di equivalenza formano una partizione di A (cioè 2 classi diverse hanno intersezione vuota, e l’unione di tutte le classi è l’insieme A). Si ha inoltre, per un risultato già dimostrato: [x]=[y] xRy . Indicheremo con il simbolo A/R l’insieme delle classi di equivalenza della relazione R in A (è detto anche insieme quoziente dell’insieme A rispetto alla relazione di equivalenza R). Supponiamo anche che nell’insieme A sia definita (oltre alla relazione di equivalenza R) anche un’operazione *. Potremmo allora provare a definire nell’insieme A/R delle classi di equivalenza un’operazione fra classi (che indichiamo sempre con il simbolo *) servendoci dell’operazione * (che è definita nell’insieme A) nel modo seguente: [a]*[b] = [a*b] (quindi per calcolare il risultato dell’operazione sulle classi [a],[b] prima si calcola il risultato dell’operazione * sui rappresentanti a,b, ottenendo un elemento a*b in A, e poi si considera la classe rappresentata da tale elemento, e questa classe si considera come risultato dell’operazioni fra le 2 classi [a],[b]). Ciò solleva però un problema: il concetto di operazione implica l’unicità del risultato (perché l’operazione è una funzione che associa ad ogni coppia di operandi uno e un solo risultato). Quindi per essere certi che la nostra operazione fra classi abbia risultato unico (fissate le 2 classi su cui si opera) dobbiamo essere sicuri che se [a]=[c] e se [b]=[d] (abbiamo lasciato invariate le 2 classi ma cambiato il rappresentante) allora si ha sempre [a*b]=[c*d] (il risultato deve essere invariato). Tale proprietà si può esprimere in modo equivalente nel modo seguente: se aRc, e se bRd allora necessariamente (a*b)R(c*d) (tale proprietà è detta compatibilità della relazione di equivalenza R con l’operazione *). Riassumendo dunque: se in un insieme A sono definite sia una relazione di equivalenza R che un’operazione *, e se R è compatibile con * (cioè se da aRc, bRd segue sempre (a*b)R(c*d)) allora nell’insieme A/R delle classi di equivalenza si può definire un’operazione * fra classi (con risultato unico) ponendo [a]*[b] = [a*b]. Tale operazioni fra classi di equivalenza è detta operazione indotta dall’operazione * definita in A. Operazioni fra classi congruenza. Ricordiamo che, fissato un intero m>1 (modulo), abbiamo definito nell’insieme Z degli interi relativi una relazione di equivalenza, detta congruenza modulo m: dati gli interi x,yZ, x associato con y quando (x-y) è multiplo di m (cioè se esiste kZ tale che x-y=mk). Ricordiamo anche che se x è associato con y si scrive xy (mod m) invece di xRy (e si legge x congruo y modulo m). Si possono costruire dunque le classi di equivalenza di tale relazione, che sono dette classi di congruenza modulo m. Abbiamo dimostrato anche che le classi di congruenza distinte modulo m sono le seguenti: [0], [1], ……, [m-1] e quindi sono in numero di m (cioè in numero uguale al modulo). L’insieme quoziente di Z rispetto alla relazione di congruenza modulo m (cioè l’insieme delle classi di congruenza modulo m) sarà indicato con il simbolo Zm : quindi Zm = { [0], [1], ……, [m-1] } Esempi: l’insieme delle classi di congruenza distinte modulo 7 è il seguente: Z7 = { [0], [1], [2], [3], [4], [5], [6] } Dimostreremo ora che sia l’operazione di somma che quella di prodotto esistenti fra numeri interi relativi in Z sono compatibili con la relazione di congruenza modulo m. Compatibilità della congruenza modulo m con la somma di numeri interi relativi: se ac (mod m), e se bd (mod m) allora m è divisore delle differenze a-c, b-d, dunque a-c=mk, b-d=mh (con k,h interi) da cui: (a+b)-(c+d)=m(h+k) ossia m è divisore della differenza (a+b)-(c+d) e si conclude che (a+b)(c+d) (mod m) Compatibilità della congruenza modulo m con il prodotto: con le stesse notazioni, si ha: (ab)-(cd)=a(b-d)+d(a-c)=m(ah+dk) ossia m è divisore della differenza (ab)-(cd) e si conclude che (ab)(cd) (mod m). Dalla compatibilità delle operazioni di somma e prodotto con la relazione di congruenza modulo m, segue che é possibile definire, nell’insieme Zm delle classi di congruenza modulo m, le operazioni di somma e prodotto fra classi di congruenza, operazioni indotte dalle operazioni di somma e prodotto fra numeri interi e definite nel modo seguente: [a]+[b] = [a+b] [a][b] = [ab] Esempio. Consideriamo l’insieme Z7 delle 7 classi di congruenza modulo 7: Z7 = { [0],[1],[2],[3],[4],[5],[6] } e le seguenti classi di congruenza modulo 7 [5], [6]Z7 Possiamo allora calcolare la somma e il prodotto di queste 2 classi: [5]+[6] = [5+6] = [11] = [4] (perché 114 (mod 7)) [5][6] = [56] = [30] = [2] (perché 302 (mod 7)) Esempio. Consideriamo l’insieme Z4 delle 4 classi di congruenza modulo 4: Z4 = {[0],[1],[2],[3]} Se costruiamo la tavola operazionale della somma fra classi (rispetto all’ordine [0],[1],[2],[3]) otteniamo la seguente matrice 4x4: [0] [1] [2] [3] [1] [2] [3] [0] [2] [3] [0] [1] [3] [0] [1] [2] (per calcolare per esempio [2]+[3] si calcola [2+3]=[5]=[1], notando che 51 (mod 4) etc…..) Se invece costruiamo la tavola operazionale del prodotto fra classi (rispetto sempre all’ordine [0],[1],[2],[3]) otteniamo la seguente matrice 4x4: [0] [0] [0] [0] [0] [1] [2] [3] [0] [2] [0] [2] [0] [3] [2] [1] (per calcolare per esempio [2][3] si calcola [23]=[6]=[2], notando che 62 (mod 4) etc…..)