La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Storia degli Algoritmi

Presentazioni simili


Presentazione sul tema: "Storia degli Algoritmi"— Transcript della presentazione:

1 Storia degli Algoritmi
mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Storia dell’Informatica e del Calcolo Automatico Prof.ssa F. PERLA Storia degli Algoritmi ovvero dal sasso al microcircuito integrato Questa presentazione sulla Storia degli Algoritmi è divisa in due parti. La prima parte si focalizza principalmente su problemi con numeri e di origine antica. Gli algoritmi della seconda parte trattano problemi più complessi, come i sistemi lineari che forniscono soluzioni che sono arrays di numeri , oggi chiamati vettori; e problemi non numerici come gli algoritmi di ordinamento, di crittografia, …siccome gli algoritmi non sono confinati alla matematica, focus della prima parte di questa presentazione. Un’estensione naturale di questo studio potrebbe essere ad esempio quella di analizzare gli algoritmi più utilizzati (e perché), gli algoritmi più recenti, … Fara Martuscelli Liliana Murino

2 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Non tutti sanno che … al-Khwarizmi Lo spirito dell’Aritmetica guarda dall’alto la disputa fra i nuovi “algorists” che operano con numeri scritti e i tradizionali “abacists” con i loro pallottolieri 1504 algebra al-Jabr algorisms algorismus algorithmus Gli algoritmi esistono da sempre, ancor prima che fosse coniata una parola speciale per descriverli. La parola Algoritmo deriva direttamente da al-Khwarizmi, l’autore della più antica opera di algebra. Quando questi testi in arabo sono stati tradotti in latino spesso si confrontavano le vecchie tecniche basate sull’abaco,…con le nuove tecniche e metodi anche riferite al nuovo sistema posizionale che spesso venivano chiamati algorisms, o algorismus o algorithmus e quindi la parola cominciò ad essere utilizzata per descrivere particolari procedure aritmetiche; poi si è consolidata e fu usata ufficialmente da d’Alembert in un articolo nell’ Encyclopédie. (Ad un certo punto si introduce la definizione di algoritmo (finito, …) perché bisogna stabilire che per certi problemi non esiste un algoritmo di risoluzione).

3 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Algoritmi per le Operazioni Aritmetiche mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Le operazioni aritmetiche hanno origine da esigenze di tipo economico (Divisione Sumera). Gli algoritmi per le operazioni aritmetiche dipendono dai sistemi di numerazione. Molti considerano l’Aritmetica una cosa banale che i ragazzi imparano e i computer eseguono, ma scopriremo che l’Aritmetica è un argomento affascinante dalle molte interessanti sfaccettature. […] Il modo in cui facciamo aritmetica è strettamente legato al modo in cui rappresentiamo i numeri che trattiamo. Donald Knuth L’uso della scrittura evita la ripetizione delle stesse operazioni (Babilonesi e Egiziani - Inverso, Duplation, Mediation). Diversi strumenti sono stati utilizzati, in epoche e luoghi diversi, a supporto dei calcoli (Divisioni – Arco Pitagorico e Abaco Cinese; Moltiplicazione – Tabelle, Napier’s bones). Rappresentazione delle frazioni in notazione decimale (Moltiplicazione – Simon Stevin). Operazioni aritmetiche con numeri binari (Leibniz).

4 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
2500 a.c. Divisione Sumera mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Le tavolette numeriche (trovate a Shuruppak) riguardano lo stesso problema, ovvero la suddivisione del grano di un granaio fra un certo numero di persone in modo tale che ogni persona riceve 7 silà di grano. 1 granaio = 2400 gur e 1 gur = 480 silà Sulle tavolette non c’è traccia del metodo utilizzato, però i risultati ottenuti sono diversi … Tavoletta 671 2400/7 342 (con resto 6 ignorato) 342 x 480 = Tavoletta 50 /7 con resto 3 La civiltà Sumera fiorì nella Mesopotamia del Sud nel periodo ac., e sviluppò un sistema di numerazione che era di tipo additivo, avendo segni speciali per 1, 10, 60, 600, e 3600. Shuruppak si trova nella valle dell’Eufrate a sud di Baghdad. Le tavolette di argilla sono conservate nel museo di Istanbul.

5 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
( ) a.c. Calcolo degli inversi Dato un numero x Questo algoritmo compare su una tavoletta babilonese (VAT 6505). Calcola l’inverso di y, y. Moltiplica y per z, otterrai t. Aggiungi 1, otterrai u. Calcola l’inverso di u, otterrai u. Moltiplica u per y. Otterrai v. L’inverso del numero x è v Dato un numero 4;10 Calcola l’inverso di 10, 6. Moltiplica 6 per 4, otterrai 24. Aggiungi 1, otterrai 25. Calcola l’inverso di 25, otterrai 2;24. Moltiplica 2;24 per 6. Otterrai 2;24. VAT 6505, attualmente conservata nel museo di Berlino, contiene una dozzina di calcoli di numeri inversi, di cui solo cinque rimangono visibili. L’inverso di un numero regolare x viene calcolato scrivendo x come somma di un numero regolare y il cui inverso è noto, ed un altro numero z. In altre parole, calcolare l’inverso di un numero x si riduce a calcolare gli inversi di due numeri più piccoli (y e u). L’inverso di y è noto da una tabella standard di inversi. L’inverso di 4;10 è 2;24

6 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
( ) a.c. Algoritmi aritmetici Gli algoritmi egiziani Duplation e Mediation sono estratti dal Rhind Papyrus. Rhind Papyrus 2 1 1 1 4 1 28 1 x (2 + 23) x 10 1 3 5 30 2 1 1 7 1 2 1 3 10 30 1 2 1 8 1 56 1 1 4 3 2 10 1 2 3 1 2 1 8 7 1 4 5 1 16 1 112 L’algoritmo di duplation (“fare il pane per 10 persone”) compare in numerosi trattati di aritmetica arabi, ed è stato molto utilizzato fino al Rinascimento. Per esempio, lo si ritrova nel 1546 in un lavoro di Stifel. L’algoritmo di mediation utilizza 28 come comune denominatore, e termina con alcuni numeratori interi e frazioni il cui denominatore è una potenza 2. 2 = (1 + 1/5 + 1/10) + (2/3 + 1/30) 4 1 2 1 4 (7 + 1/5) + (1 + 2/3 + 1/10 + 1/30) = 9 1 2 1 2 Totale Totale

7 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Tabelle di Moltiplicazione mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Arabia (13° sec., Ibn al-Banna; 15° sec. al-Kashi) Cina (1450, Wu Jing) – India … - Europa (1300 in Inghilterra  1478 (Treviso) e 1494, Luca Pacioli, Gelosia; 1617, Napier; 1885, Lucas-Genaille) Gli algoritmi di moltiplicazione sono numerosissimi: generali, casi specifici (per esempio per calcoli quadratici o moltiplicazioni per particolari numeri,…), per calcoli da fare a mente, per calcoli scritti, etc… Fra questi ultimi elenchiamo qui quelli che utilizzavano una tabella (di moltiplicazione). Gelosia, il nome deriva da una Veneziana, molto comune a Venezia, dalla quale le suore o le signore potevano guardare fuori dall’interno senza essere viste dall’esterno. Gli storici non sono ancora riusciti a determinare l’origine di questo algoritmo.

8 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
M.E.Algoritmi Aritmetici: Ottimizzazioni mmmmmmmmmmmmmmmmmmmmmmmmmmmmm I Metodi di Moltiplicazione Translation e Semi-Translation (Ibn al-Majdi) compaiono già in alcuni manoscritti del MedioEvo (riduzione del numero di passi elementari distinti per eseguire un calcolo aritmetico). Passo 1: moltiplica le cifre della seconda linea (moltiplicando) per 4 e metti i risultati, uno sopra l’altro, nella giusta posizione, quindi aggiungi questi prodotti per ottenere il numero 1752 nella linea in alto. Passo 2: sposta il moltiplicando di una posizione a destra, scrivi il risultato intermedio 1752 sopra, nella giusta posizione, e ripeti la moltiplicazione, questa volta moltiplicando il numero sotto (moltiplicando) per 3. Passo 3: sposta il moltiplicando nuovamente di una posizione a destra, e ripeti il passo 2. TRASLAZIONE Passo 1: moltiplica le cifre della seconda linea (moltiplicando) per 4 e metti i risultati, uno sopra l’altro, nella giusta posizione, quindi aggiungi questi prodotti per ottenere il numero 1752 nella linea in alto. Passo 2: sposta il moltiplicando di una posizione a destra, scrivi il risultato intermedio 1752 sopra, nella giusta posizione, e ripeti la moltiplicazione, questa volta moltiplicando il numero sotto (moltiplicando) per 3. Passo 3: sposta il moltiplicando nuovamente di una posizione a destra, e ripeti il passo 2. SEMI-TRASLAZIONE Passo 1: calcola a2 e mettilo nella giusta posizione Passo 2: calcola 2a e 2ab; metti 2a sotto il numero x e 2ab sopra x nella giusta posizione Passo 3: calcola b2 e 2ac Passo 4: calcola 2b e 2bc Passo 5: calcola c2 Passo finale: addiziona i termini di ciascuna colonna sopra il numero x 4 1 9 8 6 2 . 3 Passo 1: calcola a2 e mettilo nella giusta posizione 4 x 4 = 16 Passo 2: calcola 2a e 2ab; metti 2a = 2 x 4= 8 sotto il numero 438 e 2ab = 8 x 3 = 24 sopra 348 nella giusta posizione 1 2 3 4 8 9 5 7 4 1 9 8 3 2 6 4 3 8 1 6 2 5 7 Passo 3: calcola b2 = 3 x 3 = 9 e 2ac = 8 x 8 = 64 Passo 4: calcola 2b = 2 x 3 = 6 e 2bc = 6 x 8 = 48 Passo 5: calcola c2 = 8 x 8 = 64 Passo finale: addiziona i termini di ciascuna colonna sopra il numero 348, ottieni x2=10000a ab+100(b2+2ac)+102bc+c2

9 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1200. Semplice Divisione per differenze mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Questo algoritmo compare in un manoscritto del 1200, tradotto da Michel Chasles nel 1843. Si definiscono due tipi di numeri: digits e articles. L’algoritmo si applica solo nei casi in cui i divisori sono digits e i dividendi sono articles. (900 : 8) a.10n-1+(a(10-d)+b).10n-1+k d 4 8 20 2 = + 100 8 180 10 = + 180 8 900 90 = + 20 8 100 10 = + Start Aggiungi il quoziente parziale a.10n-1 nella 4a riga Metti nella 3a riga il nuovo dividendo, ovvero a.(10-d).10n-1 8 1 2 8 1 2 4 8 9 2 10 – d 8 1 2 8 9 2 1 I digits sono i numeri fino a 9 e gli articles sono tutti i multipli di 10. Il principio su cui si basa il processo di divisione è quello seguente. Se a e b sono i primi due digits del dividendo, allora questo si può scrivere come a.10n+b.10n-1+k, dove k<10n-1, e se d è il divisore d < 10, allora abbiamo che a.10n+b.10n-1+k/d = a.10n-1+(a(10-d)+b).10n-1+k/d. Quindi un quoziente parziale è a.10n-1, mentre il nuovo dividendo è (a(10-d)+b).10n-1+k/d. Si ripete il processo con il nuovo dividendo, aggiungendo di volta in volta il quoziente parziale ottenuto. L’ABACO: diversi tipi di abaco venivano usati nell’antichità. Gerbert of Aurillac, che diventò papa Silvestro II nel 999, introduce questo tipo di abaco chiamato anche Pythagorean arc, siccome a volte le colonne venivano unite insieme da archi. d dividendi quozienti 102 101 100

10 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1592.Divisione sull’Abaco Cinese mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Algoritmo di divisione per 7, Suanfa tongzong. (1234:7) sette-uno? + tre nella pos. inferiore (2) sette-due? + sei nella pos. inferiore (3) sette-tre? quattro resto due (4) sette-quattro? cinque resto cinque (5) sette-cinque? sette resto uno L’Abaco Cinese è entrato nell’uso comune in Cina a partire dalla seconda metà del secolo 16°. E insieme ad esso si sono sviluppati tutta una serie di tecniche/metodi a seconda del tipo di abaco e del metodo matematico. (6) sette-sei? otto resto quattro (7) >= sette? + uno nella pos. superiore

11 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1585.Numeri scritti come Decimali mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Simon Stevin introduce un metodo di scrittura dei decimali, eliminando le frazioni (La Disme Definizioni II, III e IV) e fornisce un algoritmo per moltiplicare numeri decimali (La Disme-Proposizione III) .            (0) (1) (2)            32   5    7            89   4    6         195   4     2       1302   8       26056 (0)(1)(2)(3) (4) 364 unità, primo, secondo, terzo, quarto, … 1 2 3 7 5 9 4 10 100 1000 10000 L’idea delle frazioni decimali è molto antica, ma prima che queste vengano trattate in maniera sistematica, bisogna aspettare il sistema di numerazione decimale e posizionale. Così, nell’Antica Cina, quando ci fu l’unificazione dei pesi e delle misure sotto il primo imperatore della dinastia Qin (210 ac.), l’introduzione delle unità (che erano basate su decine, centinaia e migliaia), creò le condizioni necessarie affinchè le frazioni decimali facessero la loro comparsa in Cina...quindi Simon Stevin non è l’inventore delle frazioni decimali. L’eliminazione delle frazioni (chiamate broken numbers) semplifica i calcoli in molti settori, commercio, astronomia, …e quindi rappresentava un’esigenza molto sentita. La Disme, in effetti è la traduzione francese di “The Thenth”. 3759 10000

12 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1703.Aritmetica Binaria mmmmmmmmmmmmmmmmmmmmmmmmmmmmm G. W. Leibniz scrive (The explanation of binary arithmetic) che secondo la leggenda cinese, il re Fohy (Fu Xi) introdusse la figura delle otto Cova che consiste di alcuni diagrammi con una forma particolare. Vantaggi dell’aritmetica binaria. ? Leibniz scrisse la sua opera The explanation of binary arithmetic nel 1703, ma in effetti si è interessato a questo sistema di numerazione per oltre quaranta anni. Questo sistema rappresentava per Leibniz un modello di quello che lui chiama Universal Characteristic e che si trasformò nella ricerca di un Universal Language. Il re Fu Xi era stato anche l’inventore dei caratteri cinesi, e questo faceva pensare che avesse inventato anche qualcos’altro …per esempio riguardante i numeri e le idee. 1 2

13 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
I Quadrati Magici mmmmmmmmmmmmmmmmmmmmmmmmmmmmm 13°-17° sec. (1) Scoperto nel 1956 Inciso su placca di ferro con numeri arabi - del periodo dei Mongoli Arabi (13°-14° sec.) Bizantini (14° sec.) Europei (17° sec.) Marcatura delle celle Cornici Metodo di Moschopoulos (2) Diagramma del fiume Luo - della dinastia dei Song ( ) Da un punto di vista matematico, un quadrato magico con n righe ed n colonne ha una costante magica Sn = n(n2+1)/2. Il termine magico è stato “coniato” all’incirca a metà del 17° secolo. Molte generazioni di Matematici (appassionati della matematica ricreativa) hanno subito il fascino di questi oggetti fra il reale e l’immaginario. E ancora lo subiscono. Per esempio, il famoso Martin Gardner scrisse nel 1961 che il numero dei quadrati magici di ordine 5 non è ancora noto e comunque è un numero intorno ai 13 milioni. Molti studi sono stati fatti e si stanno facendo ancora sui quadrati magici. In effetti questi quadrati magici erano utilizzati anche come talismani, ed erano molto correlati alle gioie e alle preoccupazioni della vita quotidiana. Gli usi sono stati i più vari: aiuto alle nascite, antidoto per le punture degli insetti o per i morsi di animali velenosi, per la cura delle malattie,…. E quindi oltre che nei libri i quadrati magici sono stati incisi sui monumenti, su medaglioni e placche di metallo, su tazze e piatti fatti di rame o di porcellana. Alcuni di questi quadrati magici hanno delle storie molto interessanti che ci danno un’idea di come gli oggetti e le idee si spostavano nei luoghi e nel tempo. – E’ stato scoperto fra le rovine del palazzo del Principe di Anxi, uno dei figli dell’imperatore mongolo Qubilai. Il palazzo si trova alla periferia di Xi’an, l’antica capitale dell’impero cinese. Questo ritrovamento conferma la teoria secondo la quale i Cinesi avrebbero preso in prestito questa tecnica matematica dal mondo islamico. Infatti i più antichi quadrati magici cinesi di ordine più grande di tre risalgono proprio al periodo della dominazione mongola della Cina. Melancholia di Albert Durer – incisione su legno del 1514

14 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
13°sec. Quadrati con Cornici mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Algoritmo di riempimento delle celle, cornice per cornice, (az-Zinjani). 1a cornice 10 45 44 7 11 12 46 2a cornice 9 19 34 17 20 35 41 3a cornice 8 18 24 23 28 32 42 4a cornice 49 37 29 25 21 13 1 48 36 22 27 26 14 2 47 15 16 33 30 31 3 4 5 6 43 39 38 40 Nei secoli 15° e 16° secolo in Europa, molti matematici (come Stifel, Pascal e de Fermat) avevano sperimentato diversi metodi per la costruzione dei quadrati magici. E questi metodi richiedevano un modo di riempire i quadrati utilizzando delle cornici concentriche di numeri poste l’una nell’altra e chiamate borders o frames. In effetti, questa tecnica delle cornici è molto più antica, già a partire dal 10° secolo. S7 = 7(49+1)/2 = 175

15 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Le Cornici di Arnauld 1667. mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Un quadrato magico con le cornici rimane un quadrato magico quando una o più delle sue cornici vengono rimosse. 1 2 3 4 5 7 6 8 9 11 12 13 14 15 17 16 18 19 10 20 21 22 23 24 25 27 26 28 29 30 31 32 33 34 35 37 36 38 39 40 41 42 43 44 45 47 46 48 49 50 51 52 53 54 55 57 56 58 59 60 61 62 63 64 65 67 66 68 69 70 71 72 73 74 75 77 76 78 79 80 81 82 83 84 85 87 86 88 89 90 91 92 93 94 95 97 96 98 99 100 e e’ è ò o’ b a w o y 11 11 99 50 50 4 96 95 7 10 10 92 41 41 1 2 3 4 5 7 6 8 9 11 10 20 21 30 31 40 41 50 51 60 61 70 71 80 81 90 91 92 93 94 95 97 96 98 99 100 e e’ è ò o’ o b y a w 1 2 3 4 5 7 6 8 9 11 12 13 14 15 17 16 18 19 10 20 21 22 23 24 25 27 26 28 29 30 31 32 33 34 35 37 36 38 39 40 41 42 43 44 45 47 46 48 49 50 51 52 53 54 55 57 56 58 59 60 61 62 63 64 65 67 66 68 69 70 71 72 73 74 75 77 76 78 79 80 81 82 83 84 85 87 86 88 89 90 91 92 93 94 95 97 96 98 99 100 81 12 88 14 86 85 17 83 19 20 30 22 33 74 48 28 77 43 79 71 1 1 69 23 64 36 35 67 78 32 100 98 49 76 47 55 56 44 25 52 3 3 40 40 59 38 57 45 46 54 63 42 61 70 39 75 34 66 65 37 26 62 31 Il metodo delle Cornici è stato oggetto di uno studio sistematico (metodico) in Occidente da parte di Arnauld, che nella sua opera Nouveaux éléments de géométrie aggiunse una sezione intitolata: La soluzione ad uno dei più famosi e difficili problemi di aritmetica, comunemente chiamato quadrati magici, che dimostra la vera e propria infatuazione che ci fu da parte dei matematici per i quadrati magici nel 17° secolo. Basti pensare che Pascal nel 1654 presentò all’Accademia di Parigi un trattato intitolato Treatise on magically magic numbers che anche se non è arrivato fino a noi, fu molto apprezzato per esempio da Fermat, che è risaputo essere stato un grande amatore dei numeri. Questo tipo di quadrato magico fu studiato da Stifel nel 1554, poi da Arnauld nel 17° secolo (insieme a Frenicle de Bessey, Fermat, Prestet e Ozanam), quindi da Eulero nel 1776. L’algoritmo vale per tutti i quadrati magici, sia pari che dispari (generalità). 21 72 58 27 53 73 24 68 29 80 93 82 13 87 15 16 84 18 89 8 8 60 2 2 51 97 5 6 94 91 9 9 90

16 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
14° sec. Marcatura delle Celle mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Ibn Qunfudh identifica 4 tipi di quadrati e relativi algoritmi. Quadrati con n celle dove n è divisibile per 4. In ogni riga [colonna] metà celle sono marcate e metà sono smarcate. 4 14 15 1 9 7 6 12 I 4 tipi di quadrati sono: 1) i quadrati con n celle dove n=2p con p>=2 UNIFORMEMENTE-PARI; 2) i quadrati con n celle dove n=2p(2k+1) con p>=2 UNIFORMEMENTE-PARI-DISPARI; 3) i quadrati con n celle dove n=2(2k + 1) UNIFORMEMENTE-DISPARI; 4) i quadrati con n celle dove n=2k + 1 (DISPARI); 5 11 10 8 16 2 3 13

17 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
14° sec. Procedimento per 2 e per 3 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Manuel Moschopoulos descrive due algoritmi. Il primo è relativo alla costruzione di un quadrato magico di ordine dispari (due versioni: procedimento per 2 e per 3; procedimento per 3 e per 5). Il secondo è relativo a quadrati magici di ordine divisibile per 4 (tecnica marcatura delle celle di Ibn Qundfudh). 1 1 2 1 2 3 1 2 3 4 1 2 3 4 5 Il matematico bizantino Manuel Moschopoulos, rappresenta l’ultimo collegamento di una lunga catena di trasmissione di metodi relativi ai quadrati magici. Passa in rassegna, come altri prima di lui, tutte le tecniche che erano state fornite precedentemente nella letteratura islamica, forse fino ai Greci (non è del tutto sicuro!). Le regole utilizzate per il riempimento delle celle nel primo algoritmo corrispondono nella nostra notazione alle congruenze matematiche modulo n, dove n è l’ordine del quadrato magico. 1 2 3 4 5 6 1 2 3 4 5 6 7 1 2 3 4 5 6 7 9 8

18 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1612. Claude-Gaspard Bachet de Méziriac mmmmmmmmmmmmmmmmmmmmmmmmmmmmm E’ una variazione dell’algoritmo di Moschopoulos Dei piccoli quadrati vengono aggiunti ai lati di un quadrato ABCD da riempire; quindi si inseriscono i numeri in ordine lungo le diagonali (1,2,3,4,5; 6,7,8,9,10; …). A B Poi, ogni cella vuota della prima riga (e dell’ultima riga) viene riempita con i numeri che si trovano nei quadrati aggiunti dal lato opposto. Ovvero: accanto al 3 -16 e accanto al 9 22; accanto al 11 -4 e accanto al 17 10. Analogamente si procede per le due righe intermedie. C D

19 Metodi della Falsa Posizione
mmmmmmmmmmmmmmmmmmmmmmmmmmmmm A lance has a half and a third in the water and 9 palms outside. I ask you how long is it? x – 1 x – 1 x = 9 Francès Pellos – 1942 A number must be chosen in which the proposed parts appear whole and this is to avoid fractional numbers, and not because it could not just as well be done with another number but with more difficulty. Francès Pellos Compendion de l’abaco, 1942 2 3 Sono algoritmi che usano un valore numerico per l’incognita per risolvere un problema La loro origine è ancora incerta La loro storia attraversa molti secoli e molte civiltà. Si distinguono in: Metodo semplice (un solo valore numerico) e Metodo doppio (due valori numerici). Babylonian Tablet I nomi, diversi, con i quali questi algoritmi sono stati identificati nel corso dei secoli riflettono la cultura matematica del tempo. Un tipico problema risolvibile con un algoritmo di falsa posizione tratto da un libro di scuola francese del XIX° secolo. La scelta del valore numerico (falsa posizione) è importante soprattutto per evitare problemi con le frazioni.

20 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1800 a.c. Mesopotamia UNA FALSA POSIZIONE GEOMETRICA mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Questa tavoletta mostra “chiaramente” l’uso di un algoritmo di falsa posizione per la risoluzione di un problema geometrico. b = l – l/4 e b d l0 = 1 o [60] l2 b2 + = 40 d = l0/4 = 15 l b0 = l0 – l0/4 = 45 b = ? 24 l = ? 32 l02 = 1 o [602] l = l0 x (d/d0) = 60 x (32/60) = 32 b02 = 452 = ;45 b = b0 x (d/d0) = 45 x (32/60) = 24 b02 l02 + = ;33;45 d02 = b = kl l2 b2 + = 40 d = l 1 + k2 = d l/l0 = b/b0 = d/d0 l = l0 x (d/d0) e b = b0 x (d/d0) La stretta relazione fra la similitudine geometrica, la proporzione aritmetica e lo scambio di variabile spiega come mai questa tecnica della falsa posizione possa essere usata anche per risolvere alcuni problemi geometrici. Alcuni esempi. 1) Problema 3 della tavoletta YBC 4669 “I have eaten two thirds of my provisions: there is left 7. What was the original (amount) of my provisions?” 2) Problem 3 della tavoletta AO 6770 “I took a stone: I did not know its weight. I took away 1/7, the third of a shekel and 15 grains. I put back 1/11 of what I had taken and five sixths of a shekel: my stone was restored to its original state. What was the original (weight) of my stone? La risposta che abbiamo al primo problema è errata, mentre tutto quello che si ha della soluzione al secondo è troppo impreciso per capire quale algoritmo è stato utilizzato. Similmente per altre tavolette che riguardano problemi commerciali o problemi di eredità. Anche se sono state trovate e trascritte molte tavolette, ancora non possiamo essere certi che i Babilonesi usassero un metodo della falsa posizione per risolvere questo tipo di problemi aritmetici. = ;15 d0 = + l02 b02 d/d0= 1/75 = 48/ d x (1/d0) = 40 x (48/602) = 32/

21 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1800 a.c. Egitto - Rhind Papyrus mmmmmmmmmmmmmmmmmmmmmmmmmmmmm I principali testi matematici dell’antico Egitto: Kahun Papyrus, Moscow Papyrus e Rhind Papyrus (problema 26). x + 1 x = 15 4 x’ = 4 b’ = 5 b/b’ = 15/5 = 3 x = (b/b’) x’ = 3*4 = 12 = 15 Rhind Papyrus dal nome dell’egittologo inglese che nel diciannovesimo secolo ebbe la fortuna di comprarlo. Spesso i testi nel Rhind Papyrus vengono interpretati in maniera differente, come nel caso del problema 26 che per alcuni non è un algoritmo di risoluzione corrispondente al metodo della falsa posizione, ma implica un cambio di variabile o addirittura niente di più che una procedura di divisione. Per molti problemi diamo la formulazione algebrica per semplicità, ma è chiaro che ancora era sconosciuta a quei tempi in Egitto.

22 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
(206 ac-220 dc) Cina – Jiuzhang Suanshu mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Il capitolo 7 della “bibbia” cinese dell’aritmetica contiene il primo algoritmo sul metodo del doppio errore, o ying bu zu shu (problemi 18 e 19). 9x = 11y “9 gold coins weigh as much as 11 silver coins. If, in each pile, one gold coin is replaced by a silver coin, and conversely, the gold pile becomes lighter by 13 liang. How much do a gold and silver coin weigh respectively?” (10y + x) – (8x + y) = 13 (liang) x1 = 3 y1 = 2 + 5/11 x2 = 2 y2 = 1 + 7/11 1 jin = 16 liang e 1liang = 24 zhu 13 liang = 13/16 jin e1 = 12/11 – 13/16 = 49/16*11 jin e2 = 13/16 – 8/11 = 15/16*11 jin x = x1*e2 + x2*e1/e1 + e2 = 143/64 jin x = 2jin + 15/(16*4)jin = 2jin + 3/16jin +18/(16*24) jin = 2jin 3 liang 18 zhu …

23 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
12°secolo. India – Bhaskara mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Nel capitolo 3 del suo libro Lilavati, il matematico Indiano Bhaskara tratta il Metodo semplice che chiama ista karma (operazione con un numero fissato). 1/10[5x - 1/3(5x)] + 1/3x + 1/2x + 1/4x = “What is the number, which multiplied by five, and having the third part of the product subtracted, and the remainder divided by ten, and one-third, a half and a quarter of the original quantity added, gives two less than seventy? ax = b ax1 = b1 x1 = 3 b1 = 17/4 Il libro è dedicato ad una donna di nome Lilavati…. x = b*x1/b1 = (3*68)/17/4

24 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
9°secolo. Arabia – Qusta Ibn Luqa mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Il matematico arabo Qusta Ibn Luqa è stato il primo a fornire una dimostrazione geometrica del metodo del doppio errore. b a g i d k o s z m c h l n t u b–b” ad ag ab x x’ x” t = = = = b–b’ do gt bh b b’ b” b area del rettangolo con diagonale ci b” b’ x = lunghezza del segmento cn x’ x” x’ e” – x” e’ = x e” – e’

25 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
13°secolo. Il Metodo della Bilancia mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Il matematico arabo Ibn al-Banna inventò una tecnica grafica per sviluppare il metodo del doppio errore. errori per eccesso errori per difetto e” e’ x” x’ b e” e’ x” x’ b x’ e” – x” e’ e” – e’ x’ e” – x” e’ e” – e’ e’ per eccesso, e” per difetto x’(ax’) + (b - ax’)x’ x’ e” + x” e’ e” + e’ x = e” e’ x” x’ b ax’

26 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1202. Fibonacci – Regola Elchatayn mmmmmmmmmmmmmmmmmmmmmmmmmmmmm In Liber Abaci (capitoli 12 e 13) Fibonacci spiega la regola Elchatayn o regola dei due errori. 1 livre = 20 sous 1 sou = 12 deniers e” x – x” 5 livres 3 livres 12 deniers x” – x’ e’ – e” 3*12 2 sous + 5 ( ) deniers = 7 + 1 deniers differenza delle moltiplicazioni 8 5 3 1 2 less 16 sous 3 sous 13 differenza degli errori x” - x’ x = e’ – e” x” + e”

27 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1460. Francès Pellos REGOLA DEL TRE E FALSA POSIZIONE SEMPLICE mmmmmmmmmmmmmmmmmmmmmmmmmmmmm In Compendium del l’abaco viene usato il Metodo semplice per sviluppare la regola del tre applicata ai numeri frazionari. 3 + 1 2 8 + 1 21 6 4 + 1 3 6 + 1 = REGOLA DEL TRE 3 + 1 2 x 7 = 14 x’ b’ = 2 ax’ = b’ x =? La regola del tre ha una storia molto interessante. Gli Egiziani usualmente utilizzavano una unità per i loro calcoli come per esempio il pesu che rappresentava la quantità di pane che poteva essere cotta al forno a partire da una certa quantità di farina. I Cinesi invece la utilizzavano nel baratto di cereali; gli Indiani per operare con le frazioni. Questa regola compare anche in molti testi Arabi e in molti trattati sulla matematica dell’Europa Medievale. Questo libro, pubblicato nel 1492, fu scritto da questo signore di Nice (Francès Pellos) molto probabilmente a partire da un altro testo occitano (regione e lingua del sud-ovest della Francia), il manoscritto di Pamiers che risale al 1430. /2 2 = 49/2 = /2

28 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1583. Christophore Clavius mmmmmmmmmmmmmmmmmmmmmmmmmmmmm SOLUZIONE DI UN SISTEMA DI EQUAZIONI In Epitome Arithmaticae Practicae Clavius (capitoli 12 e 13) usa il Metodo del doppio errore per risolvere sistemi di equazioni lineari. 2 36 42 23 15 2 35 33 5 32 21 x1 = 1 37 = y1 + z1 y = 3(1 + z1) x2 = 3 y2 + z2 = 38 y = 3(3 + z2) y1 = 101/4 z1 = 263/4 e1 = 543/4 y2 = 121/2 z2 = 251/2 e2 = 361/2 x + 73 = 2(y+z) y + 73 = 3(z + x) z + 73 = 4(x + y) x = x2 e1 – x1 e2 e1 – e2 = 7 1 101/4 543/4 263/4 3 121/2 361/2 251/2 y = y2 e1 – y1 e2 e1 – e2 Nel caso di un sistema di tre equazioni con tre incognite, x, y e z, partendo dalla falsa posizione x1, Clavius procede risolvendo il sistema formato dalle prime due equazioni, usando il metodo del doppio errore. Quindi trova le false posizioni y1(‘ e “), z1 (‘ e “) delle altre due incognite ed e1 (‘ e “). Quindi inizia nuovamente con una falsa posizione x2 e trova le false posizioni y2 e z2. La terza equazione viene utilizzata per trovare gli errori e1 ed e2. Alla fine basta applicare le formule del metodo del doppio errore a ciascuna delle incognite per ottenere la soluzione del problema. Questo algoritmo ha importanti implicazioni nella risoluzione dei sistemi di equazioni, con riferimento al comportamento simmetrico delle variabili x, y e z. Inoltre può essere esteso alla risoluzione di sistemi di equazioni lineari con più incognite. = 17 z = z2 e1 – z1 e2 e1 – e2 = 23

29 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Algoritmo di Euclide mmmmmmmmmmmmmmmmmmmmmmmmmmmmm By 1950, the word algorithm was most frequently associated with ‘Euclid’s algorithm’ Donald Knuth The Art of Computer Programming, (v.I, p. 2) Rappresenta per i matematici il prototipo della procedura algoritmica. Usato non solo nella ricerca del massimo comune divisore (Euclide), ma anche, nella soluzione delle equazioni indeterminate (identità di Bèzout). Per il confronto di due rapporti (Al-Khayyàm); che sarà ancora più chiaro con lo studio delle frazioni continue (Eulero). Ma quello che è stupefacente, è che questo algoritmo viene usato anche per determinare il numero delle radici reali di un’equazione algebrica (Metodo di Sturm).

30 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
IIIo secolo a.c. Algoritmo di Euclide Le due proposizioni su cui si basa la procedura forniscono un metodo per determinare se due numeri sono primi fra loro (Proposizione 1) e se non lo sono, per determinare il massimo comune divisore, MCD (Proposizione 2). Queste due proposizioni sono contenute nel Libro VII di The Elements, che insieme ai Libri VIII e IX formano I Libri Aritmetici di Euclide che mettono le basi della Teoria dei Numeri. Il processo iterativo di ricerca del MCD è basato sulle ripetute sottrazioni fra il numero più grande e quello più piccolo. Si ricorda che per MCD fra due o piú numeri interi positivi maggiori di 1 di cui sia stata effettuata la scomposizione in fattori primi, si intende quel valore intero ottenuto moltiplicando i fattori comuni presi una sola volta con esponente minimo. Applicazione Algoritmo di Euclide A= e B= , 0<B<A C<-- A - B = , siccome C<B allora A<-- B e B <-- C A= e B= , 0<B<A C<-- A - B = , siccome C<B allora A<-- B e B <-- (6) A= e B = , 0<B<A C<-- A - 6B = sicome C<B allora A <-- B e B <--C A = e B = ... Euclide non fa mai riferimento a simboli numerici, ma solo a lettere e segmenti. Questo ha il vantaggio che si può parlare di numeri di qualsiasi dimensione, e anche che gli argomenti possono essere trasposti a grandezze oltre che a lunghezze. MCD(m,n) = MCD((m-n),n) Come si vede, questa regola permette di passare, per mezzo di sottrazioni successive, a MCD di numeri sempre più piccoli, fino ad ottenere: MCD(a,0)=a L'algoritmo può essere scritto così: Finché m>0 se n>m allora scambia m con n Sottrai n da m e assegna ad m il valore della differenza (m=m-n) Ripeti il ciclo n è il MCD cercato Un algoritmo più veloce, basato su divisioni successive Euclide descrisse questo algoritmo nel suo libro degli Elementi. Invece di usare i numeri interi, però, utilizzò i segmenti di retta. Perciò il suo algoritmo serve anche a determinare il massimo comune divisore di due segmenti. In certi casi l'algoritmo può richiedere numerosissimi passaggi, risultando molto lento (provate con MCD (900,15)). Conviene quindi renderlo più veloce e si può fare ricorrendo ad una serie di divisioni con resto anziché sottrazioni. Il principio su cui ci si basa è il seguente (supponiamo m>n): MCD(m,n) = MCD(r,n)dove r è il resto della divisione m/n Come si vede, questa regola permette di passare rapidamente, per mezzo di divisioni con resto successive, a MCD di numeri sempre più piccoli, fino ad ottenere: MCD(r,0)=r

31 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
?. Omar al-Khayyàm Nel IXo secolo, al-Mahani identifica l’uguaglianza fra due rapporti con il fatto che essi hanno le stesse sequenze di quozienti corrispondenti. a c = b d Il matematico arabo al-Khayyàm và oltre e identifica la diseguaglianza fra due rapporti. a c K = = b d a 223 a/b = 223/71 e c/d = 355/ n1,n2,...e m1,m2,... b - n1.a = p1 con p1 < a d - m1.c = q1 con q1 < c = =113 se n1=m1, si procede con la sottrazione dei multipli a - n2.p1 = p2 con p2 <p c - m2.q1 = q2 con q2 < q1 = =16 se n2=m2, si procede con la sottrazione dei multipli p1 - n3.p2 = p3 con p3 <p2 q1 - m3.q2 = q3 con q3< q2 = =1 se n3=m3, si procede con la sottrazione dei multipli p2 - n4.p3 = p4 con p4 <p3 q2 - m4.q3 = q4 con q4< q3 = =0 se n4<m4, (k = 4 pari) --> 223/71 < 355/113 Con lo stesso algoritmo si possono confrontare rapporti irrazionali. = 0, 3, 7, 10 b 71 c 355 0, 3, 7, 16 = d 113

32 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1766. Etienne Bézout Nella ricerca delle soluzioni intere di un’equazione di primo grado ax – by = c, il caso particolare dove a e b sono numeri primi, è noto come Identità di Bézout axo – byo = 1. Bachet de Méziriac (1624) – dimostrazione laboriosa I manuali di Bézout hanno avuto un ruolo importante nell’insegnamento della matematica.Nella sua opera Cours d’Algèbre utilizza il seguente esempio 17x – 11y = 542, da cui l’ Identità di Bézout a*2 – b*3 = 1. Già nel 1624, questo metodo era stato dimostrato da Bachet de Méziriac nella sua Problèmes plaisants et délectables. L’applicazione pratica, è tipica della tradizione medievale di alcuni problemi, arabi, indiani e cinesi, noti come problemi ‘dei 100 polli’. La dimostrazine però è molto laboriosa, quindi non facile da seguire. Bèzout, invece dimostra il metodo con degli esempi pratici molto efficaci, anche per questo i suoi manuali hanno avuto un ruolo molto importante nell’insegnamento della matematica. Il metodo si basa su due stadi principali: 1)soluzione particolare e 2) tutte le soluzioni. Caso dei polinomi: AU + BV = 1. Ovvero, se A e B sono due polinomi primi fra loro, allora esistono due polinomi U e V, tali che vale l’identità di cui prima. Quindi i polinomi U e V si trovano utilizzando l’algoritmo di Euclide per trovare il MCD di A e B. Identità di Bézout e polinomi: AU + BV = 1.

33 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1737. Leonhard Euler L’approssimazione dei numeri per frazioni successive è alla base dei calcoli fatti dai primi matematici. Il primo esempio di numero specificato in questa forma è 4/pi (Lord Brouncker). a b c d e F G A B C D E etc. Matematici: esemplificazione di grossi numeri (Aristarchus of Samos e Archimedes); approssimazione del ‘Golden Number’ (Fibonacci nel Liber Abaci – 1202); approssimazione delle radici quadrate, Bombelli in Algebra nel 1572 e Cataldi in Trattato nel Il germe dell’idea comunque è presente nel libro X dell’opera Elements di Euclide (proposizione 2 sulle grandezze incommensurabili). Lo sviluppo teorico di questa idea fu poi continuato da al-Mahani nel 9 secolo e da al-Khayyàm nel 12 secolo (uguaglianza fra due frazioni, …). La formula di 4/pi di Lord Brouncker fu citata da Wallis nella sua opera Arithmetica infinitorum del E poi Leibniz, e Huygens per la costruzione di un planetario. Eulero riprende questa teoria anche in un’altra opera Introductio in analysin infinitorum. Questa teoria viene enunciata da Eulero nel 18o secolo (Fractionibus continuis Dissertazio) e poi completata da Lagrange.

34 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1835. Charles.-F. Sturm Nel 1815, Cauchy diede, per la prima volta, una soluzione completa al problema di determinare il numero delle radici di un equazione, ma il metodo è troppo complicato per avere un uso pratico. Nel 1835, Sturm spiega il suo metodo, abbastanza semplice, nella Mèmoire sur la résolution des équations numériques, che gli da la fama di fisico e matematico. Sturm utilizza nel suo metodo l’algoritmo di Euclide applicandolo ad un polinomio V e alla sua derivata V’. Dalle estensioni del teorema di Sturm hanno avuto origine diversi algoritmi e programmi di calcolo, come MACSYMA, REDUCE, MAPLE,e DERIVE.

35 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Dalla misura del cerchio al calcolo di pi mmmmmmmmmmmmmmmmmmmmmmmmmmmmm And he made a molten sea, ten cubits from the one brim to the other: it was round all about, and his height was five cubits: and a line of thirty cubits did compassit round about The Bible, I Kings 7, 23 Fece un bacino di metallo fuso di dieci cubiti da un orlo all'altro, rotondo; la sua altezza era di cinque cubiti e la sua circonferenza di trenta cubiti La Bibbia, I Re 7, 23 48 Le diverse teorie di pensiero su pi si dividono in tre categorie: 1) fino al 17o secolo, viene usato un approccio geometrico (lunghezze o aree) – Archimedes, Jiuzhang Suanshu, Descartes; 2) l’avvento del calcolo infinitesimale cambia completamente il tipo di approccio (somme, prodotti, funzioni trigonometriche, approssimazioni per frazioni successive) – Leibniz, Euler; 3) studi più teorici sulla natura del numero pi, che viene approssimato con un numero sempre maggiore di cifre decimali. Lambert (1761) dimostra che è un numero irrazionale, e Lindemann (1882) che è un numero trascendente. Rhind Papyrus Molto prima che Archimede mostrasse come calcolare la circonferenza di un cerchio, erano stati utilizzati dei valori empirici per rappresentare pi, ovvero per esprimere il rapporto fra la circonferenza e il suo diametro. Questa citazione dalla Bibbia: Fece un bacino di metallo fuso di dieci cubiti da un orlo all'altro, rotondo; la sua altezza era di cinque cubiti e la sua circonferenza di trenta cubiti, (dove il cubito, ovvero la distanza dal gomito al punto del dito, è la misura di lunghezza più comune in antichità, pari a 52,3 ??cm), suggerisce che tale valore poteva essere 3. Il Rhind Papyrus, che fu copiato intorno al 1650 BC dallo scriba Ahmes da un testo molto più antico, spiega attraverso degli esempi, una regola per calcolare l’area di un cerchio a partire dal suo diametro. Utilizzando questa regola, nel problema 48, viene calcolata l’area di un cerchio di diametro 9 come se fosse quella di un quadrato di lato 8. La regola può essere scritta algebricamente con la formula: A= (d – d/9)2, e dalla quale si deriva un valore per pi, pi=4A/d2 = 4(8/9)2 = 3,16… Per quanto riguarda la citazione dalla Bibbia, bisogna tener conto del fatto che si tratta di un’opera letteraria, scritta molto probabilmente nel VIo secolo ac, e dalla quale non è possibile tirare conclusioni sulle conoscenze scientifiche di quel periodo nel quale sappiamo approssimazioni molto più precise erano già note. L’idea che pi fosse un numero comunque non emerge fino al XVIIo secolo, e l’uso della lettera greca per la sua rappresentazione introdotto da Jones, matematico Gallese nel 1706, non fu mai accettato se non dopo essere stato utilizzato da Eulero.

36 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
ac. Archimede mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Il libro su La Misura del Cerchio consiste di tre proposizioni. La prima proposizione stabilisce che A = r C . 2 La terza proposizione stabilisce che 3d + d < C < 3d + d. 10 1 71 7 Per ottenere questo risultato Archimede calcola i perimetri dei poligoni regolari inscritti e circoscritti al cerchio. La Misura del Cerchio è un lavoro brevissimo articolato nella dimostrazione di sole tre proposizioni, nelle quali sono contenuti i seguenti principali risultati. Nel teorema 4 (proposizione 1), viene dimostrato che il cerchio è uguale al triangolo rettangolo avente come cateti il raggio e la circonferenza del cerchio.Il teorema 7 (proposizione 3) stabilisce la famosa approssimazione archimedea per il rapporto fra diametro e perimetro del cerchio; il rapporto tra la circonferenza ed il diametro deve essere compreso tra 3+10/71 e 3+1/7. La dimostrazione fa uso di un algoritmo ricorsivo che parte con due esagoni regolari, uno circoscritto e l’altro inscritto. Archimede quindi raddoppia il numero dei lati di un esagono fino a novantasei. Dai perimetri degli ultimi poligoni si ottengono i limiti. E infine nel teorema 8 (proposizione 2), questa stima viene utilizzata per ottenere un rapporto approssimato fra il cerchio e il quadrato costruito sul diametro. Altri valori di pi calcolati dopo Archimede. 1) Ptolemy produce nel secondo secolo il valore sessagesimale di 3+8/60+30/3600=3.1417…un valore che si avvicina molto alla media fra i due valori forniti da Archimede. Altre approssimazioni sono state ottenute da molti matematici utilizzando un procedimento simile a quello di Archimede ma considerando poligoni con più lati. 2) Il matematico indiano Aryabhatta ottiene nel 500 ac, il valore /2000= con 3.27 lati. 3) Nel 1424, al-Kashi di Samarkand ottiene un valore equivalente con un’accuratezza di 16 cifre decimali usando lati. 4) Nel 1609 in Germania, Ludolph van Ceulen ottiene un’accuratezza di 36 cifre decimali usando 262 lati.

37 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Area del cerchio – Jiuzhang Suanshu (220 ac – 206 dc) E’ la più importante e la più conosciuta di tutte le antiche opere matematiche cinesi; scritta durante la dinastia Han, contiene centinaia di algoritmi, fra i quali anche l’algoritmo che calcola l’area del cerchio (pi = 3). 2 A = * c d Verso la fine del terzo secolo il matematico Liu Hui ottiene una migliore approssimazione di pi calcolando le aree di una sequenza di poligoni regolari (di 6, 12, 24, 48, 96 e 192 lati) iscritti nel cerchio. Come i perimetri, anche le aree dei poligoni iscritti e circoscritti sono state utilizzate per approssimare il valore di pi come in questo esempio cinese che risale al terzo secolo avanti cristo. Non si sa come Li Chunfeng abbia ottenuto questo valore. Mentre si sa che Zu Chongzhi abbia ottenuto il valore di 355/113 a partire dal metodo di Liu Hui ma considerando molti più poligoni. Note sulla struttura del testo originale di Liu Hui (concetto di modulo; non utilizzava lettere greche ma nomi eventualmente rafforzati da aggettivi, …) + note sui calcoli di Liu Hui e differenze con Archimede (Liu Hui per esempio trascura i calcoli intermedi, mentre Archimede è molto rigoroso ) . L’astronomo e inventore Zu Chongzhi (nel quinto secolo) approssima pi a ; e Li Chunfeng (nel settimo secolo) trova la più utile semplificazione a . 355 113 22 7

38 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1640. René Descartes La quadratrice d’Hippias La spirale di Archimede Con il Metodo degli Isoperimetri Descartes mostra come costruire, il diametro d di un cerchio che abbia lo stesso perimetro p di un quadrato dato, ovvero = pi. p d Il metodo si avvale del principio che, di tutte le figure piane di un dato perimetro, il cerchio ha l’area maggiore (problema degli isoperimetri). Questo cerchio rappresenta il limite di una sequenza di poligoni regolari di uguale perimetro e di lati (4,8,16,32,…), ovvero si ottiene producendo la sequenza dei diametri dei cerchi iscritti in questi poligoni regolari. Il problema della quadratura del cerchio (ovvero la costruzione con riga e compasso di un quadrato con la stessa area di un dato cerchio) risale al quinto secolo ac. Un problema equivalente è quello della rettificazione del cerchio (ovvero la costruzione con riga e compasso di una linea con la stessa lunghezza del perimetro di un dato cerchio). Esempi di rettificazione del cerchio sono: nel quarto secolo ac, Dinostratus con il quadratix di Hippias di Elis, e nel terzo secolo ac Archimede con la sua spiral. Cartesio nella dimostrazione del Metodo degli Isoperimetri procede nella direzione opposta.

39 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1673. G.W. Leibniz Francois Viète (1593) è il primo a rappresentare pi come un prodotto infinito. 2/pi John Wallis (1656) 4/pi 4/pi Lord Brouncker (frazioni successive) A mano a mano che i calcoli che utilizzano processi al limite si vanno perfezionando, vengono sviluppate delle formule analitiche per l’approssimazione di pi. Leibniz definisce la sua formula Quadratura Aritmetica, perché esprime la dimensione della figura proposta come una sequenza infinita di numeri (somma di una serie). Leibniz deriva la formula nel 1673 ma questa viene pubblicata solo 9 anni più tardi in Acta Eruditorum. In una lettera scritta a La Roque, l’editore di Acta Eruditorum, Leibniz spiega i principi generali che sono alla base del suo Metodo delle Metamorfosi. E cioè: L’area al di sotto di una curva si divide in triangoli infinitesimali, ciascuno dei quali ha un’area che è uguale alla metà di quella di un rettangolo infinitesimale, e i rettangoli insieme formano l’area al di sotto di un’altra curva la cui quadratura può essere facilmente determinata. L’applicazione di questo metodo ad alcuni casi particolari conferma le quadrature già note, e nel caso del cerchio il metodo fornisce un valore per pi. Leibniz definisce la sua formula Quadratura Aritmetica

40 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1748. Serie Eulero studia la convergenza della serie di Leibniz. tan pi/6 = 1/ 3 arctan t = t – t3 + t5 – t7 + t9 - … 3 5 7 9 e pi = 2 3 1 (-1)n (2n + 1).3n - 3.3 5.32 + arctan 1 = arctan (1/2) + arctan (1/3) M. De Lagny (1719) 127 posizioni decimali + (-1)n (2n + 1).22n+1 pi 4 = (2n + 1).32n+1 n>=0 3, 1748 – Introductio in analysin infinitorum. Si possono derivare altre formule per migliorare la convergenza ed Eulero stesso le utilizza (es. Machin). Questa formula viene utilizzata da William Shanks per calcolare pi fino addirittura a 600 posizioni decimali – anche se commette un errore alla posizione 527 che viene scoperto solo nel Fino ad ora, le formule che sono state utilizzate per calcolare pi sono state tutte varianti della formula di Machin. Con questa formula Machine ottiene nel 1706, un’approssimazione di pi con 100 cifre decimali. Poi nel 1719, M. de Lagny calcola 127 posizioni decimali a partire dalla formula di Eulero. pi/4 = arctan (1/5) – arctan (1/239) J.Machin La 114a cifra dovrebbe essere 8! pi2/6, pi4/90, pi2/8, pi3/32, …

41 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
I Metodi di Newton mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Esistono due versioni del metodo di Newton: Metodo della Tangente e Poligono di Newton (Soluzione Numerica di Equazioni) (Soluzione Algebrica di Equazioni). P(y) = 0 P(x,y) = y = f(x) 1669 – Approssimazione di Newton 1690 – L’iterazione di Raphson (r. di ricorrenza) 1768 – Mourraille (c. iniziali) Lagrange (a. geometrico) 1818 – Fourier (convergenza) 1829 – Cauchy (r. complesse) Idea Moderna dei Frattali. …La Riga e Piccoli Parallelogrammi… 1850 – Caso generale Puiseux Queste due versioni del Metodo di Newton sono entrambe descritte nel suo Method of Fluxions and Infinite Series. Il Metodo di Newton è un Metodo semplice (approssimazioni lineari) ed efficiente (rapida convergenza). Newton spiega il suo metodo nel 1669, e lo fa con esempi numerici. Non utilizza alcuna rappresentazione geometrica della curva approssimata dalla sua tangente, né illustra la relazione di ricorrenza che oggi viene utilizzata. Questa relazione di ricorrenza viene sviluppata in seguito, nel 1690 da Raphson, che da anche il nome al metodo (Metodo di Newton-Raphson). La questione fondamentale delle condizioni iniziali necessarie per garantire la convergenza delle successive approssimazioni, viene posta esplicitamente, per la prima volta con Mourraille nel 1768, e più tardi anche da Lagrange che utilizza un approccio geometrico al problema. Il problema della convergenza fu analizzato poi da Fourier nel 1818 e poi da Cauchy dapprima nel 1821 e poi specificatamente nel Il suo interesse era per le radici complesse, che più tardi porterà alla idea moderna dei frattali che si basa sia sui numeri che sulla geometria. Il Poligono di Newton viene riapplicato ad un caso più generale da Puiseux nel 1850.

42 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1669. Isaac Newton APPROSSIMAZIONI LINEARI mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Il metodo di Newton per risolvere un’equazione polinomiale è un metodo per approssimazioni successive. 2+p=y y3 +8 +12p +6p 2 +p 3 Nel 1669 Newton fornisce un nuovo algoritmo, che illustra sull’esempio y3 -2y -5 = 0 - 2y -4 -2p - 5 -5 Total -1 +10p +6p 2 +p 3 +p 3 +0 .001 .03 q .3 2 - 1 .06 +1 .2 +6 +10 +q 3 0.1+q=p +6p 2 Newton non fa uso esplicito della nozione di derivata. +10p -1 Total 0.061 +11 .23q +6 .3q 2 +q 3 Per trovare un’accurata radice di questa equazione, prima di tutto bisogna indovinare un valore di partenza, qui y=2. Quindi si può scrivere che y=2+p e dopo la sostituzione l’equazione diventa p3+6p2+10p-1=0. Poichè p si è supposto piccolo possiamo trascurare il termine p3+6p2 rispetto a 10p-1 e dalla precedente equazione si ottiene p uguale a 0.1, perciò una migliore approssimazione della radice è y = 2.1. E’ possibile ripetere questo processo e scrivere p=0.1+q, la sostituzione da q3+6.3q q+0.061=0, di qui q = /11.23= e si ottiene la nuova approssimazione per y = E il processo dovrebbe essere ripetuto fino a che si ottiene il numero richiesto di cifre. r=q +q 3 + 6 .3 q 2 +0 .061 11 .23 Total +0 +11 .162r - + s = r

43 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1690. Joseph Raphson FORMULE DI RICORRENZA mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Il metodo introdotto da Raphson semplifica il processo delle approssimazioni di Newton. x3 – bx + c = 0 an x = g f(an) c + g3 – bg an+1 = an + x = g + f’(an) b - 3g2 Pochi anni dopo, nel 1690, un nuovo passo avanti fu fatto da Joseph Raphson ( ). Egli propose un metodo che evitava le sostituzioni nell’approccio di Newton. Illustra il suo algoritmo sull’equazione x3-bx+c=0, e partendo con un’approssimazione di questa equazione x = g, una migliore approssimazione è data da x = g+ c+g3-bg/b-3g2. Si può osservare che il denominatore della frazione è l’opposto della derivata del numeratore. Questo risultato rappresenta storicamente l’inizio dell’effettivo (molto importante) algoritmo di Newton (chiamato anche algoritmo di Newton-Raphson). Più tardi Lagrange mostra che i due metodi sono praticamente uguali (algoritmo di Newton-Raphson).

44 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1768. Jean-Raymond Mourraille mmmmmmmmmmmmmmmmmmmmmmmmmmmmm CONDIZIONI INIZIALI Per la prima volta viene affrontato il problema della convergenza del metodo di Newton. Mourraille utilizza la rappresentazione geometrica (Metodo della Tangente) per spiegare il comportamento della sequenza iterativa prodotta dall’algoritmo di Newton. B M p P f’>0, f”>0 B M p P f’<0, f”>0 B M p P f’>0, f”<0 B M p P f’<0, f”<0 Jean-Raymond Mourraille, matematico e astronomo, fu sindaco di Marsiglia dal 1791 al Egli affronta il problema nel suo Traité de la résolution des èquations numèriques. Questo suo lavoro era passato pressocchè inosservato (sconosciuto) siccome conteneva molte idee nuove. Per esempio, a differenza di Newton e Raphson egli enfatizza l’aspetto geometrico, che gli consente di determinare delle condizioni/valori iniziali tali da assicurare che il metodo converga. E la difficoltà a fare questa scelta è il principale inconveniente dell’algoritmo.

45 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1829. Augustin Louis Cauchy CONVERGENZA mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Fourier (1818) prima in Question d’analyse algébrique, e poi in Analyse des équations déterminées (1831), è il primo che affronta il problema della misura della convergenza. In Lecons sur le Calcul Différential, in una nota sulla determinazione approssimata delle radici di un’equazione f(x) = 0, Cauchy specifica le condizioni iniziali, a partire dalle derivate f’ ed f’’. f’(x) = 3x2 – 2, f’’(x) = 6x, a=2, i=-f(a)/f’(a)=0.1 Nel caso dell’equazione di Newton x3 -2x -5 = 0

46 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1979. Radici Complesse mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Nel 1979 John Hubbard, matematico americano, si chiese che cosa sarebbe successo applicando il metodo di Newton per la risoluzione delle radici cubiche. i punti del piano sono “attratti” verso le tre soluzioni del sistema Con gran meraviglia Hubbard si accorse che i punti del piano erano “attratti” verso le tre soluzioni del sistema. La peculiarità di ciò è che i “confini” tra diverse zone di “attrazione” non erano definiti ma presentava un andamento dinamico in cui erano sempre presenti diverse zone fra loro “caoticamente” “mischiate”. (Frattale) Come si può vedere il piano si divide in tre zone,ed ogni punto del piano tende alla soluzione più vicina; se invece il punto “z” giace sulla linea di confine diventa caotico poter determinare verso quale soluzione tenderà l’interazione.Il colore è riferito al numero delle interazioni. Questi tipi di frattale furono tra i primi ad essere esplorati negli anni ’80 con dei supercomputer in grado di restituire immagini bianche/nere ed analizzati da pionieri come Mandelbrot, Hubbard, Barnsley e seguiti da molti altri.

47 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1671. Poligono di Newton mmmmmmmmmmmmmmmmmmmmmmmmmmmmm La prima versione dell’algoritmo per ottenere le soluzioni algebriche di un’equazione algebrica P(x,y)=0. bkxk y = K>0 aijxiyj P(x,y) = i,j Y6 – 5xy5 + (x3/a)y4 – 7a2x2y2 + 6a3x3 + b2x4 = 0 A B C x y x2 y2 x3 y3 x4 y4 xy x2y xy2 x3y x4y xy3 xy4 x2y2 x2y3 x2y4 x3y2 x3y3 x3y4 x4y3 x4y2 x4y4 B C * A E D Newton scrive Method of Fluxions and Infinite Series fra il 1664 e il Adattando il suo metodo numerico per la risoluzione di equazioni, Newton ottiene anche soluzioni algebriche di equazioni, attraverso successive approssimazioni che in questo caso sono rappresentate da polinomi in x di grado crescente. Y6 – 7a2x2y2 + 6a3x3  v6 - 7v2 + 6 = 0 y = v ax...

48 Risoluzione di Equazioni per Approssimazioni Successive
mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Approximation, (in Mathematics) is an operation by which one approaches ever more closely to the value of a required quantity, without however ever finding the exact value d’Alembert -The Encyclopédie Metodi per l’estrazione delle radici quadrate, (Metodi di Heron e Theon di Alexandria, Ibn al-Banna); Metodi numerici per la risoluzione di equazioni (Al-Tusi, Viète); Nel campo dell’astronomia al-Kashi usa questo processo per calcolare il valore di sen 1o, e Keplero per risolvere la sua equazione trascendentale; Metodi di Bernoulli delle Serie Ricorrenti (Euler) e di Lagrange delle frazioni successive; Le tecniche di Ruffini, Budan e Horner per la trasformazione delle equazioni polinomiali.

49 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Heron di Alexandria mmmmmmmmmmmmmmmmmmmmmmmmmmmmm I° sec. a.c. Come i Babilonesi ( a.c.). hanno ottenuto questa formula? VAT 6598 – (6) Valore Standard Heron è stato il primo a proporre un algoritmo iterativo di approssimazione (Metrica, Schone ). .. = ? = 26*5/6 = 1 A ( a + ) + /2 2 a

50 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Theon di Alexandria mmmmmmmmmmmmmmmmmmmmmmmmmmmmm 370 a.c. Theon propone una versione geometrica di questo algoritmo iterativo (Commentary on Ptolemy’s Syntaxis). 2 A – a2 2a x = ( a + x ) = r A 4500 = 67°4’ 55” A – a2 2a r = a + I G F E D C B A J H a ax Theon propone questo particolare esempio contenuto negli scritti di Ptolemy il quale fornisce la lunghezza del lato di un quadrato di area pari a 4500, ma senza fornire alcuna spiegazione. x ax x2

51 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
13°secolo Ibn al-Banna mmmmmmmmmmmmmmmmmmmmmmmmmmmmm L’algoritmo binomiale, si basa sull’espansione di (a+x)2, e parte dalla formula x2+2ax=A-a2 per trovare un valore di x tale che x(x+2a) si avvicini a A-a2. Le prime tracce di questa procedura si trovano nel capitolo 4 di Jiuzhanh Suanshu (3° secolo – Liu Hui); nel 13° secolo viene descritto da Ibn al-Banna; è stato insegnato nelle scuole fino al 1960. nr nr nr Primo passo: N (A – a2)102 + C a 4 c(c + 80) < 295 Questo algoritmo ha avuto una grande diffusione nel 13° secolo: praticamente compariva in tutti i libri di aritmetica del Medio Evo senza alcun riguardo del contesto culturale. L’ algoritmo binomiale medievale, è anche conosciuto come “radice, non radice”. E in effetti, Ibn al-Banna inizia accoppiando le cifre, da destra a sinistra, (per noi da sinistra a destra), ed etichettandole come “radice” ®, “non radice” (n). Bisogna immaginare di sviluppare questi calcoli all’interno di una griglia. La radice quadrata viene calcolata, cifra per cifra. c = 3 Secondo passo: N (A – a2)102 + C a 43 3(3 + 80) < 295 c(c + 860) < 4674 c = 5 435

52 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Al-Tusi mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Il principio che è alla base di questo algoritmo (Treatise on Equations) è di utilizzare una tabella per trovare la radice dell’equazione, una cifra alla volta. 3 3 x0 N N1 3 4 b b1 4 a 4 4 a X3 + 12x x = Questa opera di Al-Tusi (che si può ritenere un completamento ed estensione del lavoro di al-Khayyam), contiene la trattazione più accurata e approfondita sulla teoria delle equazioni cubiche di tutti i testi matematici conosciuti del periodo medievale. x1 a b2 N2 4 2 3 x1 a b2 N2 4 2 3

53 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Viète 1600. mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Un metodo generale per trovare le soluzioni positive delle equazioni, dal secondo grado al sesto grado (On the solution of numerical powers). - 6000s - - 300s2 2 4 3 8 - 5s3 5 + 47 9 1 +500 + 5 + 5. (20)4 + 8 4 8 + 10. (20)3 + 10. (20)2 s 1 6 - 3 7 2 9 +(20)5 +32 +31 + 500 x 20 + - 1 5 4 7 - 5 x (20)3 79 47 3 x5 – 5x x = Problema XV Passo 1 – Inizializzazione ordine di grandezza della radice e la sua prima approssimazione  x = 20 + s (20+s)5 – 5(20+s) (20+s) = 5(20)4s + 10(20)3s2 + 10(20)2s s4 + s5 – 5.3.(20)2s – s2 – 5s s = P(s) = 5(20)4 + 10(20)3s + 10(20)2s s3 – 5.3.(20)2 – s – 5s s5 + sP(s) = s + 2 s2 + 32 + 12 6 8 +4 000s3 + 100s4 + s5 + 1 2 4 + 47 + 500s 5 L’opera di Viète è molto difficile da comprendere (linguaggio arcaico, simbolismo non chiaro o assente, molto sintetico,…) e anche molto ambiziosa: utilizza 40 esempi per descrivere questo Metodo Generale. - 5.3.(20)2 - 6 - 5.3.(20) 3 5 - 5 sP(1) < sP(s) < s5 + sP(s) = s < /P(1)

54 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Al-Kashi e il Sen 1° mmmmmmmmmmmmmmmmmmmmmmmmmmmmm 1400. Il matematico e astronomo Al-Kashi descrive un algoritmo che gli consente di determinare il Sen 1°, a partire dal Sen 3° (3;8,24,33,59,34,28,15), con notevole precisione (60-7). Sen 3a = 3 Sen a -4 Sen3 a x= Sen 1° 3x = 4 x3 /602 + Sen 3° P = 47,6;8,29,53,37,3,45 qx = x3 + p q = 45,0 Si deve considerare che gli Astronomi hanno sempre avuto bisogno di tabelle trigonometriche molto precise. Il lavoro originario di Al-Kashi, Epistle of the chord and the sine, non è mai stato trovato. L’algoritmo, infatti viene descritto in un commentario sulle tabelle astronomiche scritto dal nipote Miram Shalabi nel 1500. La velocità del processo di convergenza è notevole. Al-Kashi calcola Sin 1° usando dieci approssimazioni successive xk iniziando con x0 = 1, usando la relazione xk+1 = f(xk) dove f(x) = (p+x3)/q. Sen 1° = 1;2,49,43,11,14,44,16,26,17 ovvero 0,

55 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Equazione di Keplero mmmmmmmmmmmmmmmmmmmmmmmmmmmmm 250 ac. x = t – e.sen x Keplero risolve questa equazione con approssimazioni successive definite da: xn = F(xn-1) dove f(x) = t – e.Sen x Epitomes astronomiae Copernicanae Per produrre nuove tabelle astronomiche , Keplero deve risolvere questa equazione per diversi valori di t. Se un pianeta P è in movimento attorno al Sole, il quale per la prima legge occupa uno dei due fuochi F della sua orbita ellittica, possiamo immaginare il segmento che congiunge il pianeta con il Sole (PF) percorrere un’area dell’ellisse. La seconda legge afferma che due aree coperte da questo segmento in due periodi di tempo uguali, sono equivalenti. Affinché questo si verifichi il pianeta deve muoversi più rapidamente quando è più vicino al Sole e più lentamente quando è lontano. 

56 Algoritmi in Aritmetica
mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Gli algoritmi di Eratostene e Pascal sono utilizzati per determinare i numeri primi. Non è semplice trovare algoritmi efficienti per testare numeri molto grandi. Il problema di distinguere i numeri primi dai numeri composti, e la decomposizione di questi ultimi in fattori primi, è il più importante e il più utile di tutta l’Aritmetica […]. La dignità di questa scienza esige che noi cerchiamo con tutti i mezzi di risolvere un problema così famoso ed elegante Gauss Disquisitiones Arithmeticae, 1801 I tests di Lucas e Lehmer e Pépin. I primi due derivano dal teorema inverso del teorema di Fermat e richiedono la fattorizzazione di N+1 o N-1 per determinare se N è un numero primo. Tre algoritmi di fattorizzazione: Fermat (lineare ma efficace solo in alcuni casi particolari); Gauss e Legendre (più complessi ma di più ampia applicazione), utilizzano residui quadratici e frazioni continue. L’algoritmo relativo all’equazione Diophantina di Pell-Fermat, dal quale si sviluppa la ricerca e le soluzioni di Lagrange. La ricerca di algoritmi sempre più efficienti in quest’area deriva anche dal loro utilizzo nella scienza della crittografia, chiave pubblica. Quando N è molto grande, si sviluppano grandi quantità di calcoli… Quando N è molto grande questa operazione diventa anche più faticosa di quella della “primalità”. Nel 1978, tre matematici americani Rivest, Shamir e Adleman inventarono un metodo per crittare messaggi che utilizzava una chiave pubblica basata sui numeri primi.

57 Il Crivello di Eratostene
mmmmmmmmmmmmmmmmmmmmmmmmmmmmm 250 ac. Consente di determinare tutti i numeri primi inferiori ad un numero N prefissato (Nichomachus di Gerasa). * multipli di tre (2) * multipli di sette (6) N = 39 = 6 * multipli di cinque (4) * * * * * * * * * * * forma compatta Questo algoritmo viene illustrato da Nichomachus of Gerasa nella sua Introductio Arithmeticae. Eratostene fu il primo geografo di Alexandria, e gli viene attribuita la misura del raggio della Terra. Fibonacci nel suo Liber Abaci del 1202 costruisce questa tabella per N = 97, e anche altri matematici hanno costruito queste tabelle per valori sempre più grandi di N, perfezionando il metodo di Eratostene. Ma a cosa servono queste tabelle? Servono per esempio a studiare la distribuzione dei numeri primi.

58 Criterio di Divisibilità - Pascal
mmmmmmmmmmmmmmmmmmmmmmmmmmmmm 1654. Consente di saper se un numero è divisibile per un altro numero senza eseguire la divisione. Blaise Pascal raccoglie tutti i criteri prodotti e fornisce un criterio generale. Divisibilità per 7: utilizzo i resti delle divisioni delle differenti potenze di 10. Molti di questi criteri sono stati prodotti negli anni da molti matematici e amatori dei numeri, e tutti si rifanno al criterio generale definito da Pascal. = 119 La Teoria delle Congruenze ha origine direttamente da questo algoritmo di Pascal.

59 Residui Quadratici - Legendre
mmmmmmmmmmmmmmmmmmmmmmmmmmmmm 1798. Legendre, in Théorie des nombres (1798), fornisce un algoritmo per testare se a è un residuo quadratico modulo p, Questo algoritmo si basa sulla legge della reciprocità quadratica (Eulero, 1783). x2 a (mod p). p q = p e q numeri dispari che non sono entrambi della forma 4n + 3 altrimenti - = (-1) (p-1)(q-1)/4 p q sta per il resto della divisione di a(p-1)/2 per p. a è un residuo quadratico modulo p se a p = 1 601 1013 - 17 1 = -1 = Il concetto dei residui quadratici è un concetto fondamentale nella teoria dei numeri. Molte sono le sue applicazioni, per esempio nei tests riguardanti i numeri primi (Lucas e Pépin) e negli algoritmi sulla fattorizzazione (Metodo di Gauss). Come faccio a sapere se a è un residuo quadratico modulo p? (Legendre). La dimostrazione fornita da Legendre di questo algoritmo è incompleta. Per una dimostrazione rigorosa di questo algoritmo, bisogna aspettare Gauss nel 1801. 1013 non è un residuo quadratico di 601 se a= mc + r c a r = ab c = a b

60 Teorema Inverso di Fermat
mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Teorema Inverso di Fermat 1640. Il piccolo teorema di Fermat: se a e p sono due numeri interi primi, allora se p è primo, ap-1 1 (mod p). (es:13) Questo teorema non consente di stabilire se un numero è primo, infatti il teorema inverso di Fermat è falso. Esempio a= 2 N = 341 numero pseudo primo Per avere un test deterministico sui numeri primi, è necessaria una condizione supplementare che consente di affermare che N è un numero primo (Tests di Lehmer, 1927; Tests di Lucas, 1876). Questo teorema fu annunciato da Fermat in una sua lettera del 1640 a Frénicle de Bessy. Per una dimostrazione di questo teorema bisogna aspettare Eulero nel 1786. Lehmer ebbe la possibilità di testare la sua nuova versione del Teorema inverso di Fermat nel 1949 sul primo calcolatore elettronico, l’ ENIAC.

61 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1877. Test di Pepin Il teorema di Pepin fornisce un algoritmo per testare se un numero di Fermat è un numero primo. Fermat sosteneva che tutti i numeri in questa forma erano numeri primi (lettera a Carcavi del 1659). Fn = 22n + 1 1729. Goldbach attira l’attenzione di Eulero sulle affermazioni di Fermat 1732. Goldbach dimostra che F5 non è primo 1877. Pèpin propone un semplice test. Nel 1877 Lucas afferma che occorrono 30 ore di calcoli per testare se F6 è primo. Il più grande numero esaminato con il test di Pèpin è F22. J.-F.T.Pèpin Sur la formule 22n + 1, Comptes rendus de l’Acadèmie des Sciences de Paris, 84 (Luglio,Dicembre 1877) L’introduzione dei computer ha dimostrato il valore del teorema di Pèpin per testare se i numeri di Fermat più grandi sono numeri primi. Condizione necessaria e sufficiente affinchè il numero an = 22n + 1 sia primo, per n > 1, è che il numero 5(an-1)/2+1 sia divisibile per an.

62 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Algoritmi di Fattorizzazione mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Un algoritmo di fattorizzazione richiede molti passi in più di un algoritmo per la primalità. Knuth, in The Art of Computer Programming, afferma che la fattorizzazione è più difficile di trovare il MCD tra due numeri. Gauss, in Disquisitiones Arithmeticae (1801), ha proposto due metodi di fattorizzazione, ma egli suggerisce di provare a dividere il numero dato per i più piccoli numeri primi (2, 3, 5, 7, …19) per evitare di utilizzare metodi sottili e artificiali. Dello stesso avviso è Riesel in Prime numbers and computer methods for factorisation (1985).

63 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Algoritmi di Fattorizzazione mmmmmmmmmmmmmmmmmmmmmmmmmmmmm La maggioranza degli algoritmi in uso è basata sui metodi dovuti a Fermat, Gauss e Legendre. In particolare l’idea di Legendre è stata ripresa nel XX° secolo per realizzare algoritmi ad alte performance. Nel 1975 Pomerance ha costruito un algoritmo basato su metodi statistici. Esistono, quindi, molti algoritmi di fattorizzazione, ma sono costosi. Miglioramenti degli algoritmi sono giudicati in base alla loro complessità.

64 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1643. Fattorizzazione per differenza di due quadrati Nel 1643 Père Mersenne pone a Fermat la sfida di fattorizzare il numero La sua risposta fornisce un metodo sistematico per fattorizzare un numero. Il punto di partenza fu di tentare di scrivere il numero N sotto forma di differenza di due quadrati: N=x2-y2=(x+y)(x-y) Il numero x è sicuramente maggiore della radice quadrata dell’intero N. E’ sufficiente, quindi, testare uno ad uno i numeri x maggiori di quella radice quadrata per determinare se la differenza x2-N è, o no, un quadrato.

65 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1643. Fattorizzazione per differenza di due quadrati Fermat fornisce un algoritmo molto semplice per svolgere con successo tutti calcoli. Tuttavia il metodo di Fermat richiede una grande quantità di calcoli. I suoi successori hanno cercato di trovare altri modi di scrivere N come differenza di due quadrati. 1805. Kausler 1840. Collins 1911. Kraitchick 1974. Sherman Lerman riprende il metodo di Fermat. La sua idea è di eliminare i casi sfavorevoli (N ha fattori primi piccoli).

66 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1801. Fattorizzazione per quadrati residui Nel 1801 Carl Frederich Gauss, in Disquisitiones Arithmeticae propone due nuovi metodi di fattorizzazione. Il primo dei due è basato sulla ricerca dei più piccoli quadrati residui del numero da fattorizzare. a è un quadrato residuo di N se esiste un x tale che x2 a(modN) Il metodo usato da Gauss è un metodo per esclusione. Utilizzando i quadrati residui è possibile escludere molti fattori primi di N.

67 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1931. Fattorizzazione per frazioni continue L’idea di utilizzare l’espansione di frazioni continue della radice quadrata di N era stata proposta da Legendre, come osservazione, nella Thèorie des nombres, nel 1798. Ripresa da molti matematici, raggiunge il posto d’onore in un articolo del 1931 di D.H.Lehmer e R.E.Powers: On factorising Large Number, Bulletin of the American Mathematical Society. Con l’avvento dei computer l’algoritmo ha attirato notevoli interessi, nei venti anni successivi sono stati fatti miglioramenti per produrre algoritmi molto potenti.

68 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1657.L’Equazione Pell-Fermat mmmmmmmmmmmmmmmmmmmmmmmmmmmmm x2 – ay2 = 1 ay2 + 1 = x2 dove a è un intero non quadrato. 6° secolo. Brahmagupta 12° secolo. Bhaskara 1657. Fermat pone la sfida ad altri matematici di dimostrare che questa equazione possiede sempre un numero infinito di soluzioni. La dimostrazione che Fermat affermava di avere non è mai stata trovata. 1766. Lagrange da la prima dimostrazione. Egli ha pensato che la soluzione al problema di Fermat era la chiave per risolvere tutti i problemi di questo tipo. 1798. Legendre utilizza il metodo di Lagrange per dare le condizioni per la risolvibilità di equazioni Diofantine quadratiche.

69 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
250. L’Aritmetica di Diophantus I libri dell’ Arithmetica di Diophantus (AD 250) sono proposti sotto forma di una serie di problemi risolti. Nel risolvere i problemi, Diophantus tratta circa 40 equazioni della forma ay2+by+c=x2. In particolare in un lemma offre una famiglia di problemi che hanno soluzioni infinite. Questo lemma fornisce un metodo per risolvere alcune equazioni di Pell-Fermat. Diophantus of Alexandria – The Arithmetica, Book VI – Les six Livres d’Aritmetiques et le Livre des nombres polygones, Paris: Blanchard, 1959

70 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Il risultato di Lagrange Il lavoro fatto da Lagrange sulle equazioni Pell-Fermat fu pubblicato in una memoria del Egli dimostra tre risultati principali con tutto il rigore e la generalità possibile: Ogni equazione Pell ha una soluzione con i mezzi per trovarla. Trovata una soluzione è possibile trovarne infinite Tutte le soluzioni possono essere trovate dall’espansione di radici continuate della radice quadrata di a con un algoritmo per trovarle.

71 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Sistemi di Equazioni Lineari mmmmmmmmmmmmmmmmmmmmmmmmmmmmm … l’eliminazione è la parte più difficile e lunga del lavoro, così tanto che si è riluttanti a desiderare che la scienza possa scoprire i mezzi per fare ciò che potrebbe essere utile come l’invenzione dei logaritmi lo è stato per le moltiplicazioni…. Christian Ludwig Gerling Die Ausgleichung-Rechungen, 1843 La soluzione ad alcuni antichi problemi può essere considerata, oggi, come la soluzione di sistemi di equazioni lineari. Abbiamo incontrato tali problemi con i matematici Babilonesi ed Egiziani, con i matematici indiani nel Medio Evo, nei paesi islamici e in Europa. E’ solo verso la fine del 17° secolo che appaiono sistemi di equazioni lineari con coefficienti letterali. Anche Leibniz utilizza doppia indicizzazione.

72 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Sistemi di Equazioni Lineari mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Nel 1730 Maclaurin calcola la soluzione di sistemi di due e tre equazioni e fornisce le formule per induzione per la soluzione di 4 equazioni. Nel 1750 Cramer fornisce le formule generali (regola di Cramer) per qualsiasi numero di equazioni, anche se non offre una dimostrazione. L’astronomia e la geologia richiedono la soluzione di sistemi con un gran numero di equazioni, e il numero di operazioni necessarie per la loro soluzione cresce rapidamente. I metodi successivi cercano di ridurre il numero di operazioni (metodo pivot di Gauss) o di fornire soluzioni per approssimazioni successive (metodo dei Minimi Quadrati). Nel 19° secolo sono stati sviluppati metodi iterativi.

73 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1750. Regola di Cramer mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Cramer fornisce le formule per dare soluzioni per un sistema di n equazioni, per qualsiasi n. Tali formule sono ottenute per induzione dai casi particolari di n=1,2 e 3. Le soluzioni sono date sotto forma di un quoziente di due polinomi omogenei di grado n. Ulteriori lavori sulle formule danno origine alla teoria dei determinanti. 1815. Cauchy ha dato la prima dimostrazione della regola di Cramer, stabilendo l’attuale notazione e cominciando uno studio sistematico dei determinanti. 1850. Sylvester ha introdotto il termine matrice. Cramer, nell’ “Introduction à l’analyse des lignes courbes algèbriques, Geneva, 1750” tratta formule di questo tipo. La sua notazione, che era migliore di quella di Maclaurin, comunque non era buona come quella di Leibniz. La notazione usata da Leibniz, poco conosciuta perché non è stata pubblicata, anticipa la notazione con gli indici. In un manoscritto del 1678, Leibniz considera un sistema generale di 4 equazioni lineari in 4 incognite. In questo stesso manoscritto Leibniz da la regola di Cramer 75 anni prima dello stesso Cramer. Questo testo è stato scoperto più tardi e cosi non ha avuto nessuna influenza sullo sviluppo dei metodi per risolvere sistemi di equazioni lineari.

74 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1805. Metodo dei minimi quadrati mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Il metodo consiste nel sostituire un sistema di n equazioni iniziali con un sistema di sole k equazioni (k incognite). Il metodo, descritto da Legendre nel 1805, è stato usato da Gauss almeno dal 1801 per determinare l’orbita del pianeta Ceres. Legendre spiega il suo metodo in un appendice di “Nouvelle Mèthodes pour la Dètermination des Orbites des Comètes”. Nel 1809 Gauss giustifica il suo metodo e nel 1821 dimostra che la sua scelta di combinazioni lineari corrisponde a quella con minore probabilità di errore, in accordo con Seidel.

75 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1810. Il metodo pivot di Gauss mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Nel 1807, C.F.Gauss diventa direttore dell’osservatorio astronomico di Gottingen. Egli si propone di determinare l’orbita precisa del pianeta Pallas e spiega il suo approccio in una memoria datata 1810. Gauss riutilizza il metodo dei minimi quadrati utilizzando un’altra somma di quadrati, in modo tale che ad ogni passo scompaia un’incognita (eliminazione Gaussiana). Così arriva ad un sistema triangolare di equazioni. Disquisitio de Elementis Ellipticis Palladis ex oppositionibus annorum 1803, 1804, 1805, 1807, 1808, Memoria presentata il 25 Novembre 1810, alla Royal Society of Sciences, Gottingen. Uno dei più notevoli metodi cinesi (fangcheng) è di ridurre la matrice del sistema in forma triangolare e quindi di calcolare le incognite per successive sostituzioni.

76 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1823. Metodo Iterativo di Gauss mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Gauss, in una lettera a Gerling, nel 1823, spiega l’idea base sul metodo conosciuto come metodo Gauss-Seidel. Egli parla di un metodo “indiretto” per risolvere il sistema di equazioni derivante da misurazioni della superficie della terra. 16°sec. Tycho-Brahe mappa della superficie della terra 17°sec. Picard misura l’arco del meridiano nei dintorni di Parigi per fissare il valore del raggio della Terra 18°sec. Spedizioni in Lapponia e in Peru per determinare l’estensione dell’appiattimento della Terra In tutti i casi erano usate triangolazioni e il risultato ottenuto con il metodo dei minimi quadrati. Dal 1820 al 1825 Gauss si occupa di un lavoro sulla triangolazione di Hanover. Il sistema di equazioni da risolvere diventò enorme per cui Gauss propose metodi iterativi per velocizzare i calcoli.

77 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1845. Metodo di Jacobi mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Carl Gustav Jacobi aveva necessità di trattare con sistemi lineari di equazioni quando considerava sistemi fisici soggetti a piccole oscillazioni. Egli descrive un metodo iterativo valido quando i coefficienti della diagonale sono in preponderanza. In caso contrario egli usa la rotazione degli assi, in modo da eliminare i coefficienti più grandi che non sono sulla diagonale.

78 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1874. Metodo di Seidel mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Ludwig Seidel, alunno di Jacobi, ha effettuato una gran quantità di calcoli per lui. In particolare doveva risolvere un sistema di equazioni con 72 incognite per uno studio sulla luminosità delle stelle. Seidel ha proposto una tecnica iterativa per trovare la soluzione ad un sistema di equazioni. La sua ispirazione viene dall’idea di Jacobi di approssimazioni successive e dal metodo “pivot” di Gauss.

79 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1885. Nekrasov mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Alexander Ivanovich Nekrasov esamina il metodo di Seidel dietro richiesta dell’astronomo Tzeraki. In un articolo del 1885, egli solleva la questione della velocità di convergenza. Dopo aver fornito esempi in cui la convergenza è molto lenta, Nekrasov dimostra che la scelta ottimale indicata da Seidel non accresce significativamente la velocità di convergenza.

80 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1923. Metodo di Cholesky mmmmmmmmmmmmmmmmmmmmmmmmmmmmm “Il comandante di artiglieria Cholesky, dell’ Army Geographic Service, morto durante la grande guerra, durante le sue ricerche sulle correzioni delle curve terrestri, ha concepito una procedura molto ingegnosa per la soluzione delle cosidette equazioni normali, ottenuta con l’applicazione del metodo dei minimi quadrati ad equazioni lineari in numero minore del numero delle incognite. Da ciò aveva derivato un metodo generale per la soluzione di equazioni lineari.” (Commandant Benoit) In contrasto ai metodi iterativi la tecnica di Cholesky porta, come una regola, ad una soluzione esatta. Commandant Benoit. Note sur une methode de rèsolution des equations normales provenant de l’application de la mèthode des moindres carrès à un système d’èquations linèaires en nombre inferieur à celui des inconnues, (Procèdè du Commandant Cholesky), Bulletin geodesique, 2 (1923) Il metodo del comandante Cholesky consiste nel confrontare le equazioni con altre equazioni derivate da un sistema di equazioni lineari già risolto.

81 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Tavole e Interpolazione mmmmmmmmmmmmmmmmmmmmmmmmmmmmm La teoria dell’interpolazione….. la scienza di leggere tra le linee di una tavola matematica. E.T.Whittaker The Calculus of observations La costruzione di tavole è di fondamentale importanza per facilitare i calcoli e per evitare di ripetere le stesse operazioni molte volte. Tavole per calcolare inverso (Babilonesi) Tavole trigonometriche Tavole delle corde (Tolomeo – 2° secolo) Tavole decimali (Briggs – 17° secolo) Quello che accade generalmente è che, dopo un certo numero di valori calcolati, gli altri valori sono ottenuti come interpolazione dai valori calcolati precedentemente. Per uso scientifico il termine interpolazione compare al principio del 19° secolo ed indica il processo di inserire valori intermedi tra termini noti di una sequenza. Il valore di una funzione ottenuta per interpolazione è quasi sempre un’approssimazione al suo valore reale. Formule d’interpolazione di Gregory-Newton Formule d’interpolazione polinomiale di Newton e Lagrange Funzioni d’interpolazione (Cauchy) Algoritmo di Neville – Algoritmo CORDIC

82 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
150 AD. Tavole delle Corde di Tolomeo mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Tolomeo ha scritto Mathematical Syntaxis nel 150 AD, detto Almagest (dall’arabo “il più grande”), considerato il lavoro di riferimento per l’astronomia. Tolomeo ha spiegato come costruire una tavola delle lunghezze delle corde di un cerchio in funzione dei valori degli archi corrispondenti. Sono le più antiche tavole note di questo tipo, anche se Ipparco (2°sec A.C.) e Menelao (1°sec A.C.) hanno usato tavole di questo tipo. La costruzione delle tavole di Tolomeo richiede una teoria di trigonometria piana che è presentata nell’Almagest.

83 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1624. Briggs e i logaritmi decimali mmmmmmmmmmmmmmmmmmmmmmmmmmmmm The word algorithm itself is quite interesting: at first glance it may look as though someone intended to write logarithm but jumbled up the first four letters . Donald D.Knuth The Art of Computer Programming (vol.I,p.1) Nel 1614 Napier pubblica una tavola di logaritmi ottenuta per successive estrazioni di radici quadrate nel suo Mirifici logarithmorum canonis Descriptio. Queste tavole ebbero grande successo e furono pubblicate molte altre versioni. Henry Briggs pubblica Logarithmorum Chilias Prima nel 1617, ma il suo lavoro più importante fu Arithmetica Logarithmica nel Questi nuovi logaritmi differiscono da quelli di Napier perché utilizzano 0 e 1 per i logaritmi di 1 e 10 e quindi sono logaritmi decimali.

84 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1670. La formula Gregory-Newton mmmmmmmmmmmmmmmmmmmmmmmmmmmmm L’interpolazione lineare non è sempre sufficientemente accurata per ottenere valori intermedi buoni. Per questo i matematici sviluppano processi più rifiniti attraverso l’utilizzo di differenze finite. Gregory e Newton hanno scoperto la formula indipendentemente. Il primo ne parla in una lettera a Collins nel Il secondo in una lettera a John Smith datata 8 maggio 1675.

85 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1687. Interpolazione polinomiale di Newton mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Isaac Newton è stato il matematico che ha dato il maggior contributo alla teoria dell’interpolazione e delle differenze finite. 1675 – lettera a John Smith (8 maggio) 1676 – Methodus Differentialis (apparso nel 1711) 1676 – lettera ad Oldenburg (24 ottobre) 1687 – Philosophiae naturalis principia mathematica Lemma V. Trovare una linea curva di tipo parabolico che passa attraverso un dato numero di punti.

86 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1795. Interpolazione polinomiale di Lagrange mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Lagrange affronta il problema, trattato precedentemente da Newton, di utilizzare una curva parabolica per interpolare una curva, ossia interpolare una funzione per mezzo di una funzione polinomiale. Egli è motivato da un problema pratico di sopravvivenza: Da un punto la cui posizione è sconosciuta, sono osservati tre oggetti le cui distanze relative sono note e i tre angoli formati dai raggi visuali dall’occhio dell’osservatore a questi tre sono stati determinati. Vogliamo trovare la posizione dell’osservatore rispetto a questi stessi oggetti. J.L.Lagrange – From Leçons èlèmentaires de mathèmatiques donnès à l’Ecole Normale en 1795, Journal de l’Ecole Polytecniques, VII et VIII cahiers 1877

87 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1795. Interpolazione polinomiale di Lagrange mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Lagrange propone una soluzione tramite tentativi ed errori, questo porta ad una curva degli errori attraverso un numero finito di punti, i punti corrispondono ai tentativi. Infine, per risolvere il problema la curva deve essere approssimata da una polinomiale. Questa interpolazione polinomiale di Lagrange, non è diversa dalla polinomiale di Newton, ma espressa in modo differente. Gli elementi della base di Lagrange sono così definiti: è il polinomio interpolante. J.L.Lagrange – From Leçons èlèmentaires de mathèmatiques donnès à l’Ecole Normale en 1795, Journal de l’Ecole Polytecniques, VII et VIII cahiers 1877

88 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1840. Limite superiore di errore (Cauchy) mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Se vogliamo che il valore interpolato sia una buona approssimazione del valore esatto, dobbiamo determinare un limite superiore per l’errore. Cauchy ha fornito delle formule per calcolare tale limite. A.L.Cauchy – Sur les fonctiones interpolaires. Comptes rendus de l’Academie des Sciences, vol.XI (16 November 1840),p.775. Oeuvres, series 1,vol. V,Paris: Gauthiers-Villars, 1885, pp

89 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1933. Algoritmo di Neville mmmmmmmmmmmmmmmmmmmmmmmmmmmmm L’interpolazione polinomiale di Lagrange è inadatta a un calcolo iterativo che va da n a n+1 punti. E.H.Neville propone una procedura per rimediare a questo inconveniente. Funzioni polinomiali e razionali comportano grandi quantità di moltiplicazioni e divisioni con notevole costo in termini di spazio e tempo. Nel 1959, J.Volder ha proposto un metodo per calcolare funzioni trigonometriche che utilizza solo addizioni, sottrazioni e shift. L’algoritmo CORDIC (Coordinate Rotations on a Digital Computer) ha rivoluzionato il calcolo dei valori di funzioni con notevole risparmio di tempo e di spazio.

90 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Quadrature approssimate mmmmmmmmmmmmmmmmmmmmmmmmmmmmm L’origine del significato di quadratura è di trovare un quadrato con la stessa area di una data figura geometrica (quadratura del cerchio). Si tratta di stabilire un rapporto tra due figure piane. I geometri greci utilizzavano un metodo esaustivo (Archimede). Lo stesso utilizzato nel 9° secolo dai matematici Arabi Banu Musa, Thabit ibn Qurra, Ibrahim ibn Sinan e nel 10° secolo da Ibn al-Haytham e al-Mutaman.

91 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Quadrature approssimate mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Nel 17° secolo è stato introdotto il metodo degli indivisibili. Nel 1639 Cavalieri ha usato un metodo noto come metodo di Simpson. Alla fine del 17° secolo l’invenzione di Newton e Leibniz del calcolo infinitesimale fornisce un algoritmo per il calcolo esatto di un’area sotto una curva. Nel 17° secolo altre formule per le aree sono state date da Gregory, Newton, Cotes e Stirling. Nel 18° secolo Gauss da una nuova formula di quadratura. Il russo Chebyshev determina una scelta di punti per le formule di Newton-Cotes o di Gauss per evitare che si generino errori significativi.

92 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1670. Formula di Gregory mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Nel 1670 James Gregory, professore di matematica a St.Andrews e membro della Royal Society di Londra, scrive a James Collins, Segretario della Società. La lettera descrive il suo lavoro, confronta il suo lavoro con quello dei contemporanei (Newton, Barrow, Briggs, Mercator, Keplero, …) ma non contiene dimostrazione dei risultati perché queste erano considerate lunghe e tediose. Gregory si interessava di sviluppo in serie di funzioni e la loro applicazione a problemi geometrici come la rettificazione di curve.

93 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1711. Regola di Newton tre-otto mmmmmmmmmmmmmmmmmmmmmmmmmmmmm 1669 De Analysi per Aequationes Numero Terminorum Infinitas 1687 Principia 1711 Methodus Differentialis Se ci sono quattro ordinate posizionate ad intervalli uguali, sia A la somma della prima e della quarta, B la somma della seconda e terza, ed R l’intervallo tra la prima e la quarta, l’area totale tra la prima e la quarta sarà A+3B 8 R

94 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1722. Formule Newton-Cotes mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Sebbene il trattato di Roger Cotes sul Metodo Differenziale di Newton (De Methodo Differentiali Newtoniana) fu pubblicato postumo nel 1722, esso probabilmente fu scritto nel L’autore dice, in un post-script, di aver composto il suo teorema nel 1707, prima del testo di Newton. Cotes da una spiegazione del metodo e fornisce le formule per le aree sotto curve per i casi da 3 a 11 punti equidistanti, il tutto senza il supporto di calcoli.

95 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1730. Formule Correzione di Stirling mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Il Treatise on the Summation and Interpolation of Infinite Series di James Stirling fu pubblicato nel Egli da le formule di Newton-Cotes, senza menzionare Cotes, e una Tavola di Correzioni da applicare alle approssimazioni. Stirling non da spiegazioni per i risultati, ma semplicemente una descrizione di come usare le tavole con alcuni esempi.

96 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1743. Regola di Simpson mmmmmmmmmmmmmmmmmmmmmmmmmmmmm La formula nota come Regola di Simpson è la prima delle formule di Newton-Cotes. Il contributo di Simpson fu solo di fornire una dimostrazione geometrica del risultato. La sua idea fu di dividere l’intervallo in considerazione in parti uguali, sufficientemente piccole perchè una parabola possa essere una buona approssimazione al grado di accuratezza richiesto, ed applicare la prima formula ad ognuna di queste sezioni (metodo composto). T.Simpson – Of the Areas of Curves, &c. by Approximation, in Mathematical dissertations on a variety of physical and analytical subjects, London, 1743 L’idea di dividere l’intervallo in parti uguali fu usata nello stesso periodo da Maclaurin.

97 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1816. Formule di Quadratura di Gauss mmmmmmmmmmmmmmmmmmmmmmmmmmmmm In una comunicazione alla Gottingen Society del 1816, Gauss, partendo dalle formule di Cotes, da una valutazione dell’errore relativamente al metodo. Fornisce, così, una formula che ottimizza l’approssimazione. L’articolo di Gauss non è semplice da leggere. Jacobi fornisce un approccio più semplice in un articolo del 1826.

98 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1874. La scelta di Chebyshev’s mmmmmmmmmmmmmmmmmmmmmmmmmmmmm In un articolo pubblicato nel 1874 nel Journal de Liouville, Chebyshev si propone di determinare una nuova formula di quadratura in cui ognuno dei valori della funzione in punti particolari abbia lo stesso peso. Con la formula di Gauss c’è rischio di errore. Nel 1880 R.Radau ha pubblicato una sintesi delle formule di quadratura nel Journal de Liouville. In particolare ha definito il grado di precisione.

99 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Soluzioni approssimate di Equazioni Differenziali mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Il problema dei tre corpi ha molta importanza per l’astronomia, e allo stesso tempo è molto difficile, per cui tutti gli sforzi dei geometri sono stati per lungo tempo diretti verso di esso. Essendo un’ integrazione completa e rigorosa manifestamente impossibile, è stato fatto appello alle procedure di approssimazione. Henri Poincarè Les méthodes nouvelles de la Mécanique céleste, 1892, vol.I,p.1 I metodi di soluzioni approssimate, utilizzati da Eulero per la prima volta nel 18° secolo, sono stati perfezionati verso la fine del 19° secolo. I metodi delle differenze finite forniscono lo stimolo per ulteriori miglioramenti che portano ai lavori di Adams (metodo multi-step), Runge, Heun e Kutta (metodo one-step). L’uso di questi metodi, datati un centinaio di anni, oggi è molto esteso (dal 1950). Essi si adattano bene ad essere gestiti con i computer.

100 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1768. Metodo di Eulero mmmmmmmmmmmmmmmmmmmmmmmmmmmmm In un capitolo intitolato On the integration of differential equations by approximation del suo lavoro Institutionum Calculi Integralis del 1768, Eulero nota l’aspetto insoddisfacente dell’utilizzo delle serie e descrive il metodo noto come “metodo di Eulero”. equazione differenziale del primo ordine condizioni iniziali

101 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1835. Cauchy (Esistenza di una soluzione) mmmmmmmmmmmmmmmmmmmmmmmmmmmmm “A.L.Cauchy ha posto la teoria generale delle equazioni differenziali su una base indistruttibile” afferma Paul Painlevé in un articolo nella Encyclopédie des Sciences mathématiques. Infatti per primo, Cauchy ha posto e risolto il problema dell’esistenza di una soluzione di una equazione differenziale del primo ordine che soddisfa una condizione iniziale, fornendo due dimostrazioni del risultato. Il lavoro di Picard fornisce il completamento della teoria dell’esistenza di soluzioni. In una memoria del 1890 C.E.Picard da una terza dimostrazione di esistenza.

102 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1895. Metodo di Runge mmmmmmmmmmmmmmmmmmmmmmmmmmmmm C.Runge propone metodi per la soluzione di equazioni differenziali che offrano maggiore accuratezza. Riassumiamo i 3 metodi proposti da Runge. C.Runge Mathematische Annalen, vol.46 (1895)

103 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1900. Metodo di Heun mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Nell’articolo di Runge abbiamo visto che si può migliorare l’ordine di approssimazione dei metodi di soluzione considerando combinazioni di approssimazioni. Nel 1900 Karl Heun sistematizza questa possibilità. Egli prende ispirazione dal metodo delle quadrature di Gauss. Heun, successivamente, mostra la possibilità di gestire il caso di sistemi di equazioni. Inoltre il metodo di Heun fu usato per la prima integrazione di un sistema di equazioni differenziali da un calcolatore ENIAC. K.Heun Zeitschrift fur Mathematic und Physik, vol.45 (1900)

104 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1901. Metodo di Kutta mmmmmmmmmmmmmmmmmmmmmmmmmmmmm M.W.Kutta ha proposto nel 1901, un modo di perfezionare le formule di Heun. Non è semplice fare una distinzione tra i metodi di Heun, Kutta e Runge. Più che una progressione nel tempo ogni autore, raffinando i metodi, si riferisce al lavoro di un predecessore. M.W.Kutta Zeitschrift fur Mathematic und Physik, vol.46 (1901)

105 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1883. John Adams (differenze finite) mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Nel 1883 Adams, analogamente alle quadrature approssimate, ha proposto di utilizzare le differenze finite (Gregory). Adams ha proposto due formule che forniscono valori sufficientemente accurati. Mentre i metodi di Runge, Heun e Kutta erano ispirati ai metodi di Eulero e Gauss di tradizione tedesca, i metodi multi-step presentati da Adams derivano dalle formule Gregory-Newton di tradizione inglese. E’ significativo notare, alla fine del 19° secolo, l’utilizzo di tali metodi da parte di Sheppard per migliorare le tavole numeriche e dell’astronomo Darwin per calcolare le orbite dei pianeti. J.C.Adams An attempt to test the theories of capillary action, Cambridge, 1883)

106 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Approssimazione di Funzioni mmmmmmmmmmmmmmmmmmmmmmmmmmmmm … per mostrare i difetti dei risultati che essi (i fisici) accettano senza domande, non è necessario estirpare funzioni mostruose come funzioni continue senza derivate; il fenomeno Runge mostra che la procedura di interpolazione polinomiale classica può sicuramente essere divergente per funzioni analitiche che sono eccellenti come desiderato. Jean Diedonné, Calcul Infinitésimal, 1968 L’idea di approssimare una funzione è stata già introdotta con l’interpolazione. Con l’interpolazione costruiamo una funzione che assume valori specifici per un numero finito di valori della variabile, con l’approssimazione, invece, cerchiamo una funzione che approssimi al meglio i valori di altre funzioni, per tutti i valori di un certo intervallo. Approssimazione Uniforme (Taylor, Lagrange, Chebyshev, Schoenberg) Approssimazione Quadratica Media (Fourier)

107 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1715. La formula di Taylor mmmmmmmmmmmmmmmmmmmmmmmmmmmmm La formula di Taylor era già nota a James Gregory (lettera a Collins del 15 febbraio 1671), ma fu pubblicata per la prima volta nel 1715 da Brook Taylor nel suo Methodus incrementorum directa et inversa. Pn(x) = f(x0)+f'(x0)(x-x0)+ 1/2!f''(x0)(x-x0)2+ 1/3!f'''(x0)(x-x0)3+ ....+ 1/n!f(n)(x0)(x-x0)n Le varie varianti della formula di Taylor producono approssimazioni polinomiali di funzioni, purchè siano sufficientemente differenziabili.

108 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1797. Il resto di Lagrange mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Joseph-Louis Lagrange ha pubblicato un lavoro didattico nel 1797, La Théorie des Fonctions analytiques, nel quale propone di porre i fondamenti del calcolo differenziale. Egli dimostra il teorema di Taylor e prevede un intervallo limitato per il resto nell’espansione di Taylor.

109 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1859. Polinomiale di Chebyshev’s mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Chebyshev affronta, nel 1854, il problema di ridurre a zero l’errore per una polinomiale di grado n e, nel 1859, lo tratta in modo più generale. Mémoires de l’Académie Impériale des sciences de St.Petersburg, vol.VII (1859)

110 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1940. Spline-Fitting mmmmmmmmmmmmmmmmmmmmmmmmmmmmm La ricerca per la migliore approssimazione uniforme di funzioni continua al principio del 20° secolo, in particolare con Charles De la Vallée-Poussin e con Sergei Bernstein. Le funzioni “spline” sono state definite e studiate per la prima volta da Schoenberg nel 1940. S.N. Schoenberg Quarterly of Applied Mathematics, vol.IV (1946)

111 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1807. Serie di Fourier mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Eulero ha esaminato le serie trigonometriche dal 1730 ed ha prodotto espansioni di funzioni periodiche come serie trigonometriche nella sua Memoria del 1749 sull’irregolarità delle orbite di Saturno e Giove. Subito dopo Clairaut ha prodotto espressioni per i coefficienti di Fourier di una funzione. Nello stesso periodo, d’Alembert studiava il problema delle stringhe vibranti. Nel 1753, Daniel Bernoulli si propone di trovare soluzioni in forma di serie trigonometriche.

112 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Serie di Fourier mmmmmmmmmmmmmmmmmmmmmmmmmmmmm La teoria non aveva solide basi fino al lavoro di Fourier. L’essenza delle sue idee è contenuta in una memoria proposta all’Accademia delle scienze di Parigi nel 1807 e di nuovo nel suo lavoro del 1822, Theorie analytique de la Chaleur. Poisson e Cauchy hanno contribuito allo studio delle serie di Fourier. Dirichlet dal 1822 al 1826 ha condotto un rigoroso studio sulla convergenza delle serie di Fourier.

113 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1965. Fast Fourier Transform mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Le trasformazioni di Fourier richiedono un numero di moltiplicazioni pari a N2. Cooley e Tukey hanno descritto, nel 1965, un metodo migliorativo che richiede un numero di moltiplicazioni pari a NlogN. Il metodo è noto come Fast Fourier Transform o algoritmo FFT.                                                                                 J.W.Cooley e J.W.Tukey An Algorithm for the Machine Calculation of Complex Fourier Series Mathematics of Computation, vol.XIX (1965)

114 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Accelerazione di convergenza mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Sebbene il primo uso del termine convergenza può essere attribuito a Gregory nel 1668, il concetto di convergenza, come è utilizzato oggi, non è stato definito esplicitamente fino al 19° secolo. Poincaré ha avuto un ruolo fondamentale nella teoria delle somme. Egli, nel Les methodes nouvelles de la Mécanique céleste, spiega gli approcci differenti al significato di convergenza.

115 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1730. Metodo di Stirling mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Nella prefazione del Tractatus de Summatione et Interpolatione Serierum Infinitarum (1730) J.Stirling annuncia i suoi obiettivi. Poiché spesso accade che le serie convergono così lentamente da non arrivare a termine come se fossero divergenti, egli fornisce dei teoremi per raggiungere velocemente i valori di quelle serie il cui approccio è più lento.

116 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1742. Formula Eulero-Maclaurin mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Nel 1734, Bishop George Berkeley critica l’assenza di fondamenti rigorosi al lavoro di Newton. Per rispondere a queste critiche MacLaurin scrive il suo Treatise on Fluxions nel 1737, ma appare nel 1742.

117 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1736. La costante di Eulero mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Nel 1736, Leonhard Euler ha pubblicato nei Commentarii academiae scientiarum Petropolitanae, un articolo riguardante la dimostrazione e l’applicazione della formula Euler-Maclaurin.

118 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1926. Il metodo di Aitken mmmmmmmmmmmmmmmmmmmmmmmmmmmmm In un articolo pubblicato nel 1926, Aitken ha proposto una estensione del metodo di Bernoulli delle serie ricorrenti.

119 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1926. Il metodo di estrapolazione di Richardson L’idea del metodo è di utilizzare una combinazione lineare di formule per poter affinare l’approssimazione. Il metodo fu stabilito formalmente nel 1911 da Richardson. La teoria fu presentata di nuovo da Richardson nel 1927, questa volta prendendosi cura di spiegarla. Applichiamo la formula all’integrale Diamo una tabella per mostrare la velocità di convergenza: per n = 1, 2, 4, 8, 16

120 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1955. Il metodo di integrazione di Romberg Il metodo di Romberg è semplicemente la formula di Richardson applicata iterativamente alla funzione approssimata trapezio T(h). W.Romberg Norske Videnskabers Selskabs forhandlinger,t.28 (1955)

121 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Verso il concetto di algoritmo mmmmmmmmmmmmmmmmmmmmmmmmmmmmm La maggior parte di algoritmi erano utilizzati molto tempo prima che si sia reso necessario dare una chiara definizione del significato di algoritmo. Il termine algoritmo, che significa procedimento di calcolo, è una versione moderna del termine latino medioevale algorismus, che deriva dal nome del matematico Mohammed ibn-Musa-al-Khowarismi, vissuto nel IX secolo d.C. e famoso per aver scritto un noto trattato di algebra. Oggi un algoritmo è definito come un insieme finito e organizzato di istruzioni, in grado di fornire la soluzione ad un problema.

122 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Nel 1930 i matematici sentono il bisogno di ricercare che cosa precisamente costituisce un algoritmo e proporre una definizione del concetto di algoritmo. 17° secolo. Leibniz immagina un linguaggio a carattere universale capace di ridurre i ragionamenti matematici a semplici calcoli. 1821. Charles Babbage spiega come i ragionamenti matematici possono essere trasformati quasi meccanicamente utilizzando simboli algebrici.

123 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1854. Boole propone una algebrizzazione della logica. Inoltre introduce una notazione formale per decidere se una proposizione è vera o falsa. 1885. Pierce estende la logica algebrica alla teoria delle leggi di De Morgan e introduce le Tavole di Verità. Frege da una prima logica formalizzata. Peano introduce un linguaggio formalizzato per l’aritmetica.

124 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1928. Hilbert Nel 1890 Hilbert sviluppa una concezione formale della matematica. Nel 1904 spiega che vorrebbe ridurre tutta l’aritmetica a logica e formalizza ciò nel 1922. Al congresso internazionale del 1928 Hilbert ha proposto un programma di ricerca in forma di problemi. Egli pone tre questioni fondamentali di matematica: La matematica è completa, ossia ogni statement matematico può essere dichiarato valido o non valido ? La matematica è consistente, ossia è impossibile dimostrare sia uno statement che la sua contraddizione ? La matematica è decidibile, ossia esiste una procedura con la quale si può decidere se uno statement matematico è vero ? Meno di dieci anni più tardi si è visto che non era possibile dare una risposta affermativa alle domande di Hilbert.

125 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1931. Godel Nel 1931 Kurt Godel dimostra l’incompletezza dell’aritmetica: esistono proposizioni in aritmetica per le quali è impossibile dimostrare se sono vere o false. Per dimostrare il teorema Godel introduce la nozione di funzione ricorsiva. Nel 1934 egli da una corso a Princeton e definisce il concetto generale di funzione ricorsiva.

126 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1936. Church Il lavoro di Godel ha inspirato le ricerche di Alonzo Church, Stephen Kleene, Alan Turing ed Emil Post. Questi matematici dimostrano che esistono problemi indecidibili, ossia proposizioni matematiche per le quali non esistono procedure con le quali possiamo dire se la proposizione è vera o falsa. Per fare ciò ognuno da un concetto di algoritmo. Il concetto di funzione ricorsiva è l’argomento centrale del lavoro di Church.

127 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1936. Kleene L’articolo di Kleene del 1936, intitolato Funzioni Generali Ricorsive di Numeri Naturali, riguarda principalmente il concetto di funzione ricorsiva e l’equivalenza tra definizioni differenti. Il problema dell’equivalenza tra tutti i concetti di calcolabilità stabiliti tra il 1931 e il 1936 è fondamentale: Garantisce la coerenza dei risultati ottenuti Conferma se il concetto di algoritmo corrisponde alla nozione di algoritmo e alla nozione intuitiva che abbiamo di esso.

128 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1936. La macchina di Turing Il concetto di macchina è l’idea chiave dell’articolo di A.M.Turing del Il problema è di specificare precisamente cosa significa “con un effettivo processo di calcolo” o “un algoritmo per calcolare”. Questa questione porta Turing a definire ciò che oggi chiamiamo la “macchina di Turing”. Una macchins di Turing è composta di: un nastro composto di celle contenenti simboli appartenenti ad un alfabeto finito un’unità centrale che può assumere un numero finito di stati una testina di lettura-scrittura che permette la comunicazione tra l’unità centrale e il nastro A.M.Turing On Computable Numbers with an Application to the Entscheidungsproblem Proceedings of the London Mathematical Society, series 2, vol.42 (1936-7),

129 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1936. La macchina di Post Pochi mesi dopo Turing e abbastanza indipendentemente, Emil L.Post propone una macchina per definire un processo che potrebbe risolvere un problema generale. Post non parla di macchina sebbene le sue descrizioni somigliano al nostro concetto di computer. Quello che Post chiama box può essere la nostra memoria, che può essere vuota o contenere un valore. Il suo insieme di istruzioni può essere confrontato ad un programma con salti. E’ appropriato descrivere questa formulazione minimale come formulation 1. Infatti solo un simbolo alla volta può essere immesso in memoria e questo può essere spostato solo ad una cella contigua. E.L.Post Finite Combinatory Processes, Formulation 1 The journal of Symbolic Logic, vol.1(1936),

130 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Il campo degli algoritmi. mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Con l’introduzione del concetto di algoritmo si introduce un nuovo campo di scienza: il campo degli algoritmi. Pur se la teoria degli algoritmi si è andata assestando nella prima metà del XX° secolo, le tecniche per progettare algoritmi e per analizzarne la correttezza e l’efficienza si sono evolute nella seconda metà del secolo, grazie alla enorme diffusione dei calcolatori elettronici.

131 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Il campo degli algoritmi. mmmmmmmmmmmmmmmmmmmmmmmmmmmmm Gli algoritmi vengono comunemente descritti tramite programmi, che si avvalgono di istruzioni e costrutti dei linguaggi di programmazione e che devono essere eseguiti da calcolatori elettronici. Lo studio degli algoritmi coinvolge il concetto di complessità di un algoritmo ossia il costo in termini di tempo e quantità di memoria richiesta.

132 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1945. Merge Sort Sembra che J. Von Neumann, uno dei pionieri dell’informatica, abbia scritto nel 1945 un programma di merge sort per il calcolatore EDVAC. Divide et Impera 5 2 4 6 1 3 Il merge sort è descritto anche da Knuth, che cita un selezionatore meccanico, inventato nel 1938, capace di eseguire la fusione di due pacchi di schede perforate in un solo passo. L’algoritmo merge sort utilizza il paradigma divide-et-impera: Divide divide gli n elementi della sequenza da ordinare in due sottosequenze di n/2 elementi ciascuna Impera ordina, usando ricorsivamente il merge sort Combina fonde le due sottosequenze per produrre come risposta la sequenza ordinata Introduzione agli algoritmi Thomas H. Cormen, Charles E. Leiserson, Ronald L.Rivest Jackson Libri Tempo di Esecuzione: O(nlgn) Algoritmo di sort

133 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1947. Algoritmo del simplesso Nella teoria dell’ottimizzazione matematica l’algoritmo simplex di George Dantzig è la tecnica fondamentale per soluzioni numeriche dei problemi di programmazione lineare. Dato un sistema di disequazioni lineari su un numero n di variabili reali, l’algoritmo fornisce un metodo pratico per trovare la soluzione ottimale rispetto ad una funzione lineare fissata.

134 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1952. Huffman coding L’algoritmo di codifica di Huffman sviluppato da David A. Huffman nel 1952 è un algoritmo usato per la decompressione dei dati. L’algoritmo trova il sistema ottimale di codificare stringhe basato sulla frequenza relativa di ogni carattere. A Method for the Construction of Minimum-Redundancy Codes.

135 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1954. Radix Sort Un algoritmo per il radix sort fu inventato nel 1954 al MIT da Harold H. Seward. Tuttavia l’ordinamento radix sort rispetto alla cifra meno significativa sembra che fosse un algoritmo noto, già ampiamente usato da operatori di macchine meccaniche ordinatrici di schede. Secondo Knuth la prima pubblicazione su questo metodo si trova in un documento del 1929 di L.J.Comrie che descrive le macchine perforatrici di schede. Hollerith’s sorting machine, sviluppata nel usava il radix sort. Algoritmo di sort

136 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Radix Sort Il radix sort ordina una sequenza di numeri di n cifre ordinando prima sulla cifra meno significativa, poi l’intero blocco è ordinato di nuovo sulla seconda cifra meno significativa e cosi via. 329 355 720 457 657 839 436 329 355 720 457 657 839 436 457 329 720 839 355 657 436 720 355 329 457 657 839 436 Introduzione agli algoritmi Thomas H. Cormen, Charles E. Leiserson, Ronald L.Rivest Jackson Libri Algoritmo di sort

137 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1954. Counting Sort Knuth attribuisce ad H.H. Seward sia la progettazione del counting sort (1954), sia l’idea di combinare il counting sort con il radix sort. Il counting sort si basa sull’ipotesi che ognuno degli n elementi di input sia un intero nell’intervallo da 1 a k. L’idea di base è di determinare, per ogni elemento x di input, il numero di elementi minori di x. Questa informazione può essere usata per porre l’elemento x direttamente nella sua posizione nell’array di output. Introduzione agli algoritmi Thomas H. Cormen, Charles E. Leiserson, Ronald L.Rivest Jackson Libri Tempo di Esecuzione: O(k+n) Se K=O(n) Tempo di Esecuzione: O(n) Algoritmo di sort

138 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1956. Algoritmo di Kruskal L’algoritmo di Kruskal, sviluppato da Joseph Kruskal nel 1956, è un’elaborazione dell’algoritmo generico per trovare un albero di copertura minimo. Tempo di Esecuzione : O(ElgE) dove E è il numero di archi Introduzione agli algoritmi Thomas H. Cormen, Charles E. Leiserson, Ronald L.Rivest Jackson Libri Algoritmo sui grafi

139 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1956. Bucket Sort L’algoritmo Bucket Sort fu proposto da E.J.Isaac e R.C.Singleton. Il bucket sort assume che l’input sia generato da un processo casuale che distribuisce gli elementi in modo uniforme sull’intervallo [0,1). L’idea del bucket sort è di dividere l’intervallo [0,1) in n sottointervalli di uguale dimensione, detti bucket (secchi), e quindi distribuire gli n numeri nei bucket. Per produrre l’output, si ordinano i numeri di ogni bucket e quindi si elencano gli elementi di ogni bucket prendendoli in ordine. Introduzione agli algoritmi Thomas H. Cormen, Charles E. Leiserson, Ronald L.Rivest Jackson Libri Tempo di Esecuzione nel caso medio: O(n) Algoritmo di sort

140 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1957. Algoritmo di Prim L’algoritmo, sviluppato da Robert Prim nel 1957, è un’elaborazione dell’algoritmo generico per trovare un albero di copertura minimo. Tempo di Esecuzione : O(ElgV) dove V è il numero di vertici ed E è il numero di archi O(E+VlgV) se si usa un heap di Fibonacci Introduzione agli algoritmi Thomas H. Cormen, Charles E. Leiserson, Ronald L.Rivest Jackson Libri Algoritmo sui grafi

141 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1957. Algoritmo di Bellman-Ford L’algoritmo sviluppato da R. Bellman and L. R. Ford calcola il cammino più corto in un grafo pesato. Introduzione agli algoritmi Thomas H. Cormen, Charles E. Leiserson, Ronald L.Rivest Jackson Libri Tempo di Esecuzione : O(VE) dove V è il numero di vertici ed E è il numero di archi Algoritmo sui grafi

142 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1959. Algoritmo di Dijkstra L’algoritmo sviluppato da Edsger Dijkstra risolve il problema di cammini minimi con sorgente singola su un grafo orientato e pesato G=(V,E) nel caso in cui tutti i pesi degli archi siano non negativi. Introduzione agli algoritmi Thomas H. Cormen, Charles E. Leiserson, Ronald L.Rivest Jackson Libri Tempo di Esecuzione : O(V2) Algoritmo sui grafi

143 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1959. Shell Sort L’algoritmo fu sviluppato da D.L. Shell. Lo shell sort è una variante dell’algoritmo di insertion sort. Esso usa insertion sort su sottosequenze periodiche dell’input ottenendo un algoritmo di ordinamento più veloce. 3 5 1 2 4 5 1 2 4 3 2 1 5 4 3 2 1 4 5 3 Introduzione agli algoritmi Thomas H. Cormen, Charles E. Leiserson, Ronald L.Rivest Jackson Libri Algoritmo di sort

144 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1962. Quicksort L’algoritmo sviluppato da Charles Antony Richard Hoare utilizza il paradigma divide-et-impera. 4 2 3 5 1 pivot Introduzione agli algoritmi Thomas H. Cormen, Charles E. Leiserson, Ronald L.Rivest Jackson Libri Divide l’array A[p…r] è ripartito in due sottoarray non vuoti A[p…q] e A[q+1 … r] in modo tale che ogni elemento di A[p …q] sia minore o uguale a qualunque elemento di A[q+1 …r].L’indice q è calcolato da questa procedura di partizionamento. Impera i due sottoarray A[p…q] e A[q+1…r] sono ordinati con chiamate ricorsive a quicksort Combina i sottoarray sono ordinati in loco quindi l’intero array A[p…r] è subito ordinato. Algoritmo di sort

145 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1962. Ford-Fulkerson L’algoritmo sviluppato da L. R. Ford e D. R. Fulkerson risolve il problema di flusso massimo per reti di flusso. Esistono diverse realizzazioni dell’algoritmo con differenti tempi di esecuzione. Introduzione agli algoritmi Thomas H. Cormen, Charles E. Leiserson, Ronald L.Rivest Jackson Libri Algoritmo sui grafi

146 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
1964. Heapsort L’algoritmo heapsort fu progettato da J. W. J. Williams che descrisse anche come realizzare una coda con priorità tramite uno heap. La procedura BUILD-HEAP fu proposta da Floyd. 14 8 2 4 7 1 16 16 8 4 2 1 7 14 10 9 3 14 8 4 2 7 10 9 1 3 16 Introduzione agli algoritmi Thomas H. Cormen, Charles E. Leiserson, Ronald L.Rivest Jackson Libri L’algoritmo heapsort comincia con il costruire uno heap sull’array di input A[1…n] (BUILD-HEAP). Poiché l’elemento più grande dell’array è memorizzato nella radice A[1], esso può essere posto nella sua corretta posizione finale scambiandolo con A[n]. Se si cancella il nodo n dallo heap si osserva che A[1…n-1] può essere trasformato in heap. L’algoritmo heapsort ripete questo processo per lo heap di dimensione n-1 fino allo heap di dimensione 2. Algoritmo di sort

147 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Heapsort 9 8 7 3 3 8 7 3 4 4 7 4 2 9 1 2 1 1 2 8 9 10 10 14 16 14 16 10 14 16 4 3 2 3 1 2 2 1 3 1 7 8 9 4 7 8 9 4 7 8 9 Introduzione agli algoritmi Thomas H. Cormen, Charles E. Leiserson, Ronald L.Rivest Jackson Libri 10 14 16 10 14 16 10 14 16 1 2 3 4 7 8 9 10 14 16

148 1965. Cooley-Tukey L’algoritmo riscoperto da James Cooley and John Tukey è il più comune algoritmo fast Fourier trasform (FFT). L’algoritmo era già noto nel 1805 per opera di Gauss, ma diventa popolare nel 1965 quando J.W.Cooley dell’IBM e J.W.Tukey di Princeton lo reinventano per eseguirlo su un computer. Algoritmo FFT

149 1965. Distanza di Levenshtein
La distanza di Levenshtein tra due stringhe è data dal numero minimo di operazioni necessarie per trasformare una stringa in un’altra, dove un’operazione è un inserimento, una cancellazione o una sostituzione. caso casa cassa 2 int LevenshteinDistance(char s[1..n], char [1..m]) declare int d[0..n,0..m] declare int i, j, cost for i := 0 to n d[i,0] := i for j := 0 to m d[0,j] := j for i := 1 to n for j := 1 to m if s[i] = t[j] then cost := 0 else cost := 1 d[i,j] := minimum(d[i-1,j ] + 1, // ins. d[i, j-1] + 1, // canc. d[i-1,j-1] + cost) // sost. return d[n,m] Algoritmo su stringhe

150 Tempo di Esecuzione : O(n3) dove n è la lunghezza della stringa
1965. CYK L’algoritmo Cocke-Younger-Kasami, sviluppato da T.Kasami, determina se e come una stringa può essere generata da una data grammatica context-free. Lo stesso algoritmo (CYK) è stato sviluppato indipendentemente da D. H. Younger nel 1967. Tempo di Esecuzione : O(n3) dove n è la lunghezza della stringa Algoritmo su stringhe

151 1967. Viterbi L’algoritmo proposto da Andrew Viterbi è un modo per trovare la sequenza più probabile di stati nascosti che risultano in una sequenza di eventi osservati. L’algoritmo trova la sua applicazione nella decodifica di codici nei cellulari digitali GSM, modem, satelliti, comunicazioni spaziali, ecc…

152 Tempo di Esecuzione : O(nlogn) dove n è il numero di punti
1972. Graham L’algoritmo Graham scan sviluppato da Ronald Graham è un metodo per calcolare l’inviluppo convesso di un dato insieme di punti nel piano. Tempo di Esecuzione : O(nlogn) dove n è il numero di punti Algoritmo geometrico

153 Algoritmo di crittografia
1973. RSA L’algoritmo di crittografia RSA, sviluppato da Clifford Cocks, è un algoritmo asimmetrico per crittografia a chiave pubblica, ampiamente usato nel commercio elettronico. L’algoritmo fu descritto nel 1977 da Rivest, Shamir e Adleman; le lettere RSA sono le iniziali dei loro cognomi. Cocks, un matematico inglese che lavorava per GCHQ, ha descritto un sistema equivalente in un documento interno nel A causa della classificazione top-secret, la sua scoperta non è stata resa nota fino al 1997. Algoritmo di crittografia

154 1973. Jarvis L’algoritmo Jarvis, sviluppato da R. A. Jarvis, calcola l’inviluppo convesso di un insieme Q di punti attraverso una tecnica conosciuta come impacchettamento. Tempo di Esecuzione : O(NK) dove N è il numero di punti e K il numero di vertici di CH(Q) Algoritmo geometrico

155 1975. Algoritmo genetico L’algoritmo genetico (GA), divulgato da John Holland, è un algoritmo usato per trovare soluzioni approssimate a problemi difficili da risolvere attraverso l’applicazione dei principi di biologia evolutiva alla scienza dei computer.

156 1975. Aho-Corasick L’algoritmo Aho-Corasick, sviluppato da Alfred V. Aho and Margaret J. Corasick, è un algoritmo di ricerca stringhe che esamina un testo per un elemento di un insieme finito di stringhe. Algoritmo su stringhe

157 1976. Knuth-Morris-Pratt L’algoritmo Knuth-Morris-Pratt, sviluppato da Donald Knuth and Vaughan Pratt e indipendentemente da J. H. Morris, è un algoritmo per la corrispondenza tra stringhe. Tempo di Esecuzione : O(n+m) dove n è la lunghezza della stringa principale e m è il numero di caratteri nella stringa Algoritmo su stringhe

158 Algoritmo di compressione
1977. LZ LZ78 LZ77 e LZ78, sviluppati da Abraham Lempel e Jacob Ziv, sono algoritmi di compressione dati lossless (bassa perdita). Questi due algoritmi formano la base per la maggior parte delle variazioni LZ compreso LZW, LZSS ed altri. Algoritmo di compressione

159 Algoritmo di teoria dei numeri
1981. Quadratic Sieve Quadratic Sieve (QS), sviluppato da Carl Pomerance, è un algoritmo di fattorizzazione di un intero. Il tempo di esecuzione dipende dalla grandezza dell’intero. Algoritmo di teoria dei numeri

160 1983. Simulated annealing Simulated annealing è un approccio probabilistico generico al problema di ottimizzazione globale. L’algoritmo è stato sviluppato indipendentemente da S. Kirkpatrick, C. D. Gelatt ed M. P. Vecchi nel 1983 e da V.Cerny nel 1985. 1 T := T0 2 S := S0 3 E := objective(S) 4 k := 0 5 while terminal condition not true 6 S_new := move(S, T) 7 E_new := objective(S_new) 8 if E_new < E or random() < acceptor(E_new - E, T) 9 S := S_new 10 E := E_new 11 T := schedule(T0, k) 12 k := k + 1

161 Algoritmo di compressione
1984. LZW LZW (Lempel-Ziv-Welch) , sviluppato da Terry Welch, è un algoritmo di compressione dati lossless (perdita minore). Quest’algoritmo deriva dagli algoritmi LZ77 e LZ78. Algoritmo di compressione

162 Algoritmo di teoria dei numeri
1988. SNFS Special Number Field Sieve, sviluppato da John Pollard, è un algoritmo di fattorizzazione di un intero. Tempo di Esecuzione : Algoritmo di teoria dei numeri

163 Algoritmo di teoria dei numeri
1990. GNFS General Number Field Sieve, sviluppato dal SNFS da Carl Pomerance, Joe Buhler, Hendrik Lenstra, e Leonard Adleman, è il più efficiente algoritmo conosciuto per fattorizzare interi. L’algoritmo utilizza O(exp( ((64/9) n)1/3 (log n)2/3 )) passi per fattorizzare l’intero n. Algoritmo di teoria dei numeri

164 Algoritmo di crittografia
1991. IDEA IDEA (International Data Encryption Algorthm) è stato progettato da Xuejia Lai e James L. Massey. Algoritmo di crittografia

165 Algoritmo di crittografia
1991. MD5 L’algoritmo MD5 è un algoritmo message digest con un valore hash a 128 bit. Esso è uno della serie di algoritmi message digest sviluppati dal professor Ronald Rivest del MIT. MD5 è stato ampiamente utilizzato ed era ritenuto crittograficamente sicuro. Nel 1994 si scopre una debolezza che rende l’ulteriore utilizzo del MD5 discutibile. In particolare si è visto che era possibile generare collisioni. Algoritmo di crittografia

166 1992. Deutsch-Jozsa Deutsch-Jozsa, proposto da D. Deutsch e R. Jozsa, è un algoritmo quantum. E’ uno dei primi esempi di algoritmi quantum (migliori degli algoritmi convenzionali). Un computer quantum è un dispositivo di calcolo che fa uso di fenomeni di meccanica quantistica. In un computer classico i dati sono misurati in bit. In un computer quantum i dati sono misurati in qubit Algoritmo quantum

167 Algoritmo di compressione
1994. Burrows-Wheeler Burrows-Wheeler transform (BWT), sviluppato da Michael Burrows and David Wheeler, è un algoritmo usato nelle tecniche di compressione dati. La trasformazione avviene ordinando tutte le rotazioni della stringa e prendendo l’ultima colonna. Algoritmo di compressione

168 Algoritmo di crittografia
1995. SHA-1 SHA-1 (Secure Hash Algorithm) è un algoritmo “message digest” progettato dalla NSA (National Security Agency) e pubblicato da NIST (National Institute of Standard and Tecnology). Algoritmo di crittografia

169 Algoritmo di crittografia
1996. RIPEMD-160 RIPEMD-160 (RACE Integrity Primitives Evaluation Message Digest) è un algoritmo message digest a 160-bit, sviluppato da Hans Dobbertin, Antoon Bosselaers, e Bart Preneel. Algoritmo di crittografia

170 Algoritmo di crittografia
1999. Yarrow Yarrow, progettato da Bruce Schneier, John Kelsey e Niels Ferguson, è un generatore di numeri pseudo-casuali crittograficamente sicuro. Il nome deriva dalla pianta yarrow, i cui steli sono seccati e utilizzati come agente casuale nella divinazione “I Ching”. Algoritmo di crittografia

171 Algoritmo di crittografia
2000. Rijndael Rijndael cypher, sviluppato da Joan Daemen e Vincent Rijmen, è un algoritmo block cipher a chiave simmetrica. Dopo una competizione Rijndael fu selezionato come il successore di DES ed è diventato Advanced Encryption Standard (AES). Algoritmo di crittografia

172 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
2001. AES AES (Advanced Encryption Standard) cypher è un algoritmo basato sul Rijndael e adottato dal NIST (National Institute of Standards and Technology). In crittografia AES è un block cipher adottato come standard dal governo US. Si pensa che venga utilizzato in modo universale e analizzato radicalmente. Algoritmo di crittografia

173 Algoritmo di teoria dei numeri
2002. AKS AKS (primality test), sviluppato da Manindra Agrawal, Neeraj Kayal e Nitin Saxena del IIT Kanpur, è un algoritmo deterministico di tipo polinomiale che determina se un numero è un numero primo. AKS ha una differenza chiave rispetto ad altri algoritmi precedenti sulla primalità: non richiede alcuna ipotesi non dimostrata per ottenere un tempo polinomiale su tutti gli input. Algoritmo di teoria dei numeri

174 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Link mmmmmmmmmmmmmmmmmmmmmmmmmmmmm

175 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Link mmmmmmmmmmmmmmmmmmmmmmmmmmmmm encyclopedia.thefreedictionary.com/Timeline%20of%20algorithms phatnav.com/wiki/wiki.phtml?title=Timeline_of_algorithms Bibliografia A History of Algorithms: From the Pebble to the Microchip by Jean-Luc Chabert, E. Barbin Introduzione agli algoritmi Thomas H. Cormen, Charles E. Leiserson, Ronald L.Rivest Jackson Libri Il Teorema del pappagallo Denis Guedj


Scaricare ppt "Storia degli Algoritmi"

Presentazioni simili


Annunci Google