1 / 62

Penser, modéliser et maîtriser le calcul informatique

Penser, modéliser et maîtriser le calcul informatique. Gérard Berry. Chaire Informatique et sciences numériques Collège de France, 19 novembre 2009. Le calcul humain assisté. Curt Herzstark, 1936-1945. La révolution du microprocesseur. coeur 1. coeur 2.

halil
Télécharger la présentation

Penser, modéliser et maîtriser le calcul informatique

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Penser, modéliser et maîtriserle calcul informatique Gérard Berry Chaire Informatique et sciences numériques Collège de France, 19 novembre 2009

  2. Le calcul humain assisté Collège de France, G. Berry,

  3. Curt Herzstark, 1936-1945 Collège de France, G. Berry,

  4. La révolution du microprocesseur coeur 1 coeur 2 Si vous m’instruisez bien, je sais tout faire tout seul, en tournant moi-même la manivelle ! Si vous m’instruisez bien, je sais tout faire tout seul, en tournant moi-même la manivelle ! Collège de France, G. Berry,

  5. La révolution du microprocesseur coeur 1 coeur 2 Rapidité, exactitude, stupidité Collège de France, G. Berry,

  6. Sans la main => sans la pensée ! Modèles de calcul Maîtrise ? Calculer sur le calcul Rapidité Exactitude Stupidité Intuition Rigueur Lenteur Collège de France, G. Berry,

  7. Anatomie d’un modèle de calcul pensée algorithmique conception et programmation raisonnement sur la correction noyau intuitif et mathématique machines langages implantation optimisation vérification Collège de France, G. Berry,

  8. Pourquoi plusieurs modèles de calcul, alors que tous les ordinateurs semblent marcher pareil ? Collège de France, G. Berry,

  9. Quatre classes de modèles • Modèles de la calculabilité • Modèles séquentiels • Modèles parallèles • Modèles diffus Collège de France, G. Berry,

  10. La sémantique : concepts ↔ symboles • Domaine des concepts : • la somme du nombre 34 et du nombre 56 est le nombre 90 • Domaine des symboles • 34 et 56 sont des symboles en représentation décimale • et+ le symbole d’un algorithme Machine : 34+56 → 0 9 3+5+1 4+6 → 1 0 0 9 0 Il n’y a pas de nombres dans un ordinateur rien que des symboles Collège de France, G. Berry,

  11. Le diagramme sémantique somme du nombre « 34 » et du nombre « 56 » nombre « 90 » Concepts Symboles dénotation manivelle notation 090 34+56 Pour comprendre l’informatique, il faut arriver à être aussi bête qu’un ordinateur Collège de France, G. Berry,

  12. Causalité des calculs (3+4)+(8-3) (3+4)+(8-3) 7+(8-3) (3+4)+5 résidu création 7+5 7+5 12 La causalité détermine la liberté du calcul Collège de France, G. Berry,

  13. Déterminisme / non-déterminisme • Déterminisme : un seul résultat • calcul mathématique standard • circuits électroniques • pilotage d’avions, conduite de voitures, etc. • Non-déterminisme : plusieurs résultats • navigateur Internet, moteur de recherches, etc. • incertitude : on ne peut pas connaître en même temps la position et le contenu d’une page Web • encore quelques voitures (hélas) Collège de France, G. Berry,

  14. Le crible d’Eratosthène Un nombre est premier s’il n’a pas d’autre diviseur que 1 et lui-même • 2 3 4 5 6 7 8 9 10 11 • 12 13 14 15 16 17 18 19 20 21 • 22 23 24 25 26 27 28 29 30 31 • 32 33 34 35 36 37 38 39 40 41 • 42 43 44 45 46 47 48 49 50 51 Collège de France, G. Berry,

  15. Le crible d’Eratosthène Un nombre est premier s’il n’a pas d’autre diviseur que 1 et lui-même 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 Collège de France, G. Berry,

  16. Le crible d’Eratosthène Un nombre est premier s’il n’a pas d’autre diviseur que 1 et lui-même 2 3 4 5 6 7 8910 11 12 13 1415 16 17 18 19 2021 22 23 24 25 262728 29 30 31 323334 35 36 37 383940 41 42 43 44 4546 47 48 49 5051 2 3 4 5 6 7 8910 11 12 13 1415 16 17 18 19 2021 22 23 24 25262728 29 30 31 3233343536 37 383940 41 42 43 44 4546 47 48 49 5051 2 3 4 5 6 7 8910 11 12 13 1415 16 17 18 19 2021 22 23 24 25262728 29 30 31 3233343536 37 383940 41 42 43 44 4546 47 4849 5051 Collège de France, G. Berry,

  17. 3 9 7 4 7 7 7 2 28 Le crible de Darwin : p, kp → p Banâtre - Le Métayer : GAMMA Berry - Boudol : CHAM Collège de France, G. Berry,

  18. Comparaison des cribles séquentialité causalité complexe déterminisme du calcul déterminisme du résultat terminaison triviale limité au fini parallélisme massif causalité minimale non-déterminisme du calcul déterminisme du résultat terminaison probabiliste passe à l’infini Collège de France, G. Berry,

  19. Comment définir la calculabilité ? • Par les machines machines de Turing, de von Neumann, automates cellulaires, pavages du plan, etc. • Par les langages et calculs algébriques définitions récursives de fonctions -calcul • Par les classes algébriques de fonctions fermetures par opérations appropriées Toutes ces définitions sont équivalentes Thèse de Church-Turing : Toute nouvelle définition restera équivalente Collège de France, G. Berry,

  20. La machine de Turing • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • 3 3 3 3 3 1 1 1 1 1 4 4 8 4 4 5 5 5 5 5 9 9 9 9 9 2 2 2 2 2 G E D A : 3 → D, A A : 4 → G, B A : 8 → 3, A B : 3 → D, C A : 7 → G, B A : 7 → 2, A arrêt non-déterminisme Collège de France, G. Berry,

  21. Machine universelle Théorème : il existe une machine universelle U qui permet de simuler toute machine sur toute donnée D o n n é e s U M D o c M D o n n é e s Le programme enregistré est la clef de l’informatique Collège de France, G. Berry,

  22. Indécidabilité de l’Arrêt Théorème : il n’existe pas de machine testant si une machine M s’arrête sur une donnée D D o n n é e s A M D o c M D o n n é e s • A s’arrête toujours • A rend 1 si M s’arrête • A rend 0 si M boucle Toute propriété non-triviale est indécidable Collège de France, G. Berry,

  23. Alan Turing (1912-1954) 1936 : grands théorèmes 1940 : casse le code allemand Enigma 1952 : condamné pour homosexualité castré chimiquement 1954 : suicide (?) 2009 : excuses de Gordon Brown A Turing qui aimait tant l’argument diagonal, donnons le prix Turing à titre posthume ! Collège de France, G. Berry,

  24. Un langage : la récursion générale • Fact(m)  si m1 alors 1 sinon Mult(m, Fact(m1)) • Mult(m, n)  si m0 alors 0 sinon si m1 alors n sinon Add(Mult(m1, n), n) • Add(m, n)  si m0 alors n • sinon si n0 alors m • sinon (Add(m1, n1)1)1 Collège de France, G. Berry,

  25. Le -calcul (Church 1936) Donner un vrai statut à la notation des fonctions • Notation classique des fonctions • f = [x  x+1] • g= [y  y2] • g○f= [z g(f(z))] = [z  (z+1)2] • -notation • f =x.x+1 f(2)= (x.x+1)(2) f(2)= (x.x+1)(2)  2+1  3 g =y.y2 g(3)=(y.y2)(3) 32  9 G. Berry, Collège de France,

  26. f =x.x+1 • g =y.y2 • ○=u.v.z.u(v(z)) ○ gf=(u.v.z.u(v(z))) (y.y2)(x.x+1) f ○ g ○ gf=(u.v.z.u(v(z))) (y.y2) (x.x+1) ○ gf= z.(y.y2) ((x.x+1) (z)) ○ gf= z.(y.y2) ((x.x+1) (z)) ○ gf= z.(y.y2) (z+1) ○ gf= z.(y.y2) (z+1) ○ gf= z.(z+1)2 • g○f :[ z (z+1)2 ] G. Berry, Collège de France,

  27. Le -calcul pur • x, y, z,... : variables • x. M : abstraction fonction de x de corps M • (MN) : application d’une fonction à un argument • (x.M)N  M[N/x] : -réduction mais ce calcul est vide ! Où sont donc les entiers, la récursion, etc ? Collège de France, G. Berry,

  28. 0= f.x.x 1= f.x.fx 2= f.x.f(fx) ... n= f.x.fn(x) = f(f(...f(x)...)) ... Le nombre n devient l’algorithme qui applique n fois une fonction f à son argument x +1=n.f.x.f(nfx) -1= λn.λf.λx. n (λg.λh.h(fg)) (λu.x) (λv.v) Collège de France, G. Berry,

  29. Récursion et point fixe let recFactmsi m1 alors 1 sinon Mult(m, Fact(m1)) FACT f.m.si m1 alors 1 sinon Mult(m, f(m1)) Fact = FACT(Fact) - équation de point fixe Fact = Y (FACT) avec Y = (x. y.y(xxy)) (x. y.y(xxy)) Pour comprendre comment un calcul évolue, le mieux est de comprendre ce qu’il laisse fixe ! Collège de France, G. Berry,

  30. La carte du -calcul algorithmique récursive programmation fonctionnelle relations avec la logique formelle SCHEME CAML Haskell Javascript -calcul domaines de Scott machines virtuelles CAM, Krivine compilation et optimisation des langages fonctionnels LCF, HOL Isabelle, CoQ Collège de France, G. Berry,

  31. La carte du -calcul algorithmique récursive programmation fonctionnelle relations avec la logique formelle SCHEME CAML Haskell Javascript -calcul domaines de Scott machines virtuelles CAM, Krivine Jean-Jacques Lévy compilation et optimisation des langages fonctionnels LCF, HOL Isabelle, CoQ Collège de France, G. Berry,

  32. La carte du -calcul algorithmique récursive programmation fonctionnelle relations avec la logique formelle SCHEME CAML Haskell Javascript -calcul domaines de Scott -calcul domaines de Scott machines virtuelles CAM, Krivine Gérard Huet compilation et optimisation des langages fonctionnels LCF, HOL Isabelle, CoQ Collège de France, G. Berry,

  33. Le théorème des 4 couleurs en CoQ • 1852 • Guthrie • 1976 • Appel – • Haken • 2005 • Gonthier • (en CoQ) GeorgesGonthier Preuve omise, évidente mais longue => génielogicien Collège de France, G. Berry,

  34. Systèmes d’états finis • Expressions régulières : (ab+b)*ba • ba abba bba abbabba ... • Automates finis • Langages évolués (Statecharts, Esterel, SCADE) circuits électroniques systèmes embarqués, réseaux interfaces homme-machine analyse des langues, du génome, ... Collège de France, G. Berry,

  35. La carte des systèmes d’états finis théorie des langages états / transitions grammaires logiques temporelles Lex, Yacc Esterel Statecharts automates langages réguliers automates circuits électroniques Amir Pnueli Joseph Sifakis model-checking langages → automates langages → circuits optimisation booléenne Collège de France, G. Berry,

  36. La carte des systèmes d’états finis théorie des langages états / transitions grammaires logiques temporelles Lex, Yacc Esterel Statecharts automates langages réguliers automates circuits électroniques Dominique Perrin model-checking langages → automates langages → circuits optimisation booléenne Collège de France, G. Berry,

  37. Pourquoi le parallélisme • Communication entre machines distantes • unité centrale et périphériques (PC → imprimante) • émetteurs et receveurs multiples : réseaux • Partage de ressources • PC: plusieurs tâches partagent le CPU, les disques, etc. • stockage d’information dans les grands réseaux. • Amélioration de performances • machines parallèles, grilles, nuages • circuits : caches, spéculation, multicœurs, SoCs, etc. Collège de France, G. Berry,

  38. Pourquoi le parallélisme • Contrôle d’objets avec parallélisme physique • avion : ~10 gouvernes, 2 réacteurs, 3 trains, etc. • Contrôle de grands systèmes • contrôle aérien • signalisation ferroviaire, aiguillages • contrôle de la circulation en ville • Redondance pour la sécurité et la disponibilité communication, coopération, compétition sécurité des données et communications Collège de France, G. Berry,

  39. Interblocage (deadlock) Collège de France, G. Berry,

  40. Famine (starvation) Collège de France, G. Berry,

  41. Le ski au 20e siècle 13:06 13:03 12:57 13:00 Collège de France, G. Berry,

  42. Le ski au 20e siècle, avec protocole 13:06 13:03 12:57 13:00 Le drapeau ajoute le lien de causalité manquant Collège de France, G. Berry,

  43. Le ski au 21e siècle 13:06 13:03 12:57 13:00 On peut même prévenir d’avance qu’on sera en retard ! Collège de France, G. Berry,

  44. Processus et communication P Q R S • Réseaux de processus statiques ou dynamiques • Trois types de communication • asynchrone : temps quelconque • synchrone : temps conceptuellement nul • vibratoire : temps non nul prévisible Collège de France, G. Berry,

  45. Parallélismes synchrone et vibratoire Synchrone Musiciens et spectateurs négligent la vitesse du son Vibratoire Mais les acousticiens règlent sa propagation Collège de France, G. Berry,

  46. Applications : embarqué et circuits Jean Vuillemin Nicolas Halbwachs SCADE modèle / langage Lustre circuits électroniques nombres 2-adiques Collège de France, G. Berry,

  47. Mémoire partagée P Q R S Mémoire Collège de France, G. Berry,

  48. P Q P Q Q P P P P Q Brisure de causalité Michel Raynal Collège de France, G. Berry,

  49. Rendezvous = information partagée • P and Q sont asynchrone, mais communiquent de façon localement synchrone • A ce moment, chacun sait ce que sait l’autre • Les rendezvous sont ordonnancés de manière non-déterministe P Q Collège de France, G. Berry,

  50. CSP = séquentiel + rendez-vous P Q R S Bien contrôlable, mais souvent trop lourd Collège de France, G. Berry,

More Related