Skip to content

Psychoweb

Ecran diminué  Ecran large  Augmenter la taille de la police  Diminuer la taille de la police  Taille par défaut 
Chemin :    Accueil
Les rêves du Lambda-calcul Convertir en PDF Version imprimable Suggérer par mail

Section : articles, Catégorie : intelligence artificielle

Proposé par Stephane Desbrosses, le 02-02-2008

ImageEn 1932, Alonzo Church, maître spirituel d'Alan Turing, l'un des pères fondateurs de l'Intelligence artificielle) invente le lambda calcul, un langage logique de bas niveau, destiné à décrire de manière ultra-simplifiée les règles de logique, d'opération et de calcul. Church imaginait-il qu'il avait inventée la Pierre de rosette de la logique, le langage qui semblerait décrire nos rèves et nos mathématiques, nos pensées et notre science?

Le Lambda-calcul, langage universel?

Ce langage permet, à l'aide trois instructions seulement, de formaliser toute opération logique, comme les algorithmes ou les démonstrations. Trois opérations grammaticales élémentaires pour décrire toute instruction logique : indiquer l'adresse des données, préciser l'adresse des instructions à réaliser sur ses données, et exécuter les instructions.
 
Bien que ce langage fut inventé avant l'arrivée des ordinateurs, dans les années 50, les informaticiens se rendent compte qu'il est la base de toutes les opérations commandées par un ordinateur : sa syntaxe simpliste permet de décrire les programmes et leurs opérations dans un langage, seulement légèrement plus complexe que le langage binaire. Il est parfait pour la programmation, très proche du langage machine mais également aisé à comprendre et à interprêter, pour un humain.
 
Quelques années plus tard, les mathématiciens de l'époque découvrent peu à peu la puissance descriptive du lambda calcul, qui permet également de décrire l'ensemble des mathématiques...

1997 : Jean-Louis krivine démontre que le lambda calcul permet en fait d'exprimer tous les raisonnements logiques possibles et imaginables, et conséquemment, toutes les structures mathématiques connues.

Dès lors, ce langage devient universel, et devient également une Pierre de Rosette Mathématiques : on décrit des formules d'un langage informatique en lambda calcul, puis on retraduit la traduction en langage mathématique... Un algorithme informatique devient une formule mathématique. Vous ne voyez pas encore la puissance de cette constatation... 

Traductions et découvertes

Imaginez un langage, avec lequel de nombreuses choses sont dors et déjà démontrées, des concepts, des méthodes. Ce langage a donc permis la constitution d'une immense base de connaissance, mais celle-ci reste limitée : on ne peut l'utiliser qu'avec le langage sus-dit. Grâce au lambda calcul, on peut traduire les vérités d'une base de connaissance propre à un langage, dans un autre. C'est ce qu'a fait le mathématicien français : en traduisant des programmes déjà existant, il a pu trouver des théorèmes, des structures mathématiques, qui n'avait jamais été découvertes par les mathématiciens. A l'inverse, traduire un théorème ou un corrolaire, en langage informatique, donne accès à un programme inconnu jusqu'alors... mais déjà existant, sous forme mathématique, donc démontré et fonctionnel...

Mais cela ne s'arrête pas là. Au rang des système de logique, le neurone se pose là : il s'agit bel et bien, en gros, d'un système binaire. Je m'allume, je ne m'allume pas... Avant d'aller plus loin, il faut évoquer un théorème formidable, véritable bombe mathématique en son temps, et dont on n'a pas fini de s'étonner : Le théorème d'incomplétude de Kurt Gödel. Ce théorème indique que tout système mathématique suffisamment général, et donc puissant, se retrouve incompétent à se décrire lui même. Autrement dit, il existera toujours des vérités que les mathématiques seront incapables de démontrer, et ceci, est prouvé mathématiquement...

L'incomplétude, du ScanDisk aux mécanismes des rèves

Ce théorème, formalisé en lambda calcul, puis retraduit en langage informatique, donne un code logique assez remarquable... Le programme obtenu à partir de ce théorème ressemble à s'y méprendre au scandisk, petit programme servant à restaurer les données en cours d'utilisation, lorsque l'ordinateur s'est éteint brusquement : retrouver, parcourir toutes les données antérieurement en cours d'utilisation, puis restaurer celles qui ont subit des dommages...

Le théorème de Gödel, dieu sait par quel miracle (en fait, ce n'en est pas réellement un...) décrirait très justement le programme de sauvegarde de donnée, inventé depuis belle lurette, mais jamais en référence avec une certaine théorie de l'incomplétude... Plus fort encore... le cerveau a-t-il un langage traductible en lambda calcul? une constatation :

  • Parcourir les données utilisées avant plantage, les lires, restaurer certaines...
  • Revivre les éléments de la journée, revivre les apprentissages et le vécu de la veille, reconsolider ces apprentissages...

Selon J-L Krivine, le théorème d'incomplétude serait une formulation mathématique de nos rèves...

Le cerveau, une machine à calculer? 

Et ce n'est qu'un exemple... de nombreux programmes pourraient être trouvés par la simple traduction de formules mathématiques.. Inversement, de nombreux théorèmes mathématiques peuvent être démontrés ou même découverts, grâce à la traduction de programmes informatiques... Tout cela pourrait bien être des traductions en langages mathématiques, ou informatiques, de phénomènes de la pensée... Après tout, ces théorèmes et programmes ne viennent bien que d'un endroit, le cerveau de l'homme... C'est d'ailleurs une hypothèse que Krivine défend selon les termes suivants : toute pensée peut être traduite en lambda calcul, le niveau quasi-élémentaire de logique. Au fur et à mesure qu'un mathématicien s'enfoncerait dans l'abstraction, il ne ferait en fait que décrire des suite d'instructions de lambda-calcul de plus en plus complexes, correspondant au fonctionnement de son propre cerveau. Les mathématiques ne seraient donc qu'un descriptif de notre propre système de pensée? tous les programmes et les démonstrations ne seraient que des traductions, des descriptions du fonctionnement de notre cerveau?
 
Une bien séduisante théorie... 
   

Mots-clés : lambda, calcul, théorème, mathématiques, pensée, cerveau

Diffuser/enregistrer :

Soumettre au PsychoRing Scoop it! piocher ceci! digg it! tag del.icio.us! newswine! reddit! blogmarks! bookmarklet! blog it! vote! blogmemes fr Partager avec Facebook Partager avec Co.mments Enregistrer sur Live Enregistrer avec Google Bookmarks

5 commentaire(s)

Ecrit par: Alex(amienspsycho) le 03-02-2008

Remarquablement écrit, je ne sais pas si c'est une impression, mais on a l'impression que son auteur est passionné par les maths ;) 
Après la lecture d'un tel article on voit des 0 et 1 un peu partout, mais c'est très interessant :)

 

Ecrit par: Carnégie le 03-02-2008

Bienvenue et Merci pour ton passage, Alex! 
 
Effectivement, je crois que les maths comme de nombreuses disciplines dites "des sciences dures", ont beaucoup à apporter à la psychologie. Déjà, des méthodes de raisonnements, ensuite, à la manière du lambda calcul, des concepts et des modèles dont on peut voir l'influence dors et déjà dans de nombreux domaines de la psycho. 
 
Pour quelques exemples, la théorie des catastrophes de Renée Thom, bien qu'un peu désuète, est une séduisante modélisation des tensions entre deux comportements apparemment contradictoire (exemple, la peur du chien qui l'amène à l'attaque ou la fuite, la frontière étant très ténue - s'il y'a des intéressés, j'en ferais un article). La systémique s'inspire notamment à l'origine des travaux de Russels et d'autre mathématiciens/logisticiens, les réseaux de Hopfields permettant de simuler la reconnaissance d'un visage, s'inspire des mouvements des spins d'atomes étudiés en physique. La théorie du Chaos apporte de nombreux éléments de réflexion à la complexité humaine et sociale... Non seulement il existe de très nombreux exmple, mais ils sont de surcroit passionnant, et montrent que la psychologie, en s'ouvrant aux autres disciplines, gagne énormément de possibilités d'amélioration, à n'en pas douter.

 

Ecrit par: kiki59 le 16-12-2008

Bonjour,  
je voudrais savoir s'il n'était pas trop tard pour avoir des autres exemples un peu plus détaillés de coïncidences (s' il en existe d'autres..) entre un théorème mathématique et sa transcription en programme informatique par le lambda calcul? Merci

 

Ecrit par: Stephane le 16-12-2008

En théorie, chaque objet mathématique peut être traduit via la correspondance de Curry-Howard. Les démonstrations donnent des programmes, les axiomes sont les déclarations de variables, l'application d'une règle logique est une instruction, la preuve par récurrence correspond à une boucle "for", etc... 
 
L'opération d'abstraction, par exemple, consistant à associer un entier naturel à une fonction, correspond à l'adressage en langage machine. En langage mathématiques, il ne s'agit que d'associer une fonction plus ou moins complexe à un objet (le fait de prendre un entier naturel signifiant qu'on va discriminer cet objet des autres, qu'on peut le faire indéfiniment, et que par cette opération, on va en quelque sorte simplifier le nom de cette fonction pour pouvoir utiliser une représentation de celle-ci par la suite). Cet opération d'abstraction se retrouve chez l'homme : l'abstraction, c'est avant tout regrouper un ensemble de phénomène, de théories, de concepts, etc... sous un seul nom, qu'on peut utiliser par la suite. La liberté, la conscience, etc... sont des abstractions, elle représentent un ensemble d'entités. 
 
Cette abstraction correspond à la notion de pointeur en informatique (ou adressage) pour laquelle un ensemble donné d'instruction, ou un programme, ou une valeur, etc... est indiqué par sa localisation en mémoire. un autre programme peut faire appel à cette instruction via son adresse (via un pointeur). L'adresse en elle-même correspond donc à l'opération mathématique d'association -->, dans, par exemple f(x)--> n. On trouve cette instruction sous de nombreuses formes : CallCC de Lisp, les GoTo des calculatrices... 
 
Cela dit ce n'est pas tout à fait un programme. Selon la correspondance de Curry-howard, une démonstration entière correspond à un programme, et dans la majorité des cas, la traduction permet simplement l'application de ce théorème. Qu'est-ce à dire? Prenons l'exemple du théorème de Pythagore : sa démonstration permet, par la traduction via la correspondance de Curry-Howard, de créer le programme qui va vérifier si le triangle est rectangle. L'intérêt c'est qu'à partir du théorème, on créé le programme "parfait" : il est exempt de bug et fournit le bon résultat à chaque fois, puisqu'il correspond à la démonstration mathématique du théorème. 
 
Dans d'autre cas, la traduction donne accès à un programme dont on ignore la fonction. Une grande part d'interprêtation personnelle suit vraisemblablement la fonction qu'on prête à ce programme. Enfin dans les derniers cas, les traductions de démonstration informatique renseignent sur la possibilité de programmes, c'était par exemple le cas de la démonstration de Church, et de Gödel. Gödel (en simplifiant énormément) démontre avec son théorème d'incomplétude qu'un système suffisamment puissant est insuffisant à se décrire lui même. Formalisé en langage info, cela donne un programme qui peut boucler continuellement et que l'on peut rapprocher de la démonstration informatique de Turing, visant à montrer qu'il existe toujours des fonctions non décidables (ou semi-décidables) au sein d'un ordinateur assez puissant (une machine de Turing). Cela sous-entend qu'aucun programme informatique ne peut décider qu'un autre (également suffisamment puissant) ou lui même, ne contient pas de bug. 
 
Comme exemple de correspondance, on peut voir dans les démonstrations par l'absurde l'instruction consistant à sortir du programme ou à le terminer (exit).  
 
Bon, cela dit, je suis loin d'être informaticien ou mathématicien de formation, je suggère de se renseigner directement à la source (par exemple http://www.pps.jussieu.fr/ ~krivine/). Les thèses de Krivine, les liens entretenus avec l'intelligence artificielle et la logique, tout cela est proprement passionnant (et l'est surement plus à condition de ne pas être perdu en math comme moi :grin )

 

Ecrit par: kiki59 le 19-12-2008

Merci beaucoup

 


Ajouter votre commentaire

Attention, ce site n'est pas un site de psychothérapie en ligne! Avant de commenter, veuillez consulter ces conseils.
Seul les utilisateurs enregistrés peuvent commenter un article.
 
< Précédent   Suivant >

Identification

  • Psycho 2.0
  • Psycho 2.0
  • Psycho 2.0

Derniers commentaires

L'exhibitionnisme,... : Bonjour, je ne suis pas un ancien de... Par itamaug
L'exhibitionnisme,... : Bonjour Neuneune, Je me réjouis de... Par Furet
L'exhibitionnisme,... : Bonsoir à vous. Avant de venir ici,... Par Neuneune
Listes de phobies réelles...... : oups voici le lien de l'article sur les... Par ola
Listes de phobies réelles...... : C'est plutôt une liste super... Par ola