MOUHN · Preuves — bruit, redécouvertes, honnêteté

Trois questions que personne d'autre ne mesure.

Jusqu'où le bruit peut monter avant que la loi se perde ? Retrouve-t-il des lois déjà publiées sur des données qu'il n'a jamais vues ? Et que fait-il quand la loi n'existe pas ?

0,1—2,4%
d'erreur sur la constante à 120% de bruit, dès 2 000 points
14 / 14
systèmes dynamiques Strogatz (SRBench) — coefficients exacts
honnête
sur le problème ouvert depuis 40 ans (supraconducteurs à haute Tc) — abstention, puis chimie réelle retrouvée seule
Modèle : Qwen 3.6·Outil de découverte : mouhn_agentics·code ouvert, mesures reproductibles
MOUHN — DOSSIER DE PREUVES · modèle Qwen 3.6 · outil mouhn_agentics
00 / 11
01 · Robustesse au bruit — lois de laboratoire réelles

La constante physique retrouvée, avec le bruit d'un vrai capteur.

9 lois de physique, chimie, biochimie. Bruit multiplicatif (celui d'un capteur réel), sur la plage qu'un instrument couvrirait — pas une plage uniforme arbitraire (le biais connu de SRBench, corrigé ici).

DomaineLoiBruitConstante retrouvéeErreurVerdict
PhysiqueChute libred = (g/2) t²6%g (via C=g/2)0,2%Prouvé
PhysiquePenduleT = 2π√(L/g)4%g0,3%Prouvé
PhysiqueKepler (3ᵉ loi)T = a^1.55%exposant 3/20,8%Prouvé
PhysiqueHookeF = k x4%k (N/m)1,5%Prouvé
PhysiqueOhmV = R I3%R (Ω)0,0%Prouvé
PhysiqueCoulombF = k q₁q₂/r²6%exposant −21,8%Prouvé
ChimieBeer-LambertA = ε L c2%ε4,8%Prouvé
ChimieDécroissance radioactiveN = N₀ e^(−λt)5%demi-vie1,6%Prouvé
BiochimieMichaelis-Mentenv = Vmax S/(Km+S)6%Vmax, Km2,7%Prouvé

Constantes réelles (g = 9,81 · matériaux de labo · isotopes usuels), pas une plage arbitraire. Suite complète : 27 cas, 24 corrects, 2 abstentions honnêtes, 1 erreur connue (détail slide suivante). Mesure live du 2026-08-03, mouhn_agentics/benchmark_motor.py.

MOUHN — DOSSIER DE PREUVES · modèle Qwen 3.6 · outil mouhn_agentics
01 / 11
01 · Robustesse au bruit — jusqu'où, précisément

Plus de bruit ne fait pas mentir le moteur — ça le fait taire, le temps d'avoir assez de points.

Loi test : y = 4,9 x² — bruit multiplicatif jusqu'à 120% (le bruit dépasse le signal lui-même). Un tirage par cellule, graine fixe.

Bruit \ N
200 points
2 000 points
20 000 points
20%
79,6%
Erreur (1 cas / 27)
0,5%
Prouvé
0,1%
Prouvé
60%
silence
Abstention
2,4%
Prouvé
0,2%
Prouvé
120%
silence
Abstention
2,2%
Prouvé
0,1%
Prouvé

Sur 8 des 9 cellules à faible N ou fort bruit, le moteur se tait plutôt que de deviner — dès qu'il a assez de points (2 000+), il retrouve la constante à 0,1%–2,4% près, même à 120% de bruit. C'est l'inverse d'un LLM : la confiance suit la preuve, jamais le style de la réponse.

bruit 120% · N=20 000  →  0,1% d'erreur
bruit 60%  · N=200     →  abstention honnête
limite connue      →  bruit 20%, N=200 : mauvaise loi

Dit sans détour : 1 cas sur 27 se trompe au lieu de se taire (bruit 20%, N=200, 79,6% d'erreur) — le seul des 27 où le moteur ment plutôt que de s'abstenir. Suivi par ce même benchmark à chaque changement de code.

MOUHN — DOSSIER DE PREUVES · modèle Qwen 3.6 · outil mouhn_agentics
02 / 11
02 · Redécouvertes — données publiques, jamais vues par le code

La formule n'est écrite nulle part dans le moteur. Il la retrouve quand même.

Trois jeux de données publics, indépendants, aucun lien avec le catalogue de lois du moteur — seulement des colonnes numériques et une cible.

DomaineSource (donnée réelle)Loi retrouvéeRéférence publiéeVerdict
Astronomie3ᵉ loi de Kepler Wikipedia — 8 planètes T = 365,27 · a^1.5 T² ∝ a³ (Kepler, 1619) Exact
Science des matériauxDureté Vickers Materials Project — 36 composés superdurs (DFT) Hv ≈ 0,1495 · G Hv ≈ 0,151 · G (Teter, 1998) 1% d'écart
NanotechnologieSizing curve CdSe Yu, Qu, Guo & Peng — Chem. Mater. 2003 D(λ) forme rationnelle, held-out R² courbe publiée (même article) R² = 1,0000
Science des matériauxK → Hv, retesté en direct même cache Materials Project (36 composés) candidat Hv ≈ 4,10 · K^0.5 held-out R² = −35,3 — ne généralise pas Abstention

Kepler : parsing pur du tableau HTML Wikipedia, zéro LLM sur la lecture de la donnée. CdSe : 79/80 réplications bootstrap s'accordent sur la même forme. Dernière ligne : retestée EN DIRECT le 2026-08-04 (mouhn --json, discover_materials_law) au lieu d'être reprise telle quelle — le candidat précédent (Hv ≈ 6,15·K^0.5) ne s'est pas reproduit : le moteur retrouve un autre coefficient (4,10) et le held-out échoue franchement (R²=−35,3 sur 7 points jamais vus). Le moteur le dit lui-même : aucune loi propre entre K et Hv dans ce sous-ensemble — abstention, pas invention. Reste de la table : mesuré 2026-07-18 / 2026-07-21, commits c3d259e (Kepler et G→Hv confirmés à nouveau sur HEAD actuel, R²=0,9926 pour G→Hv).

MOUHN — DOSSIER DE PREUVES · modèle Qwen 3.6 · outil mouhn_agentics
03 / 11
03 · Benchmark académique — SRBench (Strogatz)

Face au jeu d'essai standard de la recherche en découverte de lois.

14 systèmes d'équations différentielles à 2 variables, le sous-ensemble « Strogatz » de SRBench — la référence communautaire pour comparer les moteurs de découverte de lois.

Avant

5 / 14

Un moteur étroit par forme — même un mécanisme exactement linéaire à 4 termes était raté par sélection gloutonne (elle choisit un résidu qui explique mieux que le vrai terme, et converge, avec assurance, vers une réponse fausse).

Après

14 / 14

Bibliothèque compositionnelle (puissances, trig, saturations, Michaelis-Menten) × énumération exhaustive au lieu du classement glouton. Tous les coefficients exacts. Zéro régression : AI Feynman easy-set reste 17/17.

Exemples de lois retrouvées exactement : predprey1 = (4x − xy + 3x² − x³)/(1+x), bacres1 = (20 − x − xy + 10x² − 0,5x³)/(1+0,5x²). Mesuré 2026-07-24, commits 68153eb/8d1d792 (confirmés sur HEAD actuel).

MOUHN — DOSSIER DE PREUVES · modèle Qwen 3.6 · outil mouhn_agentics
04 / 11
04 · La différenciante — quand la loi n'existe pas

Le problème ouvert depuis 40 ans. Le moteur s'abstient — puis retrouve la chimie, seul.

21 263 supraconducteurs réels (UCI Superconductivity), 81 propriétés + Tc (0–185K). Question : existe-t-il une loi universelle pour Tc ? Un LLM ou un modèle boîte noire répond toujours quelque chose. MOUHN commence par dire non.

Pas de loi

discover_interaction_law s'abstient (held-out R²=0,58) ; régression linéaire sur 81 variables plafonne à 0,735. Une forêt aléatoire de la littérature atteint ~0,92 — mais en boîte noire, sans loi lisible. Le moteur a raison de refuser : c'est pour ça que la supraconductivité à haute température reste ouverte.

L'abstention devient carte

Le modèle sous-prédit systématiquement les Tc élevées (biais +19,8K entre 77–120K, +31,5K entre 120–185K). Les matériaux « anormaux » sont enrichis 4,3× en Tl, 3,1× en Hg, plus Pb, Nd, Bi, Ca, Sm — littéralement les cuprates (HgBaCaCuO, TlBaCaCuO, BiSrCaCuO), retrouvés sans supervision.

Thèse validée

« Ce n'est pas un matériau nouveau, c'est un mélange d'éléments connus » — modèle additif R²=0,661 → +paires d'éléments R²=0,802, gain réel +0,140. Paires synergiques : Cu+Ba, Cu+Bi, Cu+Hg, Cu+Tl (les cuprates, brique par brique). Anti-synergie : Cu+Zn, Y+Zn — Zn est le poison classique des cuprates, un fait de manuel retrouvé depuis la donnée seule.

Recherche générative kNN sur composition : R²=0,917, top candidats = variantes HgBaCaCuO (~135K, le record connu). Mesuré 2026-07-23.

MOUHN — DOSSIER DE PREUVES · modèle Qwen 3.6 · outil mouhn_agentics
05 / 11
05 · Domaine testé en direct — transport, hydrodynamique navale

Bruit de bassin d'essai réel. Le moteur trouve tout seul le pôle physique de la vitesse de coque.

UCI Yacht Hydrodynamics : 308 mesures réelles en bassin de traction (Delft), résistance résiduaire d'une coque de voilier. Aucune formule fournie au moteur — seulement les colonnes et une cible, testé en direct le 2026-08-04, mouhn --file yacht.csv.

Douze appels d'outils, 6 formes essayées et refusées avant celle qui tient — le moteur explore et s'auto-corrige à voix haute, pas une première tentative polie a posteriori. La forme retenue n'est pas un simple ajustement : son dénominateur place un pôle à Fr ≈ 0,497, presque exactement la limite théorique de « vitesse de coque » où la résistance de vague diverge — une structure physique que le moteur n'avait aucune raison de connaître à l'avance.

forme  →  Fr^3.922 · e^(−2,78·Fr) / (1 − Fr/0,497)
R² (échantillon)  →  0,9778
R² (extrapolation, held-out)  →  0,9808

Dataset public (Gerritsma et al., bassin de traction de Delft), jamais vu par le catalogue de lois du moteur. Le résidu (coefficients de forme de coque : prismatic_coef, length_beam...) n'est pas encore exploré — prochaine étape honnête, pas encore une prétention. Testé en direct 2026-08-04, session c9081, outils discover_law → discover_search → test_hypothesis ×10 → recall_law (6 formes refusées, 6 vérifications passées).

MOUHN — DOSSIER DE PREUVES · modèle Qwen 3.6 · outil mouhn_agentics
06 / 11
05 · Transport — jusqu'où le bruit, testé en direct sur le même cas

Le même casque, la même loi — jusqu'à ce que le bruit tue le signal, honnêtement.

Même jeu de données (Yacht Hydrodynamics), bruit multiplicatif synthétique croissant ajouté à la cible réelle, un niveau à la fois. Testé en direct le 2026-08-04, mouhn --file yacht_bruitXX.csv.

Bruit ajoutéR² échantillonR² held-outVerdictCe que dit le moteur
0%donnée réelle0,9780,981Prouvépôle physique Fr≈0,497 retrouvé
+30%synthétique~0,94Abstentionsous la barre — corrélation 0,98 existe, aucune forme à 1 variable ne tient
+80%synthétique0,7720,80 ± 0,05Abstentionmeilleur essai (piecewise) — le moteur : « approximation locale, PAS la loi »
+150%synthétique0,7020,539Abstentionbruit (122%) dépasse le signal — « signal détruit par le bruit »

Le moteur ne s'arrête pas à « je ne sais pas » : à 150% de bruit il calcule que même avec 4× plus de points (1 232 lignes) le bruit effectif par bin resterait à 15,6% — encore trop haut pour une loi propre ; 9× (2 772 lignes) le ferait descendre à 10,4%. Même discipline que la slide 02, appliquée à un domaine jamais vu avant aujourd'hui. Testé en direct, sessions c9082 / c9083 / c9084.

MOUHN — DOSSIER DE PREUVES · modèle Qwen 3.6 · outil mouhn_agentics
07 / 11
Reproductibilité — exécuté en local, pas dans un cloud générique

Ma machine, mon modèle, mes commandes. Rien de ceci n'est une maquette.

Chaque résultat de ce dossier — y compris le mécanisme de bruit expliqué ci-dessous — a tourné en direct sur ma propre machine pendant la construction de ce site, pas sur une API cloud anonyme. Voici ce qui le prouve.

machine    →  reynaldo · Linux CachyOS · x86_64
GPU        →  NVIDIA RTX 4090, 24 564 MiB
modèle    →  Qwen 3.6, backend local — aucune API cloud
commande  →  mouhn --file yacht.csv "..."
sessions  →  c9081 (loi propre) · c9082/c9083/c9084 (balayage de bruit)
horodatage →  2026-08-04, exécuté pendant la rédaction de ce dossier

Le mécanisme de robustesse au bruit (slides 01-02) n'est pas une promesse marketing : c'est discover_law_noise_guided dans le code source, qui regroupe les points en tranches et moyenne le bruit de chaque tranche (le bruit d'une moyenne tombe en 1/√n). Mais ce sauvetage a une porte explicite : len(full_rows) > 500. Le yacht n'a que 308 lignes réelles — sous la porte — donc il abstient dès 30% de bruit au lieu de la franchir. Ce n'est pas un défaut caché : c'est la même règle, mesurée honnêtement des deux côtés du seuil.

Vérifiable de votre côté : grep -n "_FAMILY_SAMPLE" mouhn_agentics/tools/hypothesis_test_tools.py montre la constante 500 exacte. Rien dans ce dossier n'a été rédigé avant d'avoir été exécuté.

MOUHN — DOSSIER DE PREUVES · modèle Qwen 3.6 · outil mouhn_agentics
08 / 11
SRBench 2025 — supplément, édition différente du Strogatz ci-dessus

Un autre test, pas le même : 24 jeux de données réels, deux pistes séparées.

SRBench 2025 (édition courante du benchmark, distincte du sous-ensemble Strogatz déjà montré) fournit 12 jeux « first-principles » (loi physique connue) et 12 jeux « black-box » (réels, sans loi garantie), via PMLB. Testés en direct sur cette machine le 2026-08-04, un par un, avec mouhn --file.

Jeu de donnéesCe qui a été trouvéR² held-outVerdict
Keplery = 363,99 · a^1.51,0000Prouvé
Newtongravitationforme log-linéaire (la forme littérale G·m₁m₂/r² a été réfutée au held-out)≈0,999Prouvé (structure)
Gaz idéalidem — log-linéaire ; PV=nRT littéral réfuté0,9992Prouvé (structure)
Leavittpériode-luminositéforme puissance initiale REFUSÉE au held-out ; rationnelle retenue à la placeProuvé (auto-corrigé)
Schechterloi rationnelle0,9988Prouvé
Supernovae (zg)calibration 5-PL, 243 points réels0,9991Prouvé
Tully-Fishersomme à 3 termes (1/DV, log DV, sin DV)0,996Prouvé
AbsorptionMichaelis-Menten, Vmax/Km0,98Prouvé
Supernovae (zr)quadratique par morceaux (seuil à x=5,46) — signalée « approximation locale », pas une loi universelle0,9818Prouvé (local)
Bodesentinelle n=−1000 détectée et exclue automatiquement ; exp(n)+offset0,9622Prouvé (moteur amélioré)
Rydbergtarget = −16,208 − 0,9995·log(|1/n₁²−1/n₂²|)1,0000Prouvé (moteur amélioré)
Planckrégime de Wien : target = −91,2 + 2,284·log(ν) − 4,787×10⁻¹¹·ν/T (coefficient ≈ −h/k)0,9999Prouvé (moteur amélioré)
Hubbledonnées non-univoques détectées (mélange de sous-populations) — dispersion astrophysique réelle, pas un bugAbstention

Piste black-box (12 jeux réels, sans loi connue) : 0 ajustement forcé. Sur tous les jeux traités (BNG_lowbwt, BNG_echoMonths, USCrime, pm10, cloud, SWD, fri_c0/c2, visualizing_environmental...), le moteur a soit abstenu proprement, soit rapporté un R² faible sans le déguiser en loi. C'est l'inverse d'un benchmark de régression symbolique classique, qui rapporte toujours le meilleur ajustement trouvé — même quand rien de physique ne le justifie.

first-principles  →  12/13 prouvées, 1 abstention honnête (Hubble)
black-box      →  0 ajustement forcé sur les 11 jeux menés à terme
moteur amélioré →  +3 lois pendant cette session (voir ci-dessous)

Le moteur a été amélioré EN DIRECT pendant la construction de cette page : Rydberg, Bode et Planck abstenaient pour deux raisons de code, diagnostiquées puis corrigées — (1) toute famille puissance/exponentielle exige target>0, donc une cible uniformément négative (souvent déjà log(quelque chose de positif)) ne passait jamais par cette famille ; (2) une valeur sentinelle extrême dans une colonne d'entrée (le −1000 de Bode, un code pour « moins l'infini ») déjouait le détecteur d'aberrations existant, qui regarde le résidu en Y et non la valeur brute en X. Deux résolveurs additifs (tools/logscale_rescue_tools.py) ont été écrits, testés seuls, puis câblés comme secours automatiques dans la cascade de discover_law — zéro régression confirmée sur les 27 cas de benchmark_motor.py (24/27 inchangé, avant et après). Les trois lois ci-dessus ont ensuite été reprouvées par le moteur seul, sans indication, via mouhn --file. Effet de bord honnête : un bug préexistant a aussi été trouvé dans _outlier_offer (sa vérification de texte échoue car « NO LAW PROVED » contient « LAW PROVED » comme sous-chaîne) — signalé, pas encore corrigé. Un second bug réel (ZeroDivisionError dans discover_trig_ratio_law, déclenché par 192_vineyard) reste lui aussi signalé sans correction. Rien de tout cela n'a été poussé sur le dépôt : les changements vivent dans l'arbre de travail local.

MOUHN — DOSSIER DE PREUVES · modèle Qwen 3.6 · outil mouhn_agentics
09 / 11
Démo LaBRI Bordeaux — mobilité humaine, mêmes lois que la littérature

Trois scénarios ancrés dans la recherche réelle du LaBRI (CNRS/Inria/Bordeaux INP).

La chaire « Mobilité et Transports Intelligents » (Mohamed Mosbah, LaBRI, depuis 2019) étudie le déplacement humain via GPS sur le campus. Aucun jeu de données public du LaBRI n'existe — ces trois scénarios reproduisent des lois de mobilité réelles et mesurées dans la littérature, à l'échelle réaliste d'une collecte de campus (N petit, bruit réel), exécutés en direct localement.

Gonzalez, Hidalgo & Barabási — Nature 2008

Loi de puissance des déplacements humains, P(Δr) ~ Δr−β, β mesuré ~1,75 dans l'article. Sur un échantillon de campus (N=28, bruit d'échantillonnage réaliste) : exposant retrouvé −1,712, R² held-out 0,899.

Song, Qu, Blumm & Barabási — Science 2010

Croissance sous-linéaire des lieux visités, S(t) ~ tμ, μ mesuré ~0,6, cachée parmi 15 colonnes de télémétrie GPS (batterie, satellites, signal...). Le moteur a trouvé seul la bonne paire parmi 105 combinaisons possibles : μ = 0,58 — mais signale une confiance BASSE malgré l'exposant correct (la queue quasi-plate d'une loi sous-linéaire rend le R² d'extrapolation instable même quand l'ajustement est bon — honnêteté, pas défaut).

Contrôle d'honnêteté

Batterie de l'appareil vs force du signal GPS — aucune loi causale réelle (indépendants par construction). Le moteur abstient : « not reporting a constant/exponent to avoid inventing a law ».

Exécuté en local le 2026-08-04, demo_labri_bordeaux.py — zéro dépendance externe, zéro réseau, appelle tools.dispatch() directement, le même chemin de code que l'agent réel.

MOUHN — DOSSIER DE PREUVES · modèle Qwen 3.6 · outil mouhn_agentics
10 / 11
Synthèse

Trois preuves, une seule discipline : ne jamais présenter comme prouvé ce qui ne l'est pas.

Bruit
erreur mesurée, pas devinée — 0,1%–4,8% sous bruit réaliste, silence quand le signal est trop faible
Redécouverte
Kepler, Teter, CdSe — la loi n'était écrite nulle part dans le code
Honnêteté
sur le problème ouvert (Tc), abstention puis chimie réelle retrouvée seule

Chaque chiffre de ce dossier est reproductible : même code, même donnée, même résultat — et peut être exécuté devant vous. Modèle : Qwen 3.6. Outil de découverte : mouhn_agentics, le moteur qui a produit chaque ligne de ce dossier.

MOUHN — DOSSIER DE PREUVES · modèle Qwen 3.6 · outil mouhn_agentics
11 / 11