La vie est mal configurée

Aller au contenu | Aller au menu | Aller à la recherche

mardi, septembre 30 2014

Les données et le plafond de verre

Il circule en ce moment une infographie présentant la répartition hommes/femmes aux différents niveaux des carrières d'enseignement supérieur et de recherche. Elle montre que plus le niveau de poste est élevé, plus la proportion de femmes est faible. Le commentaire qui accompagne cet article conclut à l'existence d'un « plafond de verre » dans l'enseignement supérieur et la recherche.

Mon propos n'est évidemment pas de nier l'existence d'un « plafond de verre » dans la recherche scientifique. Je pense par exemple que certains mécanismes d'évaluation pénalisent les femmes avec enfants. Mon propos est de faire remarquer que cette infographie ne démontre pas ce qu'on dit qu'elle démontre (autrement dit : je ne dis pas que la conclusion, à savoir l'existence du plafond de verre, est fausse, mais que le raisonnement qui part de ces données chiffrées pour arriver à cette existence, est bancal). Voyons pourquoi.

Suivant les progressions de carrières normales, les personnes aux niveaux les plus élevés (professeurs des universités et directeurs de recherche) sont plutôt âgées. C'est d'ailleurs en partie quasi forcé par des seuils administratifs : dans de nombreux cas, il faut un certain nombre d'années dans un grade pour pouvoir se présenter au grade supérieur. Par conséquence, parmi les directeurs de recherche et professeurs de classe exceptionnelle, il y en aura largement plus au bord de la retraite que de moins de 45 ans.

Cela veut dire que les gens susceptibles d'occuper les échelons les plus élevés sont nés dans les années 40, 50, 60, et ont donc été éduqués à une époque où l'on considérait largement que les femmes c'est fait pour se marier et qu'en tout cas la recherche scientifique est un métier d'hommes. Il est donc probable qu'il y ait eu une très forte majorité d'hommes dans les recrutements initiaux. La présence d'une forte majorité d'homme aux échelons supérieurs n'est donc guère significative pour le propos de la démonstration, pas plus que la plus forte proportion d'hommes aux échelons supérieurs qu'aux échelons inférieurs.

Ce qui en revanche serait très significatif et très intéressant, ce serait d'étudier diverses cohortes de chercheurs, recrutés à diverses époques (par exemple : tous les chargés de recherche de deuxième classe recrutés au CNRS en 2002), et d'étudier leur progression de carrière et notamment la différence entre celles des hommes et celles des femmes. Si cela se révélait trop difficile, on pourrait également considérer des cohortes d'année de naissance. Peut-être que, en raison des différences de vitesse de carrière, il faudrait diviser en disciplines ou en groupes de disciplines. C'est tellement vrai que c'est subtil de mener de telles études qu'on paye des gens pour cela (les sociologues). Et donc, s'il faut démontrer l'existence d'un tel plafond, on préférera une étude sociologique sérieuse à un petit graphe à qui l'on fait dire ce qu'il ne dit pas.

En attendant, on devrait un peu se méfier d'agrégats de chiffres qui mélangent celles et ceux qui ont étudié avec des cartes perforées avec celles et ceux qui ont étudié avec un iPhone.

dimanche, septembre 28 2014

My CAV 2014 tutorial

Last summer, I was invited tutorial speaker at the annual Computer Aided Verification conference, which took place as part of the Vienna Summer of Logic. My tutorial (3 hours) on analysis and invariants was filmed and the video is now online. The slides are also online.

Comment on dégoûte les gens des maths

C'est un cliché : quand on dit qu'on est mathématicien, les gens vous disent qu'eux, à l'école, n'ont pas aimé les maths (vous me direz que je ne suis pas mathématicien à proprement parler, mais j'ai parfois le choix entre passer pour un réparateur de PC ou un prof de maths, alors…). Certes, d'autres disciplines « obligatoires » provoquent également agacement voire traumatismes, mais il me semble qu'aucune ne provoque un rejet comme celui des mathématiques.

Quand on évoque les choix d'enseignements et les difficultés des étudiants, disons entre normaliens agrégés de maths qui exercent dans le supérieur, on se retrouve à se poser des questions comme « faut-il enseigner l'intégrale de Riemann ou celle de Lebesgue », « est-ce que ça a du sens de parler de fonction dérivable avant de parler de fonction continue », etc. Alors que le fond de la question n'est pas là : il est dans l'enseignement primaire et secondaire.

Le mieux n'était-il pas de demander aux gens ?

Je demande donc à mes lecteurs, s'ils ont été dégoûtés des mathématiques, de nous expliquer pourquoi.

Nous tenterons ensuite une synthèse.

Quelques réactions récoltées sur Twitter (que j'ai dû éditer — il s'agissait de réactions très « orales » dans des discussions) :

Ma collègue Claire Placial, maîtresse de conférences en littérature comparée à l’université de Lorraine, ancienne élève de l'École normale supérieure (en lettres, évidemment) (j'ai édité pour plus de lisibilité) :

« Je ne comprenais rien. J'étais comme les gosses qui ne comprennent rien en grammaire, même si on leur explique N fois. Plus précisément, c'est à partir du lycée que j'ai décroché : avant, je m'en fichais un peu, pas de haine spéciale pour les maths, j'étais forte en calcul. Je crois que c'est au moment où ça a commencé à modéliser avec les fonctions et les vecteurs que je suis tombée dans le « trou noir » : trop de raisonnement abstrait ! Le problème n'est cependant pas l'abstraction en soi : je n'ai aucune difficulté avec l'abstraction linguistique. Je ne comprenais pas le passage du théorème à l'exercice, j'avais des difficultés en seconde.

J'ai essayé de faire le cours de maths pour littéraires à Ulm et, de nouveau, les mêmes difficultés : l'explication du théorème est limpide, mais la démonstration va dix fois trop vite. Toute la partie logique des théorèmes de ce cours, mais au moment où il fallait écrire avec des signes mathématiques, je n'arrivais pas à faire le lien. C'est la même difficulté que, plus jeune, j'éprouvais avec les vecteurs et les fonctions.

Je crois que j'aurais préféré des cours de maths où l'on aurait stimulé l'aspect intellectuel de la chose, plus que la mécanique. Pour moi (qui ai arrêté les maths en fin de seconde), les maths c'étaient les exercicesvoilà, les exercices, on a une bonne note quand on a bien fait les exercices ! Je crois que j'aurais bien aimé qu'on me dise à quoi servent les exercices, pas dans le sens métier/pratique, mais… ... pourquoi c'est important, pour l'apprentissage du machin, de faire l'opération en question. D'ailleurs comme prof j'essaye toujours de dire pourquoi je fais le cours que je fais (apprends de ton trauma !) Même chose en français. D'où l'importance de mettre de la réflexivité dans la formation des profs… »

Mon amie Adrienne Charmet :

« Vaste question ! Je n'aimais pas les démonstrations où l'important était le chemin et pas le résultat, je crois. Je me souviens que je me sentais enfermée dans les normes — loin de la liberté d'écriture que j'avais en littérature ou histoire. J'étais jeune et rebelle, il faut croire ! »

vendredi, septembre 26 2014

Mon supposé mépris des sciences humaines

On m'a parfois accusé de mépriser les sciences humaines et sociales, et plus particulièrement la philosophie. Je désirerais ici clarifier ce point : je ne vois pas en quelle occasion j'aurais fait des remarques méprisantes envers ces disciplines ; en revanche, j'ai parfois émis des critiques quant à certaines pratiques. Explicitons.

J'ai plusieurs fois critiqué les pratiques mandarinales et anti-sociales de certains universitaires des sciences humaines et sociales, mais pas seulement. Par exemple, j'ai critiqué un certain directeur de laboratoire « classe exceptionnelle » qui s'étonnait qu'il fallût payer des doctorants pour que ceux-ci pussent se permettre de passer la journée à travailler dans son laboratoire (ne se rendait-il pas compte que vivre à Paris est cher ?). Mon collègue sociologue Baptiste Coulmont lui aussi signale certains comportements problématiques dans sa discipline, et personne ne l'accuse de mépriser la sociologie.

J'ai parfois critiqué certains enseignants ou universitaires en philosophie qui abordent à titre professionnel et dans le cadre de l'expertise que laisse supposer leur statut des questions qu'ils ne maîtrisent pas. J'estime notamment qu'il y a une faute méthodologique à vouloir aborder des sujets avancés comme la mécanique quantique ou les théorèmes d'incomplétude de Gödel avant d'avoir une certaine familiarité avec des sujets plus basiques comme la mécanique classique ou la logique mathématique élémentaire. Il me semble qu'il convient, lorsque l'on excipe de ses titres pour exercer un magistère, de ne pas outrepasser ses compétences. J'ajouterai que j'ai également publiquement critiqué certains raisonnements osés de Roger Penrose, sans que l'on m'accuse de mépriser la physique mathématique.

Toujours sur ce sujet des limites des compétences, j'ai critiqué des professeurs de droit qui s'improvisaient pédopsychologues tout en excipant de leurs titres.

J'ai parfois critiqué la propension de certaines personnes formées aux lettres, aux sciences humaines et sociales, à surestimer la portée réelle de leurs connaissances, leur importance ou leur reconnaissance sociale. Ainsi, lorsqu'on m'a dit, en somme, que « tout le monde » connaît Roland Barthes, j'ai fait remarquer que lorsque j'ai demandé dans mon entourage professionnel (chercheurs et enseignants-chercheurs), personne ne savait précisément de qui il s'agissait…

Je me suis parfois interrogé sur la pertinence de certains enseignements que j'ai reçus, par exemple le cours de philosophie de terminale. Il me semble légitime de questionner l'imposition d'enseignements obligatoires dans le cadre d'emplois du temps chargés… et je ne vois en cela rien de méprisant (par exemple, je ne méprise certainement pas le traitement du signal, mais je ne comprendrais pas qu'on impose un cours de traitement du signal dans toutes les classes de terminale).

Enfin, je me suis permis — crime indigne, sans doute — de rédiger un billet sans prétention sur la pratique scientifique. Je dis « sans prétention » car je ne prétendais nullement faire œuvre originale de philosophie ou de sociologie des sciences : il s'agissait d'un billet de blog informel relatant un ressenti, et non d'un cours, d'un article ou d'une thèse universitaire sur le sujet. Ce billet a été décrit comme le signe d'un mépris envers la philosophie et la sociologie des sciences. C'est un peu comme si, lorsque quelqu'un parlait informellement des nombres entiers, je lui disais de se taire au motif qu'il n'est pas agrégé de mathématiques.

Mais peut-être me trompé-je, et ai-je involontairement eu des marques de mépris envers la philosophie, la sociologie, l'histoire, la littérature latine ou que sais-je encore. Je saurai donc gré à mes lecteurs de bien vouloir me signaler d'éventuelles remarques déplacées de ma part.

jeudi, septembre 25 2014

Une question sur les modèles chez Alain Badiou

Comme le savent sans doute déjà certains de mes lecteurs, j'enseigne parfois la logique. Je trouve la logique du premier ordre difficile à enseigner non pas tant techniquement que conceptuellement : j'entends par là que la difficulté n'est pas dans la connaissance de théorèmes compliqués, d'astuces de démonstration ou de calcul, mais dans la compréhension des définitions que l'on utilise. Expérimentalement, dans un cours où figurent logique, calculabilité, et complexité, c'est la partie qui suscite le plus d'incompréhension.

J'ai donc voulu chercher comment les autres expliquaient les bases de ce sujet. J'ai bien entendu des ouvrages de logique mathématique (par exemple le Cori-Lascar, dont je déteste malheureusement la typographie) mais je voulais voir s'il y avait une façon différente d'exposer, peut-être moins « technique ». La logique étant enseignée, selon des divisions quelque peu administratives et artificielles, à la fois en informatique, mathématique et philosophie, il m'a paru intéressant de regarder un cours de logique de philosophe. Par ailleurs, bien conscient de mes lacunes en épistémologie, j'ai voulu améliorer mes connaissance sur ce sujet.

J'ai donc emprunté le Concept de Modèle, par Alain Badiou (un petit ouvrage publié en 1968 chez Maspéro dans la série « théorie — cours de philosophie pour scientifiques », collection dirigée par Louis Althusser, mais il y a une réédition récente).

Alain Badiou oppose dans cet ouvrage deux sens scientifiques du mot « modèle » (j'espère ne pas faire de contre-sens en résumant son propos avec mes propres mots et exemples) :

  1. D'une part, en sciences expérimentales, le modèle est l'appareil mathématique qui est censé refléter la réalité expérimentale : par exemple, pour rendre compte des phénomènes électromagnétiques, on parle des champs électrique et magnétique, reliés par les équations de Maxwell… ou, plus simplement lorsqu'il s'agit d'un circuit électrique, de tensions et intensités.

  2. D'autre part, le mot « modèle » désigne un concept mathématique précis en logique du premier ordre, qui donne une sémantique ou interprétationaux symboles (Badiou emploie plutôt le mot « marques ») des énoncés mathématiques : par exemple, qui associe au + des formules mathématiques l'opération d'addition usuelle sur les entiers.

Badiou développe plutôt ce second aspect. J'aime bien la façon dont il compare un travail très technique comme la construction d'un modèle « alternatif » de la théorie des ensembles avec une construction plus concrète : la construction d'un modèle de la géométrie riemannienne au sein de la géométrie euclidienne, tout simplement en prenant la sphère comme « plan » et ses grands cercles comme « droites ». En revanche, le vocabulaire employé est parfois inhabituel (peut-être est-ce seulement une question d'époque), et certaines explications me semblent un peu obscures.

Badiou relève également une limitation de la théorie des modèles, que certains de mes étudiants relèvent d'ailleurs d'eux-mêmes : construire un modèle d'une logique dans la mathématique « naturelle », « informelle », c'est le construire dans une méta-logique qui pourrait fort bien être elle même incohérente, autrement dit repousser d'un cran le problème de la cohérence sans l'épuiser.

En annexe, Badiou donne une démonstration du théorème de complétude de la logique du premier ordre (démontré par Gödel dans sa thèse de doctorat) par les témoins de Henkin (personnellement j'ai plutôt tendance à donner la construction d'un modèle de Herbrand, mais les goûts et les couleurs…).

Il y a en revanche quelque chose que je n'ai pas compris, c'est l'opposition maintes fois évoquée dans l'ouvrage entre l'« épistémologie bourgeoise » et une supposée épistémologie prolétarienne ou marxiste, basée sur le « matérialisme dialectique ». J'apprécierais donc sur ce sujet l'éclairage de spécialistes de philosophie, quand bien même l'ouvrage évoqué se voulait un cours d'initiation à la philosophie pour scientifiques.

Je conçois bien que toute modélisation mathématique suppose un choix de ce qui est important (et reflété dans le modèle) et de ce qui est négligeable ou hors champ. Pour prendre un exemple tiré de l'informatique, la modélisation des calculs informatiques par sémantique dénotationnelle fait disparaître le temps nécessaire au calcul, de sorte que deux programmes qui calculent la même fonction, mais l'un considérablement plus longtemps que l'autre, sont considérés comme équivalents par cette sémantique. On comprend bien que, s'agissant de tout problème se rapportant à l'humanité ou à la société, le choix de ce qu'il est important ou non d'observer et d'intégrer dans le modèle est politique, et que ce choix, intériorisé dans des modèles qui prétendent à une objectivité scientifique, relève bien d'une idéologie qui dépend d'un temps, d'un lieu, d'une histoire.

Il s'agit cependant ici d'une reconstruction personnelle de ce que Badiou aurait bien pu vouloir dire. Il me semble fort probable que, s'agissant d'un ouvrage cité et réédité d'un philosophe français reconnu, il devrait y avoir quelques lecteurs capables de m'éclairer !

Si je pense avoir une certaine idée de la lutte des classes, j'avoue notamment une certaine incompréhension du « matérialisme dialectique », bien que j'aie vu le terme dans l'introduction d'un ouvrage chinois de mathématiques. Là encore, toute aide serait appréciable, sachant que l'article Wikipédia ne m'aide guère.

mercredi, septembre 3 2014

La photo volée (mais pas un hommage à Poe)

Au cas où vous ne seriez pas au courant, on a récemment appris qu'un ou plusieurs individus avaient publié des photographies dénudées d'actrices (dont Jennifer Lawrence, qui jouait le rôle-star dans les Hunger Games) et d'autres femmes, photographies que celles-ci pensaient privées et ne destinaient pas à la publication. Ces photographies ont ensuite été largement diffusées. Il est difficile de faire la différence entre les faits établis et les supputations ou extrapolations des uns et des autres, aussi je me bornerai à mentionner l'hypothèse la mieux étayée, à savoir que

  • ces photographies ont été prises à l'aide de smartphones de marque Apple, configurés de façon à sauvegarder leurs données sur les serveurs d'Apple (service iCloud)

  • elles étaient stockées dans un espace privé ; il ne s'agirait donc pas d'une publication incontrôlée et cet épisode est donc à distinguer du cas de ces internautes qui, pensant partager une photographie avec leurs amis, la partagent en fait avec le monde entier, y compris leur employeur ; une des victimes expliquait ainsi qu'il s'agissait de photographies faites avec son mari et destinées à leur usage personnel

  • ces serveurs iCloud ont été attaqués, apparemment en profitant d'une faille de sécurité permettant pour accéder au compte d'un utilisateur d'essayer successivement et dans un très court laps de temps une grande quantité de mots de passe (les systèmes bien conçus dans ce cas verrouillent temporairement le compte concerné, ou autre contre-mesure adaptée).

Avant d'avancer dans la discussion, je voudrais exprimer ma sympathie aux victimes, même si la probabilité qu'elles me lisent est presque nulle ; non seulement ma sympathie par rapport aux délits dont elles ont été victimes, mais aussi par rapport à la réaction des médias, dont j'avoue ne plus m'étonner de la médiocrité. J'ai ainsi vu quelques articles où l'on accusait les victimes au pire d'exhibitionnisme, au minimum d'imprudence ou négligence.

Il est en fait assez courant de blâmer la victime d'un délit ou crime pour celui-ci. Ainsi, une femme agressée sexuellement se fera accuser d'être trop court vêtue ou d'avoir commis l'imprudence de rentrer seule le soir ou d'être allée dans une soirée. Sans aller jusqu'à des actes aussi graves, je relève que l'Université de Grenoble, qui héberge mon laboratoire, placarde des affiches expliquant qu'une voiture n'est pas un coffre-fort et qu'il ne faut pas laisser d'objets de valeur dans un véhicule garé sur son campus. Divers guides urbains recommandent de ne pas « tenter les pickpockets ». On inverse dans une certaine mesure la charge de la responsabilité : l'agression ou l'effraction sont décrits comme s'il s'agissait de phénomènes naturels dont il convient de se prémunir, comme on conseillerait de sortir avec un parapluie en cas de météo incertaine. La femme qui « tente » les violeurs, l'automobiliste ou le passant qui « tentent » les voleurs, sont considérés comme au moins partiellement responsables du fait de leur manque de précautions. Toujours, des petits malins diront que la victime « n'avait qu'à... » ou « n'avait qu'à pas... ».

La vivacité avec laquelle des quidams sans expertise en sécurité informatique se sont mis à parler des dangers de la publication sur le Web, à donner des conseils quant à l'utilisation des objets connectés, n'est probablement pas mieux illustrée que par l'article du psychiatre Serge Tisseron. M. Tisseron (ou peut-être le journaliste chargé de réécrire sa pensée) dit notamment :

  1. Qu'il ne faut rien mettre de sensible sur un objet connecté à Internet.

  2. Que quand les gens auront appris à programmer, ils pourront chiffrer leurs fichiers et ne plus avoir de problèmes.

Ces recommandations provoqueraient chez moi une certaine hilarité si elles figuraient dans la copie d'un étudiant ; mais j'ai peine à sourire quand elles sont commises par une personne que les médias interrogent en quelque sorte comme un expert.

Commençons tout d'abord par le point 1. Cette recommandation n'est pas absurde dans l'absolu ; c'est en fait ce qui est mis en œuvre dans certaines entreprises, où il existe deux réseaux informatiques séparés pour d'une part le courrier électronique, la bureautique, l'administratif, d'autre part pour l’ingénierie et les secrets industriels. Quiconque a vu cette séparation à l'œuvre sait que celle-ci est très difficile à mettre en œuvre : non seulement il faut deux fois plus de matériel, mais il faut bien à un moment échanger des données entre les réseaux, d'où diverses contorsions (je me rappelle ainsi d'une grande entreprise où la procédure était de graver un CD à chaque passage de données).

Par ailleurs, cette recommandation est impossible à appliquer pour nombre d'usages. Prenons par exemple la banque et les commandes en ligne : il faut bien à un moment taper un numéro de compte, un numéro de carte bancaire, un code d'accès… sur un système connecté à Internet. Ces informations sont sensibles, puisqu'elles peuvent éventuellement permettre des détournements de fonds. Bref, appliquer le point 1 revient à appliquer dans la vie d'un simple particulier des précautions qui sont difficiles à appliquer chez des professionnels...

Passons au point 2. Là, je ne vois tout simplement pas le rapport entre la programmation, le chiffrement de fichiers et le problème qui nous occupe.

Savoir programmer ne vous transforme pas en expert en sécurité informatique. La sécurité informatique est un sujet très subtil, notamment parce qu'il faut se méfier de tout ; autrement dit, quand on considère une donnée ou un fait, il faut toujours se demander pour quelles raisons nous les considérons comme authentiques. Chaque gaffe, chaque oubli peut potentiellement être exploité. Il n'est en revanche pas nécessaire de savoir programmer pour utiliser un logiciel de chiffrement, même si bien sûr la programmation donne une meilleure compréhension de l'informatique en général.

Par ailleurs, nous parlons ici de dispositifs informatisés grand public sur lesquels l'utilisateur final n'a qu'une information parcellaire et très peu de possibilité d'intervention. Seul Apple sait précisément comment l'iPhone et l'iCloud sécurisent les données des utilisateurs, et je ne pense pas qu'il y ait de moyen de forcer le téléphone à chiffrer toute photographie.

En outre, l'utilisation de mécanismes de chiffrement ne garantit pas la sécurité : par exemple, s'il existe pour un intrus un moyen de savoir ce qui est tapé au clavier, celui-ci peut par exemple obtenir le mot de passe de déchiffrement des fichiers « sécurisés ». Certaines fiches « techniques » destinées aux utilisateurs finaux font sourire : que m'importe, au fond, que mes données soient chiffrées pendant la transmission avec de l'AES 128 bits, ou 256 bits ? La théorie avancée pour cette « fuite » de photographies ne met en jeu aucune prouesse d'attaque contre les primitives cryptographiques, aucune percée mathématique mystérieuse par la NSA… juste une négligence de conception. La sécurité informatique, c'est un problème de recherche de « maillon faible », et la cryptographie proprement dite n'est presque jamais celui-ci.

Enfin, même si l'utilisateur savait programmer et avait accès à l'ensemble de la documentation technique de son dispositif connecté, il ne s'ensuivrait pas qu'il pourrait s'assurer de la sécurité de ses données. L'exemple des trous de sécurité détectés au fil du temps dans OpenSSL est éclairant : voici un logiciel critique, déployé sur quantité de serveurs et de dispositifs clients (ordinateurs personnels et sans doute téléphones), dont le code source (le « texte » du programme) est publiquement disponible, et où l'on découvre année après année des « trous », certains proprement affolants (par exemple le bug de génération des clefs d'OpenSSL sous Debian et dérivés, ou encore la faille Heartbleed).

Ces « yaka » sur la programmation et le chiffrement seraient proprement intenables si on les transposait à d'autres domaines. Si une personne se fait cambrioler suite à une défaillance subtile d'une serrure décrite comme « de sécurité », on ne lui dit pas qu'elle « n'avait qu'à » ne pas avoir d'objets personnels chez elle mais que la situation sera meilleure quand tout le monde sera expert en serrurerie.

Bref, je me demande honnêtement pourquoi on demande son avis sur ces questions au psychanalyste Serge Tisseron et non à un spécialiste, comme par exemple ma collègue Véronique Cortier. De fait, il est remarquable que les médias n'aient pas fait appel aux experts en sécurité informatique du monde universitaire (j'inclus ici les écoles, le CNRS, l'INRIA...) : le mieux que l'on ait vu est un représentant de la Quadrature du Net. Il est vrai que les universitaires auraient probablement dit qu'en l'absence d'informations techniques précises, il est périlleux de commenter…

J'aimerais conclure par une analogie. Si un quidam se contorsionnait pour arriver jusqu'à ma fenêtre et glissait un objectif en dessous d'un volet mal fermé, on estimerait sans doute que je ne suis pas à blâmer pour ne pas m'être assuré d'une fermeture jusqu'au dernier centimètre. Ici, un ou plusieurs individus se sont contorsionnés pour obtenir des clichés privés ; ce n'est pas différent. Le fait que les victimes soient des personnes publiques n'y fait rien.

Épistémologie de la satisfiabilité propositionnelle

Lors du Vienna Summer of Logic a eu lieu une discussion au sujet de la théorie et de la pratique du test de satisfiabilité propositionnelle (SAT-solving). Au delà de ses aspects purement technique, cette discussion soulevait d'intéressantes questions épistémologiques.

La satisfiabilité propositionnelle est un problème dont la résolution efficace est de première importance pour l'industrie électronique. En effet, les problèmes de vérification de la bonne conception des circuits intégrés numériques peuvent souvent être ramenés à un problème de satisfiabilité propositionnelle. Il y a donc une motivation forte à développer des approches efficaces en pratique.

Par ailleurs, la satisfiabilité propositionnelle est un problème difficile, au sens que les programmes informatiques qui le résolvent, même s'ils sont rapides dans de nombreux cas, ont toujours une catégorie de cas où ils sont intolérablement lents. Plus précisément, le temps de calcul des programmes, dans le pire cas, croît exponentiellement avec la taille du problème à résoudre : quand on accroît d'une unité la taille du problème, on double le temps de calcul.

Dès les années 1950, on a distingué deux sortes de problèmes informatiques : ceux pour lesquels on trouvait des méthodes (on dit : des algorithmes) raisonnablement rapides, et ceux qui, dans le pire cas, nécessitent une exploration exhaustive d'un espace de recherche de taille exponentielle et donc un temps de calcul exponentiel. Ainsi, pour trier une table de n nombres, on trouve sans peine un algorithme dont le temps de calcul est quadratique, c'est-à-dire qu'il quadruple quand n est doublé : il suffit de chercher le nombre le plus petit dans la table, le mettre en tête, et trier le reste du tableau. Avec un peu plus d'astuce, on peut trouver des méthodes de complexité quasi linéaire, qui se contentent de faire un peu plus que doubler le temps de calcul quand le nombre de données à trier double (de fait, de telles méthodes sont à l'œuvre dans tous les systèmes qui ont à trier des données). En revanche, pour le test de satisfiabilité propositionnelle, on se retrouvait toujours dans le pire cas à explorer un nombre exponentiel de combinaisons. Ces caractéristiques ne dépendent pas du matériel utilisé pour calculer, raison pour laquelle ce qui a été constaté dans les années 1950 reste d'actualité alors que la technologie du calcul a fait des progrès considérables.

Dans les années 1970, on a développé la théorie de la complexité algorithmique. Cette théorie distingue notamment les problèmes de complexité polynomiale (il existe une définition précise de ce terme, que je ne donnerai pas ici : disons simplement que les problèmes quasi-linéaires et quadratiques sont polynomiaux) des autres. Parmi ces autres, on distingue ceux qui reviennent à explorer un espace de taille exponentielle (ou du moins exponentielle de polynôme, mais ne compliquons pas) à la recherche d'une solution (là encore, une définition mathématique précise existe). Les premiers forment la classe P, les seconds la classe NP, la première étant incluse dans la seconde. La question de savoir s'il P et NP sont distinctes, ou en termes intuitifs (et un peu trompeurs, comme nous allons le voir) s'il existe des problèmes qu'on ne peut résoudre substantiellement mieux que par une exploration exhaustive d'un nombre exponentiel de combinaisons, est une des grandes questions des mathématiques du tournant du millénaire : bien que l'on conjecture que ces classes sont distinctes et notamment que le test de satisfiabilité booléenne soit un de ces problèmes, on n'en a pas la preuve.

Un aspect important de la théorie de la complexité est qu'elle considère les problèmes que l'on compte résoudre et non telle ou telle méthode de résolution. Autrement dit, si un problème est de haute complexité, c'est une caractéristique intrinsèque et non due à la faiblesse des algorithmes découverts jusqu'à présent. Alors qu'en médecine on peut espérer trouver un moyen de soigner une maladie jusque là incurable, une vérité mathématique reste vraie…

La théorie de la complexité souffre toutefois de faiblesses. Nous avons déjà évoqué le fait que certaines grandes conjectures de cette théorie (par exemple, P≠NP) restent non démontrées ; parlons maintenant du péril qu'il y a à relier une notion de complexité théorique avec une notion pratique, comme la difficulté effective de résolution d'un problème.

Il est courant que les chercheurs en informatique démontrent qu'un problème est « NP-complet » (un des problèmes « les plus difficiles » de la classe NP, avec une définition mathématique précise) ; ils en déduisent que, sous réserve de la conjecture P≠NP, il n'existe pas pour ce problème d'algorithme de complexité polynomial et concluent souvent à l'absence d'algorithme efficace. Or, pareille conclusion, identifiant faisabilité pratique et existence d'un algorithme polynomial, est franchement discutable. Un algorithme de complexité polynomiale de degré élevé (par exemple, où le temps de résolution du problème serait multiplié par un milliard à chaque fois que la taille du problème du problème d'entrée doublerait) serait inutilisable ; en revanche, un algorithme de complexité exponentielle dans le pire cas peut être utilisable si ce pire cas n'arrive pas en pratique (ceci s'entend : hors exemples artificiels conçus spécialement pour exhiber ce pire cas).

Autrement dit, nous avons une théorie parfaitement correcte, mais dont il est délicat de dériver des indications sur ce qu'il convient ou non de faire. Ainsi, on résout quotidiennement dans l'industrie, notamment dans la conception et vérification de circuits intégrés, des problèmes NP-complets (SAT, « voyageur de commerce »...), parce qu'on a des méthodes qui fonctionnent en pratique sur les cas qui nous intéressent ; il aurait été dommage de s'en tenir à remarquer que le problème est NP-complet et abandonner tout espoir. Un autre exemple : la sécurité informatique : on peut argumenter qu'un système de chiffrement est sûr parce que le casser implique de résoudre un problème NP-complet, mais cet argument est-il valable alors que ce qui est important en sécurité n'est pas que le système soit difficile à casser dans le pire cas pour l'adversaire, c'est-à-dire dans le meilleur cas pour nous, mais plutôt qu'il soit difficile à casser dans les cas favorables pour l'adversaire ?

Puisqu'il est périlleux de ne se référer qu'au cas le pire, on a voulu étudier le « cas typique » et pour cela considérer le « cas moyen », au sens des probabilités. Ceci présuppose une distribution de probabilité, autrement dit d'une répartition des cas de figure que l'on étudie et de leur probabilités respectives ; on espère que les cas les pires sont très peu probables. Malheureusement, sur le problème SAT, les distributions de probabilité les plus « simples » et fortement étudiées ne sont absolument pas représentatives des cas industriels réels ! Un autre exemple : l'algorithme classique du « tri rapide » a une fort bonne complexité moyenne, sauf que son cas le pire est atteint dans un cas « rare » au sens des probabilités, mais assez courant en pratique : quand une partie de données sont déjà triées !

Peut-être faut-il (temporairement ?) abandonner l'espoir de résultats théoriques forts et s'en tenir à une évaluation empirique, où l'on essaye les différentes approches sur des « cas représentatifs » ? Hélas, se pose alors la question de ce qui est ou non représentatif, et des conséquences du choix d'une bibliothèque de « cas représentatifs » sur le domaine de recherche.

Qu'est-ce qu'un « cas représentatif » ? On distingue habituellement :

  1. Des exemples artificiels générés pour illustrer telle ou telle difficulté faisant souffrir telle ou telle catégorie d'algorithmes. (Par exemple, sur SAT, on génère des « problèmes de pigeons ».)

  2. Des exemples rédigés à la main pour illustrer telle ou telle difficulté faisant souffrir telle ou telle catégorie d'algorithmes et, souvent, pour illustrer la supériorité de telle ou telle approche (il circule ainsi dans la littérature scientifique, parfois à mon grand étonnement,des exemples « David », « Monniaux » ou « Halbwachs », extraits d'articles ou de questions posées en ligne par moi-même ou le directeur de mon laboratoire).

  3. Des exemples industriels.

Première difficulté : les catégories 1 et 2 ne sont pas forcément représentatives de vrais problèmes se posant industriellement. Il y a donc le risque de dépenser du temps et de l'énergie en recherches visant à améliorer les performances sur des cas artificiels et sans véritable intérêt.

Deuxième difficulté : les exemples industriels ne représentent pas forcément tout ce que l'on pourrait vouloir résoudre. Pour convertir un problème industriel concret en un problème prêt à être résolu par un outil SAT ou un outil d'optimisation, il faut un certain effort ; typiquement il faut développer un logiciel de conversion, voire une interface utilisateur, peut-être développer une base de données. Pour prendre un exemple de la vie courante, dans un GPS de voiture, l'algorithme de calcul de plus court chemin n'est qu'une toute petite partie du dispositif, qui nécessite une énorme base de donnée, un dispositif de visualisation, un dispositif pour rentrer la demande de l'utilisateur… Il faut donc investir avant même de s'attacher à la résolution proprement dite des « problèmes industriels » ; or un industriel sera réticent à cet investissement s'il n'est pas sûr que les méthodes de résolution derrière pourront suivre. Ceci biaise la base des exemples industriels dans le sens de ce que l'on sait déjà résoudre, ou du moins dans le sens d'exemples ressemblant à ceux que l'on sait déjà résoudre (par exemple, que l'on peut obtenir en convertissant des exemples plus gros que ceux que l'on sait gérer actuellement).

Enfin, l'évaluation des outils par des compétitions sur les bases d'exemples standardisés, si elle favorise une certaine émulation, peut inciter au conformisme, à des améliorations incrémentales qui occupent les chercheurs et font publier des articles, mais ne changent rien de bien profond.

En résumé, nous avons

  • une théorie très ardue, mais qui déjà a du mal à conclure à l'intérieur d'elle-même, et dont il est parfois délicat de tirer des conséquences pratiques

  • une évaluation expérimentale délicate et biaisée.

Je me demande ce qu'il en est dans les autres domaines de recherche. Le premier exemple qui me vient à l'esprit est l'économie : on y trouve d'admirables modèles théoriques (par exemple, les équilibres de Nash) sur lesquels on peut rédiger quantité d'articles, mais pour lesquels se pose le problème de la représentativité par rapport aux situations réelles — problème d'autant plus grave si l'on prétend tirer du modèle des recommandations politiques.

mardi, août 12 2014

Le pistolet-laser thermomètre

RFI rapporte que, pour dépister le virus Ebola, on mesure la température des voyageurs dans les aéroports à l'aide d'un « pistolet laser »:

Un pistolet laser sur la tête pour mesurer la température, une camera thermique pour afficher la chaleur des corps sur un écran plat, c’est le nouveau rituel pour les passagers dès l’entrée de l’aéroport Gbessia de Conakry. Ce dispositif de sécurité sert à identifier les passagers qui ont une fièvre au-delà de 38°.

Il s'agit, semble-t-il, d'une mesure par infrarouges thermiques, qui ne met pas en jeu de laser en elle même. Le laser, opérant en lumière visible, n'est là que pour pointer le point de mesure. Autrement dit, un bête pointeur laser (oui, comme ceux pour pointer le tableau dans les exposés ou faire courir un chat d'appartement) couplé à un thermomètre à infrarouges. Cela fait cependant plus impressionnant de parler de « pistolet laser », comme dans Star Wars...

jeudi, août 7 2014

Université de tricotage

En France, nous sommes habitués à des établissements d'enseignement supérieur mixtes (même les écoles militaires le sont depuis un certain temps déjà). C'est donc avec une certaine surprise que j'ai constaté à Séoul la présence d'universités féminines. (Enfin, je ne suis qu'à moitié surpris, vu ce que je savais de la société coréenne.)

Mieux, le campus de l'Université Hanyang comprend aussi les bâtiments de l'Université féminine Hanyang, comme s'il s'agissait d'un « département » de l'université comme les autres. Faut-il comprendre que si l'on est une femme, on ne peut rentrer à l'Université Hanyang « normale », ou celle-ci est-elle mixte mais pas l'autre ? Il faut dire que les programmes proposés à l'Université féminine, à l'exception d'un peu d'informatique, sont dans des rôles féminins traditionnels : tricotage, interprétariat, tourisme, arts plastiques, éducation des enfants, décoration…

Ceci permet sans doute d'éclairer certaines questions de collègues coréens : ainsi, à un chercheur mentionnant qu'il a un enfant, « est-ce que votre femme travaille ? ». La réponse « oui, elle est professeur d'université » a dû un peu surprendre. De même, une collègue coréenne, travaillant dans l'industrie après son doctorat, son mariage et son premier enfant, m'avait laissé entendre que c'était inhabituel et qu'heureusement que sa (belle-?)maman pouvait s'en occuper quand elle n'était pas là.

Je me rappelle d'une visite dans un laboratoire japonais entièrement masculin, sauf l'inévitable office lady, qui non seulement assure le secrétariat, mais fait la vaisselle (lorsque j'ai voulu laver ma tasse à thé, on m'a repris en m'expliquant « c'est le travail de l'office lady »).

Afin que mon article ne paraisse pas une critique des sociétés extrême-orientales, je voudrais mentionner que la Chine me semble avoir bien plus féminisé son personnel scientifique et technique (du moins hors instances dirigeantes). Par ailleurs, mon plus bel exemple de laboratoire masculin, je l'ai vu à Imperial College à Londres : je donnais un séminaire devant une salle bondée dans un département d'electrical engineering, où quelques femmes étaient présentes, mais venant il me semble du département de computer science voisin ! De fait, il ne semblait pas y avoir une seule femme parmi les doctorants, et il y avait même une blague salace sur un tableau (que j'ai heureusement oubliée). C'était caricatural.

mardi, août 5 2014

Reconnaissance de fichiers par GMail

Il semble que Google reconnaît des fichiers pédopornographiques dans des courriels à l'aide d'un hachage (autrement dit, il reconnaît des fichiers déjà répertoriés comme « sensibles »). Nous ignorons s'il s'agit de hachage exact (le fichier doit être exactement le même à l'octet près) ou d'un hachage flou (la même image est reconnue même s'il y a décompression, recompression voire recadrage etc.).

Ceci nous apprend (mais nous devions nous en douter) que Google hache tous les fichiers attachés et les compare à une bases de données : visiblement, des images pédophiles, des virus... et pourquoi pas des images, des textes ou des vidéos politiquement sensibles ?

mercredi, juillet 30 2014

Comment la recherche française est plombée dans les classements internationaux

Mon estimé collègue Moshe Vardi a publié cette liste des organismes dont les chercheurs publié des articles en 2013 dans les revues et conférences de l'ACM.

Il s'avère que les laboratoires d'informatique de l'Université de Grenoble y figurent sous divers noms : je compte au moins

  1. INP Grenoble (7)
  2. INP Grenoble - ENSIMAG (1)
  3. Université Grenoble Alpes (1)
  4. Université Joseph Fourier (18)
  5. VERIMAG (3)
  6. TIMA Laboratoire (1)
  7. GIPSA-lab (3)

auquel il faut sans doute ajouter une partie des articles attribués au CNRS et à l'INRIA.

L'étranger qui chercherait l'Université de Grenoble (réflexe normal pour un étranger) ne trouverait qu'un article et en conclurait que c'est un college d'enseignement sans recherche.

mardi, juillet 29 2014

Lutte contre les dangers d'Internet : voulons-nous vraiment l'efficacité à tout prix ?

L'Assemblée nationale examinait récemment la possibilité d'interdire l'accès à certains sites Web par simple décision administrative (article 9 du projet de loi n⁰2110). On justifiait pareille procédure, exorbitante par rapport au droit de la presse, où il faut l'intervention du juge judiciaire pour interdire une publication, par son efficacité et sa rapidité : il suffirait qu'un service de police spécialisé accuse un site de promotion du terrorisme pour que l'accès à celui-ci soit bloqué.

Lire la suite...

lundi, juillet 28 2014

Quelques remarques sur le supposé endoctrinement scolaire

D'après certains militants de gauche, les épreuves du baccalauréat 2014 seraient une entreprise de propagande néo-libérale au motif qu'il était demandé de détailler certains inconvénients du protectionnisme. Précédemment, divers commentateurs de droite avaient accusé l'enseignement de l'économie et des sciences sociales au lycée d'être une propagande anti-entreprise, insistant trop sur les problèmes sociaux et pas assez sur la compétitivité économique ; on mesure évidemment comment ces deux visions sont inconciliables. Enfin, certains s'émeuvent d'un possible endoctrinement des élèves par une « théorie du gender ». Que n'a-t-on pas également raconté sur la suppression de l'histoire-géographie dans certaines sections de terminale, avec, pensait-on, le risque que de futurs ingénieurs ignorent l'histoire de la Seconde Guerre mondiale !

Lire la suite...

dimanche, juillet 27 2014

Répondre à la demande sociétale

On entend régulièrement parler de « pilotage de la recherche scientifique ». Suivant les interlocuteurs et leur bienveillance envers le monde scientifique, il peut s'agir de « donner un coup de pouce » aux recherches visant à répondre à une demande de la société (bref, des applications pratiques), soit de contrôler chercheurs et professeurs, ces éternels « savants Cosinus » irresponsables. Par ailleurs, l'existence d'une certaine liberté de recherche, d'une certaine anarchie, déplaît à ceux qui aiment les structures hiérarchisées (le sommet décide, et la décision est mise en œuvre par les échelons inférieurs). L'affaire est entendue : il faut dire aux chercheurs sur quoi chercher ; après tout, ils sont payés par la collectivité et, dans une démocratie, celle-ci a son mot à dire sur le devenir de ses impôts.

Lire la suite...

Quelques remarques de vocabulaire sur l'enseignement du « code »

On débat en France de l'opportunité ou du l'inopportunité d'enseigner le « code », voire le « codage informatique » à l'école. Des parlementaires ont même déposé une proposition de loi en ce sens.

J'ai pour ma part enseigné pendant 15 ans la programmation informatique. Dans aucun des intitulés ou des descriptifs des enseignements auxquels j'ai participé, on ne parlait de « code » ou de « codage ». Le mot « code » est réservé aux « codes correcteurs d'erreur »... mais il s'agit là plutôt d'algèbre et d'algorithmique que de programmation.

Certes, familièrement, on dit parfois « coder » pour « programmer ». On peut cependant s'étonner de l'usage d'un terme familier dans le titre et le texte d'une loi ; à quand une « proposition de loi sur la protection des poulets » pour évoquer la question de l'usage du flash-ball ?

Non seulement le terme « coder » est familier, mais il peut être péjoratif. Le « codage », c'est en quelque sorte l'étape finale, quand on a bien réfléchi au problème et qu'il n'y a plus qu'à rédiger fastidieusement le programme qui met en œuvre la solution. On parle de « pisser du code » quand le programme à rédiger est long et sans grand intérêt ; on parle de code monkeys (« singes du code ») pour désigner les employés à qui on demande de « pisser du code » sans avoir à montrer grande intelligence ou capacité de conception.

Bref, le mot « code », derrière son sens familier, renvoie à une réalité de simples exécutants subordonnés. Cela ne semble guère ambitieux et semble aller à l'encontre de l'objectif affiché :

« À l’ère du numérique, si nous voulons que nos jeunes passent de simples usagers de l’Internet, à acteur de la société et de l’économie numérique, la compréhension de l’informatique est la clé d’accès au monde numérique et aux opportunités professionnelles qu’il ouvre. »

Expliquer, par exemple, le fonctionnement des moteurs de recherche (par exemple, le PageRank de Google), ce n'est pas un problème de « codage ».

(Accessoirement, on trouve en très grande quantité des « codeurs » bon marché en Inde, en Pologne, en Estonie, en République Tchèque...)

samedi, juillet 26 2014

Pourquoi enseigner la programmation ?

Pour des raisons personnelles et professionnelles, j'ai manqué la grande polémique sur l'opportunité d'enseigner « le code » à l'école ; mais après tout, y avait-il besoin de l'avis d'un enseignant d'informatique alors que tant de personnes qui n'ont jamais ni suivi ni fait de cours de programmation se sont exprimées sur le sujet ? J'aimerais toutefois évoquer ce qui, à mon avis, dans un enseignement de programmation, contribue à la formation générale de l'esprit (ce qui ne veut pas dire que je soutiens tout enseignement de programmation dispensé à tout niveau et de n'importe quelle manière).

Lire la suite...

dimanche, juillet 13 2014

Crabes

Ces dernières années, plusieurs de mes collègues sont décédés du cancer. Étonnant, non ?

PS Et un autre ne peut pas présenter son propre article parce qu'il suit une chimiothérapie.

samedi, juillet 12 2014

Les jeter à la poubelle

Dans son numéro du 11 juillet 2014, l'International New York Times explique comment l'archipel norvégien du Svalbard, au statut particulier fixé par traités internationaux, n'a presque pas de délinquance : n'y sont admis que ceux qui travaillent (ou peuvent démontrer qu'ils peuvent subvenir à leurs besoins), les chômeurs et autres personnes dépendant de l'aide publique en sont expulsés. Quelques remarques s'imposent.

La délinquance considérée par les auteurs de l'articles semble être quelque peu restreinte (bagarres, vols, agressions crapuleuses) : on ne parle ni de délinquance « en col blanc », ni de violences domestiques ou sexuelles. De fait, il est en effet probable que des personnes qui travaillent et sont suffisamment bien rémunérées n'ont aucun avantage à agresser des quidams dans la rue pour leur piquer leur portefeuille ou leur iPhone, qui plus est dans une ville (Longyearbyen) dont on ne peut guère s'enfuir facilement.

L'article semble dire que les théories d'Ayn Rand ont du bon et qu'en quelque sorte, il suffit de ne pas avoir de chômeurs et autres « assistés » pour ne plus avoir de délinquance... mais il s'agit ici de les renvoyer dans leur pays d'origine, par exemple le reste de la Norvège, ce qui est une stratégie applicable par un très petit territoire mais qui ne passe pas à l'échelle. C'est un fonctionnement semblable à celui des paradis fiscaux, ou des petits territoires à fiscalité locale basse mais dont le petit personnel habite ailleurs.

On aurait aimé que l'auteur de l'article pose au moins la question : dans le cas d'un pays qui n'a pas la possibilité d'expulser ses chômeurs, inadaptés, handicapés etc., que faudrait-il pour appliquer la méthode Svalbard ? Les jeter à la poubelle ?

vendredi, juillet 11 2014

Le Canard Enchaîné joue les prudes

Dans son numéro du 9 juillet 2014, page 4, le Canard Enchaîné évoque divers errements du patron de la fédération PS du Gard : par exemple, le recours aux services d'entreprises dont des membres de sa famille sont actionnaires. Cependant, ce qui est mis en exergue, et qui fait le plus se moquer le volatile, c'est que ce monsieur gère un sex-shop en ligne — c'est d'ailleurs ce qui a été retenu pour l'accroche publiée en « une » du journal.

Un sex-shop ! Quel scandale, en France, en 2014 !

Ceci n'est pas sans rappeler comment certains ironisaient sur le fait que Xavier Niel, le patron de Free, avait jadis travaillé dans le « Minitel rose », et que Jimmy Wales, co-fondateur de Wikipédia, avait travaillé pour une entreprise diffusant du porno-soft... comme s'il s'agissait de commerces honteux. En effet, quelle honte que de vendre aux gens de quoi s'amuser sans nuire aux autres !

Le Canard Enchaîné aime brocarder les dignitaires religieux et leur propension à vouloir régenter les mœurs des populations, y compris celles ne partageant pas leur foi. Il n'en reste pas moins qu'il a lui-même des réflexes de bon beauf franchouillard. On tolère les sex toys comme naguère on tolérait les homosexuels : en se réservant le droit de rires bien gras.

Reporting blues

Guerre psychologique : le directeur du laboratoire m'indique que j'ai laissé des « à paraître » dans la bibliographie officielle pour des articles parus en 2011, je lui répond que le logo d'une des tutelles en page de garde est moche (pixelisé et sur fond gris) alors que nous avons un beau logo vectoriel officiel à disposition.

Le rapport AERES HCERES AERES-zombie, ce drame du quotidien.

- page 1 de 87