• Non ci sono risultati.

Matematica Discreta Lezione del giorno 21 gennaio 2011

N/A
N/A
Protected

Academic year: 2021

Condividi "Matematica Discreta Lezione del giorno 21 gennaio 2011"

Copied!
1
0
0

Testo completo

(1)

Matematica Discreta

Lezione del giorno 21 gennaio 2011

Dimostreremo ora l’esistenza del massimo comune divisore di 2 qualunque numeri naturali a,b.

Premettiamo una utile nozione.

Dati i naturali a,b definiamo combinazione lineare di a,b a coefficienti interi relativi un qualunque numero intero relativo della forma ax+by dove i numeri x,y (detti appunto coefficienti) variano fra i numeri interi relativi.

Per esempio se a=4, b=6, esempi di combinazioni lineari di 4 e 6 a coefficienti interi relativi sono i seguenti numeri:

4∙5+6∙(-2)=8 ; 4∙(-7)+6∙2= -16, 4∙(-3)+6∙2=0 .

Teorema di esistenza del massimo comune divisore. Dati comunque i naturali a,b esiste sempre il loro massimo comune divisore.

Dimostrazione: Costruiamo l’insieme S di tutte le possibili combinazioni lineari di a,b a coefficienti interi relativi che siano positive:

S = { z / z=ax+by, con x,y ; z>0}

L’insieme S é non vuoto perché contiene per esempio almeno l’elemento a=a∙1+b∙0, e l’elemento b=a∙0+b∙1 .

Per l’Assioma del minimo esiste in S un elemento minimo d: in particolare d è un intero >0 e d è combinazione lineare di a,b della forma d=ax+by per opportuni valori x,y. Dimostriamo che d è il massimo comune divisore di a,b che cercavamo, verificando che d soddisfa le proprietà 1), e 2) della definizione di massimo comune divisore di a,b.

1) Dimostriamo che da e che db.

Per l’Algoritmo della divisione fra numeri naturali, possiamo dividere a per d ottenendo a=dq+r, con q, r interi 0, ed r<d. Per il Teorema precedente, per dimostrare che da, basta dimostrare che il resto r è =0. Se per assurdo fosse r>0 sarebbe r=a-dq=a-(ax+by)q=a(1-xq)+b(-yq) e si otterrebbe che anche r è combinazione lineare (positiva)di a,b, cioè rS, con r<s ed s minimo in S, contraddizione.

In modo molto simile si dimostra che db.

2) Dimostriamo che d è multiplo di qualunque divisore comune s di a,b: ma se s è divisore comune di a,b esisteranno due numeri naturali c,v tali che a=sc, b=sv, da cui si ricava d=ax+by=scx+svy=s(cx+vy) ossia d è multiplo di s, come si voleva dimostrare.

Poiché d soddisfa le proprietà 1) e 2) della definizione di massimo comune divisore, si conclude che d è il massimo comune divisore.di a,b e si ottiene la tesi.

Se d è il massimo comune divisore dei numeri naturali a,b scriveremo d=mcd(a,b).

Osserviamo che nel corso della dimostrazione del Teorema di esistenza del mcd(a,b) si è anche dimostrato che il mcd(a,b) è combinazione lineare dei numeri a,b con coefficienti interi relativi, dunque esistono 2 opportuni numeri interi relativi x,y tali che mcd(a,b)=ax+by.

Per esempio se a=14, b=10, esaminando i divisori comuni di a,b è facile verificare che mcd(14,10)=2: come coefficienti x,y si possono allora scegliere per esempio i valori x= -2, y=3 (infatti ax+by=14(-2)+103=2=mcd(14,10)).

Notiamo anche che i coefficienti x,y non sono unici (nell’esempio precedente vanno bene per

esempio anche i valori x=8, y=11, in quanto ax+by=148+10(-11)=2=mcd(14,10)).

(2)

Problemi:

1. Dati i numeri naturali a, b, come calcolare in modo efficiente il mcd(a,b) (senza elencare tutti i divisori comuni di a,b) ?

2. Dati i numeri naturali a, b, come calcolare degli interi relativi x,y tali che mcd(a,b)=ax+by ? La soluzione al Problema 1 è nell’Algoritmo Euclideo delle divisioni successive, che illustreremo in seguito.

Premettiamo un risultato preliminare:

Teorema. Siano a,b numeri naturali e dividiamo a per b:

a=bq+r con q, r interi 0, ed r<b.

Allora:

1) se r>0 si ha mcd(a,b)=mcd(b,r) 2) se r=0 si ha mcd(a,b)=b

Dimostrazione:

1) Supponiamo r>0 e poniamo d=mcd(a,b). La tesi è che d=mcd(b,r).

Dimostriamo dapprima che d è divisore comune di b,r. Essendo d=mcd(a,b), sappiamo già che d a, db (quindi esistono numeri naturali c,v tali che a=dc, b=dv); essendo già vero che db , si deve solo dimostrare che dr: ma r=a-bq=dc-dvq=d(c-vq) quindi dr.

Resta poi da dimostrare che d è multiplo di ogni divisore comune z di b, r: ma in questo caso esistono numeri naturali f,g tali che b=zf, r=zg, da cui si ricava a=bq+r=zfq+zg=z(fq+g) ossia z a, quindi z è divisore comune di a, b. Ma per ipotesi d=mcd(a,b) quindi d è multiplo di tutti i divisori comuni di a, b, e si conclude in particolare che d è multiplo di z, come si voleva.

2) Supponiamo r=0 e dimostriamo la tesi mcd(a,b)=b. Ovviamente b è divisore sia di a (perché a=bq) che di b (perché (b=b1), dunque è divisore comune di a, b. Resta da verificare che b è multiplo di ogni divisore comune z di a, b: ma ciò è ovvio, perché, essendo z divisore di b, si ha che b è multiplo di z .

Algoritmo Euclideo delle divisioni successive:

L’algoritmo consiste in una successione di divisioni effettuate secondo le regole seguenti:

1) La prima divisione si ottiene dividendo a per b.

2) Data una generica divisione dell’algoritmo, la divisione successiva si effettua solo se il resto della precedente è>0, e nella divisione successiva il dividendo coincide con il divisore della divisione precedente, mentre il divisore coincide con il resto della divisione precedente.

3) L’algoritmo ha termine quando una divisione ha resto =0.

Schematizzando:

divisione 1 a=bq

1

+r

1

con q

1

,r

1

interi 0, r

1

<b (se r

1

>0) divisione 2 b=r

1

q

2

+r

2

con q

2

,r

2

interi 0, r

2

<r

1

(se r

2

>0) divisione 3 r

1

=r

2

q

3

+r

3

con q

3

,r

3

interi 0, r

3

<r

2

(se r

3

>0) divisione 4 r

2

=r

3

q

4

+r

4

con q

4

,r

4

interi 0, r

4

<r

3

………. etc.

Osserviamo che l’algoritmo ha termine dopo un numero finito di divisioni: se infatti per assurdo così non fosse, si otterrebbe una successione infinita di divisioni tutte con resto >0, ma, essendo i resti legati dalla relazione r

1

>r

2

>r

3

>r

4

>….., l’insieme di tutti questi resti sarebbe un insieme S di numeri naturali senza minimo, in contraddizione con l’Assioma del buon ordinamento.

Supponiamo dunque che l’algoritmo abbia termine dopo n divisioni con resto r

n

=0: dimostreremo

che l’ultimo resto non nullo r

n-1

coincide con il mcd(a,b).

(3)

Schematizzando:

divisione 1 a=bq

1

+r

1

con q

1

,r

1

interi 0, r

1

<b (se r

1

>0) divisione 2 b=r

1

q

2

+r

2

con q

2

,r

2

interi 0, r

2

<r

1

(se r

2

>0) divisione 3 r

1

=r

2

q

3

+r

3

con q

3

,r

3

interi 0, r

3

<r

2

(se r

3

>0) divisione 4 r

2

=r

3

q

4

+r

4

con q

4

,r

4

interi 0, r

4

<r

3

. . . .

(se r

n-2

>0) divisione (n-1) r

n-3

=r

n-2

q

n-1

+r

n-1

con q

n-1

,r

n-1

interi 0, r

n-1

<r

n-2

(se r

n-1

>0) divisione n r

n-2

=r

n-1

q

n

+r

n

con q

n

,r

n

interi 0, r

n

=0

Se il resto r

n

=0 (quindi se l’algoritmo ha termine con la divisione n) affermiamo che r

n-1

=mcd(a,b).

Per dimostrare tale affermazione basta applicare la parte 1) del Teorema precedente alle prime (n-1) divisioni, ottenendo:

mcd(a,b)=mcd(b,r

1

)=mcd(r

1

,r

2

)=mcd(r

2

,r

3

)=…..=mcd(r

n-2

,r

n-1

)

e poi applicare la parte 2) dello stesso Teorema all’ultima divisione, ottenendo:

mcd(r

n-2

,r

n-1

)=r

n-1

per concludere che in effetti r

n-1

=mcd(a,b).

Esempio: calcoliamo mcd(371,98) con l’algoritmo delle divisioni successive.

Eseguiamo in tutto le seguenti 5 divisioni:

371=983+77 q

1

=3, r

1

=77 98=771+21 q

2

=1, r

2

=21 77=213+14 q

3

=3, r

3

=14 21=141+7 q

4

=1, r

4

=7 14=72+0 q

5

=2, r

5

=0 ottenendo alla fine 7=mcd(371,98).

Per risolvere il Problema 2, illustreremo ora un algoritmo (detto Algoritmo Euclideo esteso) per calcolare i coefficienti interi relativi x,y tali che mcd(a,b)=ax+by, basato sull’algoritmo euclideo delle divisioni successive.

Se n è il numero delle divisioni successive effettuate, costruiamo le seguenti 2 successioni di interi relativi (in cui utilizzeremo anche i valori dei quozienti delle divisioni):

prima successione: s

0

,s

1

,s

2

, … , s

n

seconda successione: t

0

,t

1

,t

2

, … , t

n

dove si pone, nella prima successione:

s

0

=1, s

1

=0, e per ogni indice i=2,3, …, n s

i

=s

i-2

-s

i-1

q

i-1

e nella seconda successione:

t

0

=0, t

1

=1, e per ogni indice i=2,3, …, n t

i

=t

i-2

-t

i-1

q

i-1

(dove q

i-1

è il quoziente della divisione numero i-1).

Osserviamo che s

2

=s

0

-s

1

q

1

=1, t

2

=t

0

-t

1

q

1

=-q

1

, da cui as

2

+bt

2

=a-bq

1

=r

1

(si ricava dalla divisione 1);

inoltre s

3

=s

1

-s

2

q

2

=-q

2

, t

3

=t

1

-t

2

q

2

=-1+q

1

q

2

, da cui as

3

+bt

3

=-aq

2

+b(1+q

1

q

2

)=b-(a-bq

1

)q

2

=b-r

1

q

2

=r

2

(si

ricava dalla divisione 2); con analoghi calcoli si ottiene in generale che as

j

+bt

j

=r

j-1

, e in particolare

(per j=n) si ottiene as

n

+bt

n

=r

n-1

=mcd(a,b). Quindi i coefficienti cercati nella combinazione lineare

sono x=s

n

, y=t

n

.

(4)

Esempio: riprendiamo l’esempio precedente mcd(371,98)=7, in cui sono state effettuate n=5 divisioni successive.

La costruzione delle successioni s

i

e t

i

porta ai seguenti valori:

s

0

=1, s

1

=0, s

2

=1, s

3

=-1, s

4

=4, s

5

= -5 t

0

=0, t

1

=1, t

2

=-3, t

3

=4, t

4

=-15, t

5

=19

da cui si ricava x=s

5

=-5, y=t

5

=19 e infine 7= mcd(371,98)=371•(-5)+98•19 .

Riferimenti

Documenti correlati

Si basa sul seguente risultato di insiemistica: se A,B sono insiemi finiti, con A=n, B=m, e se n&gt;m , comunque data una funzione f: A → B, esistono sempre almeno 2

Esempio: il grafo dei ponti è connesso (infatti dati comunque 2 vertici distinti esiste sempre un cammino che li unisce: in particolare i vertici a, c sono uniti da un cammino

Se A,B sono insiemi infiniti, diremo che A è equipotente a B (o anche che A,B hanno la stessa cardinalità) se esiste una funzione biunivoca f: A  B (scriveremo in tal caso AB).

Costruiamo un nuovo grafo ottenuto dal precedente aggiungendo un arco che colleghi i vertici v,w: otteniamo un grafo in cui esiste un cammino ciclico Euleriano, e possiamo applicare

Dalla teoria delle componenti connesse di un grafo, segue che, per calcolare il numero cromatico di un grafo, possiamo operare nel modo seguente: nella colorazione dei vertici

- sappiamo che k é il numero dei vertici, e la somma degli elementi numerici di ogni riga è il grado del vertice corrispondente; inoltre il numero r degli archi potrà essere

N indicherà l’insieme dei numeri interi positivi (detti anche numeri naturali), Z indicherà l’insieme dei numeri interi relativi (ossia dei numeri interi

dove i puntini contengono una formula algebrica nella variabile x, intendendo con ciò che, dato un elemento aA, il corrispondente b=f(a)B si ottiene sostituendo nella formula