SlideShare une entreprise Scribd logo
1  sur  82
Pierre-rouge Sciences - Assas Richard Terrat
L'informatique
de RAMSÈS II
au web 2.0
Richard G. TERRAT
Ingénieur A&M
Maître de conférences honoraire en Informatique
Université de Montpellier
12 janvier 2016
2/82
Pierre-rouge Sciences - Assas Richard Terrat
Sommaire
● Prolégomènes
– informatique
– algorithme
– ordinateur
● Périple autour des algorithmes et du codage
– la maison de la sagesse (Bagdad)
– l'Inde
– la Chine
– la bibliothèque d'Alexandrie
– l'Égypte
– Babylone
12 janvier 2016
Prolégomènes 3/82
Pierre-rouge Sciences - Assas Richard Terrat
Informatique
● Étymologie
1957 Informatik : néologisme allemand de Karl Steinbuch
« Automatische Informationsverarbeitung »
1962 Informatique : néologisme français de Philippe Dreyfus
fusion de « information » et « automatique »
1966 Informatique : « dérivé d'information sur le modèle de
mathématique, électronique »
Académie française
● Définition
« Science du traitement rationnel et automatique de
l'information ; l'ensemble des applications de cette science »
Académie française
12 janvier 2016
Prolégomènes 4/82
Pierre-rouge Sciences - Assas Richard Terrat
Informatique
● Quatre « piliers »
l'algorithmique
– l'information : représentation, codage
– la programmation (parfois improprement appelée aussi
« codage ») et ses langages
– l'ordinateur
« L'ordinateur est à l'informaticien ce que le télescope est à
l'astronome » (Jacques Arsac, membre de l'Académie des
Sciences)
« L'informatique n'est pas plus la science des ordinateurs que
l'astronomie n'est celle des télescopes. » (Michael R. Fellows
et Ian Parberry - Computing Research News – Janvier 1993) »
12 janvier 2016
Prolégomènes 5/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithme
● Etymologie
« XIIIe siècle, augorisme. Altération, sous l'influence du
grec arithmos, « nombre », d'algorisme, qui, par
l'espagnol, remonte à l'arabe Al-Khuwarizmi, surnom d'un
mathématicien »
● Définition
« Méthode de calcul qui indique la démarche à suivre pour
résoudre une série de problèmes équivalents en
appliquant dans un ordre précis une suite finie de règles.
L'algorithme de la multiplication de nombres à plusieurs
chiffres »
Académie française
12 janvier 2016
Prolégomènes 6/82
Pierre-rouge Sciences - Assas Richard Terrat
Ordinateur
● Étymologie
Mot choisi le 16 IV 1955 par Jacques Perret,
professeur de philologie latine à la Sorbonne sur
demande de François Girard responsable du service
de publicité d’I.B.M. France
● Définition
XVe siècle, au sens de « celui qui institue quelque
chose »
XXe siècle, au sens actuel. Emprunté du latin ordinator,
« celui qui règle, met en ordre ; ordonnateur »
Académie française
12 janvier 2016
Alexandrie 7/82
Pierre-rouge Sciences - Assas Richard Terrat
Bagdad
850 → 1200
Alexandrie
-300 → 600
Thèbes
-1800 → -1500
Babylone
-2500 → -1500
Chine
-1000 → -300
Inde
200 → 700
12 janvier 2016
Bagdad 8/82
Pierre-rouge Sciences - Assas Richard Terrat
La maison de la sagesse
Bagdad (832 –1258)
● Al-Khuwarizmi
● Codage
● Algorithmes et Algèbre
● L'épitaphe de Diophante
12 janvier 2016
Bagdad 9/82
Pierre-rouge Sciences - Assas Richard Terrat
Al-Khuwarizmi
– originaire de Khiva, province du Khwarezm à cette
époque en Perse, actuellement en Ouzbékistan
– mathématicien à la maison de la sagesse à Bagdad
– auteur de « Kitab al-jabr w’al-muqabala » : calcul
par restauration et ré-équilibrage
– fondateur de l'Algèbre (Al-jabr)
– importe de l'Inde les chiffres indiens (via Aryabatha
et Brahmagupta) connus actuellement comme les
chiffres arabes, et le zéro (sifr en arabe)
780 → 850
12 janvier 2016
Bagdad 10/82
Pierre-rouge Sciences - Assas Richard Terrat
Al-Khuwarizmi
– les règles de l'algèbre permettent de résoudre des
équations (fondées par Diophante - appelé le
« père de l'algèbre » - au IIIème siècle )
– importation en France par Sylvestre II (Gerbert
d'Aurillac) le pape de l'an mil, lors d'un séjour dans
les monastères de Vich et Ripoli près de Barcelone
– nombreuses traductions latines au XIIIème siècle :
● Liber Abaci : Fibonacci (1202)
● Dixit algorizmi : plusieurs auteurs
● confusion avec Arithmetica de Diophante
12 janvier 2016
Bagdad 11/82
Pierre-rouge Sciences - Assas Richard Terrat
Codage
● Nombres
– décimale positionnelle avec chiffre 0
– importée de l'inde
● Algorithmes
– rhétoriques
– inconnue appelée chay' (la chose) devenue xay en
ancien espagnol d'où (peut être) le x actuel
– les nombres sont appelés des dirhams
– tous les coefficients sont positifs
12 janvier 2016
Bagdad 12/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithmes et Algèbre
● Exemple
– « Un homme meurt et laisse quatre fils et il fait, à
un homme, une donation égale à la part d'un de
ses fils et, à un autre, le quart de la différence entre
le tiers de l'héritage et la première donation. »
● L'équation
– x désigne la part de chaque fils
12 janvier 2016
Bagdad 13/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithmes et Algèbre
● Règles
– Al jabr : la restauration
● 4x - 3 = 5 devient 4x = 5 + 3
– Al muqabala : le ré-équilibrage
● 4x = 9 + 3x devient x = 9
– Al hatt : la réduction
● 2x = 8 devient x = 4
12 janvier 2016
Bagdad 14/82
Pierre-rouge Sciences - Assas Richard Terrat
L'épitaphe de Diophante
par Métrodore, grammairien grec vers l’an 500
Il resta enfant pendant le sixième de sa vie.
Après un autre douzième, ses joues se couvrirent de
barbe.
Après un septième, il alluma le flambeau du mariage.
Cinq ans après il lui naquit un fils, mais celui-ci mourut
arrivé à la moitié de l'âge auquel son père mourut.
Diophante vécut encore quatre ans, adoucissant sa
douleur par des recherches sur la science des nombres.
Question : à quel âge Diophante est-il mort ?
12 janvier 2016
Bagdad 15/82
Pierre-rouge Sciences - Assas Richard Terrat
L'épitaphe de Diophante
● Équation
on pose x = l'âge de Diophante à sa mort
Al hatt
Al hatt
Al muqabala
12 janvier 2016
Alexandrie 16/82
Pierre-rouge Sciences - Assas Richard Terrat
Bagdad
850 → 1200
Inde
200 → 700
12 janvier 2016
Inde 17/82
Pierre-rouge Sciences - Assas Richard Terrat
L'inde
● Historique
● Codage
● Algorithmes
● La racine carrée
12 janvier 2016
Inde 18/82
Pierre-rouge Sciences - Assas Richard Terrat
Historique
● Harappéens ≈ de -5 000 à -2 000
– comptabilité commerciale
– poids et mesures
● Aryens ≈ de -1 500 à -500
– sanskrit
– vedangas textes mathématiques
12 janvier 2016
Inde 19/82
Pierre-rouge Sciences - Assas Richard Terrat
Codage
● Système de Bakhshali ≈ 200
– apparition de la numération décimale et du chiffre
zéro (sunya en sanskrit, sifr en arabe, cephira en
latin)
12 janvier 2016
Inde 20/82
Pierre-rouge Sciences - Assas Richard Terrat
Codage
●
Les chiffres
12 janvier 2016
Inde 21/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithmes
● Calculs avec le système décimal positionnel
– nombreux algorithmes
● les quatre opérations
● La racine carré
– utilisation de l'arithmétique et de la géométrie
– forme réthorique puis syncopée
12 janvier 2016
Inde 22/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithmes
Aryabhata
● Calcul de la racine carrée et cubique ≈ 500
– algorithme de la potence
– utilise la notation décimale et le zéro
– utilise une base quelconque (10, 2 ou autre)
– le calcul de la racine carrée figurait en France aux
programmes de
● terminale C en 1968
● certificat d'études en 1910
476 → 550
12 janvier 2016
Inde 23/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithmes
● Brahmagupta
– introduction du nombre 0 et des nombres négatifs
– solution générale des équations
● du premier degré
● du second degré
598 → 670
12 janvier 2016
Inde 24/82
Pierre-rouge Sciences - Assas Richard Terrat
La racine carrée
12 janvier 2016
Alexandrie 25/82
Pierre-rouge Sciences - Assas Richard Terrat
Chine
Inde
Chine
-1000 → -300
Inde
200 → 700
12 janvier 2016
Chine 26/82
Pierre-rouge Sciences - Assas Richard Terrat
La Chine
● Historique
● Codage
● Algorithmes et constructivisme
● Les neuf chapitres
● Systèmes d'équations
● Codage binaire
12 janvier 2016
Chine 27/82
Pierre-rouge Sciences - Assas Richard Terrat
Historique
● Chiffres des Jiaguwen
– 1400 ans av. J.C.
– inscriptions sur os et écailles de tortue
– numération décimale additive
12 janvier 2016
Chine 28/82
Pierre-rouge Sciences - Assas Richard Terrat
Codage
● Numération « savante » par position ≈ 200
apparition tardive du zéro : 0 au VIIIème siècle
nombres négatifs appelés « nombres trompeurs »
12 janvier 2016
Chine 29/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithmes et constructivisme
● Les neuf chapitres
– Juizhang Suanshu
– origine environ 200 ans av. J.C.
– commenté par Liu Hui en 263 ap. J.C.
– publié en Chine en 1247 par Qin Jiushao
– traduit en français par Karine Chemla
– publié en octobre 2004 chez Dunod
en chinois ancien et en français
12 janvier 2016
Chine 30/82
Pierre-rouge Sciences - Assas Richard Terrat
Les neuf chapitres
● Contenu 246 problèmes
– carrés magiques
– théorème de Pythagore
– calcul de ∏ par exhaustion
– systèmes d’équations linéaires
● méthode du pivot Gauss
– équations de degrés 1, 2, 3
– triangle de Pascal
– arithmétique modulaire
● théorème des restes chinois
12 janvier 2016
Chine 31/82
Pierre-rouge Sciences - Assas Richard Terrat
Le théorème de Pythagore
Les neuf chapitres
12 janvier 2016
Chine 32/82
Pierre-rouge Sciences - Assas Richard Terrat
Les neuf chapitres
● Méthodes
– toutes les solutions des problèmes sont justifiées
par des algorithmes. On y trouve
● assignation de variables (je pose ..., je remplace par ...)
● conditionnelles
● itérations
– les algorithmes font office de preuves
– ni axiomatique ni inférences
● contrairement aux mathématiques grecques
12 janvier 2016
Chine 33/82
Pierre-rouge Sciences - Assas Richard Terrat
Systèmes d'équations
● Exemple
– Alice va dans une boulangerie et achète 2 croissants
et 1 pain au chocolat pour 4 euros.Quelques minutes
plus tard dans la même boulangerie Bob achète 1
croissant et 3 pains au chocolat pour 7 euros.
– quel est le prix d'un croissant et d'un pain au chocolat
dans cette boulangerie?
– on pose
● x : prix d'un croissant
● y : prix d'un pain au chocolat
12 janvier 2016
Chine 34/82
Pierre-rouge Sciences - Assas Richard Terrat
Systèmes d'équations
12 janvier 2016
Chine 35/82
Pierre-rouge Sciences - Assas Richard Terrat
Le codage binaire
● Les hexagrammes
– Yi Jing (livre des
mutations)
– origine Fu-Hi (2 900 av.
J.C.)
– découverts par Leibnitz le
15 février 1701 grâce au
père jésuite Joachim
Bouvet missionnaire en
Chine
– traits
● Yin - -
● Yang —
12 janvier 2016
Alexandrie 36/82
Pierre-rouge Sciences - Assas Richard Terrat
Bagdad
Alexandrie
Thèbes
Babylone
Chine
Inde
Alexandrie
-300 → 600
Chine
-1000 → -300
12 janvier 2016
Alexandrie 37/82
Pierre-rouge Sciences - Assas Richard Terrat
La bibliothèque d'Alexandrie
● Historique
● Codage
● Algorithme d'Euclide
● Algorithme de Héron d'Alexandrie
12 janvier 2016
Alexandrie 38/82
Pierre-rouge Sciences - Assas Richard Terrat
Historique
● Fondée en -268
● Toujours pas identifiée
● Plusieurs destructions ... hypothétiques
– guerre civile romaine (César - Pompée ≈ -50)
– séismes et raz-de-marées entre 115 et 630
– par les chrétiens en 415 avec le massacre d'Hypatie
– par les arabes en 642 (contesté)
– par les turcs en 868
Hypatie
370 - 415
12 janvier 2016
Alexandrie 39/82
Pierre-rouge Sciences - Assas Richard Terrat
Codage
● Nombres acrophoniques système attique ≈ -600
– numération additive-multiplicative sans zéro
– Exemple
75 201
12 janvier 2016
Alexandrie 40/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithme d'Euclide
● Euclide
– mathématicien grec vers -300 ou
– nom d'une école de mathématiciens
– auteur des « éléments de mathématiques » (13+2
tomes, traduction française éditée chez Hachette )
– forme syncopée
– livre VII : un algorithme, dit d'Euclide, pour trouver
● le plus grand carré pour carreler un rectangle
● la plus grande mesure commune à deux
segments
● le plus grand diviseur de deux nombres (pgcd)
12 janvier 2016
Alexandrie 41/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithme d'Euclide
22 x 14 8 x 14
8 x 6
2 x 4
2 x 2
2 x 6
14 x 14
8 x 8
6 x 6
2 x 2
2 x 2
Le plus grand carré
12 janvier 2016
Alexandrie 42/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithme d'Euclide
● Idée (on suppose a ≥ b) :
– si c est une mesure commune à a et b,
c'est aussi une mesure commune à a-b
a
b a-b
c c c c c c
La plus grande mesure commune
12 janvier 2016
Alexandrie 43/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithme d'Euclide
● tant que a ≠ b
– si a > b je retranche b de a
– sinon je retranche a de b
● maintenant que a = b c'est le pgcd
Pour :
● le carrelage d'un rectangle
● la plus petite mesure commune
● le calcul du pgcd de a et b
12 janvier 2016
Alexandrie 44/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithme d'Euclide
pgcd (a, b) :
tant que a ≠ b : itération
si a > b : condition
a ← a - b affectation
sinon : alternative
b ← b - a affectation
Le programme
12 janvier 2016
Alexandrie 45/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithme d'Euclide
Le programme en Python
def pgcd (a,b) :
# données : 2 entiers naturels
# résultat : leur pgcd
while a != b : # invariant : pgcd (a,b)
if a > b :
a = a - b
else :
b = b - a
return a
12 janvier 2016
Alexandrie 46/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithme de Héron
● Héron d'Alexandrie
– ingénieur, mécanicien, mathématicien
– auteur d'un algorithme d'extraction de la racine
carrée
● souvent attribué (à tort) à Newton
● connu des babyloniens
12 janvier 2016
Alexandrie 47/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithme de Héron
● Calcul de la racine carrée de a :
– c'est le côté d'un carré dont l'aire est a
● Principe :
– on construit un rectangle de côtés x et y quelconques
d'aire a
– on construit une suite de rectangles d'aire a dont un
des côtés x est la moyenne arithmétique des côtés du
rectangle précédent
– on s'arrête quand on veut
12 janvier 2016
Alexandrie 48/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithme de Héron
● Exemple : Calcul de √2
2
1
3/2 = 1,5
4/3=1,33 17/12 = 1,417
24/17=1,412
12 janvier 2016
Alexandrie 49/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithme de Héron
● Calcul de √n (n > 1)
– je pose x = 1 et y = n ⇒ x < √n < y
– tant que je veux :
● je remplace y par (x + y) /2 { y décroît }
● je remplace x par a / y { x croît }
– je peux arrêter le calcul quand je veux
– j'aurai toujours, avec une précision croissante :
● √n compris en x et y : x < √n < y
12 janvier 2016
Alexandrie 50/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithme de Héron
Racine carrée de a à ε près :
x ← 1
y ← a
tant que (y – x) > ε : itération
y ← (x + y ) / 2 affectation
x ← a / y
Le programme
12 janvier 2016
Alexandrie 51/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithme de Héron
Le programme en Python
def racine (a,epsilon) :
# donnée : 1 entier naturel a et un réel epsilon
# résultat : la racine carrée de a à epsilon près
x = 1
y = a
while (y - x) > epsilon :
# invariant : x a y≤ √ ≤
y = (x + y)/2
x = a/y
return (x+y)/2
12 janvier 2016
Alexandrie 52/82
Pierre-rouge Sciences - Assas Richard Terrat
Alexandrie
-300 → 600
Thèbes
-1800 → -1500
12 janvier 2016
Égypte 53/82
Pierre-rouge Sciences - Assas Richard Terrat
L'Égypte
● Codage
● Le papyrus Rhind
● L'algorithme de multiplication
12 janvier 2016
Égypte 54/82
Pierre-rouge Sciences - Assas Richard Terrat
Codage
● Numération décimale additive
1 234 567
12 janvier 2016
Égypte 55/82
Pierre-rouge Sciences - Assas Richard Terrat
Le papyrus « Rhind »
● découvert au XIX ème
siècle dans la tombe de
Ramsès II (Thèbes)
● Auteur : Ahmès
● 5m de long14 feuilles
● daté du XVIème siècle av.
J. C.
● reprend un papyrus plus
ancien du XIXème siècle
av. J. C.
12 janvier 2016
Égypte 56/82
Pierre-rouge Sciences - Assas Richard Terrat
Le papyrus « Rhind »
● réthorique
● pas d’abstraction
● pas de logique
● pas de démonstration
● problèmes « concrets »
● calculs arithmétiques
– les 4 opérations
– tables : multiplication, inverse, ...
– opérations sur les fractions (7 à 23)
● équations du 1er degré (24 à 27)
– résolution par la méthode des « fausses suppositions »
12 janvier 2016
Égypte 57/82
Pierre-rouge Sciences - Assas Richard Terrat
Le papyrus « Rhind »
● Calcul des aires
– carré, rectangle, triangle, trapèze
● Calcul des volumes
– pyramides
● Valeur de π problèmes 48 à 50
– aire d’un cercle de diamètre 9 unités =
aire d’un carré de côté 8 unités
– π.92/4 ≈ 82 π ≈ 4 x(8 /9)2 ≈ 3,16
– c’est la quadrature (approchée) du cercle !
12 janvier 2016
Égypte 58/82
Pierre-rouge Sciences - Assas Richard Terrat
L'algorithme de multiplication
● Calcul de 19 x 35
35 1
35 x 2 = 70 2
70 x 2 = 140 4
140 x 2 = 280 8
280 x 2 = 560 16
----------------------
665 19
19 √
19 ÷ 2 9 √
9 ÷ 2 4
4 ÷ 2 2
2 ÷ 2 1 √
1 ÷ 2 0
√
√
√
12 janvier 2016
Égypte 59/82
Pierre-rouge Sciences - Assas Richard Terrat
L'algorithme de multiplication
● Calcul de 19 x 35
19 = 16 + 2 + 1 = 24
+ 21
+ 20
décomposition de 19 en … binaire !
1910
= 100112
19 = 2 x 9 + 1
9 = 2 x 4 + 1
4 = 2 x 2 + 0
2 = 2 x 1 + 0
1 = 2 x 0 + 1
12 janvier 2016
Égypte 60/82
Pierre-rouge Sciences - Assas Richard Terrat
L'algorithme de multiplication
35 x 19
35 x 18 + 35
70 x 9 + 35
70 x 8 + 70 + 35
70 x 8 + 105
140 x 4 + 105
280 x 2 + 105
560 x 1+ 105
1120 x 0 + 560 + 105
560 + 105
665
Dite aussi « du paysan russe »
12 janvier 2016
Égypte 61/82
Pierre-rouge Sciences - Assas Richard Terrat
L'algorithme de multiplication
Pour multiplier a par b avec r comme résultat
● je pose r = 0
● tant que b n'est pas nul
– Si b est impair
● j'ajoute a à r
– je multiplie a par 2
– je divise b par 2 (par défaut)
● maintenant que b est nul, r est le résultat
12 janvier 2016
Égypte 62/82
Pierre-rouge Sciences - Assas Richard Terrat
L'algorithme de multiplication
def ahmès (a,b) :
# données : 2 entiers naturels
# résultat : leur produit selon la méthode d'Ahmès
r = 0
while b != 0 : # invariant : r + a*b
c = b%2
if c != 0 :
r = r+a
a = a*2
b = b//2
return r
Le programme en Python
12 janvier 2016
Égypte 63/82
Pierre-rouge Sciences - Assas Richard Terrat
L'algorithme de multiplication
19 x 35
10 x 35 + 9 x 35
10 x 35 + 315
1 x 350 + 315
350 + 315
665
9 x 35
9 x 30 + 9 x 5
9 x 30 + 45
9 x 3 x 10 + 45
27 x 10 + 45
315
selon Pythagore
12 janvier 2016
Égypte 64/82
Pierre-rouge Sciences - Assas Richard Terrat
L'algorithme de multiplication
Pour multiplier a par b avec r comme résultat
● je pose r = 0
● tant que b n'est pas nul :
– je prends le dernier chiffre de b
– je multiplie ce dernier chiffre par a
● cf. table de multiplication de Pythagore
– je l'ajoute à r
– je multiplie a par dix
– je divise b par dix (par défaut)
● maintenant que b est nul, r est le résultat
selon Pythagore
12 janvier 2016
Égypte 65/82
Pierre-rouge Sciences - Assas Richard Terrat
L'algorithme de multiplication
def pythagore (a,b) :
# données : 2 entiers naturels
# résultat : leur produit selon la méthode de Pythagore
r = 0
while b != 0 : # invariant : r + a*b
c = b%10
if c != 0 :
r = r + produitParUnChiffre (c,a)
a = a*10
b = b//10
return r
Le programme en Python
12 janvier 2016
Égypte 66/82
Pierre-rouge Sciences - Assas Richard Terrat
L'algorithme de multiplication
def produitParUnChiffre (a,b) :
# données : a chiffre décimal, b entier naturel
# résultat : le produit de a par b
r = 0
while b != 0 : # invariant : r + a*b
c = b%10
if c != 0 :
r = r + c*a # table de multiplication
a = a*10
b = b//10
return r
Le programme en Python
12 janvier 2016
Ègypte 67/82
Pierre-rouge Sciences - Assas Richard Terrat
Et dans les ordinateurs ...
● On fait comment ?
– comme les égyptiens ?
– comme Pythagore ?
– autrement ?
● Préférences ?
– beaucoup d'opérations simples
– peu d'opérations complexes
● Un indice :
– les nombres sont codés en binaire !
12 janvier 2016
Alexandrie 68/82
Pierre-rouge Sciences - Assas Richard Terrat
Thèbes
Babylone
Thèbes
-1800 → -1500
Babylone
-2500 → -1500
12 janvier 2016
Babylone 69/82
Pierre-rouge Sciences - Assas Richard Terrat
Babylone
● Historique
● Codage
● Algorithmes
12 janvier 2016
Babylone 70/82
Pierre-rouge Sciences - Assas Richard Terrat
Historique
● Sources
– 400 tablettes d'argile mises au jour
depuis les années 1850 datées de -2 500 à -1 500
● Contenus
– calculs arithmétiques : multiplications, divisions,
fractions, racines carrées
– géométrie : calculs d'hypoténuse, triplets
pythagoriciens, théorème de Pythagore
– algèbre : équations du premier, second et troisième
degré
– éléments de trigonométrie
12 janvier 2016
Babylone 71/82
Pierre-rouge Sciences - Assas Richard Terrat
Codage
● base 60
● 2 signes : clou et chevron
● chiffres codés en additif
● nombres codés en positionnel
● exemples
– chiffre 24 = [24]
– nombre 152 = 2*60 + 32 = [2 ; 32]
1 10
12 janvier 2016
Babylone 72/82
Pierre-rouge Sciences - Assas Richard Terrat
Codage
● Ambiguïtés
– 152 = 2*60 + 32 = [2 ; 32]
– 7 232 = 2*3600 + 32 = [2 ; 0 ; 32]
● Invention du zéro « intercalaire »
0
152
7 232
12 janvier 2016
Babylone 73/82
Pierre-rouge Sciences - Assas Richard Terrat
Codage
● Mais … pas de zéros en positions terminales
– 2 = [2]
– 120 = [2 ; 0]
– 7 200 = [ 2 ; 0 ; 0 ]
● Nombres fractionnaires
– exprimées en puissances négatives de 60
– pas de zéros en positions initiales
– 1 ÷ 30 = 2 ÷ 60 = [0 ; 2]
– 1 ÷ 1 800 = 2 ÷ 3 600 = [ 0 ; 0 ; 2]
12 janvier 2016
Babylone 74/82
Pierre-rouge Sciences - Assas Richard Terrat
Codage
● Représentation actuelle en virgule flottante
– exemple : 365,25 = 3,6525 x 102
= 36525 x 10-3
●
norme informatique : 0,36525 x 103
= {36525 ; 3}
● mantisse : 36525 exposant : 3
● règle à calcul : 3,6525 … sans exposant
● Représentation babylonienne
– virgule flottante sans exposant
– nombres définis à une puissance de 60 près
représente 2 ou 120 ou 1÷30 ou ...
12 janvier 2016
Babylone 75/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithmes
● Algorithme de
Babylone
– tablette Babylonienne
YBC 7289
– datée de - 1700
– collection
babylonienne Yale
University
12 janvier 2016
Babylone 76/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithmes
● La Tablette YBC 7289
[30] = 1/2
[1 ; 24 ; 51 ; 10 ] = 1,414 213
[42 ; 25 ; 35 ] = 0,707 106
or on sait que :
√2 = 1,414 213
√2 / 2 = 1 / √2 = 0,707 106
c'est donc le valeur de √2 avec 6 décimales exactes !
par recoupement avec d'autres tablettes, on pense qu'elle
a été calculée par … l'algorithme de Héron !!
12 janvier 2016
Babylone 77/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithmes
● La multiplication
– plusieurs méthodes dont celle … de Pythagore !
– utilisation de nombreuses tables : carrés, inverses
– utilisation d'identités remarquables :
● (a + b)2
= a2
+ 2 a.b + b2
⇒a.b = ((a + b)2
- a2
- b2
) /2
●
(a - b)2
= a2
- 2 a.b + b2
⇒a.b = ((a + b)2
- (a - b)2
) /4
– décomposition en carrés : méthode analogue au
calcul du pgcd …. d'Euclide !
12 janvier 2016
Babylone 78/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithmes
● La multiplication par décomposition en carrés
– exemple : 22 x 14
22 x 14 8 x 14
8 x 6
2 x 4
2 x 22 x 6
14 x 14
8 x 8
6 x 6
2 x 2
2 x 2
196
+ 64 260
+ 36 296
+ 4 300
+ 4 304
+ 4 308
0
+ 196
12 janvier 2016
Babylone 79/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithmes
● La multiplication
● je pose r = 0
tant que a ≠ 0 et b ≠ 0 :
– si a ≥ b
●
j'ajoute b2
à P
● je retranche b de a
– sinon
●
j'ajoute a2
à P
● je retranche a de b
12 janvier 2016
Babylone 80/82
Pierre-rouge Sciences - Assas Richard Terrat
Algorithmes
def babylone (a,b) :
# données : 2 entiers naturels
# résultat : leur produit selon une méthode babylonienne
r = 0
while a != 0 and b != 0 : # invariant : r + a*b
if a>b :
r = r + b**2 # cf. : table des carrés
a = a-b
else :
r = r + a**2 # cf. : table des carrés
b = b-a
return r
Le programme en Python
12 janvier 2016
81/82
Pierre-rouge Sciences - Assas Richard Terrat
Calculabilité
● Question
– peut-on « tout » calculer ?
– existe-t-il un algorithme pour tout problème posé ?
● Réponse
– NON
● Exemple
– existe-t-il un agorithme permettant de calculer les
solutions des équations de Diophante (fondées en
250) ?
● problème posé par David Hilbert en 1900
● résolu négativement par Yuri Matiyasevitch en 1970
12 janvier 2016
82/82
Pierre-rouge Sciences - Assas Richard Terrat
Bibliographie
● Le théorème du perroquet
– Denis Guedj - Editions du seuil
● Les neuf chapitres
– Karine Chemla, Guo Shuchun – Dunod
● Zéro
– Denis Guedj - Robert Laffont
● Sur les traces de l'Homo mathematicus
– Bernard Duvillié – Ellipses
● L'histoire des mathématiques
– Richard Mankiewicz - Seuil

Contenu connexe

Plus de RichardTerrat1

La contribution et le tribut des femmes dans le développement des mathématiqu...
La contribution et le tribut des femmes dans le développement des mathématiqu...La contribution et le tribut des femmes dans le développement des mathématiqu...
La contribution et le tribut des femmes dans le développement des mathématiqu...RichardTerrat1
 
Ingénierie des protocoles
Ingénierie des protocolesIngénierie des protocoles
Ingénierie des protocolesRichardTerrat1
 
Épistemologie de l'informatique
Épistemologie de l'informatiqueÉpistemologie de l'informatique
Épistemologie de l'informatiqueRichardTerrat1
 
Mathématiques pour l'informatique
Mathématiques pour l'informatiqueMathématiques pour l'informatique
Mathématiques pour l'informatiqueRichardTerrat1
 
Histoire des ordinateurs et du calcul
Histoire des ordinateurs et du calculHistoire des ordinateurs et du calcul
Histoire des ordinateurs et du calculRichardTerrat1
 
Informatique des sons et de la musique
Informatique des sons et de la musiqueInformatique des sons et de la musique
Informatique des sons et de la musiqueRichardTerrat1
 
Théorie de l'information
Théorie de l'informationThéorie de l'information
Théorie de l'informationRichardTerrat1
 
Sécurité des réseaux informatiques
Sécurité des réseaux informatiquesSécurité des réseaux informatiques
Sécurité des réseaux informatiquesRichardTerrat1
 

Plus de RichardTerrat1 (10)

Le pendule
Le penduleLe pendule
Le pendule
 
La contribution et le tribut des femmes dans le développement des mathématiqu...
La contribution et le tribut des femmes dans le développement des mathématiqu...La contribution et le tribut des femmes dans le développement des mathématiqu...
La contribution et le tribut des femmes dans le développement des mathématiqu...
 
Steganographie
SteganographieSteganographie
Steganographie
 
Ingénierie des protocoles
Ingénierie des protocolesIngénierie des protocoles
Ingénierie des protocoles
 
Épistemologie de l'informatique
Épistemologie de l'informatiqueÉpistemologie de l'informatique
Épistemologie de l'informatique
 
Mathématiques pour l'informatique
Mathématiques pour l'informatiqueMathématiques pour l'informatique
Mathématiques pour l'informatique
 
Histoire des ordinateurs et du calcul
Histoire des ordinateurs et du calculHistoire des ordinateurs et du calcul
Histoire des ordinateurs et du calcul
 
Informatique des sons et de la musique
Informatique des sons et de la musiqueInformatique des sons et de la musique
Informatique des sons et de la musique
 
Théorie de l'information
Théorie de l'informationThéorie de l'information
Théorie de l'information
 
Sécurité des réseaux informatiques
Sécurité des réseaux informatiquesSécurité des réseaux informatiques
Sécurité des réseaux informatiques
 

L'informatique de Ramsès II au web 2

  • 1. Pierre-rouge Sciences - Assas Richard Terrat L'informatique de RAMSÈS II au web 2.0 Richard G. TERRAT Ingénieur A&M Maître de conférences honoraire en Informatique Université de Montpellier
  • 2. 12 janvier 2016 2/82 Pierre-rouge Sciences - Assas Richard Terrat Sommaire ● Prolégomènes – informatique – algorithme – ordinateur ● Périple autour des algorithmes et du codage – la maison de la sagesse (Bagdad) – l'Inde – la Chine – la bibliothèque d'Alexandrie – l'Égypte – Babylone
  • 3. 12 janvier 2016 Prolégomènes 3/82 Pierre-rouge Sciences - Assas Richard Terrat Informatique ● Étymologie 1957 Informatik : néologisme allemand de Karl Steinbuch « Automatische Informationsverarbeitung » 1962 Informatique : néologisme français de Philippe Dreyfus fusion de « information » et « automatique » 1966 Informatique : « dérivé d'information sur le modèle de mathématique, électronique » Académie française ● Définition « Science du traitement rationnel et automatique de l'information ; l'ensemble des applications de cette science » Académie française
  • 4. 12 janvier 2016 Prolégomènes 4/82 Pierre-rouge Sciences - Assas Richard Terrat Informatique ● Quatre « piliers » l'algorithmique – l'information : représentation, codage – la programmation (parfois improprement appelée aussi « codage ») et ses langages – l'ordinateur « L'ordinateur est à l'informaticien ce que le télescope est à l'astronome » (Jacques Arsac, membre de l'Académie des Sciences) « L'informatique n'est pas plus la science des ordinateurs que l'astronomie n'est celle des télescopes. » (Michael R. Fellows et Ian Parberry - Computing Research News – Janvier 1993) »
  • 5. 12 janvier 2016 Prolégomènes 5/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithme ● Etymologie « XIIIe siècle, augorisme. Altération, sous l'influence du grec arithmos, « nombre », d'algorisme, qui, par l'espagnol, remonte à l'arabe Al-Khuwarizmi, surnom d'un mathématicien » ● Définition « Méthode de calcul qui indique la démarche à suivre pour résoudre une série de problèmes équivalents en appliquant dans un ordre précis une suite finie de règles. L'algorithme de la multiplication de nombres à plusieurs chiffres » Académie française
  • 6. 12 janvier 2016 Prolégomènes 6/82 Pierre-rouge Sciences - Assas Richard Terrat Ordinateur ● Étymologie Mot choisi le 16 IV 1955 par Jacques Perret, professeur de philologie latine à la Sorbonne sur demande de François Girard responsable du service de publicité d’I.B.M. France ● Définition XVe siècle, au sens de « celui qui institue quelque chose » XXe siècle, au sens actuel. Emprunté du latin ordinator, « celui qui règle, met en ordre ; ordonnateur » Académie française
  • 7. 12 janvier 2016 Alexandrie 7/82 Pierre-rouge Sciences - Assas Richard Terrat Bagdad 850 → 1200 Alexandrie -300 → 600 Thèbes -1800 → -1500 Babylone -2500 → -1500 Chine -1000 → -300 Inde 200 → 700
  • 8. 12 janvier 2016 Bagdad 8/82 Pierre-rouge Sciences - Assas Richard Terrat La maison de la sagesse Bagdad (832 –1258) ● Al-Khuwarizmi ● Codage ● Algorithmes et Algèbre ● L'épitaphe de Diophante
  • 9. 12 janvier 2016 Bagdad 9/82 Pierre-rouge Sciences - Assas Richard Terrat Al-Khuwarizmi – originaire de Khiva, province du Khwarezm à cette époque en Perse, actuellement en Ouzbékistan – mathématicien à la maison de la sagesse à Bagdad – auteur de « Kitab al-jabr w’al-muqabala » : calcul par restauration et ré-équilibrage – fondateur de l'Algèbre (Al-jabr) – importe de l'Inde les chiffres indiens (via Aryabatha et Brahmagupta) connus actuellement comme les chiffres arabes, et le zéro (sifr en arabe) 780 → 850
  • 10. 12 janvier 2016 Bagdad 10/82 Pierre-rouge Sciences - Assas Richard Terrat Al-Khuwarizmi – les règles de l'algèbre permettent de résoudre des équations (fondées par Diophante - appelé le « père de l'algèbre » - au IIIème siècle ) – importation en France par Sylvestre II (Gerbert d'Aurillac) le pape de l'an mil, lors d'un séjour dans les monastères de Vich et Ripoli près de Barcelone – nombreuses traductions latines au XIIIème siècle : ● Liber Abaci : Fibonacci (1202) ● Dixit algorizmi : plusieurs auteurs ● confusion avec Arithmetica de Diophante
  • 11. 12 janvier 2016 Bagdad 11/82 Pierre-rouge Sciences - Assas Richard Terrat Codage ● Nombres – décimale positionnelle avec chiffre 0 – importée de l'inde ● Algorithmes – rhétoriques – inconnue appelée chay' (la chose) devenue xay en ancien espagnol d'où (peut être) le x actuel – les nombres sont appelés des dirhams – tous les coefficients sont positifs
  • 12. 12 janvier 2016 Bagdad 12/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithmes et Algèbre ● Exemple – « Un homme meurt et laisse quatre fils et il fait, à un homme, une donation égale à la part d'un de ses fils et, à un autre, le quart de la différence entre le tiers de l'héritage et la première donation. » ● L'équation – x désigne la part de chaque fils
  • 13. 12 janvier 2016 Bagdad 13/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithmes et Algèbre ● Règles – Al jabr : la restauration ● 4x - 3 = 5 devient 4x = 5 + 3 – Al muqabala : le ré-équilibrage ● 4x = 9 + 3x devient x = 9 – Al hatt : la réduction ● 2x = 8 devient x = 4
  • 14. 12 janvier 2016 Bagdad 14/82 Pierre-rouge Sciences - Assas Richard Terrat L'épitaphe de Diophante par Métrodore, grammairien grec vers l’an 500 Il resta enfant pendant le sixième de sa vie. Après un autre douzième, ses joues se couvrirent de barbe. Après un septième, il alluma le flambeau du mariage. Cinq ans après il lui naquit un fils, mais celui-ci mourut arrivé à la moitié de l'âge auquel son père mourut. Diophante vécut encore quatre ans, adoucissant sa douleur par des recherches sur la science des nombres. Question : à quel âge Diophante est-il mort ?
  • 15. 12 janvier 2016 Bagdad 15/82 Pierre-rouge Sciences - Assas Richard Terrat L'épitaphe de Diophante ● Équation on pose x = l'âge de Diophante à sa mort Al hatt Al hatt Al muqabala
  • 16. 12 janvier 2016 Alexandrie 16/82 Pierre-rouge Sciences - Assas Richard Terrat Bagdad 850 → 1200 Inde 200 → 700
  • 17. 12 janvier 2016 Inde 17/82 Pierre-rouge Sciences - Assas Richard Terrat L'inde ● Historique ● Codage ● Algorithmes ● La racine carrée
  • 18. 12 janvier 2016 Inde 18/82 Pierre-rouge Sciences - Assas Richard Terrat Historique ● Harappéens ≈ de -5 000 à -2 000 – comptabilité commerciale – poids et mesures ● Aryens ≈ de -1 500 à -500 – sanskrit – vedangas textes mathématiques
  • 19. 12 janvier 2016 Inde 19/82 Pierre-rouge Sciences - Assas Richard Terrat Codage ● Système de Bakhshali ≈ 200 – apparition de la numération décimale et du chiffre zéro (sunya en sanskrit, sifr en arabe, cephira en latin)
  • 20. 12 janvier 2016 Inde 20/82 Pierre-rouge Sciences - Assas Richard Terrat Codage ● Les chiffres
  • 21. 12 janvier 2016 Inde 21/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithmes ● Calculs avec le système décimal positionnel – nombreux algorithmes ● les quatre opérations ● La racine carré – utilisation de l'arithmétique et de la géométrie – forme réthorique puis syncopée
  • 22. 12 janvier 2016 Inde 22/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithmes Aryabhata ● Calcul de la racine carrée et cubique ≈ 500 – algorithme de la potence – utilise la notation décimale et le zéro – utilise une base quelconque (10, 2 ou autre) – le calcul de la racine carrée figurait en France aux programmes de ● terminale C en 1968 ● certificat d'études en 1910 476 → 550
  • 23. 12 janvier 2016 Inde 23/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithmes ● Brahmagupta – introduction du nombre 0 et des nombres négatifs – solution générale des équations ● du premier degré ● du second degré 598 → 670
  • 24. 12 janvier 2016 Inde 24/82 Pierre-rouge Sciences - Assas Richard Terrat La racine carrée
  • 25. 12 janvier 2016 Alexandrie 25/82 Pierre-rouge Sciences - Assas Richard Terrat Chine Inde Chine -1000 → -300 Inde 200 → 700
  • 26. 12 janvier 2016 Chine 26/82 Pierre-rouge Sciences - Assas Richard Terrat La Chine ● Historique ● Codage ● Algorithmes et constructivisme ● Les neuf chapitres ● Systèmes d'équations ● Codage binaire
  • 27. 12 janvier 2016 Chine 27/82 Pierre-rouge Sciences - Assas Richard Terrat Historique ● Chiffres des Jiaguwen – 1400 ans av. J.C. – inscriptions sur os et écailles de tortue – numération décimale additive
  • 28. 12 janvier 2016 Chine 28/82 Pierre-rouge Sciences - Assas Richard Terrat Codage ● Numération « savante » par position ≈ 200 apparition tardive du zéro : 0 au VIIIème siècle nombres négatifs appelés « nombres trompeurs »
  • 29. 12 janvier 2016 Chine 29/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithmes et constructivisme ● Les neuf chapitres – Juizhang Suanshu – origine environ 200 ans av. J.C. – commenté par Liu Hui en 263 ap. J.C. – publié en Chine en 1247 par Qin Jiushao – traduit en français par Karine Chemla – publié en octobre 2004 chez Dunod en chinois ancien et en français
  • 30. 12 janvier 2016 Chine 30/82 Pierre-rouge Sciences - Assas Richard Terrat Les neuf chapitres ● Contenu 246 problèmes – carrés magiques – théorème de Pythagore – calcul de ∏ par exhaustion – systèmes d’équations linéaires ● méthode du pivot Gauss – équations de degrés 1, 2, 3 – triangle de Pascal – arithmétique modulaire ● théorème des restes chinois
  • 31. 12 janvier 2016 Chine 31/82 Pierre-rouge Sciences - Assas Richard Terrat Le théorème de Pythagore Les neuf chapitres
  • 32. 12 janvier 2016 Chine 32/82 Pierre-rouge Sciences - Assas Richard Terrat Les neuf chapitres ● Méthodes – toutes les solutions des problèmes sont justifiées par des algorithmes. On y trouve ● assignation de variables (je pose ..., je remplace par ...) ● conditionnelles ● itérations – les algorithmes font office de preuves – ni axiomatique ni inférences ● contrairement aux mathématiques grecques
  • 33. 12 janvier 2016 Chine 33/82 Pierre-rouge Sciences - Assas Richard Terrat Systèmes d'équations ● Exemple – Alice va dans une boulangerie et achète 2 croissants et 1 pain au chocolat pour 4 euros.Quelques minutes plus tard dans la même boulangerie Bob achète 1 croissant et 3 pains au chocolat pour 7 euros. – quel est le prix d'un croissant et d'un pain au chocolat dans cette boulangerie? – on pose ● x : prix d'un croissant ● y : prix d'un pain au chocolat
  • 34. 12 janvier 2016 Chine 34/82 Pierre-rouge Sciences - Assas Richard Terrat Systèmes d'équations
  • 35. 12 janvier 2016 Chine 35/82 Pierre-rouge Sciences - Assas Richard Terrat Le codage binaire ● Les hexagrammes – Yi Jing (livre des mutations) – origine Fu-Hi (2 900 av. J.C.) – découverts par Leibnitz le 15 février 1701 grâce au père jésuite Joachim Bouvet missionnaire en Chine – traits ● Yin - - ● Yang —
  • 36. 12 janvier 2016 Alexandrie 36/82 Pierre-rouge Sciences - Assas Richard Terrat Bagdad Alexandrie Thèbes Babylone Chine Inde Alexandrie -300 → 600 Chine -1000 → -300
  • 37. 12 janvier 2016 Alexandrie 37/82 Pierre-rouge Sciences - Assas Richard Terrat La bibliothèque d'Alexandrie ● Historique ● Codage ● Algorithme d'Euclide ● Algorithme de Héron d'Alexandrie
  • 38. 12 janvier 2016 Alexandrie 38/82 Pierre-rouge Sciences - Assas Richard Terrat Historique ● Fondée en -268 ● Toujours pas identifiée ● Plusieurs destructions ... hypothétiques – guerre civile romaine (César - Pompée ≈ -50) – séismes et raz-de-marées entre 115 et 630 – par les chrétiens en 415 avec le massacre d'Hypatie – par les arabes en 642 (contesté) – par les turcs en 868 Hypatie 370 - 415
  • 39. 12 janvier 2016 Alexandrie 39/82 Pierre-rouge Sciences - Assas Richard Terrat Codage ● Nombres acrophoniques système attique ≈ -600 – numération additive-multiplicative sans zéro – Exemple 75 201
  • 40. 12 janvier 2016 Alexandrie 40/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithme d'Euclide ● Euclide – mathématicien grec vers -300 ou – nom d'une école de mathématiciens – auteur des « éléments de mathématiques » (13+2 tomes, traduction française éditée chez Hachette ) – forme syncopée – livre VII : un algorithme, dit d'Euclide, pour trouver ● le plus grand carré pour carreler un rectangle ● la plus grande mesure commune à deux segments ● le plus grand diviseur de deux nombres (pgcd)
  • 41. 12 janvier 2016 Alexandrie 41/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithme d'Euclide 22 x 14 8 x 14 8 x 6 2 x 4 2 x 2 2 x 6 14 x 14 8 x 8 6 x 6 2 x 2 2 x 2 Le plus grand carré
  • 42. 12 janvier 2016 Alexandrie 42/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithme d'Euclide ● Idée (on suppose a ≥ b) : – si c est une mesure commune à a et b, c'est aussi une mesure commune à a-b a b a-b c c c c c c La plus grande mesure commune
  • 43. 12 janvier 2016 Alexandrie 43/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithme d'Euclide ● tant que a ≠ b – si a > b je retranche b de a – sinon je retranche a de b ● maintenant que a = b c'est le pgcd Pour : ● le carrelage d'un rectangle ● la plus petite mesure commune ● le calcul du pgcd de a et b
  • 44. 12 janvier 2016 Alexandrie 44/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithme d'Euclide pgcd (a, b) : tant que a ≠ b : itération si a > b : condition a ← a - b affectation sinon : alternative b ← b - a affectation Le programme
  • 45. 12 janvier 2016 Alexandrie 45/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithme d'Euclide Le programme en Python def pgcd (a,b) : # données : 2 entiers naturels # résultat : leur pgcd while a != b : # invariant : pgcd (a,b) if a > b : a = a - b else : b = b - a return a
  • 46. 12 janvier 2016 Alexandrie 46/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithme de Héron ● Héron d'Alexandrie – ingénieur, mécanicien, mathématicien – auteur d'un algorithme d'extraction de la racine carrée ● souvent attribué (à tort) à Newton ● connu des babyloniens
  • 47. 12 janvier 2016 Alexandrie 47/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithme de Héron ● Calcul de la racine carrée de a : – c'est le côté d'un carré dont l'aire est a ● Principe : – on construit un rectangle de côtés x et y quelconques d'aire a – on construit une suite de rectangles d'aire a dont un des côtés x est la moyenne arithmétique des côtés du rectangle précédent – on s'arrête quand on veut
  • 48. 12 janvier 2016 Alexandrie 48/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithme de Héron ● Exemple : Calcul de √2 2 1 3/2 = 1,5 4/3=1,33 17/12 = 1,417 24/17=1,412
  • 49. 12 janvier 2016 Alexandrie 49/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithme de Héron ● Calcul de √n (n > 1) – je pose x = 1 et y = n ⇒ x < √n < y – tant que je veux : ● je remplace y par (x + y) /2 { y décroît } ● je remplace x par a / y { x croît } – je peux arrêter le calcul quand je veux – j'aurai toujours, avec une précision croissante : ● √n compris en x et y : x < √n < y
  • 50. 12 janvier 2016 Alexandrie 50/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithme de Héron Racine carrée de a à ε près : x ← 1 y ← a tant que (y – x) > ε : itération y ← (x + y ) / 2 affectation x ← a / y Le programme
  • 51. 12 janvier 2016 Alexandrie 51/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithme de Héron Le programme en Python def racine (a,epsilon) : # donnée : 1 entier naturel a et un réel epsilon # résultat : la racine carrée de a à epsilon près x = 1 y = a while (y - x) > epsilon : # invariant : x a y≤ √ ≤ y = (x + y)/2 x = a/y return (x+y)/2
  • 52. 12 janvier 2016 Alexandrie 52/82 Pierre-rouge Sciences - Assas Richard Terrat Alexandrie -300 → 600 Thèbes -1800 → -1500
  • 53. 12 janvier 2016 Égypte 53/82 Pierre-rouge Sciences - Assas Richard Terrat L'Égypte ● Codage ● Le papyrus Rhind ● L'algorithme de multiplication
  • 54. 12 janvier 2016 Égypte 54/82 Pierre-rouge Sciences - Assas Richard Terrat Codage ● Numération décimale additive 1 234 567
  • 55. 12 janvier 2016 Égypte 55/82 Pierre-rouge Sciences - Assas Richard Terrat Le papyrus « Rhind » ● découvert au XIX ème siècle dans la tombe de Ramsès II (Thèbes) ● Auteur : Ahmès ● 5m de long14 feuilles ● daté du XVIème siècle av. J. C. ● reprend un papyrus plus ancien du XIXème siècle av. J. C.
  • 56. 12 janvier 2016 Égypte 56/82 Pierre-rouge Sciences - Assas Richard Terrat Le papyrus « Rhind » ● réthorique ● pas d’abstraction ● pas de logique ● pas de démonstration ● problèmes « concrets » ● calculs arithmétiques – les 4 opérations – tables : multiplication, inverse, ... – opérations sur les fractions (7 à 23) ● équations du 1er degré (24 à 27) – résolution par la méthode des « fausses suppositions »
  • 57. 12 janvier 2016 Égypte 57/82 Pierre-rouge Sciences - Assas Richard Terrat Le papyrus « Rhind » ● Calcul des aires – carré, rectangle, triangle, trapèze ● Calcul des volumes – pyramides ● Valeur de π problèmes 48 à 50 – aire d’un cercle de diamètre 9 unités = aire d’un carré de côté 8 unités – π.92/4 ≈ 82 π ≈ 4 x(8 /9)2 ≈ 3,16 – c’est la quadrature (approchée) du cercle !
  • 58. 12 janvier 2016 Égypte 58/82 Pierre-rouge Sciences - Assas Richard Terrat L'algorithme de multiplication ● Calcul de 19 x 35 35 1 35 x 2 = 70 2 70 x 2 = 140 4 140 x 2 = 280 8 280 x 2 = 560 16 ---------------------- 665 19 19 √ 19 ÷ 2 9 √ 9 ÷ 2 4 4 ÷ 2 2 2 ÷ 2 1 √ 1 ÷ 2 0 √ √ √
  • 59. 12 janvier 2016 Égypte 59/82 Pierre-rouge Sciences - Assas Richard Terrat L'algorithme de multiplication ● Calcul de 19 x 35 19 = 16 + 2 + 1 = 24 + 21 + 20 décomposition de 19 en … binaire ! 1910 = 100112 19 = 2 x 9 + 1 9 = 2 x 4 + 1 4 = 2 x 2 + 0 2 = 2 x 1 + 0 1 = 2 x 0 + 1
  • 60. 12 janvier 2016 Égypte 60/82 Pierre-rouge Sciences - Assas Richard Terrat L'algorithme de multiplication 35 x 19 35 x 18 + 35 70 x 9 + 35 70 x 8 + 70 + 35 70 x 8 + 105 140 x 4 + 105 280 x 2 + 105 560 x 1+ 105 1120 x 0 + 560 + 105 560 + 105 665 Dite aussi « du paysan russe »
  • 61. 12 janvier 2016 Égypte 61/82 Pierre-rouge Sciences - Assas Richard Terrat L'algorithme de multiplication Pour multiplier a par b avec r comme résultat ● je pose r = 0 ● tant que b n'est pas nul – Si b est impair ● j'ajoute a à r – je multiplie a par 2 – je divise b par 2 (par défaut) ● maintenant que b est nul, r est le résultat
  • 62. 12 janvier 2016 Égypte 62/82 Pierre-rouge Sciences - Assas Richard Terrat L'algorithme de multiplication def ahmès (a,b) : # données : 2 entiers naturels # résultat : leur produit selon la méthode d'Ahmès r = 0 while b != 0 : # invariant : r + a*b c = b%2 if c != 0 : r = r+a a = a*2 b = b//2 return r Le programme en Python
  • 63. 12 janvier 2016 Égypte 63/82 Pierre-rouge Sciences - Assas Richard Terrat L'algorithme de multiplication 19 x 35 10 x 35 + 9 x 35 10 x 35 + 315 1 x 350 + 315 350 + 315 665 9 x 35 9 x 30 + 9 x 5 9 x 30 + 45 9 x 3 x 10 + 45 27 x 10 + 45 315 selon Pythagore
  • 64. 12 janvier 2016 Égypte 64/82 Pierre-rouge Sciences - Assas Richard Terrat L'algorithme de multiplication Pour multiplier a par b avec r comme résultat ● je pose r = 0 ● tant que b n'est pas nul : – je prends le dernier chiffre de b – je multiplie ce dernier chiffre par a ● cf. table de multiplication de Pythagore – je l'ajoute à r – je multiplie a par dix – je divise b par dix (par défaut) ● maintenant que b est nul, r est le résultat selon Pythagore
  • 65. 12 janvier 2016 Égypte 65/82 Pierre-rouge Sciences - Assas Richard Terrat L'algorithme de multiplication def pythagore (a,b) : # données : 2 entiers naturels # résultat : leur produit selon la méthode de Pythagore r = 0 while b != 0 : # invariant : r + a*b c = b%10 if c != 0 : r = r + produitParUnChiffre (c,a) a = a*10 b = b//10 return r Le programme en Python
  • 66. 12 janvier 2016 Égypte 66/82 Pierre-rouge Sciences - Assas Richard Terrat L'algorithme de multiplication def produitParUnChiffre (a,b) : # données : a chiffre décimal, b entier naturel # résultat : le produit de a par b r = 0 while b != 0 : # invariant : r + a*b c = b%10 if c != 0 : r = r + c*a # table de multiplication a = a*10 b = b//10 return r Le programme en Python
  • 67. 12 janvier 2016 Ègypte 67/82 Pierre-rouge Sciences - Assas Richard Terrat Et dans les ordinateurs ... ● On fait comment ? – comme les égyptiens ? – comme Pythagore ? – autrement ? ● Préférences ? – beaucoup d'opérations simples – peu d'opérations complexes ● Un indice : – les nombres sont codés en binaire !
  • 68. 12 janvier 2016 Alexandrie 68/82 Pierre-rouge Sciences - Assas Richard Terrat Thèbes Babylone Thèbes -1800 → -1500 Babylone -2500 → -1500
  • 69. 12 janvier 2016 Babylone 69/82 Pierre-rouge Sciences - Assas Richard Terrat Babylone ● Historique ● Codage ● Algorithmes
  • 70. 12 janvier 2016 Babylone 70/82 Pierre-rouge Sciences - Assas Richard Terrat Historique ● Sources – 400 tablettes d'argile mises au jour depuis les années 1850 datées de -2 500 à -1 500 ● Contenus – calculs arithmétiques : multiplications, divisions, fractions, racines carrées – géométrie : calculs d'hypoténuse, triplets pythagoriciens, théorème de Pythagore – algèbre : équations du premier, second et troisième degré – éléments de trigonométrie
  • 71. 12 janvier 2016 Babylone 71/82 Pierre-rouge Sciences - Assas Richard Terrat Codage ● base 60 ● 2 signes : clou et chevron ● chiffres codés en additif ● nombres codés en positionnel ● exemples – chiffre 24 = [24] – nombre 152 = 2*60 + 32 = [2 ; 32] 1 10
  • 72. 12 janvier 2016 Babylone 72/82 Pierre-rouge Sciences - Assas Richard Terrat Codage ● Ambiguïtés – 152 = 2*60 + 32 = [2 ; 32] – 7 232 = 2*3600 + 32 = [2 ; 0 ; 32] ● Invention du zéro « intercalaire » 0 152 7 232
  • 73. 12 janvier 2016 Babylone 73/82 Pierre-rouge Sciences - Assas Richard Terrat Codage ● Mais … pas de zéros en positions terminales – 2 = [2] – 120 = [2 ; 0] – 7 200 = [ 2 ; 0 ; 0 ] ● Nombres fractionnaires – exprimées en puissances négatives de 60 – pas de zéros en positions initiales – 1 ÷ 30 = 2 ÷ 60 = [0 ; 2] – 1 ÷ 1 800 = 2 ÷ 3 600 = [ 0 ; 0 ; 2]
  • 74. 12 janvier 2016 Babylone 74/82 Pierre-rouge Sciences - Assas Richard Terrat Codage ● Représentation actuelle en virgule flottante – exemple : 365,25 = 3,6525 x 102 = 36525 x 10-3 ● norme informatique : 0,36525 x 103 = {36525 ; 3} ● mantisse : 36525 exposant : 3 ● règle à calcul : 3,6525 … sans exposant ● Représentation babylonienne – virgule flottante sans exposant – nombres définis à une puissance de 60 près représente 2 ou 120 ou 1÷30 ou ...
  • 75. 12 janvier 2016 Babylone 75/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithmes ● Algorithme de Babylone – tablette Babylonienne YBC 7289 – datée de - 1700 – collection babylonienne Yale University
  • 76. 12 janvier 2016 Babylone 76/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithmes ● La Tablette YBC 7289 [30] = 1/2 [1 ; 24 ; 51 ; 10 ] = 1,414 213 [42 ; 25 ; 35 ] = 0,707 106 or on sait que : √2 = 1,414 213 √2 / 2 = 1 / √2 = 0,707 106 c'est donc le valeur de √2 avec 6 décimales exactes ! par recoupement avec d'autres tablettes, on pense qu'elle a été calculée par … l'algorithme de Héron !!
  • 77. 12 janvier 2016 Babylone 77/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithmes ● La multiplication – plusieurs méthodes dont celle … de Pythagore ! – utilisation de nombreuses tables : carrés, inverses – utilisation d'identités remarquables : ● (a + b)2 = a2 + 2 a.b + b2 ⇒a.b = ((a + b)2 - a2 - b2 ) /2 ● (a - b)2 = a2 - 2 a.b + b2 ⇒a.b = ((a + b)2 - (a - b)2 ) /4 – décomposition en carrés : méthode analogue au calcul du pgcd …. d'Euclide !
  • 78. 12 janvier 2016 Babylone 78/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithmes ● La multiplication par décomposition en carrés – exemple : 22 x 14 22 x 14 8 x 14 8 x 6 2 x 4 2 x 22 x 6 14 x 14 8 x 8 6 x 6 2 x 2 2 x 2 196 + 64 260 + 36 296 + 4 300 + 4 304 + 4 308 0 + 196
  • 79. 12 janvier 2016 Babylone 79/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithmes ● La multiplication ● je pose r = 0 tant que a ≠ 0 et b ≠ 0 : – si a ≥ b ● j'ajoute b2 à P ● je retranche b de a – sinon ● j'ajoute a2 à P ● je retranche a de b
  • 80. 12 janvier 2016 Babylone 80/82 Pierre-rouge Sciences - Assas Richard Terrat Algorithmes def babylone (a,b) : # données : 2 entiers naturels # résultat : leur produit selon une méthode babylonienne r = 0 while a != 0 and b != 0 : # invariant : r + a*b if a>b : r = r + b**2 # cf. : table des carrés a = a-b else : r = r + a**2 # cf. : table des carrés b = b-a return r Le programme en Python
  • 81. 12 janvier 2016 81/82 Pierre-rouge Sciences - Assas Richard Terrat Calculabilité ● Question – peut-on « tout » calculer ? – existe-t-il un algorithme pour tout problème posé ? ● Réponse – NON ● Exemple – existe-t-il un agorithme permettant de calculer les solutions des équations de Diophante (fondées en 250) ? ● problème posé par David Hilbert en 1900 ● résolu négativement par Yuri Matiyasevitch en 1970
  • 82. 12 janvier 2016 82/82 Pierre-rouge Sciences - Assas Richard Terrat Bibliographie ● Le théorème du perroquet – Denis Guedj - Editions du seuil ● Les neuf chapitres – Karine Chemla, Guo Shuchun – Dunod ● Zéro – Denis Guedj - Robert Laffont ● Sur les traces de l'Homo mathematicus – Bernard Duvillié – Ellipses ● L'histoire des mathématiques – Richard Mankiewicz - Seuil

Notes de l'éditeur

  1. Définition plus complexe en 1966 Académie française
  2. Arsac astrophysicien
  3. Désignait au moyen êge le calcul arithmétique selon le système décimal indien
  4. Compromis entre chronologie et géographie Babylone : Bonus
  5. Une des maisons de la sagesse des pays arabes
  6. Traductions en arabe des textes grecs persans, Indiens (par le Sindh) et chinois transmis par la route de la soie Philosophie Médecine Logique Mathématique Astronomie Musique Platon, Pythagore, Euclide, Aryabhata, Brahamagupta
  7. Introduction en Europe de la numération par position et du zéro vers 1 000 1 200
  8. Faux problème concret
  9. Type d&amp;apos;équation (ne figurant pas dans l&amp;apos;algèbre d&amp;apos;Al Kwurazimi)
  10. Il resta enfant pendant le sixième de sa vie. Après un autre douzième, ses joues se couvrirent de barbe. Après un septième, il alluma le flambeau du mariage. Cinq ans après il lui naquit un fils, mais celui-ci mourut arrivé à la moitié de l&amp;apos;âge auquel son père mourut. Diophante vécut encore quatre ans, adoucissant sa douleur par des recherches sur la science des nombres.
  11. Bakhshali ville au nord du Pakistan Manuscrit découvert en 1881
  12. Bakhshali ville au nord du Pakistan Manuscrit découvert en 1881
  13. A l&amp;apos;origine algorithme désigne ces calculs
  14. Peut être issu du manuscrit de Bakhshali Algorithme écrit en langue naturelle
  15. Écrit en langue naturelle
  16. C&amp;apos;est l&amp;apos;algorithme d&amp;apos;Aryabhata
  17. Ne suit pas l&amp;apos;anti chronologie
  18. 20 ans de travail pour la traduction
  19. Restes chinois utilisé en RSA pour le décryptage avec le clef privée Pivot de Gauss utilisé aujourd&amp;apos;hui surtout en programmation
  20. Diagonalisation par algorithme
  21. Non utilisé en calcul
  22. Babylone : Bonus
  23. Suivi du système ionique décimal additif Codage par 27 lettres (24 grecques + 3 phéniciennes) 1 à 9 10 à 90 100 à 900
  24. Algorithme : solution d&amp;apos;un ensemble de problèmes 2 tomes postérieurs à Euclide
  25. Si on peut carreler le rectangle alors on peut carreler le carré
  26. Babylone : Bonus
  27. Il existe d&amp;apos;autres papyrus : Berlin, Moscou, etc .. mais moins complets
  28. A droite Décomposition binaire de 19 On coche les quotients impairs
  29. Babylone : Bonus