FilmPourQuoiTuCherches:Episode 2 :Abou-Jafar et Ada, Algorithme et Programme
De Sciencinfolycee
- Objectif/message (voie off): Il faut comprendre la différence entre penser et calculer. Penser est la noblesse de l'esprit et reste difficilement explicable. Calculer est bien plus simple et systématique, et pour tout dire mécanisable. Il s'agit de résoudre un problème précis en suivant une mode d'emploi précis en vue d'une application données, par exemple pour trier une liste d'objets, multiplier deux nombres ou extraire une racine carrée. L'algorithmique est la science de l'organisation des opérations à effectuer. Elle travaille sur des opérations abstraites, comme additionner deux nombres. Pour passer aux opérations concrètes, il faut écrire tout de façon bien plus précise, sous la forme d'un programme écrit dans un langage de programmation. Retiens bien que le but final de l'informatique est d'évacuer la pensée du calcul, afin de le rendre exécutable par un ordinateur, qui est une machine fabuleusement rapide et exacte, mais fabuleusement dénuée de pensée.
- Eléments de contenu:
- Il s'appelle Al-Khuwārizmī: Abou-Jafar Muhammad Ibn Mūsa al Khuwārizmī. Dans cette Perse (Iran/Irak actuel) de la fin du 9ème siècle, cela fait déjà deux siècles que le Prophète et Messager, le salut soit sur lui , a fait de l'arabe la langue universelle dans cette partie du monde, et de la recherche de la connaissance un des objectifs de la vie. Le monde arabe va alors, très sobrement, traduire, donc s'approprier, donc comprendre, toutes les connaissances scientifiques du monde d'alors. Abou-Jafar est un tel traducteur, donc transmetteur. Il va chercher à ce que ces contemporains puissent, même sans tout comprendre dans les détails, reproduire des mécanismes de calcul complexes, trouver en appliquant pas à pas une recette de calcul, des solutions aux équations dont ils ont besoin. A lui l'invention de l'algèbre, du nom de son traité , c'est à dire des modèles de calculs où des lettres peuvent être remplacées par des nombres variables, donc être utilisés pour faire plein de calculs similaires. A lui l'invention des algorithmes (ce nom est une déformation latine de son propre nom), le mot est une simple déformation de son Al-Khuwārizmī de nom. A lui aussi le passage du zéro d'inde en occident, donc de ce qu'on appelle les ``chiffres arabes´´, pilier indispensables de nos mathématiques d'aujourd'hui. Abou-Jafar nous a offert les algorithmes.
- Elle s'appelle Ada: Augusta Ada King, comtesse Lovelace, fille de Byron, fille naturelle, donc illégitime, de ce gigantesque poète anglais que le bébé de six mois qu'elle fut ne reverra jamais. Mathématicienne, elle publiera ses résultats mathématiques sous un nom masculin, dans ce monde qui se croit aussi civilisé qu'il est machiste et vivra sa vie de femme au mépris des conventions et au mépris des imbéciles. C'est à sa table de travail que nous pourrions la croiser dans sa belle robe d'intérieur, au cours de ces neuf mois de 1842 à 1843 où elle traduira du français les éléments mathématiques qui vont permettre à son Babbage de travailler à la construction d'un ordinateur mécanique qu'il appellera machine à différences, qu'il n'achèvera jamais, mais qu'à partir de ses plans on a pu reconstruire en partie au Musée de la Science de Londres en1991 et qui fonctionnera parfaitement. Elle y ajoutera avec Babbage les premiers programmes informatiques au monde. Les uns diront que les programmes ont été écrits par Babbage lui-même, et qu'Ada a simplement été une traductrice, et trouvé une erreur, et l'a fait corriger. La vérité est sûrement qu'ils ont fait ce que tous les scientifiques font : ils ont collaboré. Et sa courte vie, brisée à 36 ans par un cancer et une médecine encore bouchère, ruinée d'avoir tenté de donner à Babbage les moyens financiers de concrétiser son rêve, a permis de mettre l'informatique au féminin. Ada est celle qui a permis d'incarner les algorithmes dans des programmes.
- À 10 siècles d'écart, on rêverait de voir Abou-Jafar et Ada débattre des difficultés comparées des traductions qu’il ont du faire. Ils se rendraient hommage mutuellement. Dans une vision juste de ce qu'allait devenir l'informatique Ada nous dit : « La machine analytique n'a nullement la prétention de créer quelque chose par elle-même. Elle peut exécuter tout ce que nous saurons lui ordonner d’exécuter [...] Son rôle est de nous aider à effectuer ce que nous savons déjà dominer. [...] Des opérations numériques et aussi symboliques. »
Notions d'algorithme et programme
Notion d'algorithme
- Philippe Flajolet, Étienne Parizot,"Qu’est-ce qu’un algorithme ?",24/02/2004, Cf. http://interstices.info/jcms/c_5776/quest-ce-quun-algorithme
- Gilles Dowek, Thierry Viéville, Jean-Pierre Archambault, Emmanuel Baccelli, Benjamin Wack, "Les ingrédients des algorithmes " 21/04/2010; Cf. http://interstices.info/ingredients-algorithmes
- François Laroussinie Introduction à l'algorithmique, structures de contrôle et de données
- Thierry Viéville Algorithmes, mode d’emploi
Notion de programme
- Article de Wikipedia http://fr.wikipedia.org/wiki/Programme_%28informatique%29
- Gilles Dowek Premiers principes des langages de programmation