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
19/11/2009 2Collège de France, G. Berry, Le calcul humain assisté
19/11/2009 3Collège de France, G. Berry, Curt Herzstark,
19/11/2009 4Collège de France, G. Berry, La révolution du microprocesseur Si vous minstruisez bien, je sais tout faire tout seul, en tournant moi-même la manivelle ! Si vous minstruisez bien, je sais tout faire tout seul, en tournant moi-même la manivelle ! coeur 1 coeur 2
19/11/ Collège de France, G. Berry, La révolution du microprocesseur Rapidité, exactitude, stupidité coeur 1 coeur 2
Rapidité Exactitude Stupidité Maîtrise ? Modèles de calcul 19/11/2009 6Collège de France, G. Berry, Sans la main => sans la pensée ! Intuition Rigueur Lenteur Calculer sur le calcul
19/11/2009 7Collège de France, G. Berry, Anatomie dun modèle de calcul raisonnement sur la correction pensée algorithmique conception et programmation implantation optimisationvérification machineslangages noyau intuitif et mathématique
19/11/2009 8Collège de France, G. Berry, Pourquoi plusieurs modèles de calcul, alors que tous les ordinateurs semblent marcher pareil ?
1.Modèles de la calculabilité 2.Modèles séquentiels 3.Modèles parallèles 4.Modèles diffus 19/11/2009 9Collège de France, G. Berry, Quatre classes de modèles
19/11/ Collège de France, G. Berry, La sémantique : concepts symboles Domaine des symboles 34 et 56 sont des symboles en représentation décimale et + le symbole dun algorithme Machine : Domaine des concepts : la somme du nombre 34 et du nombre 56 est le nombre 90 Il ny a pas de nombres dans un ordinateur rien que des symboles
19/11/ Collège de France, G. Berry, Symboles Concepts somme du nombre « 34 » et du nombre « 56 » nombre « 90 » notation 090 dénotation manivelle Le diagramme sémantique Pour comprendre linformatique, il faut arriver à être aussi bête quun ordinateur
/11/ Collège de France, G. Berry, Causalité des calculs (3+4)+(8-3) 7+(8-3)(3+4)+5 12 résidu création La causalité détermine la liberté du calcul
Déterminisme : un seul résultat –calcul mathématique standard –circuits électroniques –pilotage davions, conduite de voitures, etc. 19/11/ Collège de France, G. Berry, Déterminisme / non-déterminisme 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 dune page Web –encore quelques voitures (hélas)
Un nombre est premier sil na pas dautre diviseur que 1 et lui-même 19/11/ Collège de France, G. Berry, Le crible dEratosthène
/11/ Collège de France, G. Berry, Le crible dEratosthène Un nombre est premier sil na pas dautre diviseur que 1 et lui-même
/11/ Collège de France, G. Berry, Le crible dEratosthène Un nombre est premier sil na pas dautre diviseur que 1 et lui-même
19/11/ Collège de France, G. Berry, Le crible de Darwin : p, kp p Banâtre - Le Métayer : GAMMA Berry - Boudol : CHAM
19/11/ Collège de France, G. Berry, 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 à linfini
1.Par les machines machines de Turing, de von Neumann, automates cellulaires, pavages du plan, etc. 2.Par les langages et calculs algébriques définitions récursives de fonctions -calcul 3.Par les classes algébriques de fonctions fermetures par opérations appropriées Toutes ces définitions sont équivalentes 19/11/ Collège de France, G. Berry, Comment définir la calculabilité ? Thèse de Church-Turing : Toute nouvelle définition restera équivalente
/11/ Collège de France, G. Berry, La machine de Turing A : 3 D, A A : 4 G, B A : 8 3, A B : 3 D, C A : 7 G, B A : 7 2, A D GE non-déterminisme arrêt
Théorème : il existe une machine universelle U qui permet de simuler toute machine sur toute donnée 19/11/ Collège de France, G. Berry, Machine universelle Données M DonnéesDocM U Le programme enregistré est la clef de linformatique
Théorème : il nexiste pas de machine testant si une machine M sarrête sur une donnée D 19/11/ Collège de France, G. Berry, Indécidabilité de lArrêt A sarrête toujours A rend 1 si M sarrête A rend 0 si M boucle A Données M DonnéesDocM Toute propriété non-triviale est indécidable
19/11/ Collège de France, G. Berry, Alan Turing ( ) 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 largument diagonal, donnons le prix Turing à titre posthume !
Fact (m) si m 1 alors 1 sinon Mult (m, Fact(m 1)) Un langage : la récursion générale 19/11/ Collège de France, G. Berry, Add (m, n) si m 0 alors n sinon si n 0 alors m sinon (Add (m 1, n 1) 1) 1 Mult (m, n) si m 0 alors 0 sinon si m 1 alors n sinon Add (Mult(m 1, n), n)
f(2) ( x. x+1) (2) 25/11/ G. Berry, Collège de France, Le -calcul (Church 1936) -notation f x. x+1 Notation classique des fonctions f [ x x+1 ] g [ y y 2 ] g f [ z g(f(z)) ] [ z (z+1) 2 ] f(2) ( x. x+1) (2) g(3) ( y. y 2 ) (3) 3 2 9g y. y 2 Donner un vrai statut à la notation des fonctions 2+1 3
g f z. ( y. y 2 ) (( x. x+1) (z)) 25/11/ G. Berry, Collège de France, g f ( u. v. z. u(v(z))) ( y. y 2 ) ( x. x+1) f x. x+1 g y. y 2 u. v. z. u(v(z)) g f ( u. v. z. u(v(z))) ( y. y 2 ) ( x. x+1) g f z. ( y. y 2 ) (( x. x+1) (z)) g f z. ( y. y 2 ) (z+1) g f z. (z+1) 2 g f z. ( y. y 2 ) (z+1) gf : [ z (z+1) 2 ] g f
19/11/ Collège de France, G. Berry, Le -calcul pur x, y, z,... : variables x. M : abstraction fonction de x de corps M (MN) : application dune 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 ?
19/11/ Collège de France, G. Berry, 0 f. x. x 1 f. x. fx 2 f. x. f(fx)... n f. x. f n (x) = f(f(...f(x)...)) n. f. x.f (nfx) -1 λn.λf.λx. n (λg.λh.h(fg)) (λu.x) (λv.v) Le nombre n devient lalgorithme qui applique n fois une fonction f à son argument x
19/11/ Collège de France, G. Berry, Récursion et point fixe let rec Fact m si m 1 alors 1 sinon Mult (m, Fact (m 1)) Fact = FACT (Fact) - équation de point fixe FACT f. m. si m 1 alors 1 sinon Mult (m, f (m 1)) 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 quil laisse fixe !
19/11/ Collège de France, G. Berry, La carte du -calcul relations avec la logique formelle algorithmique récursive programmation fonctionnelle machines virtuelles CAM, Krivine SCHEME CAML Haskell Javascript compilation et optimisation des langages fonctionnels LCF, HOL Isabelle, CoQ -calcul domaines de Scott
19/11/ Collège de France, G. Berry, La carte du -calcul relations avec la logique formelle algorithmique récursive programmation fonctionnelle machines virtuelles CAM, Krivine SCHEME CAML Haskell Javascript compilation et optimisation des langages fonctionnels LCF, HOL Isabelle, CoQ -calcul domaines de Scott Jean-Jacques Lévy
19/11/ Collège de France, G. Berry, La carte du -calcul relations avec la logique formelle algorithmique récursive programmation fonctionnelle machines virtuelles CAM, Krivine SCHEME CAML Haskell Javascript compilation et optimisation des langages fonctionnels LCF, HOL Isabelle, CoQ -calcul domaines de Scott Gérard Huet -calcul domaines de Scott
=> génie logicien 19/11/ Collège de France, G. Berry, Le théorème des 4 couleurs en CoQ Preuve omise, évidente mais longue 1852 Guthrie 1976 Appel – Haken Georges GonthierGeorges Gonthier 2005 Gonthier (en CoQ)
19/11/ Collège de France, G. Berry, Systèmes détats finis Expressions régulières : (ab+b)*ba ba abba bba abbabba... Automates finis circuits électroniques systèmes embarqués, réseaux interfaces homme-machine analyse des langues, du génome,... Langages évolués (Statecharts, Esterel, SCADE)
19/11/ Collège de France, G. Berry, La carte des systèmes détats finis logiques temporelles théorie des langages états / transitions grammaires automates circuits électroniques Lex, Yacc Esterel Statecharts automates langages réguliers langages automates langages circuits model- checking optimisation booléenne Joseph Sifakis Amir Pnueli
19/11/ Collège de France, G. Berry, La carte des systèmes détats finis logiques temporelles théorie des langages états / transitions grammaires automates circuits électroniques Lex, Yacc Esterel Statecharts automates langages réguliers langages automates langages circuits model- checking optimisation booléenne Dominique Perrin
Communication entre machines distantes – unité centrale et périphériques (PC imprimante) – émetteurs et receveurs multiples : réseaux 19/11/ Collège de France, G. Berry, Pourquoi le parallélisme Partage de ressources – PC: plusieurs tâches partagent le CPU, les disques, etc. – stockage dinformation dans les grands réseaux. Amélioration de performances – machines parallèles, grilles, nuages – circuits : caches, spéculation, multicœurs, SoCs, etc.
19/11/ Collège de France, G. Berry, Pourquoi le parallélisme Contrôle dobjets 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
19/11/ Collège de France, G. Berry, Interblocage (deadlock)
19/11/ Collège de France, G. Berry, Famine (starvation)
13:0613:0312:57 19/11/ Collège de France, G. Berry, Le ski au 20 e siècle 13:00
19/11/ Collège de France, G. Berry, Le ski au 20 e siècle, avec protocole 13:0613:0312:57 13:00 Le drapeau ajoute le lien de causalité manquant
19/11/ Collège de France, G. Berry, Le ski au 21 e siècle On peut même prévenir davance quon sera en retard ! 13:0613:0312:57 13:00
19/11/ Collège de France, G. Berry, Processus et communication PQ RS Réseaux de processus statiques ou dynamiques Trois types de communication – asynchrone : temps quelconque – synchrone : temps conceptuellement nul – vibratoire : temps non nul prévisible
19/11/ Collège de France, G. Berry, Parallélismes synchrone et vibratoire Synchrone Musiciens et spectateurs négligent la vitesse du son Vibratoire Mais les acousticiens règlent sa propagation
19/11/ Collège de France, G. Berry, Applications : embarqué et circuits SCADE circuits électroniques Nicolas Halbwachs modèle / langage Lustre Jean Vuillemin nombres 2-adiques
19/11/ Collège de France, G. Berry, Mémoire partagée PQ RS Mémoire
19/11/ Collège de France, G. Berry, PQ P P P Q Q Q P P Michel Raynal Brisure de causalité
P and Q sont asynchrone, mais communiquent de façon localement synchrone A ce moment, chacun sait ce que sait lautre Les rendezvous sont ordonnancés de manière non-déterministe 19/11/ Collège de France, G. Berry, Rendezvous = information partagée PQ
19/11/ Collège de France, G. Berry, CSP = séquentiel + rendez-vous PQ RS Bien contrôlable, mais souvent trop lourd
Découplage de lémetteur et du récepteur – plus de parallélisme – mais introduction de latence imprévisible – et comportement total plus complexe 19/11/ Collège de France, G. Berry, Communication par files dattente PQ Applications – transmission dans les réseaux – traitement du signal – interfaces homme / machine, Web
nœuds déterministes, files non bornées ordonnancement non-déterministe arbitraire Mais résultat déterministe ! Magnifique sémantique mathématique 19/11/ Collège de France, G. Berry, Réseaux de Kahn
19/11/ Collège de France, G. Berry, Réseaux graphiques Réseaux de Petri Source Univ. Stuttgart Réseaux dautomates
19/11/ Collège de France, G. Berry, Le - calcul de Milner : chimie + calcul habitez chez vos parents?> Annuaire adr rep Cedric Fournet
Dun ordinateur, on ne sort jamais que ce quon y a mis DInternet, je sors ce que le reste du monde y a mis Homo bureaucratus Homo Internetus 55 19/11/ Collège de France, G. Berry,
19/11/ Collège de France, G. Berry, Communautés, pair-à-pair et réseaux virtuels Anne-Marie Kermarrec
19/11/ Collège de France, G. Berry, Calcul diffus : alerte aux pucerons ! infestation massive par pucerons enfouis partout qui peuvent communiquer entre eux Comment les programmer et les coordonner ? Manuel Serrano
De nombreux principes de calcul parallèle – trains de spikes (vibratoires) – évaluations probabilistes – discussions asynchrones – synchronisation dhorloges Un mélange synchrone / asynchrone – conscient séquentiel, inconscient parallèle Une robustesse fondamentale – apprentissage (semi-) spontané – beaucoup de pièces en panne – plasticité cérébrale 19/11/ Collège de France, G. Berry, Comment calcule notre cerveau ?
19/11/ Collège de France, G. Berry, Sophie Denève Yves Frégnac Neurosciences computationnelles => nouveaux principes de calcul informatique => commande dactions par lactivité cérébrale => couplages circuits / neurones
19/11/ Collège de France, G. Berry,
Le 20 e siècle a été celui de lénergie et du moteur Le 21 e sera celui de linformation et du calcul – quil faut donc étudier à fond Lépidémie numériques gagne les sciences – mathématiques numériques G. Gonthier, E. Ghys, … – Physique numérique, cf L.I. Antoine Georges, 2009 – Bioinformatique, informatique médicale – … 19/11/ Collège de France, G. Berry, Conclusion Faire ce qu on veut en étant aussi bête quun ordinateur demande beaucoup dintelligence
A mon directeur de thèse Maurice Nivat A mes thésards préférés Pierre-Louis Curien Laurent Cosserat Georges Gonthier Olivier Tardieu A la bande du bâtiment 8 de lINRIA Rocquencourt Bruno Courcelle Philippe Flajolet Gérard Huet Gilles Kahn Gustave Jean-Jacques Lévy Ron Rivest Jean-Marc Steyaert Jean Vuillemin A la bande de lEcole des Mines / INRIA Sophia-Antipolis Yves Bertot Gérard Boudol Frédéric Boussinot Ilaria Castellani Jean-Paul Marmorat Jean-Paul Rigault Davide Sangiorgi Robert de Simone Valérie Roy A la bande de Digital Equipment Patrice Bertin François Bourdoncle Olivier Coudert Jean-Christophe Madre Mark Shand Hervé Touati Jean Vuillemin A la bande de Grenoble Paul Caspi Nicolas Halbwachs Florence Maraninchi Pascal Raymond Joseph Sifakis A la bande dEsterel Technologies Amar Bouali Xavier Fornari Bruno Pagano Marc Perreaut... et tous les autres Et à mes collègues étrangers Mike Kishinevsky Edward Lee David McQueen Robin Milner Dana Scott Gordon Plotkin Ellen Sentovich Ravi Sethi Remerciements spéciaux