To reason with machines : Is programming a form of knowledge?
Raisonner avec les machines : la programmation est-elle une forme de connaissance ?
Résumé
This study proposes a new interpretation of the effectiveness of computing in transforming our human world. This interpretation dispenses with the usual notions of computation and information and is based instead on the idea that the inquiries, by which we solve our problems, can be summed up in procedures that explain how to avoid the effort of a second search. When these procedures are expressed by exact rules, predefined in a system, and when these rules run exhaustively through the set of possible conditions of the problem, then the procedures are systematic and can be programmed. It is possible to build a universal machine (ie capable of executing any procedure, as long as they are described in a system of rules, whatever that may be) in transmission controls (irrigation system, clock mechanism, electrical circuit, etc.). To program means to insert such a machine into a situation in order to solve a problem. The machine makes a rule effective, ie immediately valid in the situation. When the situation is symbolic (an inquiry in progress), the machine does not only speed up the search, but also gives access to new operations, allows to verify the reasoning, to explore gigantic rule spaces, and so on. When the situation is experience itself, programming makes our institutional and technical rule systems dynamic (for example, the operation of an administration or a factory). These two forms of effectiveness explain the upheavals that computing is causing in our human world.
Ce travail propose une interprétation nouvelle de l'effectivité qu'a l'informatique à transformer notre monde humain. Cette interprétation se passe des notions habituelles de calcul et d'information et se fonde plutôt sur l'idée que les investigations, par lesquelles nous résolvons nos problèmes, peuvent être récapitulées en des procédures qui expliquent comment éviter l'effort d'une seconde recherche. Lorsque ces procédures sont exprimées par des règles exactes, prédéfinies dans un système, et que celles-ci parcourent exhaustivement l'ensemble des conditions possibles du problème, alors elles sont systématiques et peuvent être programmées. Il est possible de construire une machine universelle (capable d'exécuter des procédures quelconques, du moment qu'elles sont décrites dans un système de règles, quel qu'il soit) dans des contrôles de transmission (système d'irrigation, mécanisme d'horlogerie, circuit électrique, etc.). Programmer, c'est insérer une telle machine dans une situation afin d'y résoudre un problème. La machine rend une règle effective dans la situation. Lorsque celle-ci est symbolique (une investigation en cours) la machine non seulement accélère la recherche, mais également lui donne accès à de nouvelles opérations, permet de vérifier le raisonnement, etc. Lorsque la situation est l'expérience elle-même, la programmation rend dynamiques nos systèmes de règles institutionnels et techniques (par exemple une administration ou une usine). Ces deux formes d'effectivité expliquent les bouleversements qu'occasionne l'informatique dans notre monde humain.
Origine | Version validée par le jury (STAR) |
---|