Vibemathing, 45 ans plus tard

Image
Permutohédron ∏3 hexagonal, utilisé pour représenter les permutations circulaires de 4 éléments.

Claude Opus 4.8 m'a permis de mener à bien une petite recherche en maths que j'avais commencée il y a 45 ans. Ça décoiffe — comme le vibecoding, ou jadis l'arrivée du chemin de fer.

J'avais vu sur Xwitter l'effet que ça avait fait, en février, à Don Knuth, éminentissime mathématicien et informaticien : "Shocking! Shocking! I learned yesterday that an open problem I’d been working on for several weeks had just been solved by Claude Opus 4.6".

Puis, le 20 mai, OpenAI a annoncé le premier résultat nouveau en mathématiques obtenu par une IA générative sans intervention humaine. Une merveilleuse analyse à chaud (le 22 mai !), en français, par l'enseignant-chercheur David Madore ici. J'ai lu, le 28 mai, les commentaires du panel de mathématiciens consulté par OpenAI : certains compréhensibles, d'autres pointus… On peut y lire par exemple "(Thanks to Chat GPT for help finding a convenient reference". Une nouvelle ère du colloque !

Je me suis dit que je serais bien bête de ne pas poser à l'IA une question de maths que je me pose depuis 45 ans.

J'étais en classe de 1ère. Parfois des anciens élèves venaient remercier leurs enseignants et encourager les lycéens. Ce jour-là, un étudiant à l'École Normale Supérieure, chercheur en maths certainement. 

Un lycéen lui a demandé : 

— Combien d'années faut-il étudier pour arriver à la frontière de ce qui est connu, et commencer à faire de la recherche ?

— Vous y êtes déjà, répondit-il. Prenez l'énoncé d'un de vos exercices, et changez quelque chose dedans : c'est sans doute un problème non résolu.

Ouaoh.

Nous étions en train de travailler les permutations. Les permutations, c'est quand vous êtes 3 personnes assis sur vos chaises n°1, 2 et 3, et que boum vous devez changer de chaise. Il y a deux façons d'écrire ce mouvement :

(3, 1, 2) : la personne sur la chaise n°1 est allée sur la 3 ; la personne sur la n°2, sur la 1 ; la personne sur la n°3, sur la 2.

(1 > 3 > 2) : la personne sur la chaise n°1 est allée sur la 3 ; la personne sur la n°3, sur la 2 ;… et forcément la personne sur la n°2, sur la 1.

Changer quelque chose, ça pourrait être : prendre la 2ème écriture et considérer que c'est la 1ère. C'est à dire passer de la permutation (3, 1, 2) à la permutation (1, 3, 2). Et si on recommence, qu'est-ce qui se passe ? Il y a un nombre fini de permutations de 3 personnes (ou de n personnes). On doit donc, à un moment, retomber sur les mêmes. Est-ce qu'on passe par toutes les permutations avant de boucler ? Ou est-ce que ce procédé crée plusieurs "circuits fermés" parmi l'ensemble des permutations ? Dans ce cas, quel est l'effectif de chacun… et est-ce que ces nombres ressemblent à quelque chose ?

J'ai pris des feuilles de brouillon et sous la table, pendant les cours de maths, commencé à parcourir comme ça les permutations de 4 éléments, puis de 5… L'année suivante, on est repassé par le même chapitre, j'ai repris mes brouillons et poursuivi avec 6 éléments… Pas assez pour formuler une loi mathématique.

Aux débuts des blogs, une vingtaine d'années plus tard, j'ai créé un petit blog dédié, après avoir programmé sur Excel l'exploration jusqu'à n=8 ou 9, et bien sûr après avoir cherché sur les moteurs de recherche et rien trouvé qui ressemble à mon sujet pourtant si simple. Il reste un bout ou deux du blog dans archive.org. J'ai aussi eu 2-3 occasions de croiser des mathématiciens et de leur demander si ça leur disait quelque chose, ou qui contacter, mais sans succès.

Le 6 juin dernier, j'ai cherché sur Google s'il y avait un service gratuit de LLM pour les maths (apparemment axiom n'en propose pas), j'ai cliqué sur le premier et l'ai lancé sur mon sujet, sans même lire les conditions générales.

Il a, dès la première réponse, trouvé la formulation mathématique de mon opération : elle fait passer de la permutation p à la permutation psp-1, où s est la permutation la plus simple (1 va en 2, 2 va en 3…). Si vous n'avez pas du tout fait de maths depuis un moment, c'est abstrait, mais quand même : quelques dizaines d'heures de gribouillages sur brouillons résumées en 5 caractères. Que j'aurais parfaitement pu (et dû !) trouver avec ce qu'on nous enseignait en 1ère (à l'époque !).

Aussi, le service en ligne a conclu que parmi les "circuits fermés", "il [en] existe toujours [un] de taille ϕ(n) (l'indicatrice d'Euler)." Ça faisait un vrai résultat mathématique, en rapport avec un auteur classique, ça m'a impressionné, car j'ignorais l'indicatrice d'Euler ; même si c'est tout simple.

Le service concluait que pour aller plus loin, il lui faudrait des "outils mathématiques plus avancés et une recherche bibliographique spécifique".

Là je me suis rappelé que je payais un abonnement à Claude Cowork/Code !!! 

J'ai donc enchaîné avec le modèle le plus fort disponible (car on ne peut pas en changer en cours de conversation), Opus 4.8 en mode "thinking", et lui ai reposé la même question, complétée par les deux premiers résultats du premier service.

Opus a remarqué d'emblée que le 2ème résultat fourni, "il [en] existe toujours [un] de taille ϕ(n) (l'indicatrice d'Euler)", n'était pas généralement vrai. Ça m'a incité à persévérer. Je ne peux malheureusement pas retrouver le début de sa production, "compressée" par la suite. En tout cas, dès le lendemain, j'avais un beau papier de style matheux, en LaTeX, de 8 pages, avec des beaux graphiques et des références… dont une série OEIS sur laquelle était citée un de mes camarades de promotion !

Il y a aussi une référence à Don Knuth, dont l'Art of Computer Programming, Volume 2 — dont la première édition est de 1969 ! — contient un chapitre qui constitue une référence sur les permutations. 

 

 

Image
Permutoèdre de 4 éléments, utilisé pour représenter les 2 bassins parmi les permutations circulaires de 5 éléments.
Permutoèdre de 4 éléments, utilisé pour représenter les 2 bassins parmi les permutations circulaires de 5 éléments.

24 heures après avoir confié mon vague sujet de recherche en français courant, à l'IA.

Ceci dit, si le sujet a le côté sympa de "Prenez l'énoncé d'un de vos exercices, et changez quelque chose dedans : c'est sans doute un problème non résolu" (c'était vrai !), ce qu'avait trouvé Opus était, d'un point de vue de mathématicien, facile et banal, voire inintéressant : du niveau d'une chanson Suno ou d'un mail de réponse automatique à une demande de rendez-vous.

La nouveauté, c'est qu'il soit facile de produire du banal en LaTeX, visuellement proche d'un vrai résultat intéressant de maths.

Une fois passé le "ouaoh", j'ai essayé de pousser Opus à faire moins banal. À démontrer des choses plus précises à dire sur mes circuits fermés.

Le lendemain 9 juin, il a démontré un résultat selon lui intéressant mathématiquement. Mais la preuve était vraiment longue, et passait par plein de termes et de symboles dont j'ignore le sens. Je lui ai demandé de la réorganiser (refactorer, en jargon IT), et là il a trouvé une erreur dans sa preuve —un point profond et bloquant.

J'ai continué comme ça, poussant Opus plus loin soit dans la recherche de résultats, soit dans l'examen de bibliographie, soit dans la construction d'illustrations, en particulier d'animations (parce que c'est beau, les permutations). À l'arrivée, j'avais, comme Opus l'a confirmé, de quoi publier un post de blog ! 

Mais pas une publication mathématique. 

Pour publier, il faut une personne capable d'assumer la responsabilité de tout ce qui est écrit. 

En vibecoding, même si vous ne lisez pas le code, vous pouvez au moins recetter le fonctionnement et vérifier que "ça marche". 

En vibemathing, comment vérifier que "c'est vrai" ? Certes, il existe des vérificateurs automatiques de preuve, par exemple en langage LEAN ; mais pour ça, il faut commencer par traduire tout le "langage mathématique courant" en LEAN,… et qui vérifiera que la traduction est juste ?

Ce que je pouvais faire, c'est demander à un autre LLM de relire et débugger. J'ai demandé à ChatGPT 5.5, qui a trouvé 5 erreurs mineures, qu'Opus a facilement corrigées. J'ai ensuite demandé à Gemini (3.1 Flash extended, 3.1 Pro étant "surchargé" selon le service), qui a dit n'importe quoi.

Je me posais plein de questions sur ces résultats que je ne comprenais, pour la plupart, pas bien ou pas du tout, et j'en ai moins bien dormi - en tout cas, quand je réveillais la nuit, c'était la tête dans les maths.

Un moment de satisfaction narcissique quand une remarque (de béotien) de ma part a mis Opus sur une bonne piste ! Je pourrai dire que si 100% des textes et images sont écrits et produits par IA, moins de 99% des idées de démonstrations ou de graphisme viennent de l'IA… 

Mais chaque heure passée tend à être moins productive que la précédente. Il faut m'arrêter avant de me noyer dans mon propre "AI slop". Qui, sans mathématicien humain, ne peut pas devenir un morceau, même infirme, des mathématiques.

Sur la vidéo en haut de ce billet (cliquez pour l'agrandir), les circuits fermés pour n=8 ; chaque point rond est une permutation, chaque cycle est une suite de permutations p -> psp-1 = p' -> p'sp'-1, etc. Et la rotation dans la vidéo illustre l'effet, sur ces circuits, de l'opération sps-1, ce que j'aurais bien du mal à vous expliquer.