mercredi 21 mars 2018

Ton théorème préféré

Je lance actuellement un podcast mathématiques, «Ton théorème préféré» adaptation française libre du podcast «My favorite theorem». Voici une présentation à destination des invités. Merci de me contacter si vous voulez participer. Le temps que ça devrait prendre aux invités, serait, dans l'idéal, entre 20 minutes (le temps d'enregistrer) et une heure (si tu décides de te préparer, ce qui n'est pas obligatoire).

Le principe est simple: aller voir des gens qui aiment les maths et leur poser cette question: quel est ton théorème préféré ?

  • Donner son nom s'il en a un
  • Donner son énoncé (et introduire quelques notions autours)
  • Pourquoi c'est ton théorème préféré
  • (rarement) Une idée très rapide de la preuve si elle n'est pas trop complexe.
  • Pour partir un peu plus dans l'imaginaire, essayer de trouver comment ce théorème pourrait être une métaphore de notre société, de la vie, etc...

Le tout se faisant sur le ton de la discussion, ce qui me permettra d'obtenir des précisions, ou de reformuler histoire de voir si j'ai bien compris.

Puisque, par hypothèse, c'est ton théorème préféré, il y a des chances que tu connaisses déjà bien les trois premiers points, et peut-être même le quatrième (pour rappel, on parle d'une idée de preuve, pas d'une démonstration complète). Le but est réellement qu'il y ait peu de préparation en amont pour l'invité-e. Ce théorème peut être un théorème qui t'as donné envie de faire des mathématiques, un théorème que tu aimes particulièrement enseigner, un théorème que tu as prouvé toi-même, un théorème fondamentale de ton domaine de recherche... Voir ça peut ne pas être un théorème au sens strict (e^{ip}+1=0 est plus une équation qu'un théorème, mais serait acceptable. Puisqu'on peut prouver des algorithmes, un algorithme pourrait aussi être envisagé. )

Pour donner deux exemples tiré de la VO:

  • Si tu prends 4 points dans l'espaces, ABCD, et relie les milieux de AB BC CD et DB, tu obtiens un parallélograme. Via 4 applications de Thalès.
  • Il existe une borne supérieur explicite au nombre de mouvement à faire sur un nœud avec n croisements pour le transformer en unknot. (ici, aucune idée de preuve n'a été donnée, par contre, l'invité à expliqué ce qu'était un nœud mathématiques)

J'espère varier les niveaux, avoir des contenus accessible à des lycéens scientifiques, et d'autres contenus accessible aux gens ayant fait des mathématiques en étude supérieure. Donc, ne vous en faites pas si vous trouvez que le théorème est trop simple/basique. Ou au contraire si le théorème doit utiliser des notions d'algèbres/d'analyse de licence/prépa. Nous devrons donc décider avant l'enregistrement les notions qui sont supposées acquises, celles qui seront rapidement rappellé, et celles qu'on prendra le temps de bien introduire. Cette information sera communiqué au public via la description de l'épisode. Par exemple, si vous voulez aborder le théorème d'Euclide, on passera du temps sur les nombres premiers. Si vous voulez parlez de théorème plus poussé de théorie des nombres, on pourra supposer les nombres premiers connus pour se concentrer sur des notions plus compliquées

Toi

Par ailleurs, je présente l'invité, donc j'aurai besoin de savoir quel nom/pseudo tu veux donner, s'il y a des réseaux sociaux, podcasts, blogs, livres, dont tu t'occupes et que tu veux voir présenté (pas nécessairement relié aux mathématiques). Et ce que je peux dire de ton parcours mathématiques. (doctorant-e/docteur/doctoresse en mathématiques, informatique, physique..., ATER, prof de math au lycée, amateur sans qualification universitaire)

Techniques

Pour l'instant, c'est encore en phase de rodage, un pilote a déjà été tourné, mais je ne suis pas encore en mesure de garantir que toutes les prises seront exploitables. Je préfère prévenir en avance par transparance.

L'enregistrement se fait d'une des deux façons suivante:

  • De préfèrence: en face à face. Je m'occupe de la technique. Il me suffit d'avoir une table où je peux fixer un bras de micro, dans une pièce qui n'est pas très bruyante/qui n'ait pas énormément de reverberation, et je peux me déplacer enregistrer là où ça te conviendrait.
  • Sinon: via le web, mais uniquement si tu sais enregistrer un son de bonne qualité de ton côté. Je tiens fortement à éviter les grésillements typiques d'un certains nombre de podcast via skype.

N'hésite pas à me recontacter si tu as des questions, si tu veux plus de précision, si tu veux vérifier que ton idée collerait avec le podcast.

lundi 19 février 2018

Post-mortem de Trajectoires

Trajectoires s'est arrêté. Au moins temporairement. Au moins dans sa forme actuelle. Trajectoires est, ou était, «Le podcast de la culture mathématiques». Chaque émission dure autour de deux heures.

Ce n'est pas un manque de succès. Nous avions quelques milliers d'auditeurs par mois - je n'ai pas les chiffres exacte, puisque je n'ai pas accès à toutes les plateformes d'écoutes. C'est clairement bien plus que ce que nous pensions pouvoir atteindre en commençant. Une notoriété suffisante, au moins autour de moi, pour qu'il arrive qu'en sortant de scène[1], des spectateurs me disent qu'ils ont écoutés trajectoires. Ce qui est fort sympathique.

J'ai plusieurs fois songé à quitter Trajectoires. C'est donc un sentiment assez mitigé que j'ai en voyant qu'à la place, ce soit Trajectoires qui s'arrête.

Pourquoi je participe à Trajectoires

Plusieurs personnes m'ont demandé pourquoi je faisais ça, pourquoi je continuais.

La première raison concernant la forme est que ça me fait participer à un projet. Potentiellement intéressant comme ligne de CV, participé à de la vulgarisation touchant des milliers de gens, dans un projet ayant été aidé par l'IHP et l'institut Blaise Pascal, donc avec un minimum de reconnaissance. Et puis, comme quelqu'un disait récemment «La vulgarisation d'aujourd'hui ce sont les étudiants mais aussi les crédits de demain...».

La première raison concernant le fond, c'est que j'aimerai créer quelque chose qui, si je l'avais écouté étant ado, m'aurait conforté que faire des maths peut-être vraiment plaisant. N'ayant aucune statistiques sur nos auditeur/trice-s, j'ignore entièrement si ce but a pu être atteint ne serait-ce qu'un petit peu.

J'aime beaucoup entendre les gens penser. André Sauvé, humoriste, fait ça super bien. Je suivais aussi quelques blogs persos, où des gens tentaient de dérouler leur pensées tels quels venaient. C'est un style qui s'est un peu perdu, ou alors je ne sais plus le reconnaître. En tout cas, je trouve que, avec la discussion après chronique, on s'approchait de ça. Quand les chroniqueurs non-spécialistes reprenaient le spécialiste pour demander des précisions, pour tenter de donner leur intuition. Ça montre l'évolution de l'idée dans le/la mathématicien-ne qui la découvre et je trouve ça très joli.

Et puis, Trajectoires me poussait à me plonger à fond, une fois un thème choisi, dans des livres intéressant, mais que j'aurai probablement procrastiné. C'était particulièrement vrai dans l'émission sur les géométries non-standards, qui est un sujet que, comme beaucoup de monde, je connais mal.

Enfin, c'était marrant d'expérimenter. De tester la forme. Avec l'émission sur Pi, où l'on s'interdisait de parler de cercle. Ou encore l'émission de Noël où l'on donnait des résultats qui nous plaisent, juste pour eux.

Pourquoi je pensais arrêter

Théoriquement, nous deviens faire un débrieffing à la fin de chaque émission. Je pense que ceci a duré environ trois émissions. 2 heures d'enregistrement, plus une heure pour se mettre en place, régler les micros, discuter du déroulé une dernière fois... ça faisait déjà long, à la fin, on était tous crevé. Finalement, j'ai peu eu l'occasion de parler de ce qui me gênait, on prévoyait vaguement de débriefer après, en ligne. Et quand je posais des questions sur slack, ou avait des remarques, finalement, c'était assez souvent ignoré. C'est un fonctionnement qui n'est pas très plaisant, mais après tout, on est tous très occupé.

Bien sûr, je ne prétend pas savoir comment le podcast doit être. Par contre, j'apprécie de savoir pourquoi il est comme il est. Parfois, j'avais des échos d'amis qui ont écouté un épisode puis arrêté, et souvent je partageai leurs points de vues. Mais après tout, ce n'est pas étonnant que mes amis pensent de manière similaire à moi. J'ai beaucoup d'amis qui ont au moins une licence de maths, qui viennent de normal sup'... bref, qui n'est pas représentatif de grand monde. Et même si j'aurai aimé que l'émission leur plaise, perdre une part importante du public pour gagner des gens déjà passionné par les maths, ça n'aurait pas vraiment eu d'intérêt.

Pour prendre un unique exemple de chose qui me gênait un peu: les chroniques vagues. Fibre a réussi à trouver des chroniqueurs ayant des visions très différentes des mathématiques. Sur le principe je trouve ça cool, parce qu'il y a des gens qui disent des choses que je n'aurai jamais pensé à dire, quand bien même j'aurai connu leurs domaines des mathématiques. Ça montre des approches différentes, entre le pure théoricien, et ceux qui veulent atteindre un but. Le souci, c'est qu'après certaines chroniques, je n'avais absolument rien à dire. Je ne pouvais pas réagir. Parce que je n'avais pas l'impression d'avoir compris ou entendu quoi que ce soit de précis. Aussi bien pour les chroniques d'introduction que pour les chroniques difficiles.

Enfin, parce qu'on avait du mal à renouveler les gens. On a passé pas mal de temps à contacter des gens qu'on connaît pour leur proposer de nous rejoindre, juste pour une émission. On a plutôt été contacté des gens qu'au moins un des chroniqueur-se-s actuel connaît, je n'aurai pas su aborder un-e chercheur/se qui m'est inconnu-e. Mais peu de gens étaient intéressée, ils avaient peur que ça prenne trop de temps, il fallait venir à Paris, ou bien l'épisode qu'ils ont écouté pour se faire une idée leur a pas plu. De manière paradoxale, Denise a eu l'occasion de parler de son domaine, l'informatique quantique, alors que moi, je n'en ai jamais eu l'occasion. La majorité des autres chroniqueur-se n'avaient rien à dire sur l'informatique fondamentale, ni sur la logique.

Pourquoi on s'arrête

Nous nous arrêtons (au moins temporairement, et dans la forme actuelle) par décision de Fibre. C'est le présentateur, mais c'est surtout l'organisateur. Nous autres, chroniqueurs, écrivions nos chroniques, discutions à l'antenne. Mais il se chargeait de trouver le lieu, la date, de relancer les chroniqueurs, de faire le fil de fer. Et il est aussi le comptable de Qualiter, notre production. Il se chargeait aussi de décider, parmi nos idées, quel sera le sujet des émission classique. Et d'imaginer le thème et l’exécution des émissions exceptionnelle. Il se chargeait aussi de discuter avec les nouveaux chroniqueurs de l'émission. Bref, il faisait le plus gros du boulot. Il a ses raisons, qu'il communiquera ou non quand et comment bon lui semblera.

Quelque part, c'est assez triste, parce que je m'étais pas mal investi dans Trajectoires, me l'était approprié. Et je réalise après coup que c'était principalement une création de Fibre, sur lequel je n'étais qu'un intervenant, pas un décideur.

Pourquoi je ne reprend pas

J'ai indiqué précédemment tout ce que faisait Fibre. Tout cela fait qu'il serait très difficile de continuer sans Fibre. En premier lieu, ça serait difficile techniquement. Parce que j'ignore si on pourrait toujours avoir accès au matériel. Et même si j'imagine qu'on peut prétendre à y avoir accès, au moins pour ce qui a été obtenu[2] grâce à l'aide de la fondation Blaise Pascal pour la médiation en mathématiques et l'informatique, nous aurions toujours besoin d'être formé quant à l'utilisation de ce matériel.

Ça serait difficile de continuer avec la même équipe, parce qu'il faudrait qu'on prenne des décisions en groupe. Ce qui est loin d'être évident quand des gens mettent longtemps à répondre et qu'il faut les relancer. Un des talents de Fibre, c'est qu'il arrive à mener des projets à bien. Il nous a présenté un projet déjà monté, on avait plu qu'à écrire nos chroniques et venir. Je ne serai pas capable de faire ça pour l'instant. Et, si le passé est signe de quoi que ce soit, personne dans l'équipe n'est assez investi pour remplacer Fibre non plus.

Enfin, si je reprenais, je n'aurai pas envie de faire trajectoires comme on faisait avant juste sous prétexte qu'on faisait comme ça. Que c'est l'idée qu'en a eu Fibre Tigre, et que je suis par inertie. Comme je l'ai dit plus haut, j'avais pas mal d'insatisfaction, de questions restées sans réponses. Bref, si je reprenais, ça ne serait juste plus Trajectoires. Ça signifie que, outre les questions matériels, il faudrait imaginer un tout nouveau podcast. Ça peut être envisageable, mon expériences Trajectoires me donnerait d'ailleurs de la crédibilité pour lancer le projet. Mais je ne suis pas persuadé que c'est ce que j'ai envie de faire, alors que ça prend un temps assez énorme à préparer, et que je n'ai même pas de certitude quant à savoir si j'aurai encore un boulot en septembre. Ce qui, en terme de priorité, est quand même plus important à préparer.

Notes

[1] Je suppose que les gens qui font l'effort de chercher les podcast sont positivement corrélés aux gens prêt à faire l'effort de découvrir des artistes.

[2] Et encore, difficile de dire ce qui a été obtenu comment. Les fonds sont fongibles. J'ignore si la demande de subvention précisait explicitement ce qui serait acheté avec cet argent.

mardi 29 novembre 2016

Logiciel de mémorisation pour les mathématiques

En traînant sur less wrong, j'ai découvert un truc que, visiblement, beaucoup de gens autour de moi connaissait - mais pas moi. Anki, un logiciel pour aider à la mémorisation, partant du principe que pour se souvenir des choses, il faut les revoir juste avant de les oublier, et que plus on les a revu, plus on met longtemps avant de les oublier. Il semblerait qu'en général, il soit principalement employé pour l'apprentissage de vocabulaire étranger. Je m'en vais vous expliquer comment je l'utilise pour les mathématiques. Sachez déjà que vous pouvez trouver un(des) example(s) de mes decks ici

Personnellement, mon plus grand problème avec les mathématiques, c'est la quantité de choses à apprendre. Je commence par donner un exemple, qui ne sera pas forcément clair pour les gens ne connaissant pas déjà un peu le domaine dont je parle, mais ça ne devrait pas trop gêner à saisir l'idée générale. J'ai voulu découvrir ce qu'était la théorie des catégories. Un autre jour j'ai voulu lire un manuel d'introduction à la théorie des nombres. Deux sujets qui, ont l'air franchement passionnants. Dans lequel les premières pages me semblent clairs. Mais après quelques dizaines de pages, j'avais oublié les définitions exactes donnés dans les pages d'avants. Pas des définitions très complexes. Juste trop nombreuses.

J'insiste énormément sur le fait que je parle d'apprendre des définitions que j'ai comprises. Il ne sert à rien, en mathématique, et de manière général, d'apprendre sans comprendre (à part une liste de courses ou les décimales de Pi, auquel cas il ne sert à rien de l'apprendre.)

Dans le cas des catégories, les définitions étaient expliquée en montrant comment des propriétés bien connus d'algèbre ou de topologie étaient des cas particuliers des propriétés catégoriques qu'on nous introduisait. C'est génial pour comprendre, vu que ça ramène à des notions connus. Par exemple, je me souviens que Épi et Mono sont les généralisations de surjectif et d'injectif. Ou d'injectif et surjectif. J'avais toujours un doute. Dans tous deux cas, ça me permettait donc de savoir que même un Épi peut être Mono. Mais d'une part, ça garde la question «Un Épi, c'est surjectif ou injectif ?» Et d'autre part, savoir que c'est une généralisation ne m'aide pas à savoir comment ça généralise. Quelles propriétés des surjections sont gardées et lesquels ne le sont pas. Par exemple, suivre de trop près la métaphore indiquerait que Épi et Mono implique Iso.

Et pour ce genre de problème, un logiciel de mémorisation est génial. Le souci, c'est que les decks créé par la communauté d'utilisateur de anki sont assez médiocres. D'abord parce qu'on dirait qu'aucun procédé systématique n'a été suivi en créant les cartes (certains ont juste scanné des pages de cours manuscrites). Et puis parce que c'est rarement des maths qui m'intéressent. Je ne cherche pas à apprendre mes tables de multiplication, ni les bases de calculus. En fait, les seuls deck de la communauté que j'utilise sont: pour apprendre les notes naturelles sur les cordes de guitare, les techniques pour utiliser efficacement un logiciel de mémorisation, et le deck créé à partir de Rationality, from A.I. to Zombie. Je me retrouve donc à créer mes propres decks à partir de livre de cours ou d'articles de recherche dont j'aimerai maîtriser le contenu.

Les régles que j'utilise.

Les decks.

J'utilise un deck par livre. Parce que comme ça je pourrai donner ses decks à la communauté en indiquant précisément ce que contient le deck. Ça veut dire que j'ai choisi de prendre le temps de remettre dans le deck des trucs que je crois déjà connaître; et en particulier des choses sont en double d'un deck à l'autre (Par exemple, la définition d'un ensemble ouvert se trouve bien sûr dans un deck de topologie. Mais il se trouve aussi dans un deck d'analyse complexe, où la définition est restreinte aux cas des espaces métriques.). J'ai l'impression que ça ne me fait pas perdre beaucoup de temps, que ça me permet d'être sur que je n'omet pas de chose que je pense maîtriser à-peu-près - mais en fait non. Et ça permettra à la communauté puisse commencer par n'importe quel deck.

Je précise tout de suite que ces decks ont vocation à servir à aider la lecture du livre. Mais PAS à la remplacer. Parce que avoir vu au moins une fois la démonstration est souvent important. Et que mes deck ne reprennent pas en général les démonstrations[1].

Je ne créé pas la totalité d'un decks d'un coups. Par exemple, je lis un bouquin de théorie des ensemble. Pour l'instant je n'ai créé que le chapitre un. Parce qu'il y a déjà tellement de définitions différentes que je ne maîtrise pas encore par cœur et qui me demande de réfléchir (le type, la cofinalité) que je ne serai pas encore capable de comprendre la suite du livre. (À ce sujet, il faudrait que je conseille aux utilisateurs de mes decks de «suspendre» l'étude du chapitre n tant qu'ils ne maîtrisent pas le chapitre n-1.)

À contrario, je construis plusieurs decks d'un coup. Ce qui est d'ailleurs assez cohérent avec la manière dont les maths sont étudiées en cours. C'est à dire que si je suis bloqué pour l'instant par ma maîtrise de l'analyse complexe, ça ne m'empêche aucunement d'avancer dans un livre de théorie des graphes. Et le temps d'avancer petit à petit dans l'apprentissage sur Anki des résultats d'analyse, je peux y mettre des résultats de théorie des graphes.

Type de carte

Une carte standard de Anki montre un recto et demande un verso. Et parfois les cartes sont à double sens: on montre le verso et on demande le recto. C'est génial pour du vocabulaire, et je l'utilise quand je cherche à me souvenir de la traduction anglaise d'un mot que je connais en français, ou vice-versa.

À part pour le vocabulaire, j'utilise presque uniquement les textes a trous. C'est à dire, comme son nom l'indique, il y a un texte de base, et on cache une partie du texte que l'utilisateur doit retrouver. L'intérêt du texte à trou, c'est que ça permet de simuler les cartes normales. Donc une fois qu'on a sélectionner texte à trou, on n'a jamais besoin de rechanger le type de texte.

Je rajoute dans un champ à part le numéro de chapitre, section, sous-section. Et si c'est un théorème, lemme, corollaire, définition[2], je rajoute son numéro. Je ne rajoute pas (encore) le numéro de la page, parce que c'est souvent redondant avec les informations précédentes. Mais je suppose que je devrai le faire quand il n'y a pas de numéro d'environnement, car dans certains livre où rien n'est numéroté et dont les sections font 10 pages, retrouver une définition précise peut prendre plusieurs minutes. Cet intérêt est d'autant plus grand que, pour se souvenir d'un résultat, une méthode efficace est de se souvenir de sa preuve. Et que réciproquement, il est pratique d'avoir la position du résultat pour relire la preuve si on s'aperçoit qu'on l'a oublié.

Un dernier point important: je coche systématiquement la case disant à Anki de ne pas vider les champs quand j'ai rempli une carte. Concernant les numéros de chapitre et de section, c'est évident que ça change rarement d'une fois sur l'autre et qu'on gagne du temps en n'ayant pas à les retaper. Concernant les maths elles-mêmes, j'ai remarqué que les objets arrivant les uns après les autres sont souvent similaires. Ainsi, dans un livre d'algèbre linéaire, beaucoup de résultats vont commencer par «Soit U,V deux espace vectoriels et T un morphism de U dans V». C'est quand même pratique d'éviter de retaper ça a chaque fois.

Définition

Pour une définition, il y a en général trois trous. Le premier, c'est le nom de l'objet défini. Le second c'est la notation utilisée pour représenter l'objet. et le troisième c'est la définition. Si un objet admet plusieurs définitions équivalentes, je rajoute un trou par définition. Parce que si on te demande ce qu'est un carré, et que tu réponds : un losange avec un angle droit, tu n'as pas envie d'avoir faux car ça a été défini comme un rectangle avec deux côtés adjacents de mêmes longueurs.

Attention cependant, il vaut parfois mieux que la notation et la définition apparaissent dans le même trou. Ainsi pour X un ensemble, il est simple d'intuiter que «Aff(X)» est «le plus petit espace affine contenant X». Or ce genre de question est totalement inintéressante. Ce qu'il faut c'est retrouvé cette définition à partir de «l'ensemble des éléments de la forme Somme des x_ir_i, ou x_i appartient à X, r_i appartient au corps, et la somme des r_i vaut 1.»

Théorème

Un théorème comprend en général deux trous: les hypothèse, et la conclusion. Un troisième trou si le théorème est important et admet un nom classique. Cependant, il faut faire attention, quand une hypothèse introduit un objet, il vaut mieux introduire l'objet en dehors du trou. C'est à dire «Si ..., alors le centre de P est non trivial» est peu clair. Alors que «Soit P un groupe. Si ..., alors le centre de P est non trivial» est plus clair.

Hypothèses
Une première chose très importante est de toujours remettre toutes les hypothèses. Parfois, certaines hypothèses sont marquées en début de section/chapitre et sont supposées vrai pour tout le chapitre. Sauf que lors de la révision, on ne voit plus ces hypothèses (il serait même absurde de demander à connaître les hypothèses par cœur, chapitre par chapitre).

Il est aussi important de mettre des trous vides. En théorie des automates, certains théorèmes concernent des monoides, et d'autres uniquement des monoides finis. Si je dis «Soit M un monoide fini» ou «soit M un monoide», la simple présence du trou m'indique que l'hypothèse est que M est fini. Donc dans le deuxième cas, il est indispensable de mettre «Soit M un monoide ». C'est d'autant plus simple à faire que, si on dit à Anki que quand on créé une nouvelle carte, ses champs soient les champs de l'ancienne carte,

Implication multiples
Ce qui m'amène à un autre problème. Une hypothèse peut avoir plusieurs implications. Une propriété peut être impliqué par plusieurs hypothèse différentes. Donc il vaut mieux mettre «Si P1 ou P2 .. ou Pi alors Q», ou bien «Si P alors Q1 et Q2 ... et Qi». En effet, on ne voudrait pas avoir tort juste parce que, de toutes les conséquences, on a choisi celle qui est sur une autre carte. Ici, chaque terme entre crochet indique un trou différent.

On tomberait bien sur sur un problème si P implique Q et R et que Q est impliqué par O et P. Mais jusqu'à présent, je ne suis pas tombé dessus, et j'ai l'impression que dans les maths, en pratique, ça arrive rarement.

Ordre des mots
Quand un théorème est de la forme «Le centraliseur de A dans G divise le normalisateur de A dans G». Il faut absolument avoir «Le normalisateur de A dans G est divisé par le centraliseur de A dans G». Sinon on peut compléter le résultat par simple reconnaissance de motif. En se doutant que le trou du milieu est soit une égalité, soit une affirmation sur la divisibilité. Pour l'instant je n'ai pas encore trouvé comment faire ça efficacement, mais il faudrait que je repasse sur mes anciennes carte et fasse cet ajout.

Exemples

La dernière chose que je veux rajouter dans Anki, ce sont les exemples. En général, ils sont de la forme «A, B.., Z sont des exemples de P».

J'ai longtemps cru que les exemples ne faisaient pas parti des mathématiques. Parce que, d'un point de vue purement Bourbakiste, logique, un exemple n'apparaît pas dans les preuves, et ce qui compte c'est: définition, axiomes, théorème, preuves. Et je pense que c'est une idée assez répandue, puisque je me souviens qu'un prof de l'ENS avait insisté sur le fait qu'il ne fallait pas qu'on ignore les exemples.

Depuis, j'ai compris que les exemples avaient aux moins trois utilités. Officiellement, ça donne de l'intuition, en montrant dans quel cas les hypothèses peuvent s'appliquer. Formellement, un exemple permet de montrer qu'un ensemble d'hypothèse est non contradictoire, et donc qu'il est pertinent de considérer ces hypothèses. Et en pratique, un exemple pourra être réutilisé quand on veut étudier des affirmations qui ne sont pas dans le cours.

Révision

Une fois les cartes faites, je demande à Anki de créer toutes les images à partir de LaTeX (étape non automatique, ce qui est bête) et j'utilise la synchronisation (possible uniquement via leur serveur), pour envoyer le tout vers mon téléphone portable. (Application gratuite et sans pubs, ils sont fantastiques !) et les réviser dans le métro/quand j'ai un moment seul sans mon ordinateur.

Bien sûr, en créant les cartes, je fais des fautes. Soit parce que je n'écris pas du LaTeX sans faute et que Anki affiche les message d'erreurs dans les cartes au lieu de le montrer à leur créations. Soit parce que j'ai oublié un mot, remplacé un mot par un autre (typiquement, je confond systématiquement les mot set et state - ce qui est ennuyeux quand on fait de la logique et des automates). C'est pour ça aussi que, quand je créé une carte, d'indiquer précisément d'où vient l'information. Si c'est le cas, s'il y a une faute, je «suspend» la carte. Et une fois synchronisé, je regarde les cartes suspendues sur mon ordinateur pour les corriger.

Parfois, c'est une carte à trou, et le trou fait que la phrase n'a aucun sens. Dans ce cas je suspend aussi avec un message explicatif. Ça arrive surtout si je n'ai pas respecté les règles énoncées plus haut, par exemples pour les premières cartes que j'ai créé. Même règles si je vois une faute tellement grosse que je ne comprend plus la question.

Notes

[1] La principale exception étant pour Least Significant Digit First Presburger Automata, où mon but est justement de comprendre un jour la démonstration de ce papier de 130 pages.

[2] Bref, un environnement en LaTeX

mardi 23 février 2016

Une preuve finie

Je tiens à préciser que ce billet sera surement incompréhensible, même pour les matheux/informaticiens, même pour les scientifique. J'espère, à minima, qu'il sera encore compréhensible pour moi dans quelques années, pour que je puisse revivre l'extase que j'ai au moment de l'écriture - je n'en suis malheureusement pas sûr. Je ne force jamais qui que ce soit à me lire, cette fois-ci, je vous en décourage même vivement. Où alors, dites vous que c'est à la manière du «Théorème Vivant», de Villani, le but est plus de voir ce qui se passe dans la tête du matheux que de comprendre les maths. Je sais pas. Bon, rentrons dans le billet.


En aout 2013 j'avais fini une preuve de 30 pages, avec des «il est clair que», et quelques fois c'était faux. Déjà, car ce n'était jamais clair, à part pour moi. Mais surtout car il arrivait que le résultat «clair» soit faux. Encore qu'il n'ait jamais été que faux de peu, il était toujours presque vrai. Il suffisait de quelques petites modifications pour que ça soit vrai. Mais les mathématiques n'admettent pas ces petites approximations.

Ce soir j'ai enfin fini sans aucun «clair que», en étant totalement sûr de chaque partie de chaque lemme. 130 pages. Bon, il y a aussi des rajouts d'intuitions, d'explications, d'exemples, quelques (19) figures, 2 pages et demi d'index... Mais une bonne grosse partie de cette nouvelle centaine de page vient des preuves. Pour donner une idée, il y a 35 exemples, 61 définitions, 15 notations, 115 lemmes, 7 propositions, 3 théorèmes et 3 algorithmes.


En mai 2013, j'avais implémenté et testé les algorithmes. C'est 5000 lignes en oCaml, plus 1000 de commentaires.

Je crois que ce qui m'impressionne le plus, c'est que malgré ces 2 ans de fautes et d'erreurs corrigés dans la démonstration, l'algorithme fonctionnait, et n'a pas besoin d'être modifié. Autrement dit, il s'agit de deux ans à régler des détails, mais où le gros du travail était déjà fini. Bon, c'est aussi deux ans à apprendre à améliorer ma rédaction.

Déjà, c'est une chance énorme, parce que, des grosses preuves, qui doivent être jeté à la poubelle à cause d'un lemme improuvable, l'histoire en regorge, les doctorants en ont plein. Je dois même dire que, pendant plus de deux mois, j'ai eu peur d'être dans cette situation. Il y avait un lemme, une partie vraiment technique, une égalité que je n'arrivai pas à prouver. Je me suis mis à peaufiner tout les résultats autours, tout le reste du papier, revenant plusieurs fois dessus, et toujours bloqués. Avant d'abandonner la belle technique que j'avais développé, et qui marchait partout SAUF pour cette égalité, et de faire ce qui m'effrayait et me semblait vouer à l'écher, prouver cette égalité «à la main».


C'est une expression que je trouve marrant «à la main», je ne sais pas si elle est courante chez les mathématiciens, où si c'est une spécificité de mon entourage. Parce que, d'abord, je n'écris jamais à la main, je fais toujours tout directement en LaTeX (sauf les dessins). Prouver une égalité «à la main», par exemple, ça veut dire que je ne vais pas utiliser de lemme, encore moins de théorème, qui permet de déduire l'égalité. Mais qu'à la place, je fais faire tout le calcul, en détaillant explicitement la totalité des cas envisageable, en remontant à la définition, et en s'arrêtant quand on utilise les axiomes ou les hypothèses.


Prouver ce lemme, cette égalité, «à la main» était une expérience assez bizarre. D'abord car la preuve prend 8 pages, et que je n'ai jamais utilisé de preuve de 8 pages pour un lemme[1]. Mais surtout, parce que, au moment où j'étais bloqué, j'avais quand même la certitude que ce lemme était vrai. Déjà, j'ai passé des heures à chercher un contre-exemple, sans trouver la moindre piste de début d'idée de comment rendre le lemme faux.

Les contre-exemple ont détruit une dizaine de mes lemmes, au moins, me forçant à les modifier, pour tenir compte des cas que j'avais oubliés. Mais souvent, ces contres exemples étaient assez naturels, je ne crois jamais avoir eu besoin de recourir à des cas tarabiscotés. Mes contre exemples sont des formules logiques, et en général, c'était carrément des prédicats atomiques, ou alors la conjonction de deux prédicats atomique dans le pire des cas. Ou alors, mes contre exemple ont été trouvé quand je codai, et que oCaml me levait une exception, montrant que j'avais oublié de vérifier qu'un élément existe avant de l'utiliser. Mais là, j'avais fait le tour des formules vraiment simple, mon programme fonctionnait aussi bien sur les exemples simples que sur des exemples aléatoires, et RIEN.

Pire, chaque exemple me montrait encore plus que l'égalité était «naturelle». Et d'ailleurs, sémantiquement, il y avait une raison d'être à cette égalité. L'égalité était certes très complexe à exprimer, une expression composés de diverses sous expression, elle même composées de sous expression[2], mais elle ne sortait pas du chapeau. Je ne m'amusais pas à supposer que cette égalité était juste car «c'est ce qui fait que ça fonctionne», mais j'étais à peu près capable d(e m)'expliquer l'intuition derrière cette égalité, de ce qu'elle signifiait en vrai(d'ailleurs, cette explication est donné à côté de l'égalité.)

Malheureusement, ça m'arrive, dans ce papier, de donner des égalités «juste parce que c'est vrai, et que j'en ai besoin», sans vrai raison derrière. Ça m'arrive une seule fois, mais pour une liste de 17 égalités. Qui sont toutes relativement simple d'ailleurs. Mais là, c'était une égalité compliquée, mais, à la limite, je pourrai presque dire qu'elle était si naturelle que, même si elle ne servait à rien, j'aurai trouvé justifié de la prouver car elle était jolie. Ce qui rendait d'autant plus frustrant d'être bloqué.

Quelque part, je dirai que je devais avoir «foi» en cette égalité, parce que je continuais de baser une bonne partie de mon travail sur elle, alors qu'elle n'était pas prouvé. J'ai pendant ce temps chercher à trouver une autre voix pour pouvoir poursuivre sans cette égalité, mais toutes les autres voix auxquels je pensais était, fondamentalement, la même que cette égalité, et j'étais bloqué pour des raisons à peu près similaire. Pour prendre l'exemple classique de la montagne, j'étais à la base, je voulais atteindre un sommet. Certes, j'ai finalement abandonné l'idée de grimper directement en ligne droite. Mais d'une façon où d'une autre, il y a bien un moment où il a fallu que je monte, même si utiliser des routes de faible pente (preuve à la main), fait que c'était CONSIDÉRABLEMENT plus long que si j'avais pu utiliser un mécanisme automatique (télésiège/lemme).

C'est aussi un sentiment horrible, de savoir que tant tiens sur de la foi, alors que je suis matheux. D'un côté, je n'osais pas trop y penser, je ne savais pas si le plus horrible était de me dire qu'il est possible que cette centaine de page finisse à la poubelle. Me dire qu'on a passé un an pour rien avec mon directeur de thèse, à relire la première cinquantaine de pages [3]. Ma thèse serait pas totalement gâché, j'ai déjà un papier d'accepté dans un journal, un autre présenté en conférence, et quelques autres résultats. Mais ça aurait supprimé la moitié du travail de ces 3 ans et demi. Et même si, scientifiquement, c'est acceptable de se tromper, pour la soutenance de thèse, pour le manuscrit, ça ne le fait pas trop. Il me semble que, théoriquement, un scientifique expérimental peut dire «on a émis tel hypothèse, on a testé, et en fait non», ça rajoute de l'information pertinente, pour dire que quelque chose est faux. Mais une fausse preuve de A n'est en aucun cas une preuve de non A.

Je n'en suis pas fier, mais dans des moments comme ça, j'hésitais à juste donner l'intuition de pourquoi ça doit marcher, rajouter un «il est clair que», et puis tenter le diable, attendre de voir si quelqu'un tique. C'est aussi à ce moment là que je me demande «alors, pourquoi tu fais des maths», parce que c'est vraiment triste si le fait de devoir publier le théorème et soutenir la thèse prend le pas sur le fait d'avoir une vérité mathématique correctement établie.


Le plus incroyable pour moi, et je ne pense pas être capable de partager cet admiration, c'est que tout tient. Le fait que j'ai, en 2013, pu implémenter un algorithme correcte dont la preuve était fausse, montre que l'idée générale, je la maîtrise depuis un moment.

L'idée générale, c'est que j'étudie des ensembles de vecteurs(tuple), de nombre entiers. À la base, ils sont représenté par une méthode abstraite, un «automate fini». Et je veux voir si je peux les transformer en un autre formalisme abstrait: des formules de logiques, avec des prédicats arithmétiques faibles(modulo et relation d'ordre). Donc mon but est de passer d'une abstraction à une autre. Et pour cela, j'étudie les automates, j’abstraie des propriétés, pour pouvoir regarder juste certains automates qui, moralement, représentent tous les automates qui m'intéressent. Puis j’abstraie encore pour transformer les «mots» en des «partition totalement ordonnées». Puis j’abstraie encore pour remplacer «totalement» par «partiellement ordonnées».

À la fin, je fais des calculs sur les partitions partiellement ordonnées(on va dire POP pour faire court), et je ne considère plus que ça. Et j'obtiens ma preuve, oubliant totalement les ensembles de vecteurs de nombres, qui sont pourtant les objets qui m'intéressent au départ. J'ai beau être matheux, je trouve incroyable de pouvoir travailler sur une abstraction d'abstraction d'abstraction d'abstraction. Le problème, étant, je le constate quand on relit avec mon directeur, qu'il peut arriver que le lecteur ne voit plus le rapport entre l'objet théorique utilisé et ce qui voulait être fait à la base, et que, par conséquent, au lieu de sembler aller vers le résultat que je veux prouver, les lemmes techniques semblent être des pures exercices formels sans signification.

Exercice formel, car j'ai beaucoup de formalisme. Une POP, c'est un quadruplet, contenant un nombre, un vecteur de nombre, un vecteur de symboles et une matrice d'autres symboles. Et ce quadruplet satisfait 16 axiomes. En vrai, dire 16 axiomes, c'est arbitraire, je pourrai prendre un seul axiome qui est la conjonction de mes 16 axiomes actuels. Je pourrai aussi découper un axiome en morceau. Ce qui est important, c'est que c'est une grosse structure. Ce n'est pas une structure complexe, il y a un nombre fini de POPs qui existent[4], les algébristes, les combinatoriciens, manipulent régulièrement des structures beaucoup plus fines, beaucoup plus compliquées. C'est juste que décrire explicitement une POP prend de la place, et prouver que le quadruplet est un pop nécessite, pour être formel, de montrer que les 16 axiomes sont respectés. Et je ne compte pas le nombre de fois où j'ai écrit «il est clair que P est un POP», et où en fait, un axiome n'était pas respecté. 15 axiomes étaient respectés, mais pas le 16 ème. Ce n'était d'ailleurs pas tout le temps le même, même si en général, c'est le côté «ordonné» qui buggait. Quoi que pour être honnête, je n'écrivai jamais «il est clair que P est un pop», je disais juste «Soit P le pop suivant:»... et ce qui suivait n'était pas une POP, mais juste un truc qui ressemblait à une POP à un axiome près.

L'ensemble des POP forme un semi-groupe, autrement dit, on peut prendre deux POP, les additionner, et obtenir un troisième POP. Et c'est là que, pour moi, le sentiment de fantastique apparaît. Parce qu'à partir du moment où on peut les additionner, on peut écrire des égalités, des équations. D'ailleurs, l'égalité qui me posait problème, dont je parlais plus haut, c'est une égalité entre POP. Et quand certaines égalités sont prouvés, ça montre que l'abstraction est correcte, ça donne l'impression que c'était LE bon choix. Ce n'est pas tout à fait un «raisonnement divin»/une preuve du LIVRE, parce que le sujet n'est pas assez fondamental pour mériter d'y avoir sa place, mais tout de même pas loin. Ça tombe juste, pile poil. La preuve, je me sers de chacun des 16 axiomes, et je peux montrer que, pour tout POP, pour tout quadruplet respectant ces 16 axiomes, il y a un cas utilisant ce POP, donc je ne peux PAS rajouter quoi que ce soit aux 16 axiomes, et je ne peux rien retirer.

Et non seulement ça me fait ça pour les 16 axiomes, mais j'ai une deuxième liste, qui contient 8 propriétés que doivent vérifier un automate (une des deux abstractions qui m'intéressent), pour représenter un ensemble qui est aussi descriptible par une formule logique. Et encore une fois, le côté, «si et seulement si» me semble merveilleux. Arriver à dire que, dès qu'on satisfait ces propriétés, il y a une formule, ça implique qu'on ne peut pas rajouter un peu plus de limite. Et dire que dès qu'il y a une formule, ces propriétés sont satisfaites, ça veut dire qu'on ne peut rien retirer. Je ne suis presque plus capable de dire comment j'ai réalisé ce miracle, comment j'ai pu lister ces propriétés si exacte.

C'est un regret que j'ai, après 3 ans à travailler sur ce résultat, je connais la preuve sur le bout des doigts, je suis capable de redonner le schéma globale des 130 pages de tête, ou de reparler de chaque partie assez facilement. Par contre, j'ai totalement oublié le chemin pris pour arriver à cette preuve. Je sais que je suis passé par des notions que j'ai introduites[5], qui ont disparu, et dont je ne me souviens que du nom. Je sais que j'avais utilisé des ensembles d'axiomes légèrement différents, que j'ai souvent changer le plan globale du papier. Mais je ne me souviens plus de tout, et malgré l'historique que j'ai gardé (vive GIT), je pense que je ne relirai jamais les versions d'avant.

Le point qui n'a jamais changé, en tout cas, c'est le temps de calcul. Depuis le début, j'avais un truc rapide. Et je trouve ça assez fantastique. Chacune des 8 propriété susmentionnées peut se tester en temps O(n log(n)). I.e. rapidement. Donc en plus d'être mathématiquement joli, c'est efficace (je sais, je l'ai implémenté, et testé !) Et je ne vois pas de raison pour que ça doive être efficace, après tout, avec une preuve si longue, compliquée et tarabiscotée, je pourrai m'attendre à ce que ce soit lourd. Mais en fait non. En fait, c'est la première fois que je vois si intimement la notion «une preuve, c'est un algorithme», parce que ma preuve est un énorme algorithme, un algorithme en temps double exponentielle. Mais une fois retiré tous les calculs qui ne servent qu'aux mathématique, une fois que seul les calculs utiles sont gardé, c'est rapide.


Plus haut, je disais que j'avais fini la preuve. Il me reste encore pas mal d'effort de rédaction à faire. Je vais avoir besoin de plein de relecture de ces 130 pages, sans compter celle que me fait mon directeur de thèse. Bref, je suis loin d'avoir fini. Mais, là. Je suis content.

Notes

[1] Malheureusement, j'ai déjà lu un papier avec ce genre de preuve. C'est horrible, et je suis encore à la recherche de moyen de découper en plus petit morceau, mais ça semble impossible.

[2] et que j'ai du simplifier par la suite, suite à la haine de mon directeur de thèse - et de thoute personne sensée, pour les formules qui contiennent des indices d'indices d'exposants d'indices d'exposants...

[3] j'écris vraiment très mal, et j'ai du repasser au moins 3 fois par pages sur les 30 premières.

[4] enfin, quand certains paramètres sont fixés.

[5] la réécriture de partition partiellement ordonnée

lundi 17 août 2015

Vulgariser P vs NP

Tiens, j'étais sûr d'avoir déjà écrit ce billet. Mais je ne le trouve pas.

Il m'arrive de m'amuser à tenter de vulgariser le problème «Est ce que P = NP ?». Voici comment je m'y prend. En trichant:


-Déjà, il faut savoir deux choses: d'une part, il vaut un million de dollars[1]. Il a été déclaré comme un des 7 plus grands problèmes mathématiques du millénaire. Et en plus, il est relativement simple à comprendre, ce qui le rend d'autant plus énervant.

Je vais te donner un exemple: Tu sais ce que c'est que la division ? Par exemple, si je te demande quels nombres divisent 12, tu me réponds ?
-2, 3, 6... 4... Ah, et 12 et 1.
-C'était pas très compliqués. Maintenant, si je te donne un nombre qui fait un petit milliers de chiffres, tu fais comment pour trouver des diviseurs ?
-Je sais pas... je les testes un par un. Je teste que les impairs.
-Non, tester tous les nombres, ça prend trop de temps. Même sur les ordinateurs super rapide, c'est pas faisable, pas pour un nombre qui fait des milliers de chiffres. Faut que tu réalises que un millier de chiffres, ça fait un milliard de milliard de milliards... et ça 100 fois, de nombres à tester.

Eh bien en fait, on ne sait pas. Oh en vrai, on a bien quelques astuces pour aller un peu plus vite, mais personne ne sait le faire rapidement. Et ce qui est plus énervant encore, c'est qu'on ne sait pas si c'est mathématiquement impossible. Ou si c'est juste que pour l'instant, on est trop bête pour avoir trouvé la manière de le faire. Et bien, le problème du millénaire, c'est ça, en gros. Soit trouver un moyen de résoudre ce problème, mais on pense pas que ça soit faisable, soit prouver mathématiquement que c'est impossible. P, c'est ce que tu peux faire rapidement, pour une définition formelle de «rapide». Et NP c'est ce que tu peux vérifier rapidement. Parce que, si je te demande les diviseurs de 221, ça peut te prendre du temps, mais si je te dis que 13 le divise, tu peux le vérifier rapidement, 221 divisé par 13, ça fait 17. Et on se demande s'il y a des choses qu'on peut vérifier, mais qu'on peut montrer qu'on ne pourra pas trouver rapidement.
-Tu peux pas prouver qu'on peut pas faire quelque chose. Y a toujours des moyens de faire des trucs auxquels on a pas pensé. Sinon, il y a cent ans, on aurait pu prouver qu'on ne peut pas aller sur la lune.
-En fait si. C'est l'avantage des mathématiques, l'ordinateur, on sait exactement ce que c'est. Donc il y a des trucs qu'on a démontré qu'on ne pourra jamais faire. Par exemple répondre à tous les problèmes mathématiques, et là c'est pas une question de temps, il y en a qui n'ont juste pas de réponse[2], on ne sait même pas lesquels, et le pire, c'est que l'immense majorité des problèmes n'ont pas de réponses[3]. Mais là, avec la recherche des diviseurs, on est dans l'inconnu, on pense qu'on pourra jamais faire, mais on sait pas comment le prouver.
-«Ils ont réussis parce qu'ils ne savaient pas que c'est impossible.»
-Bien sûr, si tu veux être exacte, on peut juste dire «c'est impossible pour les ordinateurs actuels». Ou même les ordinateurs futurs qui se contentent juste d'aller plus vites. Parce là, pour un gros nombre, ton calcul qui va te prendre des milliards de milliards d'années, même si ton ordinateur va mille fois plus vite, t'auras toujours des millions de milliards d'années à attendre... Mais on ne peut pas prouver mathématiquement qu'un jour la Pythie de Delphes ne vas pas arriver et nous donner des réponses à nos questions compliqués. Le pire, c'est que je ne rigole pas, il y a des branches des mathématiques qui étudient ce qu'on pourrait faire si on avait des oracles. Mais plus sérieusement, y a d'autres sortes d'ordinateurs imaginés - les ordinateurs quantiques
-Comme le chat de Schrödinger.
-C'est pas faux. D'autant qu'on ne sait pas si on pourra en réaliser un jour en vrai, ça semble compliquer. En théorie, ils pourraient répondre super rapidement à ce genre de question. Ils pourront pas être utilisé pour word, juste pour des calculs théoriques compliqué, comme trouver des diviseurs. Le souci, c'est que pour l'instant, le plus grand nombre dont les diviseurs ont été trouvés, c'est 21... pas super efficace.
-De toute façon, ça sert à rien. Pourquoi vous y passé autant de temps ?
-En fait non. Le pire, c'est que ce problème là est super important. Si tu trouves comment avoir les diviseurs rapidement, en vrai, c'est largement plus d'un million que ça vaut. Parce que, pour des raisons trop complexe à expliquer, une énorme partie de la sécurité informatique repose sur l'idée qu'on ne sait pas trouver rapidement des diviseurs. Ou qu'on ne sait pas trouver certains trucs. Si tu sais le faire, alors, y a plus de communication secrètes, donc plus de payement en ligne, puisque tout le monde pourrait lire ton mot de passe sur internet, plus de carte bleue à puce... En tout cas, pas de manière aussi simple. L'avantage, c'est que il y a des problèmes qui ressemblent, qu'on sait «vérifier» comme j'avais expliqué, donc qui sont dans NP, qu'on saurait alors peut-être résoudre. Des problèmes de physique, de biologie, de mathématiques, etc... donc y a des optimistes qui espèrent P=NP, ça permettrait de faire d'immense progrès scientifiques, dans des tas de domaines différents en plus, vu que l'ordinateur est utilisé partout !
-Et donc toi, tu travailles sur ça ?
-Ah non. Ça, c'est un des 7 plus gros problèmes mathématiques du millénaire. J'ai aucune chance de résoudre ça. Je fais des trucs, on va dire, similaire de loin, mais avec des modèles BEAUCOUP plus simples. Sur lesquels je suis capable de montrer que des trucs sont impossibles. Ce qu'on se dit, en mathématiques, c'est qu'en empilant des tas et des tas de résultats, petits à petits, on comprendra mieux tout ça, et on finira par voir comment faire ces preuves. On est des nains juchés sur des épaules de géants. Bon, en fait, on fait une pyramide de nains sur des épaules de géants, et on suppose qu'à la longue, on sera assez haut pour avoir des réponses. Mais, souvent, en mathématiques, on ne sait pas qui va trouver le bon chemin, donc on explore le labyrinthe au hasard, et je mélange les métaphores. Mais en tout cas, je te jure, c'est passionnant de traîner là, tenter d'évoluer, de comprendre, et de découvrir des trucs neufs. Même si, je suis juste pas sûr d'avoir la réponse à P=NP de mon vivant, ce qui est dommage, car j'aimerai bien savoir.

Notes

[1] Ou 1,2 million si vous êtes Vinay Deolalikar.

[2] Le fameux théorème d'incomplétude de Godel

[3] Tout du moins, si j'ai bien compris The limits of mathematics, et les résultats de Chaitin, ce qui n'est pas certains du tout.

lundi 10 février 2014

Un sujet à créer

Pour continuer avec les billets en rapport avec le boulot, voilà une description d'un domaine que j'aimerai voir exister. L'étude des formules logiques minimales.

En informatique, on s'intéresse beaucoup au temps et à l'espace mémoire pris par un programme. Et une manière de réduire le temps de calcul, c'est de réduire l'espace mémoire des constructions intermédiaire. Donc, quand on manipule des objets, on aime bien qu'ils soient minimaux. L'exemple le plus évident de mon domaine, c'est les automates. La minimisation d'un automate déterministe a des propriété mathématiques très intéressantes ce qui permet de calculer l'automate minimal très rapidement.

La Théorie de l'information traite -entre autre- des différentes manières de réduire la taille d'un message, en faisant des suppositions sur les propriétés des messages qu'on aura envie d'utiliser. Par exemple, on peut supposer qu'il y aura en moyenne plus de "e" que de "x". Pour donner un exemple, en français, dire "une figure géométrique close composé d'une suite de segments, tous de tailles égaux, avec 3 angles", ça pourrait être résumé en "un triangle équilatérale", c'est plus rapide. Mais là ce n'est pas ce dont je veux parler, je vais supposer que les objets ont une taille fixe, ou pour le dire autrement dit qu'ils ont tous la même probabilité d'arriver[1].

De manière générale, pour "minimiser" un objet parmi une famille d'objet, il suffit de savoir décider trois choses: la taille de l'objet. Faire la liste de tous les objets d'une taille donné. Et savoir si deux objets sont équivalents. Alors on peut vérifier tous les objets de taille 0 et regarder si l'un deux est équivalent à l'objet à minimiser, puis tout ceux de taille 1, de taille 2, etc... Si on en trouve aucun, l'objet est minimal, sinon on a trouvé comment le minimiser.

Typiquement, pour les automates, on peut calculer leur taille, c'est le nombre d'état, on peut vérifier si deux automates sont équivalents, et on peut énumérer tous les automates de taille N[2]. Mais on n'utilise pas la méthode générale décrite plus haut, car ça prendrait trop de temps, et qu'on peut faire plus intelligent.


Eh bien, j'aimerai étudier la taille des formules logiques minimales pour une sémantique donné. Et je ne trouve pratiquement aucun article sur ce sujet, et les rares s'appliquent à des cas ultra précis sous des conditions très restrictives. Pourtant, dans certains domaines, dont le mien, on génère des formules logiques. La formule pouvant être elle même réutilisé dans une étape supplémentaire. Mais je n'ai vu aucun cas où l'on propose de faire une pause entre les étapes pour réduire la taille de la formule.

Selon les indications que j'ai donné tout à l'heure, on pourrait trouver la formule minimale pour les ensembles de tuples d'entiers définis dans l'arithmétique de Presburger. Mais ça serait très long à faire. Et j'ai beau réfléchir à la question, je ne vois aucune manière de le faire efficacement, d'ailleurs, je ne trouve pas de notion "naturelle" de dire qu'une formule est la même qu'une autre, mais réduite. Et pourtant, ça m'aiderait vraiment, ne serait-ce que pour vérifier ce que je fais. Ainsi, un de mes programmes génère la formule suivante: (je ne sais pas si elle rendra bien sur le blog)

∃sa ta sb tb sc tc sd td se te sf tf .sa = 1 ∧ ta = x ∧ {s = 1 ∧ t = (0, 1)mod 2 ⇒ sb = 1 ∧ tb = 0mod 2 ∧ ta − 2 < tb ≤ ta } ∧ {sa = 1 ∧ ta = (1, 0)mod 2 ⇒ sd = 1 ∧ td = 0mod 2 ∧ ta − 2 < td ≤ ta } ∧ {sb = 1 ∧ tb = (0, 2)mod 2 ⇒ sc = 1 ∧ tc = 04 ∧ tb − 4 < tc ≤ tb } ∧ {sb = 1 ∧ tb = (2, 0)mod 2 ⇒ se = 1 ∧ te = 04 ∧ tb − 4 < te ≤ tb } ∧ {sb = 1 ∧ tb = (2, 0)mod 2 ⇒ sf = 1 ∧ tf = 04 ∧ tb − 4 < tf ≤ tb } ∧ {sb = 1 ∧ tb = (0, 2)mod 2 ⇒ se = 1 ∧ te = 04 ∧ tb − 4 < te ≤ tb } ∧ {sc = 1 ⇒ tc 0 + 4 = t1 } ∧ {s = 1 ⇒ t1 + 4 = t0 } ∧ {s = 1 ⇒ t1 = t0 }

Alors qu'elle est équivalente à la version beaucoup plus simple: |x1-x2|=1.

Notes

[1] mathématiquement c'est incorrect, vu que mon ensemble est infini.

[2] Si l'alphabet a A lettres, alors il y a A puissance (A N) tels automates -argh, je peux pas faire de formule mathématique dans dotclear.

vendredi 7 février 2014

Le plus grand sujet de dispute de mon domaine.

J'ai réalisé que ces derniers temps, mes deux sujets principaux sont l'homosexualité, principalement la lutte contre l'homophobie, et la scène. Ça fait un bail que je ne parle plus de science, d'informatique ou de math, et en particulier de mon travail. Je vais essayer de rattraper ça.

Même les mathématiques ne sont pas exempte de dispute. Par exemple, sur la manière de nommer des choses. Je vais donc vous narrer ce qui a été la plus grande source de désaccord scientifique que j'ai vu durant mon année et demi de thèse dans mon petit domaine à moi. Je vais être précis, mais j'ai l'espoir que le sel du billet soit compréhensible par ceux qui ne sont pas du domaine.

En théorie des langages, on a 3 mots différents pour définir la même chose. Langage rationnels, langage régulier ou langage reconnaissable. En gros, la différence, c'est la même que savoir si un carré c'est un rectangle avec 2 côté adjacent de même longueur, ou si c'est un losange avec un angle droit. À la fin, on trouve toujours la même chose, quelque soit la définition prise.


(Vous pouvez sautez les trois paragraphes suivant, j'essaye d'expliquer en français l'idée mathématique, c'est probablement mal dit pour les matheux, et incompréhensible pour les non matheux):

Pour être plus précis, "rationnel" ça signifie qu'on peut créer le langage en utilisant des ensembles de bases (l'ensemble vide et ceux qui contiennent une unique lettre) avec un nombre fini d'opération sur les langages, la concaténation (La concaténation de "ab" et "cd", c'est "abcd"), l'union (l'union des ensembles {ab} et {cd}, c'est {ab,cd}) et l'étoile ( Dans le dernier cas, le mot est super mal choisi, car ça n'a rien à voir avec une étoile, mais c'est standard, et toujours plus joli que fermeture de Kleene qui n'est pas plus parlant. L'étoile de "ab" c'est l'ensemble des mots de la forme: "", "ab", "abab", ..., "abababababab", ...)

Régulier, ça veut dire que le langage est reconnu par un automate fini. Là ça devient un peu plus complexe à définir. En gros, on a une machine avec un nombre fini d'état - par exemple une machine à écrire aurait les états "minuscule" et "majuscule" - sauf qu'au lieu d'écrire, elle lit les lettre une à une, choisit son nouvel état en fonction de la lettre. À la fin, on regarde l'état final et on a toute l'information qu'on veut.

L est "Reconnaissable" signifie qu'il existe un morphisme f vers un monoïde fini, tel que L est l'inverse de f(L). Là, même en simplifiant, je ne vois pas comment le faire comprendre en français, c'est de l'algèbre.

Le résultat étonnant, c'est que à chaque fois, on peut définir exactement les mêmes langages.


Maintenant, regardons des nombres[1] entiers au lieu de regarder des mots. Un ensemble rationnel peut être définit exactement de la même manière qu'un langage rationnel, sauf qu'on prend l'ensemble qui contient 1 au lieu de celui qui contient une lettre comme brique de base. Les ensembles reconnaissables sont naturellement définit, puisque la définition était déjà purement mathématique, algébrique, à la base.

Mais c'est quoi un ensemble de nombre régulier ? VOILÀ LE PLUS GRAND SUJET DE DISPUTE QUE J'AI VU DANS MON DOMAINE. (Oui, désolé, si vous vous attendiez à des grandes questions éthiques comme chez les médecins, vous devez être déçu.)

Pour certains, la réponse est évidente. Un ensemble régulier, c'est un ensemble définissable dans FO(<,mod) - la logique du premier ordre (First Order) avec la relation d'ordre et les prédicats modulaires. En effet, il est démontré que c'était exactement les ensembles reconnaissable par un automate qui lit des écrite en base 1. (C'est à dire que si vous voulez écrire 24, vous allez écrire 111111111111111111111111). Donc c'est un ensemble reconnu par un automate, et donc Howard Straubing a unilatéralement déclaré qu'on appellerait ces ensembles "régulier". Et il a des fans, j'en connais au moins 2, probablement 3, autour de moi, donc pour eux, la question est déjà réglé.

Sauf que, vous êtes en droit de vous demander, pourquoi lire les nombres en base 1 ? Personne ne veut compter le nombre de 1, l'écriture "24" elle est drôlement plus pratique. C'est ce qu'on appelle l'écriture en base 10, car il y a 10 chiffres possible[2]. Mais, avec des automates en base A, on est capable de définir beaucoup plus d'ensembles d'entiers. En fait tout ceux qui sont définissable dans FO(+,V_A)[3], et il a été dit que ces ensembles seraient appelé A-régulier. Autrement dit, la notation actuelle indique qu'il y a des ensembles qui sont A-régulier, mais qui pourtant ne sont pas régulier, ce qui au niveau des noms est contradictoire.

Enfin, il y a des gens, un peu plus éloigné de mon petit domaine, qui confondent régulier, rationnel et reconnaissable, car ils travaillent sur des langages, et pensent donc qu'un ensemble de nombre est dit régulier s'il est reconnaissable/rationnel. Donc en tout cas que ce nom rend le tout plus confus, et m'ont donc très fortement suggéré d'en trouver un autre.

Et donc voilà, mon plus gros problème en math, mais qui n'est pas un problème que les maths peuvent résoudre, c'est trouver quel noms donner à quels type d'objets mathématique.


Personnellement, je n'écoute par leur avis, et suit la norme déjà utilisé par quelques petites dizaine de mon personne dans mon domaine, au risque d'apporter un peu de confusion aux gens extérieur qui cherchent à savoir ce que je fais. Donc un ensemble de nombre régulier, c'est un ensemble définissable dans FO(<,mod).

Mais là où je deviens méchant, et où certains ont probablement raison de m'en vouloir, c'est qu'un ensemble définissable dans FO(<, mod k), c'est à dire si le seul prédicat modulaire que je m’autorise est k, alors j'appelle ça un ensemble mod k-régulier, puisque c'est un cas particulier d'ensemble régulier. Mais ce genre d'ensemble n'a plus de jolie définition en terme d'automate[4], donc ce nom est presque abusif.


Une anecdote pour finir, je ne sais pas si elle fera rire qui que ce soit. Un travail qui m'a pris plusieurs mois, c'était de décider si un ensemble de nombre reconnu par un automate en base A est définissable dans FO(<,mod), autrement dit si vous suivez, s'il est reconnaissable par un automate en base 1, donc selon la définition que j'utilise, s'il est régulier.

Pour résumer, mon travail a donc été de décider si un ensemble reconnu par un automate est régulier[5]...

Et ça a été le titre de la première présentation que j'ai fait sur le sujet. C'est dire si j'avais l'air sérieux !

Notes

[1] en fait les vecteurs de nombres

[2] en fait, je dirai même un automate en base A

[3] où V_A(n) est la fonction qui rend la plus grande puissance de A qui divise n, par exemple V_10(2400)=100

[4] En fait si, grosso modo, c'est ce qui est reconnu par un automate en base 1 dont la longueur des cycles divise k

[5] Pour rappel, j'ai dit en début de billet que la définition d'un langage régulier, c'est qu'il est reconnu par un automate

dimanche 1 janvier 2012

Erratas dans des cours de mathématiques

Sur une idée de ma mère, voici une liste des documents dans lesquels je suis remercié et ceux dans lesquels j'ai fait aggrandir la liste d'errata.

Issues in the proof that P <> NP.

Cours de Topologie de l'Ens de Paris

Mathematical Foundation of Automata Theory

Language formel, Calculabilité, Complexité

Logical Foundation of Proof Complexity (malheureusement les gens ne sont pas nommés)

Lambda-calcul pur, (Non-)terminaison, confluence, standardisation

Constraint Satisfaction Problem

J'ai probablement oublié d'autres cours ici où là. Mais là, google ne me donne plus rien. Mais c'est une habitude que j'ai prise depuis quelques années, quand je vois une erreur, de la signaler. (Je trouve surtout que rechercher ces erreurs permet souvent de mieux comprendre)

vendredi 20 août 2010

Les hauts ferrés

Il est bien connu que en théorie des modèles finis, l'existence d'un ordre total (linear order) donne une puissance semblable aux modèles de calculs réalistes. Il suffit de rajouter cet ordres aux structures, ou de pouvoir rajouter une fonction de choix, pour obtenir cette puissance. Sans ce pouvoir on est très limité !

Si je devais faire une présentation sur ce sujet un jour, je pense que cette citation de Léo Ferré s'impose:

Le désordre, c'est l'ordre moins le pouvoir !

jeudi 18 mars 2010

Multiplication des pains

Soit 3 pains à ranger dans 2 très grand tiroirs. On range les pains dans les tiroirs que l'on veut.

Après avoir fait ça, dans chacun des 2 tiroirs, il y a au maximum 3 pains, donc nous avons au plus 2x3=6 pains. Si on place ces 6 pains dans un de deux tiroirs aux choix, on a au plus 6 pains par tiroirs, donc au total au plus 12 pains.

Vives les maths !

--

Arthur, que en vrai, ça marche pas, et que j'aurai dû faire des courses hier.

samedi 13 février 2010

Problème des 5 pirates.

Il y a un problème sympathique sur fail math. Les commentaires ne fonctionnant pas sur leurs blogs, je met la réponse dans le premier commentaire, si vous voulez vous amusez à le faire ou à lire la solution.

Je traduis la question:

Imaginez que vous avez 5 pirates et 100 pièces d'or à partager de la façon suivante:
Le plus vieux propose un répartition des pièces, si au moins la moitié des autres pirates sont d'accords ce partage est fait de cette manière, sinon le vieux est tué et on recommence.

On suppose les pirates avares et intelligents, on suppose aussi qu'à gain égal un pirate votera pour la mort du vieux.


Question subsidiaire, soit n le nombre de pirate et m le nombre de pièce, même question.

dimanche 25 octobre 2009

Thèse

J'ai discuté avec un de mes lecteurs l'autre jour, et j'aimerai dissiper un malentendu. Quand je parlais de "thèse", il ne s'agissait pas du document qu'un doctorant écrit en trois ans ou plus. Ce mot existe aussi en logique mathématique.

Le symbole ⊢ se lit "thèse"[1], c'est un signe logique qui indique que un truc[2] est sensé permettre de conclure un autre truc[3]. C'est un assemblage syntaxique de symbole, en général écrit sur un arbre. En lui même, ça n'a pas beaucoup de sens mais on espère que ça puisse effectivement en avoir, afin que l'arbre utilisé soit utile.


En fait, après réflexion, on dirait que ce n'est pas si différent qu'une thèse de doctorant.

Notes

[1] Au cas où vous n'ayez pas la bonne police pour le voir, ça s'écrit comme un T à qui on aurait fait un quart de tour sur la gauche

[2] écrit à gauche du symbole

[3] à droite du symbole

mardi 29 septembre 2009

Théorème de la chaussete disparu!

En mathématique on parle d'une preuve constructive quand on est capable de donner un exemple.

Par exemple, un nombre paire n est un nombre tel qu'il existe un nombre p tel que p+p=n. Par exemple, si je dis "4 est pair", la preuve est simple à construire, je prend p=2 et je dis 2+2=4! Et hop!

Maintenant, on sait tous que la machine a laver le linge fait disparaitre les chaussettes, mais jamais plus d'une par paire. Je vous met au défie suivant: faire une preuve constructive du fait que des chaussettes disparaissent[1]!

Notes

[1] C'est particulièrement dur, car si vous avez une chaussette comme exemple, c'est qu'elle n'a pas disparu!

mardi 18 août 2009

moquons nous avec la théorie des graphes

-Cette fille, ce n'est pas un arbre généalogique qu'elle a, mais un graphe cyclique généalogique.

-Et ça te surprends encore, dans le monde dans lequel nous vivons? Moi, j'aurai été inquiet si tu m'avais dit qu'il y avait un circuit dans son graphe.

-T'es bête ou quoi?

-Oui

Sur le même sujet[1], un texte qui donne à réfléchir sur le voyage dans le temps dans la SF.

P.S.:Vincent, si tu me lis, je pense bien sur à toi, je crois que la première partie, c'était toi qui me l'avait dit, et j'aurai aimé penser à la réplique de la deuxième ligne. (D'ailleurs, si tu me lis, c'est normal que j'ai pas reçu de réponse depuis une semaine?(Ça gène personne que je mette des message personnels sur mon blog?(Je précise que si j'ai tant de parenthèse imbriqué, c'est parce que ce message s'adresse à un schemer))))

Notes

[1] Il faut connaitre la théorie des graphes pour voir le rapport

lundi 22 juin 2009

Notation plus juste, partie 3

Bon, moi je pensais délirer, mais visiblement deux personnes pensent que mon idée est bonne.

Vous pourrez donc trouvez de quoi calculer automatiquement la note sur la page http://www.milchior.fr/juste.htm. Merci de me dire si vous pensez que c'est simple d'utilisation où si ça pourrait être améliorer?

Je laisse deux options à choisir, mais c'est peut être trop. Et je n'aime pas le nom de "note maximale", mais je ne sais pas comment mieux formuler ma pensée. Toute aide est la bienvenue.

Enfin, désolé, mais il peut y avoir des petites erreurs de calcul, lié au erreurs d'arrondis des ordinateurs. Ainsi chez moi, si le professeur donne 10, je trouve comme résultat 10.000000000000002 au lieu de 10.

Note plus juste, bis

Ce billet fait suite à Un système de notation plus juste.

Je n'avais rien pour faire des graphes sur l'ordinateur d'hier.

Sur ce graphe, on peut voir la progression de a fonction par rapport à l'identité. Autrement dit, quel serait la note avec et sans mon idée, si la note pour réussir la matière est 10.

note20

Très clairement, les courbes se croisent en 0 et 10, et ma courbe est au dessus avant 10. Donc je suis plus généreux avec les élèves n'ayant pas bien réussi. Mais je deviens sévère avec les bons élèves. C'est d'ailleurs parce que les derniers points valent plus cher que on peut tellement monter. Ainsi, si le professeur don.e 20, je donne 15.

Sur le graphe qui suit, on voit ma courbe allant jusqu'à 50, où elle vaut 155/8=19,375, on peut clairement remarquer que plus ça va, plus elle se rapproche doucement de 20, mais sans l'atteindre.

noet50

Bien sur, 19,375 c'est ridicule, et l'administration n'acceptera jamais autant de virgule sur la note. Mais c'est pour donne sans arrêt une marge de manœuvre à l'élève tout en lui montrant son progrès, et la diminution du nombre de point qu'il lui manque.

dimanche 21 juin 2009

Un système de notation plus juste

J'ai entendu une copine m'expliquer qu'un professeur de chant refuse de donner 20, disant qu'on peut toujours s'améliorer. Elle me disait alors que c'est stupide, et qu'il fallait dans ce cas noter sur 19.

Moi j'ai trouvé qu'il vaudrait mieux noter sur l'infini, ce qui permettrait d'avoir de vraiment bonne note, et de permettre de montrer à l'élève son progrès. Mais globalement, c'est vrai que l'administration risque de ne pas apprécier cette idée.

J'ai profité de ma douche pour calculer à l'instant la formule suivante qui devrait mettre tout le monde d'accord. Si x est la note de l'élève sur l'infini, alors je propose qu'on donne sur le relevé de note la note qui se calcule comme suit

note(n)=20-exp(log(20) - log(20/(20-v)).n/v) où v est la note qu'il faut pour valider le cours.

En effet, cette fonction à le gros avantage d'être strictement croissante (heureusement), que note(0)=0, note(v)=v donc ce sont les mêmes élèves qui valident avec les deux système, et que quand n tend vers l'infini, note(n) tend vers 20, donc plus on se rapproche de la perfection, plus on approche de 20.

Il va de soit qu'on ne va pas demander à chaque professeur d'art de calculer à la main cette fonction, mais on peut faire une page web qui fasse le calcul et donne le résultat. (A vrai dire, je pourrai la faire, mais j'ai autre chose à coder là)

Enfin, moi je dis ça, je dis rien, de toute façon, je suis sur que comme toujours, les bonnes idée ne seront pas écoutées.

lundi 8 juin 2009

De la révision, ou réponse avec 5 ans de retard à la responsable de niveau

Ce billet est une réponse à une remarque faite durant ma seconde par la responsable de niveau, en commentaire sur le bulletin trimestrielle. J'explique aussi pourquoi je n'ai pas l'habitude de réviser. Néanmoins vu que mon avis n'intéressera surement personne, et que je n'enverrai pas cette lettre à sa destinataire, ça sera un défouloir.

"Niveau très hétérogène, devrait tout travailler autant que les mathématiques"

Mais, chère Mme B, je travaille tout autant que les mathématiques. Ou, si vous préférez que je le dise autrement, je ne travaille rien !

Je ne sais pas ce que vous pensez de moi, mais à part 2 ou trois trucs, comme la formule des racines du polynômes du second degré, ou que (f(g(x))'=g'(x)f'(g(x)) je n'ai jamais rien appris par cœur au lycée. Et maintenant je peux le dire, je ne faisais pas mes exercices. (Ce qui n'était pas un secret, Mme C, professeure de Mathématique durant mes 3 années de lycée ayant pu le constater à chaque fois qu'il lui prenait la fantaisie de m'interroger sur un exercice à faire)

Je dirai même plus, je travaillais toutes les matières plus que les mathématiques, et je suis bien conscient que la listes des événements et leurs dates, c'était pas comme un théorème, on ne pouvait pas le retrouver quand on en avait besoin. (enfin si, si l'état était suffisamment intelligent pour nous permettre d'utiliser internet lors des examens. Car pour l'utilité qu'on en a, savoir les grandes lignes de l'histoire suffit, donner les année de chaque fait historique, et alors pouvoir dire si la choucroute a vapeur a été crée avant ou après que la révolution des cheminots martiens aient eu lieu n'ait pas forcément très intéressants, et si on en a vraiment besoin, deux petits tours sur wikipédia (ou n'importe quel encyclopédie en ligne ou sur l'ordinateur, si on pense que wikipédia n'est pas fiable) et la question est réglée.

Et, la dissertation d'histoire, c'est un peu plus qu'une question de bien avoir tout appris par cœur chez soit, or c'est toujours ça qui m'a plombé.

Bon, je ne dirai pas que je connaissais parfaitement toutes l'histoire, j'étais loin de là... mais c'est intéressant de noter que les seuls examens où j'avais la moyenne en histoire-géo au lycée était des interrogations de connaissances, types informations factuelles à apprendre par cœur.

De même en langue vivante, quelle idée de nous noter sur des commentaires de textes et rédactions à faire dans la langue à apprendre, alors que même en français, j'ai jamais été fichu de faire ça correctement. (Mention spéciale au prof d'anglais de Paris VI, avec comme note; deux interrogations surprises, et des questions du genre "Give the date of Mary Stuart death"... Certes il l'avait certainement donné la date une ou deux semaine plus tôt, ainsi que des dizaines d'autres dates, mais si j'ai choisi de faire une licence math-info, c'était pas pour apprendre ce genre de bêtise... à la limite, l'histoire du protocole cryptographique utilisé par Mary Stuart aurait pu être intéressantes, mais ça il en parlait pas. (Lisez l'excellent bouquin, l'histoire des codes secrets, ça se lit comme un roman et c'est passionnant) mais là je m'éloigne, je voulais en rester au lycée))

Depuis que j'ai eu le bac, je n'ai presque plus rien appris par cœur. Au niveau Université, les mathématiques, et l'informatique, il faut comprendre. Un physicien m'avait dit qu'un examinateur à un oral lui avait dit de laisser tomber les équations exactes, et de plutôt lui raconter une histoire pour lui dire comment le calcul se passait et qu'il pouvait prouver son résultat. Et c'est exactement ça.

Si on a compris ce dont le cours parlait, on se souvient en gros des points principaux et on peut faire les exercices. Alors certes, quand le théorème porte le nom d'un mathématicien, on ne peut pas le deviner et il faut l'apprendre. Ou encore en informatique, l'ordre des arguments d'une fonction doit être connu par cœur, si on ne veut pas avoir à regarder la documentation toutes les minutes.(Mention spéciale aux fonctions fold, d'oCaml, qui prennent tous une fonction f, mais dont l'ordre des arguments qu'on doit passer à f change si on utilise fold sur des listes, ou sur des ensembles/Map). Mais même, ce dont on a vraiment besoin, c'est ce dont on se sert, et si on s'en sert on finit par le connaitre.

Ça peut être utile de relire et de faire des exos, je ne dis pas. Mais si on a besoin de passer énormément de temps à lire, relire, réviser, refaire des fiches, etc... c'est qu'il y a un sérieux problème quelque part et qu'à la base, on n'a pas compris.

La preuve, le seul cours que j'ai vraiment beaucoup révisé ce semestre, je l'ai raté.

Donc, pour conclure, une petite phrase que vous n'apprendrez pas par cœur j'espère.

Réviser, c'est inutile.

dimanche 16 novembre 2008

Va falloir qu'on m'explique l'infini

Montrons que le cercle est le rectangle sont une seule et même chose sur le plan... On va regarder les deux extrêmes.

Soit I et J l'ensemble des points à une distance infini et 0 respectivement d'un point o.

Puisque ils sont à même distance d'un point, alors c'est un cercle.

Puisque c'est (a,b) avec a ou b valant plus ou moins l'infini, dans le premier cas, et le point o dans le second cas, alors c'est un rectangle.

Par interpolation, puisque tout cercle a un rayon entre 0 et l'infini, on prouve que le cercle est la même chose que le rectangle.

Étonnant non?

jeudi 16 octobre 2008

La réponse à la grande question.


Lire la suite...

- page 1 de 2