Skip to content

[Audit #17073] Série Probas/Applications + racine — partition Hermes #23013

Open

Description

@clusterManager-Myia

Périmètre

Notebooks MyIA.AI.Notebooks/Probas/Applications/** hors Percolation/ (qui reste sur #17508, fermée — y subsistent 1 non-audité Percolation-04-Sharpness-Lean.ipynb et 3 skip-pr) + notebooks à la racine Probas/ (hors sous-séries Infer #18556, PyMC #17222, DecPyMC #18545, Actuariat #22531).

Panorama d'arc (proposé)

Deux carnets racine posent les fondations (échantillonnage MCMC à la Metropolis ; inégalités de concentration KLS) ; les applications autonomes illustrent ensuite la programmation probabiliste sur des domaines variés : retours de marches (urne de Pólya), intégrales stochastiques (triangle scalaire, sunrise à masses égales), géométrie catégorique (quotients/fibres/recollement), et pragmatique linguistique RSA sur Pyro (implicatures scalaires, hyperbole à la Kao & Goodman, halo pragmatique numérique).

Niveau et ordre proposés

  1. Probas-MCMC-Echantillonnage-Metropolis-Python.ipynb — intermédiaire (socle sampliste)
  2. Probas-KLS-Concentration.ipynb — intermédiaire (concentration)
  3. Applications/Marches/Marches-01-Retour-Polya-Watson-Python.ipynb — intermédiaire
  4. Applications/Integrales/Integrales-01-Triangle-Scalaire-Python.ipynb — intermédiaire
  5. Applications/Integrales/Integrales-02-Sunrise-Masses-Egales-Python.ipynb — intermédiaire
  6. Applications/Quotients-Fibres-Recollement-Python.ipynb — avancé (catégorique)
  7. Applications/Pyro_RSA_Hyperbole.ipynb — avancé (RSA/Pyro)

Checklist

Activity

  1. clusterManager-Myia commented on Oct 27, 2026

    @clusterManager-Myia
    CollaboratorAuthor

    Audit — Pyro_RSA_Hyperbole.ipynb (MyIA.AI.Notebooks/Probas/Applications/, 44 cellules, lecture intégrale, partition Hermes, cycle du 27/10)

    Blob sha vérifié contre l'arbre main (2b0e8332). Rejeu intégral du modèle d'hyperbole en Python pur (cellules 22-30) : la sortie committée de la cellule b987a6e0 (20 états) est reproduite exactement (écart max 0.0000) — le snapshot committé est authentifié, le prior de prix sommant à 1.0001 (arrondis d'affichage Kao et al.).

    Findings

    F1 — exercise-mismatch — cellule d16153f2 (Exercice 3)

    • extrait : « La fonction qud_is_expensive(st) est déjà définie mais n'est pas encore utilisée dans le modèle d'hyperbole. »
    • classe : exercise-mismatch
    • pourquoi : la prémisse est fausse — qud_fns (cellule 629a49de) contient déjà "isExpensive": qud_is_expensive et qud_prior() échantillonne sur toutes ses clés ; rejeu décisif : avec les 4 QUD la sortie committée est reproduite à 0.0000 près, sans isExpensive elle diverge (écart max 0.0568 — p. ex. (50, True) : 0.2287 reconstruit contre 0.1719 committé), donc la table affichée porte déjà l'empreinte de cette QUD ; l'Indice 1 se contredit d'ailleurs lui-même (« c'est déjà fait dans le code existant ») et la liste « Quelques exercices » (cellule 73fea6b7, item 4) porte la même prémisse périmée.

    F2 — stale-claim — cellule 82e8d4a1 (Les définitions RSA)

    • extrait : pyro.factor("literal", 0.) if meaning(...) else pyro.factor("literal", -9999999.)
    • classe : stale-claim
    • pourquoi : le code réellement exécuté (cellule 18198445) écrit pyro.factor("literal_meaning", 0. if meaning(utt, s) else WRONG_COST) avec WRONG_COST = -10.0 — ni le nom du site (« literal » vs « literal_meaning ») ni la pénalité ne correspondent, −9999999 n'apparaissant que dans les modèles d'hyperbole (cellules c321d7a8 et f27635b8) ; le verbe « impose » surestime aussi un −10 qui ne fait que pénaliser (poids relatif e^−10 ≈ 4.5e−5, pas une contrainte).

    F3 — exercise-mismatch — cellule 73fea6b7 (Quelques exercices)

    • extrait : « 4. Nouvelle QUD : ajoutez un QUD "isExpensive" (booléen) pour signifier “est-ce que ça coûte plus de 100 ?”. »
    • classe : exercise-mismatch
    • pourquoi : la liste embarquée numérote 1-4 alors que les sections dédiées s'arrêtent à « Exercice 3 » — l'item 3 (« Modifier le coût ») n'a pas de section dédiée et l'item 4 devient « Exercice 3 » deux sections plus bas, un apprenant qui suit la liste perd le fil.

    Organes : dup/split/interp/failtext/parses/stale/mislabel = 0 ; navlinks/nav_chain = 0 (exécutés depuis le checkout) ; restore_accents_canonical --check : 1 cure sèche (« suppose » hors table, 1 cellule md) — sortie d'organe, renvoi sans finding.

    Remarque mineure (🟡, non déposée) : « Durée estimée : 45 minutes » (cellule a8991412) contre « 30 min » dans le tableau de Probas/README.md — l'un des deux est périmé, sans témoin local pour trancher.

    Rejeu halo (partie 7) : pragmatic_listener_price_marginal(50) reconstruit → {50: 0.635, 51: 0.336} et (51) → {51: 0.596, 50: 0.374}, conformes à la prose de la cellule f526c5e9 (masse ~97 % sur {50, 51}, les valeurs ≥ 500 sous 1 %).

    Audit Hermes (myia-ai-01:hermes-agent), campagne #17073, partition Hermes, lecture seule.

  2. clusterManager-Myia commented on Oct 27, 2026

    @clusterManager-Myia
    CollaboratorAuthor

    Audit Probas-MCMC-Echantillonnage-Metropolis-Python.ipynb

    FULL READ 20/20 cellules — rejeux numpy bit-exacts (ESS/ch 426 reproduit : 497/487/360/361 par chaîne ; taux d'acceptation pas=0.5 → 0.608 ; naive T2 moyenne 2.503, var 0.249). Organes 8/8 passés : 0 finding (le hit 57 de check_stale_claims = faux positif, 56.5 % → « ≈ 57/43 » est un arrondi légitime de la sortie committée). Le moteur, les conditionnelles de Gibbs, les vérités T1/T2 (variance 6.5 = 6.25 + 0.25 ✓) et le R-hat sont exacts et reproductibles — les défauts sont dans la prose de lecture et l'appareil d'exercices.

    Findings

    1. concept-error — cellule 10b1263d (Lecture du résultat, T1)

    un ESS par chaîne de l'ordre de quelques milliers (la corrélation entre pas est mesurée, pas ignorée)

    La table committée de ac46d9b5 affiche ESS/ch = 426 (rejeu bit-exact : 426). 426 n'est pas « de l'ordre de quelques milliers » — écart d'un facteur 4-10 avec la sortie affichée deux cellules plus haut.

    2. concept-error — cellules a3e17fc4 + 10b1263d (approximation naïve T2)

    La moyenne tombe entre les deux modes (dans le vide) et la variance s'effondre
    moyenne au milieu (dans la vallée où la densité est nulle)

    Contredit par le code commis (naive_t2 = N(+2.5, 0.5²)) et la sortie committée de dd511217 : moyenne 2.503 — sur le mode +2.5, le point de densité maximale de la cible, pas « dans la vallée ». La prose décrit une approximation par moments (moyenne 0), pas celle implémentée ; l'apprenant qui lit la table (2.503) voit l'inverse de la lecture. Accessoirement, le gloss « variance ≈ 0.25 (l'écart-type d'un mode) » confond σ (0.5) et σ² (0.25).

    3. exercise-mismatch — cellule 8866ab60 (Exercice 3)

    Controle positif : un pas huge -> quasi rien n'est accepte -> le taux est proche de 0, un pas tres petit -> presque tout est accepte

    L'assert appelle pas=0.5 — qui donne un taux ≈ 0.61 (rejeu seed 0) : une implémentation correcte échoue le contrôle in (None, 0.0, 1.0). Le paramètre commis ne teste aucune des deux bornes racontées ; le commentaire décrit un protocole que l'appel n'exécute pas.

    4. exercise-mismatch — cellule a3fb4076 (Exercice 2)

    Controle positif : pour N = 5 et rho = [1, 0.5, 0.25, 0.0] -> 1 + 2*(0.5+0.25) = 2.5 -> ESS = 5/2.5 = 2.0

    La signature ess_from_acf(rho) ne reçoit pas N ; avec N = len(rho) = 4, une implémentation correcte rend 4/2.5 = 1.6 et échoue l'assert in (None, 2.0). Le contrôle ne passe qu'en codant N=5 en dur — l'énoncé arithmétique et la donnée fournie divergent.

    5. concept-error — cellule b4326c05 (Références)

    Metropolis et al. (1953) « The Measurement of Constants » ; Hastings (1970) « Monte Carlo Sampling Using Gibbs Markov Chains »

    Titres inexacts : 1953 = Equation of State Calculations by Fast Computing Machines (J. Chem. Phys. 21, 1087) ; 1970 = Monte Carlo sampling methods using Markov chains and their applications (Biometrika 57, 97). Vérifié par convergence (AIP Publishing/OSTI ; OUP Biometrika).

    RAS ailleurs

    Structure 1→5 propre, aucun doublon de section, positionnement des lectures correct, figure conforme aux données committées, synthèse cohérente avec les sorties (corrélation 0.8 vs −0.014 ; variance 6.36 vs 0.25). Les diagnostics (IAC tronquée au premier negatif, R-hat Gelman-Rubin) sont implémentés correctement.

    Audit critique #17073, partition Hermes — lecture seule.

  3. clusterManager-Myia commented on Oct 27, 2026

    @clusterManager-Myia
    CollaboratorAuthor

    Audit — Integrales-01-Triangle-Scalaire-Python.ipynb (MyIA.AI.Notebooks/Probas/Applications/Integrales/, 34 cellules, lecture intégrale, partition Hermes, cycle du 27/10)

    Blob sha caddcf0f vérifié contre l'arbre main (2b7b2a5638). Le cœur du carnet est authentifié : rejeu des trois voies avec le code committé tel quel sous mpmath 1.3.0 — J_A(1,2,2.5) = 1.3427652838373602509494 (identique aux cellules f72d1210, 20cf1724, ac434617), table des quatre cinématiques reproduite à 22 chiffres avec |A−B| = |A−C| = 0.0, symétrie de permutation exacte (1.254138667411437103276 ×4), famille isocèle sur six angles aux écarts committés (0.0 / 4.59e−41 / 2.3e−41), cas exacts 2G et (4/√3)Cl₂(π/3) à 30 chiffres, contrôle négatif mordant aux deux écarts annoncés (⅓ et ½) avec son point aveugle autodual confirmé, micro-contrôle I_v(u=0.37) = 0.8692986025622281534397 exact. Exercice 3 rejoué et juste : coefficients (2.0, −8.3e−41, 4.3e−40), résidus 9.2e−41 / 2.5e−40 / 3.6e−40 — le seuil « 10⁻³⁵ ou mieux » annoncé est tenu. Les défauts sont dans deux cellules de lecture du §1 et dans l'exercice 2.

    Findings

    F1 — concept-error — cellule 857fefed (Exercice 2)

    • extrait : « Démontrez (indices : $\mathrm{Cl}_2(\psi) \sim \psi$ quand $\psi \to 0$ …) que $$J \xrightarrow{;\psi \to 0;} 2,$$ »
    • classe : concept-error
    • pourquoi : la limite ψ→0 n'est pas 2 mais +∞ — mesuré J(1,1,γ) = 6.6156 (γ=10⁻²), 11.2105 (10⁻⁴), 15.8155 (10⁻⁶), contre 2 − ln γ = 6.6052 / 11.2103 / 15.8155 : J ≈ 2 − ln γ croît sans borne, et l'indice qui l'annonce est faux de la même façon — Cl₂(ψ) ≈ ψ(1 − ln ψ), pas ψ (à ψ=10° : 0.4793 mesuré contre 0.1745 = ψ ; rapport Cl₂/ψ = 1.65 → 2.75 → 5.05 → 7.35 à 30°/10°/1°/0.1°, soit 1 − ln ψ et non 1).

    F2 — concept-error — cellule 857fefed (Exercice 2)

    • extrait : « La convergence vers la limite doit être linéaire dans l'écart. »
    • classe : concept-error
    • pourquoi : vers ψ→π la convergence est quadratique — (J − 2ln2)/ε² = 0.14772** constant sur k = 2…6 (0.147716825 / 0.147715738 / 0.147715726963 / 0.147715726854 / 0.147715726853) alors que (J − 2ln2)/ε` décroît d'un facteur 10 par décade ; la valeur de la limite (2 ln 2) est juste, seule la vitesse annoncée est fausse — et c'est précisément ce que l'exercice demande de vérifier.

    F3 — exercise-mismatch — cellule 857fefed (Exercice 2)

    • extrait : « puis vérifiez-le numériquement par la voie C pour $\psi = \pi - 10^{-k}$ avec $k = 2, 4, 6$ — et symétriquement près de $0$. »
    • classe : exercise-mismatch
    • pourquoi : la voie C du carnet ne peut pas exécuter la moitié « près de 0 » — J_C(1,1,2−2cos ψ) (cellule ac434617, code exécuté verbatim) rend +inf dès k=4 (γ=10⁻⁸), constaté à dps 30, 40 et 50, alors que la voie B du même carnet rend la valeur exacte (20.4207 à k=4, 29.6310 à k=6, égales à 2Cl₂/sin) : la route prescrite est la seule des trois qui échoue, sans que l'énoncé le signale ni ne renvoie à la voie B.

    F4 — concept-error — cellules 6f86b164 + f72d1210 (Voie A, piège d'outil)

    • extrait : « la forme « naturelle » quad(f, [0,1], [0, lambda x2: 1-x2]) paraît acceptée et échoue plus tard, à l'intérieur de la somme de quadrature (TypeError) »
    • classe : concept-error
    • pourquoi : la défaillance est immédiate, pas tardive — intégrande instrumentée d'un compteur : zéro appel avant le TypeError (idem en 3D, et en 1D avec une borne callable) ; le « piège qui ne mord qu'au fond de la boucle » n'existe donc pas, et la cause réelle est plus simple et plus utile : mp.quad ne documente aucune borne callable (uniquement des listes/tuples d'intervalles), c'est une erreur de signature visible au premier regard. Le message imprimé par la cellule (« consommées en interne ; la forme paraissait valide et échoue dans la somme ») hérite de la même explication fausse.

    F5 — concept-error — cellule 4439a42c (Lecture du §1)

    • extrait : « $\Delta$ s'annule sur les trois bords du simplexe ($x_i x_j = 0$) et reste strictement positif à l'intérieur »
    • classe : concept-error
    • pourquoi : Δ ne s'annule qu'aux trois sommets — mesuré sur (α,β,γ)=(1,2,2.5) : Δ(0,½,½) = 0.5, Δ(½,0,½) = 0.625, Δ(½,½,0) = 0.25, zéro seulement en (1,0,0)/(0,1,0)/(0,0,1) — car sur le bord x₁ = 0, Δ = βx₂x₃ n'est nul que si un second x_i l'est aussi ; la phrase suivante du même paragraphe (« diverge aux coins ») et la figure du §1 (aucune bande sombre le long des bords) contredisent donc l'énoncé, qui fait croire à une divergence sur des arêtes entières.

    F6 — stale-claim — cellules 834aa0d0 (en-tête) + 058570b4 (Références)

    • extrait : « M. D. Schwartz, Vibe physics et Claude-shaped science (Anthropic, 2025) ; arXiv:2601.02484 (2026) »
    • classe : stale-claim
    • pourquoi : les deux essais sont de 2026 — « Vibe physics: The AI grad student » publié le 23/03/2026, « Claude-shaped science » le 01/10/2026 (champ Published des deux pages anthropic.com/research/), et la référence arXiv:2601.02484 du même carnet (5 janvier 2026) contredit déjà le millésime 2025 qu'elle côtoie ; l'erreur est répétée en cellule 0 et dans Integrales/README.md (l. 10, 80, 83).

    Organes

    check_duplicate_sections 0 · check_split_reading_cells 0 · check_interp_positioning 0 · check_output_failure_text 0 · check_cell_source_parses 0 · check_stale_claims 0 · check_factual_mislabel 0 · restore_accents_canonical --check 0 cure (4 formes hors table) — les six findings sont invisibles aux huit organes déployés.

    Remarque mineure (🟡, non déposée)

    Cellule 4439a42c : (1,1,3.9) est présenté comme le « point de stress … la quadrature devient plus difficile ». Mesuré, J_A y coûte 0.62 s contre 0.75 s pour (1,1,3) et 0.53 s pour (1,2,2.5) (3 répétitions, même machine, dps 30), et le §5 committé affiche |A−B| = |A−C| = 0.0 pour les quatre cinématiques. L'adjectif n'est pas soutenu par une mesure, mais un temps machine n'est pas un témoin stable et le conditionnement de l'intégrande n'est pas instrumenté ici — signalé sans finding.

    RAS ailleurs

    §1→§8 propre, aucune cellule de prose empilée, positionnement des lectures correct, figure du §1 conforme à l'intégrande committé, exercices 1 et 3 justes (Ex. 3 rejoué : résidus ≤ 3.6e−40). Le micro-contrôle I_v point par point (§4) et le contrôle négatif du §6 sont des dispositifs qui mordent réellement ; le périmètre honnête du §7 (« précision ≠ bornes certifiées », « identifiée ≠ dérivée ») est tenu.

    Audit Hermes (myia-ai-01:hermes-agent), campagne #17073, partition Hermes, lecture seule.

  4. clusterManager-Myia commented on Oct 28, 2026

    @clusterManager-Myia
    CollaboratorAuthor

    Audit — Integrales-02-Sunrise-Masses-Egales-Python.ipynb (MyIA.AI.Notebooks/Probas/Applications/Integrales/, 30 cellules, lecture intégrale, partition Hermes, cycle du 27/10)

    Blob sha 37ca85ba4 vérifié contre l'arbre main (2b7b2a5638, sha git recalculé blob <len>\0<raw>). Le cœur numérique du carnet est authentifié, y compris hors de sa propre famille de calcul : rejeu du code committé tel quel sous mpmath 1.3.0 — table des huit valeurs s = 0…100 reproduite à 22 chiffres avec |A−B| = 0.0 à chaque ligne, voie Cheng–Wu aux écarts committés (1.37e−20 / 8.47e−21), voie D aux 8.94e−16, ancre (4/√3)Cl₂(π/3) = 2.343907238689458890602 avec clsin(2,π/2) − G = 0.0.

    Contrôle d'indépendance hors-famille (aucune des quatre voies du carnet ne le fait) : les quatre voies partagent la même paramétrisation — le §9 le reconnaît honnêtement — donc je l'ai vérifiée en espace des impulsions, en 2D euclidien, sans formule de Feynman : B(P²) calculée par double quadrature nue, puis I(s) = ∫d²k₁/(2π)² · 1/(k₁²+1) · B((q−k₁)²) avec l'angle intégré explicitement. Résultat : le rapport aux valeurs committées vaut 78.9568352087 = 8π² identique aux cinq points s = 0, 1, 4, 9, 16 (facteur d'échelle de ma normalisation (2π)² par boucle, B(0) = 1/4π recouvré à 10 chiffres). La formule encadrée du §1 est donc juste, et pas seulement auto-cohérente. Exercice 3 vérifié et juste : 2·I_D_demi(1) = 2.2367927002126453986 contre I_A(1) = 2.2367927002126465105 (diff 1.11e−15), idem à s = 4 ; exercice 2(b) juste : I(0.25) = 2.315746349573996770577 par les deux voies, au-dessus de I(1) — monotonie décroissante confirmée sur onze points. mpmath 1.3.0 refuse bien les bornes callables en quad 2D (TypeError reproduit).

    Les défauts sont dans les deux affirmations structurantes du carnet — celle qui motive son titre et celle qui prétend certifier sa paramétrisation — et dans la référence bibliographique.

    Findings

    F1 — concept-error — cellule f463ba43 (### Où est l'elliptique ?, §6), propagé en 2f7d016c (titre §6), 6885efe2 (§9), 95dc5e74 (Conclusion) et Integrales/README.md l. 17

    • extrait : « C'est une intégrale elliptique de troisième espèce : deux pôles simples sur une racine carrée de binôme. »
    • classe : concept-error
    • pourquoi : la radicande écrite par le carnet est √(t²−1), de degré 2 ⇒ courbe de genre 0 ⇒ l'intégrale en θ est élémentaire, et ma réduction rationnelle le prouve à l'identique : avec u = tanh(θ/2) (qui donne cosh θ = (1+u²)/(1−u²), dθ = 2du/(1−u²)), le dénominateur F·(1−u²)² devient un polynôme en u² — pour r = 1, s = 4 : 5u⁴ − 2u² + 13, intégrande 2(1−u²)/(5u⁴−2u²+13), purement rationnelle ; le rejeu de cette réduction contre l'intégrale en θ du carnet coïncide à l'erreur relative 0.0 aux cinq points testés ((1,4), (2,9), (4,0), (1,0), (0.7,25)). Une intégrale elliptique de 3ᵉ espèce exige √P avec deg P ∈ {3,4} ; avec deg P = 2 il n'y a ni pôle sur courbe de genre 1 ni période. Corollaire : la phrase « le changement de variable l'a fait apparaître de lui-même » et la Conclusion « un changement de variable humble — t = coshθ — suffit à faire apparaître l'intégrande elliptique » désignent le mauvais changement de variable. L'elliptique est ailleurs, et le carnet le rate : il vit dans le résidu en r, dont le discriminant Δ_t = 4r²(r⁴ − 4sr² − 2r² + 1) est un quartic en r — c'est cette courbe-là, celle de la littérature 1405.5640, qui porte les périodes. La substitution t = coshθ est un simple exercice de calcul explicite, pas l'entrée dans le monde elliptique : le titre du §6, le §9 (« la réduction elliptique de la voie D », listé sous Établi ici) et le README héritent tous de l'erreur.

    F2 — concept-error — cellule ae8ad371 (fin du §3), répété en 6885efe2 (§9)

    • extrait : « C'est aussi la vérification la plus dure disponible pour la paramétrisation entière — si le polynôme $\mathcal{F}$ était erroné d'un terme, l'ancre raterait. »
    • classe : concept-error
    • pourquoi : à s = 0 le terme dépendant de s s'annule identiquement dans F = (x₁+x₂+x₃)U + s·x₁x₂x₃ ; l'ancre ne contrôle donc que U, jamais F. Contre-témoin mesuré, in-domain : quatre F faux passent l'ancre à l'écart exactement 0.0 — s·x₁²x₂x₃ (un exposant de trop), 2s·x₁x₂x₃, s²·x₁x₂x₃, et même F sans aucun terme en s ; tous rendent I(0) = 2.34390723868945889060156, identique à l'ancre. Aux mêmes F à s = 9, où le terme agit, l'écart devient massif : +0.374, +0.314, −0.9919, +0.646 — c'est là, et seulement là, qu'un contrôle mord. Le §9 aggrave en écrivant « Seule l'ancre s = 0 (indépendante : certifiée au carnet 01) contrôle la paramétrisation », alors que le carnet possède déjà, dans sa propre cellule 79d05d34, un accord indépendant à s = 9 entre voies Cheng–Wu et simplex (8.47e−21) qui aurait mordu : le dispositif de contrôle existe, le carnet le crédite au mauvais endroit et déclare non couvert ce qui l'est, tout en déclarant couvert ce qui ne l'est pas.

    F3 — stale-claim — cellule 95dc5e74 (Références), répété 507b2fd7 (en-tête) et Integrales/README.md l. 10, 80, 83

    • extrait : « M. D. Schwartz, Vibe physics et Claude-shaped science (essais, Anthropic, 2025) »
    • classe : stale-claim
    • pourquoi : les deux essais sont de 2026 — « Vibe physics: The AI grad student » est daté Published: Mar 23, 2026 et « Claude-shaped science » a été publié le 01/10/2026 (champs Published des deux pages anthropic.com/research/) ; le millésime 2025 contredit en outre la référence arXiv:2601.02484 (2026) citée dans la même phrase, et il est proféré deux fois dans le carnet plus trois fois dans le README. Même défaut que Integrales-01 (F6 du cycle précédent) : 2ᵉ occurrence dans la sous-série, la classe n'est pas encore gelée faute de 3ᵉ.

    F4 — orphan-statement — cellules 30af2727 (§8) et 56df19c2

    • extrait : « deux modulos plausibles de la famille « seuil $s = 9$ » »
    • classe : orphan-statement
    • pourquoi : le protocole constant-recognition du carnet exige de tout déclarer avant de chercher ; le §8 déclare deux modulos, la cellule suivante n'en construit qu'un (k² = (1 − √(1 − 9/s))/2) et le §8 conclut pourtant sur la forme entière : « la forme A·K(k) est trop pauvre ». J'ai exécuté les trois autres modulos plausibles de cette famille — le λ standard (1−q)/(1+q), 1−q, et q = √(1−9/s) — et le refus survit (max/min de A = Iπ/(2K) : 2.177, 2.095, 3.337, contre 2.199 pour le modulus testé : aucune constante n'émerge). Le finding ne porte donc pas sur la conclusion, qui est juste, mais sur l'écart entre le protocole annoncé et l'essai exécuté : un carnet dont la thèse est la discipline méthodologique teste un candidat sur deux et généralise.

    Organes

    check_duplicate_sections 0 · check_split_reading_cells 0 · check_interp_positioning 0 · check_output_failure_text 0 · check_cell_source_parses 0 · check_stale_claims 0 · check_factual_mislabel 0 · restore_accents_canonical --check 0 cure (3 formes hors table : integrales ×2, borne) — les quatre findings sont invisibles aux huit organes déployés. check_stale_claims est muet sur F3 pour la raison déjà connue (il n'apprécie que des valeurs numériques dans des cellules d'en-tête interpretation|lecture|resultat, et une année dans un bloc Références n'en est pas une) ; les trois autres sont des défauts de sens, angle mort structurel.

    Remarque mineure (🟡, non déposée)

    • Cellule b239c9bf : le test c(s) = I(s)·s^{1/3} ne peut pas converger, et le carnet s'arrête à « décroissance plus rapide que s^{-1/3} ici » sans nommer la loi que ses propres données contiennent. En prolongeant son code de deux lignes : I(s)·s/ln²(s) = 2.9659977 (1e2), 2.9946224 (1e3), 2.9993679 (1e4), 2.9999313 (1e5), 2.9999928 (1e6) — soit I(s) ~ 3·ln²(s)/s, constante entière nette. Signalé sans finding : ce serait un enrichissement du §8, et le gel densite pedagogique : 430 notebooks sous le plancher 1200 — surface majoritairement non suivie #13410 l'exclut ; la phrase existante n'est pas fausse, seulement en deçà de ce que la mesure établit.
    • Cellule 94d5eb7d (Exercice 1) : l'indice « puis mp.gamma de la valeur obtenue » mène à mp.gamma(−1), qui lève ValueError: gamma function pole (vérifié). C'est mathématiquement le bon phénomène — le pôle est la divergence en d = 4 — mais l'énoncé ne le dit pas, alors que le §10 promet des exercices « sans erreur volontaire » et un carnet « exécutable de bout en bout ». Une phrase (« constater que mp.gamma refuse : c'est le pôle ») suffirait ; non déposé, faute de champ extrait qui isole un énoncé faux plutôt qu'incomplet.
    • Cellule 97b32dfc : « à grand s … l'intégrale se concentre vers les coins ». La direction est corroborée par la table, mais la répartition coins/bords n'est pas instrumentée dans le carnet et mes propres masques de domaine se recouvrent (parts non disjointes, donc non concluantes) — je ne dépose rien sur une mesure que je n'ai pas su rendre propre.

    RAS ailleurs

    §1 (polynômes de Symanzik, exposants N − LD/2 = 1 et N − (L+1)D/2 = 0 en d = 2, donc Γ(1) = 1 et U⁰ = 1) juste ; homogénéité vérifiée à 1.0 ; voie B et sa formule ∫∫ u du dv / (u(1−u) + u²v(1−v) + s u²(1−u)v(1−v)) conformes au rejeu ; théorème de Cheng–Wu correctement énoncé et sa forme intégrée juste ; le piège du facteur ½ de la voie D est réel, attrapé en direct (0.4999999999999996139) et sa correction θ ∈ ℝ avec jacobien 2r redonne l'accord à 8.94e−16 — c'est le meilleur dispositif du carnet ; le §7 refuse explicitement de sur-interpréter la lisse en s = 9 (seuil = continuation analytique), ce qui est exact ; le §9 distingue correctement « identifiée ≠ dérivée » et « précision ≠ bornes certifiées ». Références Adams–Bogner–Weinzierl (arXiv:1302.7004 et 1405.5640) exactes quant aux titres et à l'objet.

    Audit Hermes (myia-ai-01:hermes-agent), campagne #17073, partition Hermes, lecture seule.

  5. clusterManager-Myia commented on Oct 28, 2026

    @clusterManager-Myia
    CollaboratorAuthor

    Audit — Marches-01-Retour-Polya-Watson-Python.ipynb (MyIA.AI.Notebooks/Probas/Applications/Marches/, 27 cellules, lecture intégrale, partition Hermes, cycle du 28/10)

    Blob sha e9cb8fbe4 vérifié contre l'arbre main (24eb6bd36). Rejeu intégral 8/8 cellules code bit-exact (seeds déterministes : z-scores −1.78/−0.39/−4.00/−0.78, F(n)=0.3608/0.3738/0.3734, Richardson 2.03 %/1.62 %/0.40 % reproduits au dernier chiffre). Rejeus ciblés conformes : W fermé 2-Γ = forme Glasser–Zucker (OEIS A086231) ; R₄ = 0.1932017 (« ≈ 0,1932 » de l'Exercice 1 exact) ; G anisotrope = 1.6104968672796385419898479829895 bit-exact ; la subtilité dps-40 (e⁻ᵗ pur → ~1.3×10¹⁸⁴) reproduite. Organes 8/8 à 0 (duplicate_sections, split_reading_cells, interp_positioning, output_failure_text, cell_source_parses, restore_accents_canonical, stale_claims, factual_mislabel). Références Watson 1939 (doi 10.1093/qmath/os-10.1.266), Pólya 1921, arXiv:2601.02484 vérifiées exactes ; #20428 ouverte, renvoi légitime.

    2 findings.

    1. exercise-mismatch — cellule 8b1d01bf (squelette Exercice 2, indice).
    Extrait : « # Etape 2 : regression de G contre ln(1/p3) (np.polyfit degre 1) : pente ~ 2/pi. »
    Pourquoi : l'indice promet une pente deux fois trop grande — le rejeu de l'exercice (p₃ ∈ 10⁻²…10⁻⁶, discipline stricte de la cellule 12 : somme des pᵢ recalculée dans le lambda, subdivision à 1/p₃) donne G = 2.360 / 3.083 / 3.814 / 4.547 / 5.280, pente ajustée 0.3172, pente des deux points les plus profonds 0.3183 = 1/π à 4 décimales (2/π = 0.6366). L'asymptotique le confirme : pour 1 ≪ t ≪ 1/p₃, e⁻ᵗ·I₀((1−p₃)t/2)² ≈ 1/(πt) (le I₀(p₃t) reste ≈ 1), dont l'intégrale donne exactement (1/π)·ln(1/p₃). L'étudiant qui suit l'indice obtiendra ~0.318, moitié de « 2/π », et conclura à sa propre erreur. (Le 2/π classique vit dans la table G₂(β) = (2/π)K(β²), pas dans cette limite.)

    2. stale-claim — cellule a506e001 (§2, prose).
    Extrait : « des formes en fonctions $\Gamma$ apparaissent dans les travaux ultérieurs (Joyce 1971 ; Glasser 1974). »
    Pourquoi : les deux dates sont fausses et la seconde est contredite par la bibliographie du carnet lui-même, qui cite « Joyce … (1973) » — la forme fermée à deux Γ réellement testée cellule 37a8d7fc ((√3−1)/(96π³)·Γ(1/24)²Γ(11/24)²) est celle de Glasser & Zucker 1977 (PNAS 74, 1800–1801, doi:10.1073/pnas.74.5.1800 ; seul Glasser = 1972, J. Math. Phys. 13, 1145 ; la simplification finale est Borwein–Zucker 1992) : « 1974 » ne correspond à aucune publication pertinente de Glasser et Glasser est absent des Références finales.

    RAS sur tout le reste : la chaîne Pólya→Watson→problème final est rigoureuse, la discipline planted-truth/acceptance-gate est réellement appliquée (et son récit vérifié), les trois squelettes s'exécutent vides sans erreur. Verdict : 2 findings mineurs (indice d'exercice, dates bibliographiques en prose) ; le cœur mathématique et toutes les sorties sont authentiques et reproductibles.

  6. jsboige commented on Oct 28, 2026

    @jsboige
    Owner

    [CLAIMED] lane myia-po-2023:CoursIA -- audits restants de la partition : Applications/Quotients-Fibres-Recollement-Python.ipynb et Probas-KLS-Concentration.ipynb -- paths: MyIA.AI.Notebooks/Probas/Applications/Quotients-Fibres-Recollement-Python.ipynb, MyIA.AI.Notebooks/Probas/Probas-KLS-Concentration.ipynb

  7. jsboige commented on Oct 28, 2026

    @jsboige
    Owner

    Audit — Applications/Quotients-Fibres-Recollement-Python.ipynb (MyIA.AI.Notebooks/Probas/Applications/, 19 cellules, lecture intégrale, partition Hermes, cycle du 28/10)

    Blob 083ec454d. Structure : 19 cellules (8 code / 11 markdown), execution_count 0 nul, 0 cellule code sans sortie, 0 erreur, kernel python3. Exercices 1-3 en stubs conformes C.1 (print("Exercice a completer"), return None, resultat_exoN = None) — aucune erreur volontaire.

    Organes, tous sur ce carnet : duplicate_sections 0 finding · split_reading_cells clean · interp_positioning 0 · output_failure_text 0 régressé · cell_source_parses 0 sur 1 carnet.

    Ce que cet audit ne fait pas, et le dit : je n'ai pas rejoué le carnet. Les deux findings ci-dessous portent sur la cohérence entre la prose et les sorties committées, qui se lit sans rejeu ; un rejeu bit-exact du Temps 3 (I(X1;X2|Q) = 0.4453) reste à faire par qui voudra clore la question de la reproductibilité, et je ne le revendique pas.

    2 findings.

    1. conclusion-stale-number — cellule 18 (markdown, Conclusion), point 2.
    Extrait : « H(X₁) − I(X₁;X₂) ≈ 2.17 nats mesure ce qui subsiste dans X₁ quand on projette sur X₂ ».
    Pourquoi : la sortie committée de la cellule 6 imprime H(X1)-I = 2.3335 nats pour exactement cette quantité (perdu = H1 - MI). La conclusion cite 2.17 là où sa propre mesure donne 2.3335 — écart 0.16 nats. Les trois autres chiffres de la même conclusion (0.25 ≈ 0.2645, ratio de discrétisation, KL conditionnelle) sont, eux, cohérents avec leurs sorties : c'est un chiffre isolé qui a dérivé (probablement d'un BINS antérieur), pas une réécriture globale.

    2. bias-sign-contradiction — cellules 6 (code) et 18 (markdown), sur le sens du biais plug-in.
    Extraits : commentaire de la cellule 6 « # Biais de discretisation plug-in : I est sous-estimee » ; libellé imprimé « Biais plug-in = {MI - I_theorique:+.4f} nats (sous-estimation classique de Miller-Madow) » ; conclusion « I(X₁; X₂) ≈ 0.25 nats (sous-estimé par plug-in, biais Miller-Madow) ».
    Pourquoi : la sortie imprime I theorique … = 0.2231 et Biais plug-in = +0.0414 — soit MI = 0.2645 > 0.2231. Le signe mesuré est positif : la valeur plug-in sur-estime la valeur théorique de 0.0414 nats, alors que les trois textes annoncent une sous-estimation. Un lecteur qui suit le commentaire cherche une correction qui va dans le mauvais sens. La cause probable est que le biais d'un histogramme 2D à 24 bins sur 5000 points dominé par la variance n'a pas le signe du biais d'entropie différentielle qu'on attend « classiquement » — mais quoi qu'il en soit, c'est le signe affiché qui contredit la mesure affichée à côté.
    Correctif : la cellule 6 est une cellule code — la corriger rend la ré-exécution due (C.2), donc cela part en issue fille plutôt qu'en édition ici.

    Les deux findings sont indépendants et chacun se corrige seul ; aucun ne touche la démonstration du Temps 3 (Q non opérationnel, ratio 1.684 — le carnet s'arrête honnêtement au Temps 3 et le dit, ce qui est sa qualité principale).

  8. jsboige commented on Oct 28, 2026

    @jsboige
    Owner

    Audit — Probas-KLS-Concentration.ipynb (MyIA.AI.Notebooks/Probas/, 46 cellules, lecture intégrale, partition Hermes, cycle du 28/10)

    Blob ff498495c. Structure : 46 cellules (17 code / 29 markdown), execution_count 0 nul, 0 cellule code sans sortie, 0 erreur, kernel python3. Exercices 1-3 en stubs conformes C.1 (print("Exercice a completer"), None, indices en cellules séparées) — aucune erreur volontaire.

    Organes : duplicate_sections 0 finding · split_reading_cells clean · interp_positioning 0 · output_failure_text 0 régressé · cell_source_parses 0 sur 1 carnet.

    Un contrôle indépendant a été fait en plus de la lecture : un scan automatique des nombres décimaux de la prose (\d,\d{2,4}) confrontés au texte de toutes les sorties committées du carnet. Trois des cinq non-appariements étaient des arrondis légitimes (0,80 pour 0.7995) ; les deux autres sont les findings ci-dessous. Le reste du carnet a passé ce scan — dont les chiffres que j'ai revérifiés à la main et qui sont exacts : tau cube 3,0→119,5 et simplexe 3,9→386,5 (cellule 19) ; pentes 1,62 / 1,93 (cellule 21) ; 0,7979 vs $\sqrt{2/\pi}$ (cellule 24) ; n=20 de la variance thin-shell 40,09 / 16,01 / 63,68 contre 40 / 16 / 63,91 (cellule 33, sortie complète lue) ; $\pi^2/12 = 0{,}8225$ contre $\psi^2/4 = 0{,}0833$, marge 9,9× (cellules 29-30) ; et toute la table de conclusion (cellule 45).

    Ce que cet audit ne fait pas : le carnet n'a pas été rejoué. Les findings portent sur la cohérence prose ↔ sorties committées, qui se lit sans rejeu ; la reproductibilité bit-exacte de la table tau (40 000 pas × 12 chaînes) n'est pas revendiquée ici.

    2 findings.

    1. bound-contradicted-by-output — cellule 5 (« Lecture — l'isotropie est vérifiée »).
    Extrait : « Les trois mesures sortent centrées (moyennes absolues sous $10^{-3}$) ».
    Pourquoi : la sortie de la cellule 4 imprime max |moyenne| = 0.0015 (gaussienne), 0.0019 (cube), 0.0033 (simplexe). Aucune des trois n'est sous $10^{-3}$ ; la plus grande vaut 3,3× la borne annoncée. La phrase suivante du même paragraphe donne la bonne échelle — « l'erreur d'échantillonnage d'un tirage de 200 000 points, de l'ordre de $1/\sqrt{N} \approx 2\cdot10^{-3}$ » — donc c'est la borne « sous $10^{-3}$ » qui est fausse, et elle se contredit deux lignes plus bas. Correctif : « sous $4\cdot10^{-3}$ » (ou « de l'ordre de $1/\sqrt{N}$ »). Markdown seul, aucune ré-exécution due.

    2. order-of-magnitude-wrong — cellule 19 (« Lecture — les deux corps se dégradent »), point 3.
    Extrait : « Le $\hat\lambda$ effectif du cube décroît de deux ordres de grandeur, de 0,50 à $n=2$ à 0,017 à $n=20$ ».
    Pourquoi : les deux bornes citées sont justes (lambda cube = 0.5009 puis 0.0166, arrondis 0,50 et 0,017), mais leur rapport vaut 30,2 — soit un ordre et demi, pas deux. Deux ordres de grandeur exigeraient un facteur 100. Correctif : « de plus d'un ordre de grandeur (facteur 30) » ou donner le facteur. Markdown seul, aucune ré-exécution due.

    Les deux findings sont indépendants, sans effet sur les démonstrations : les trois tables mesurées (isotropie, tau, thin-shell) et les deux contrôles d'inégalité restent exacts au regard de leurs sorties.

  9. jsboige commented on Oct 28, 2026

    @jsboige
    Owner

    [DELIVERED] lane myia-po-2023:CoursIA -- paths: MyIA.AI.Notebooks/Probas/Applications/Quotients-Fibres-Recollement-Python.ipynb, MyIA.AI.Notebooks/Probas/Probas-KLS-Concentration.ipynb

    Les deux carnets restants de la partition sont audités, checklist du body cochée en entier (7/7).

    Carnet Blob audité Cellules Organes Findings
    Applications/Quotients-Fibres-Recollement-Python.ipynb 083ec454d 19 (8 code) 5/5 à zéro 2 -> #23064
    Probas-KLS-Concentration.ipynb ff498495c 46 (17 code) 5/5 à zéro 2 -> #23065
    • Quotients : « H(X₁) − I(X₁;X₂) ≈ 2.17 nats » là où la sortie imprime 2.3335 ; « I est sous-estimée / biais Miller-Madow » là où la sortie donne Biais plug-in = +0.0414, donc une sur-estimation.
    • KLS : la borne « moyennes absolues sous 10⁻³ » est contredite par sa propre sortie (0.0015 / 0.0019 / 0.0033) et par la phrase suivante du même paragraphe qui cite 1/√N ≈ 2·10⁻³ ; « décroît de deux ordres de grandeur » pour un rapport mesuré de 30,2.

    Aucun carnet n'a été modifié : les findings sont des corrections de prose, traitées par issues filles (Part of #23013). Le reste des nombres du carnet KLS a été revérifié contre les sorties et tient (tau cube 3,0->119,5 / simplexe 3,9->386,5 ; pentes 1,62/1,93 ; π²/12 = 0,8225 contre ψ²/4 = 0,0833 ; table entière de la conclusion).

  10. clusterManager-Myia commented on Oct 31, 2026

    @clusterManager-Myia
    CollaboratorAuthor

    Audit — Integrales-03-Bulle-Premiere-Divergence-Python.ipynb (MyIA.AI.Notebooks/Probas/Applications/Integrales/) — RAS

    Cycle Hermes c.341 (31/10) — lecture intégrale 25/25 cellules, blob 2f36f19122e8f6f907c5dec0af5d8b4365b87455 (== arbre main 26f4063b77, vérifié par hash). 0 finding.

    Rejeu intégral des claims chiffrés (mpmath 1.3.0, dps 30) — chaque tableau committé restitué au chiffre près :

    • aire $S^3$ = 19.7392088021787172376689819998 (écart 0.0) ; B_ferme(2) = 24.34480199630533702092892284 ; B_ferme(8) = 50.96741925265564079715130757 ;
    • tableau §3 (écart stabilisé 0.0 / 6.3e-30 / 1.26e-29 vs naïf constant 0.000207673) ; §4 (constante 9.869604401089358… ratio → 1.0) ;
    • planted truth n°1 : coefficient 9.86960440108865137690404751611, écart rel. 7.166e-14 ; n°2 : F mesuré écart 3.333e-25, voie directe stabilisée écart 1.279e-30 ;
    • §7 : $B_R$ aux trois $\mu^2$ et dérivée d'échelle = $\pi^2$ au dernier chiffre ; §8 : résidu $R(\Lambda)/[\pi^2 p^2/(3\Lambda^2)]$ = 0.999985/0.99999985/0.9999999985, ratio R(1e2)/R(1e4) = 9999.85.

    Vérifications au-delà des sorties committées :

    • le plateau de précision de la voie naïfe (§3) est réel et reproduit : 2.0767e-4 à dps 20 et 30, 4.6297e-5 à dps 45 et 60 — signature d'artefact de règle, pas d'un terme physique, exactement comme diagnostiqué ;
    • ZeroDivisionError de B_direct_psi(Lam, rupture=True) (k=p, ψ=0) reproduit à l'identique ;
    • l'intégrande radial $2\pi^2 k/\max(k^2,p^2)$ vérifié par intégration angulaire en $t=\tan(\psi/2)$ sur 4 valeurs de k (écarts 0 à 1e-31) ;
    • comptage de puissances des trois carnets : triangle $4-2\times3=-2$, sunrise $d{=}2$ : $2\times2-2\times3=-2$, bulle $4-2\times2=0$ — les trois affirmations d'en-tête sont exactes ;
    • exercices rejoués : Ex1 la prédiction $\pi^2(\ln\Lambda^2-\ln 4+1)$ est correcte (résidu mesuré 1.3159e-15 = $\pi^2\cdot4/(3\Lambda^2)$ attendu au chiffre près) ; Ex2 la convergence en $d{=}3$ est réelle (B3 : 29.75 → 31.006 entre Λ=10 et 1e6, palier ~31.006) ; Ex3 la formule radiale est exacte à 2e-31 près (Δ=0.1, Λ=3).

    Organes : duplicate-sections, split-reading-cells, interp-positioning, output-failure-text, cell-source-parses, restore-accents (0 cure), stale-claims, factual-mislabel — tous verts, 0 finding.

    Note de contexte : la PR ouverte #23295 déplace la série vers Physique/Integrales/ en rename pur (+0/−0, blob identique) — l'audit porte sur le contenu, inchangé sous les deux chemins.

    Hermes (lane notebook-audit, partition Probas) — campagne #17073, cycle 341.

  11. clusterManager-Myia commented on Nov 1, 2026

    @clusterManager-Myia
    CollaboratorAuthor

    Audit — Probas-CLT-Theoreme-Central-Limite.ipynb (MyIA.AI.Notebooks/Probas/, racine) — RAS

    Cycle Hermes c.364 (01/11) — blob 469be7908e, 15 cellules (8 md, 7 code), lecture intégrale. Carnet entré au head le 31/10 (ac1a90cfe9, #23314).

    Rejeu intégral : les 7 cellules code rejouées en exec séquentiel (graine 2026) reproduisent les sorties committées ligne à ligne, bit-exact (tables §2 et §3) — l'instantané est authentique.

    Claims chiffrées vérifiées (rejeu + calcul indépendant) :

    • facteur « 2,30 mesuré » : 6.7492/2.9382 = 2,298 ✓ ; 64^{1/6} = 2,0 exact, et l'écart 2,30/2,0 est honnêtement attribué au pré-asymptotique ;
    • plancher uniforme « autour de 0,39 » = médiane|N(0,1/3)| = 0,6745/√3 = 0,3894 ✓ (sorties 0,3925-0,3941) ;
    • plancher de bruit « √(n/M) » quantitativement cohérent : à M=10⁵ le bruit sur le produit vaut 0,01 (n=10) et 0,04 (n=160) — les produits uniforme (0,0146/0,0145/0,0272) sont bien dessous/au niveau du bruit, exactement ce que la §Lecture énonce ;
    • bornes Berry–Esseen re-calculées : ρ₃ = E|X−μ|³/σ³ par MC 10⁷ (1,299 / 1,266 / 2,416 / 6,169) — les 4 produits committés satisfont d_K·√n ≤ 0,4748·ρ₃ à toute taille ✓ ; les valeurs asymptotiques d'Edgeworth (expo → κ₃φ(0)/6 = 0,133 ; lognormale → 0,41 ; Bernoulli ~0,5 portée par le terme de réseau 1/(σ√(2π)) ≈ 0,87 amorti) encadrent les mesures committées — la prose ne sur-promet rien.

    Prose : les trois nuances de la §2-Lecture (3ᵉ moment vs variance ; pas de constante asymptotique non nulle — cas gaussien ; erreur absolue vs relative) sont exactes et c'est la partie la plus soignée du carnet. Contre-exemple Lomax (moyenne 2, variance infinie, quantile exact) correct ; conclusion « lois stables n^{1/α} » correcte pour α∈(1,2).

    Exercices : 3 stubs TODO (convention série, cf MCMC), indices conformes aux implémentations de référence des cellules 01/05/08 — signatures et étapes cohérentes.

    Organes : check_duplicate_sections → dup_reading ×2 (« Lecture du résultat », cellules 6 et 9) — renvoi #17066 (classe gelée), pas un finding. Les 6 autres organes + restore_accents (0 cure) + navlinks (0 broken, lien cellule 0 → KLS valide) : 0.

    Aucun finding au dépôt.

  12. myia-ai-01 commented on Nov 2, 2026

    @myia-ai-01
    Collaborator

    [CLAIMED] lane myia-po-2027:CoursIA — partition d'audit Probas/Applications : traiter les findings ouverts (dispatch coordinateur c2757)

  13. jsboige commented on Nov 2, 2026

    @jsboige
    Owner

    [DELIVERED] lane myia-po-2027:CoursIA -- PR #24327 (tranche MCMC : 4 findings Hermes absorbes — narratif T2 moyenne/variance corrige dans 4 cellules, assert taux aux bornes exactes, references Metropolis 1953 / Hastings 1970 reelles ; re-exec papermill 20/20, 0 erreur, sorties fraiches ; 5/5 guards verts)

  14. jsboige commented on Nov 2, 2026

    @jsboige
    Owner

    [DELIVERED] lane myia-po-2027:CoursIA -- PR #24328 (tranche Pyro_RSA : 3 findings markdown absorbes — citation literal_listener alignee sur le code reel, Exercice 3 recadre en Mesurer l'effet de la QUD isExpensive deja cablee, liste d'exercices renvoyee aux sections reelles ; aucune cellule code touchee, 5/5 guards verts)

  15. jsboige commented on Nov 2, 2026

    @jsboige
    Owner

    [DELIVERED] lane myia-po-2027:CoursIA -- PR #24329 (tranche Integrales : 11 findings re-verifies firsthand par probes mpmath dps 30 avant tout fix — I1 divergence logarithmique psi->0 + convergence quadratique en pi + refus TypeError immediat + lecture Delta aux sommets ; I2 integrale elementaire en theta rationalisee t->tanh(theta/2) a 1e-19, elliptique localisee dans l'integration sur r, modulo unique ; dates 2026 x6. Re-exec papermill I1 exception None 23,09 s 15/15 0 erreur ; I2 markdown-only)

  16. added 2 commits that reference this issue on Nov 3, 2026
  17. added a commit that references this issue on Nov 3, 2026
  18. clusterManager-Myia commented on Nov 3, 2026

    @clusterManager-Myia
    CollaboratorAuthor

    Audit — Probas-KLS-Concentration.ipynb (MyIA.AI.Notebooks/Probas/, partition Hermes, cycle du 03/11 — ressortie du pool skip-pr)

    Périmètre : ressortie du skip-pr — PR #23066 (merge 30/10) a modifié le blob depuis l'audit du 28/10 (c.6461842890, blob 34a26270f). Le périmètre nouveau est exactement le delta 34a26270f → 97a964775 : 2 cellules markdown réécrites par le fix. Relecture intégrale des 46 cellules + rejeu intégral des 14 cellules code non-stub en exec séquentiel.

    Rejeu (numpy 2.5.4 vs 2.4.2 committé, graine 20261008) : cellules Cheeger (23/26), thin-shell (29/32), contrôles isotropie (4/6), AR(1) (15), marcheur (10/12) — toutes bit-exactes au dernier chiffre affiché. La table hit-and-run (cellule 18) reproduit la structure mais dérive aux décimales sur les grandes dimensions (τ cube n=20 : 119,5 committé / 123,2 rejoué ; n=16 : 89,3/80,4) — la boucle Python hit_and_run consomme la RNG dans un ordre version-dépendant ; l'estimateur tronqué est bruité à ±10 % sur τ≈390, ce que la cellule 19 documente elle-même (« une centaine d'échantillons indépendants… la décimale ne l'est pas »). Les pentes 1,62/1,93 se rejouent en 1,61/1,88. Aucune divergence qualitative.

    Organes (7 + accents + navlinks) : 0 porteur. 1 hit check_stale_claims (cellule 16, « 10 ») écarté après rejeu : « de 2 % à 10 % » dénote les biais relatifs 0,055/0,05 = +10 % et 0,104/0,10 = +4 % — arithmétique juste. restore_accents_canonical : 0 cure (35 occurrences hors table, format correct). nb_view : ⚠️ lectures empilées [[44, 45]] (indice Exercice 3 + Conclusion) — indice collé à la conclusion, mention #17040 non bloquante.

    2 findings (tous deux dans le périmètre du fix #23066 — ils ont été introduits par la correction du 30/10, pas par la rédaction initiale).

    1. stale-claim — cellule 5 7e82a0b6 (« Lecture — l'isotropie est vérifiée »).
    Extrait : « Les trois mesures sortent centrées (moyennes absolues sous $4 \cdot 10^{-3}$ : 0,0015 pour le cube, 0,0019 pour la gaussienne, 0,0033 pour le simplexe) »
    Pourquoi : la sortie de la cellule 4 donne l'attribution inverse — gaussienne … = 0.0015, cube … = 0.0019, simplexe … = 0.0033 ; le correctif du 30/10, en écrivant la borne « sous $10^{-3}$ » → « sous $4\cdot10^{-3}$ », a collé les valeurs sur les mauvais corps (0,0015 est la gaussienne, pas le cube). Correctif : échanger « cube » ↔ « gaussienne ». Markdown seul, aucune ré-exécution due.

    2. exercise-mismatch — cellule 41 ffd956fc (Indice — Exercice 2, énoncé en 39 38faf505).
    Extrait : « Avec des poids égaux, l'autocorrélation reste dominée par le mode lent dès que les lags dépassent quelques unités de temps du mode rapide : $\hat\lambda$ doit avoisiner 0,05. »
    Pourquoi : rejeu de l'implémentation prescrite (somme pondérée de deux AR(1) λ=0,05/0,5, structure de la section 3.2, 200 000 pas, 5 graines) : λ̂ = 0,093–0,103, jamais 0,05 — la théorie exacte du mélange donne τ_int = 21,0 donc λ̂ = 2/(τ+1) = 0,091 : τ_int est une moyenne pondérée des ρ, mais λ̂ = 2/(τ+1) est non linéaire en τ, donc capturer le mode dominant en autocorrélation ne restitue pas son λ. À w=0,1, le rejeu rend λ̂ = 0,507 : l'indice a raison sur ce point (l'estimateur bascule vers le mode rapide). Correctif : « λ̂ doit avoisiner 0,09 » (ou comparer τ̂ ≈ 21 à la moyenne pondérée des τ, 0,5·39 + 0,5·3 = 21).

    Non déposés (1 ligne chacun, à disposition) : (a) cellule 19 point 3 « facteur 30 » : le rapport exact des sorties vaut 0,5009/0,0166 = 30,2 — correct ; (b) « 63,68 là où les formules annoncent… 63,91 » (cellule 33) : écart 0,36 %, cohérent avec l'assert à 3 %.

    Les deux findings sont purement markdown, sans effet sur les démonstrations : toutes les tables mesurées restent exactes au regard de leurs sorties.

  19. added a commit that references this issue on Nov 4, 2026
  20. clusterManager-Myia commented on Nov 4, 2026

    @clusterManager-Myia
    CollaboratorAuthor

    Audit — Applications/Quotients-Fibres-Recollement-Python.ipynb (ré-audit du delta post-fix, partition Hermes, cycle du 04/11)

    Périmètre exact. Audit antérieur : blob 47426b5e (c.6461825396, 28/10, 2 findings → #23064). Sont arrivés après : le fix #23066 (blob 62a7b863, 30/10 : quatre énoncés de prose alignés) puis 370fff01db (blob 36b8f6b8, 31/10 : « le biais plug-in porte un signe »). Ce ré-audit couvre le delta 47426b5e → 36b8f6b8 (head) : la cellule 6 réécrite (ajout biais_plugin + terme de Miller-Madow), les 3 cellules neuves 7-8-9 (lecture / rejeu 8 graines / stabilité), le décalage des exercices 10-19, la Conclusion réécrite (21). Les cellules non modifiées (0-5, 10-20 inchangées par contenu) ont été relues en lecture intégrale au passage. Blob vérifié = sha de l'arbre (36b8f6b8).

    Rejeu intégral des cellules nouvelles (numpy 2.4.4, mêmes graines) : bit-exact — 2.5980/2.6966/5.0301/0.2645 nats, biais +0.0414, m1/m2/m12 = 24/24/294, MM +0.0247, et les 8 graines (20260822, 1, 7, 42, 99, 123, 2024, 31337) reproduisent au float près (+0.0151/+0.0297/+0.0481, même signe 8/8). Les corrections #23066 sont bien portées (Conclusion cite 0.26/0.22/+0.04, sens « sur-estimé » juste).

    Organes sur le carnet entier : duplicate_sections 0 · split_reading_cells 0 · interp_positioning 0 · output_failure_text 0 régressé · cell_source_parses 0 · check_stale_claims 0 · check_factual_mislabel 0 · restore_accents_canonical --check 0 cure (5 hors-table).

    2 findings sur le delta, les deux dans la même famille « généralisation d'un échantillon borné » (le fix du 31/10 a corrigé le signe au présent, mais les deux cellules de Lecture promeuvent maintenant le fait mesuré en propriété générale — réfutable en balayant N avec la machinerie du carnet lui-même).

    1. concept-error — cellule 9 (markdown, « Lecture — le signe est stable »).
    Extrait : « La direction du biais est une propriété du montage, pas de l'échantillon. Un tirage unique aurait pu faire croire à un accident ; huit tirages convergents indiquent que la sur-estimation vient de la discrétisation sur cette table jointe, non d'un tirage particulier. »
    Pourquoi : la direction du biais est une propriété du régime N/m12, pas du montage seul — au montage IDENTIQUE (24×24, ρ=0.6, mêmes fonctions), rejeu de biais_plugin sur 100 graines × N ∈ {500, 1000, 2000, 5000, 20 000, 100 000} : biais moyen +0.307 → +0.159 → +0.079 → +0.029 → +0.003 → −0.005, positif 100/100 puis 76/100 puis 1/100 : à N=100 000 le même montage sous-estime dans 99 tirages sur 100, et le terme de Miller-Madow (~ +0.0023, m12 saturé ≈ 310/576) ne rend plus compte de la direction. La phrase n'est vraie que dans le régime N ≤ ~10⁴ où la sur-estimation domine ; l'apprenant qui la retient comme invariante du « montage » (bins × loi) la verra renverser dès que la table se remplit.

    2. stale-claim — cellule 7 (markdown, « Lecture — le signe du biais plug-in »).
    Extrait : « Affirmer « le plug-in sur-estime toujours l'information mutuelle » serait trop général : la correction dépend de la densité de la table jointe, pas seulement du nombre de cases. »
    Pourquoi : l'avertissement dit le bon mot (« densité ») mais désigne la mauvaise quantité — la correction du premier ordre de Miller-Madow ne dépend QUE du nombre de cases non vides (m12−m1−m2+1)/2N, ce qui est imprimé deux cellules plus haut ; la quantité qui fait renverser le signe est le taux de remplissage N/m12 (le passage en régime asymptotique), absent de l'énoncé. Balayage sur la machinerie du carnet : c'est N qui fait basculer la direction (cf. finding 1), pas la densité de la table à N fixé (m12 passe de 299 à 277 entre deux graines à N=5000 sans rien changer au signe).

    Les deux findings se corrigent en une phrase chacun (« propriété du régime N/m12 tant que la table n'est pas saturée » / « dépend du taux de remplissage N/m12, dont (m12−m1−m2+1)/2N n'est que le premier ordre »). Le reste du delta est propre : la cellule 8 (code) ne fait aucune claim générale, la Conclusion réécrite reste au présent mesuré (« le repli sur huit tirages ne renverse jamais la direction » — vrai pour ces huit), et le déplacement des exercices n'a cassé aucun renvoi (vérifié : « gabarit du Temps 3/4 » résolvent sur les cellules 13/17).

    — clusterManager-Myia (Hermes, lane notebook-audit myia-ai-01:hermes-agent) · #17073

  21. added a commit that references this issue on Nov 4, 2026
  22. jsboige commented on Nov 5, 2026

    @jsboige
    Owner

    Grain: MED/notebook-python — lane myia-ai-01:CoursIA-2 — prev: MED/notebook-python #24767

    [CLAIMED] lane myia-ai-01:CoursIA-2 -- paths: MyIA.AI.Notebooks/Probas/Applications/Quotients-Fibres-Recollement-Python.ipynb -- tranche des 2 findings Hermes du 04/11 sur le delta post-fix (F1 concept-error, cellule 9 : la direction du biais tient au regime de remplissage de la jointure, pas au seul montage ; F2 stale-claim, cellule 7 : la correction de premier ordre ne depend que du nombre de cases non vides, pas d'une « densite ») ; corrections markdown seules, aucune cellule de code touchee, donc aucune re-execution due

  23. jsboige commented on Nov 5, 2026

    @jsboige
    Owner

    Grain: MED/notebook-python — lane myia-ai-01:CoursIA-2 — prev: MED/notebook-python #24767

    [DELIVERED] lane myia-ai-01:CoursIA-2 -- paths: MyIA.AI.Notebooks/Probas/Applications/Quotients-Fibres-Recollement-Python.ipynb -- PR #24768

    Les deux findings Hermes du 04/11 sur le delta post-fix de ce carnet sont CONFIRMED 2/2 (re-verification de premiere main avant ecriture, protocole audit-reassessment) et sont corriges dans la PR #24768.

    F1 — cellule e7ac40ee (concept-error). La phrase « La direction du biais est une propriete du montage, pas de l'echantillon » ne tenait que dans le regime mesure : l'audit a rejoue le meme montage en balayant la taille de l'echantillon (six valeurs, cent graines chacune) et la direction de l'ecart se renverse au plus grand N (biais moyen +0.307 -> −0.005, positif sur 1 tirage sur 100 au point extreme). La phrase dit desormais ce que les huit tirages du carnet etablissent : la stabilite a l'interieur de ce regime, le nombre d'observations par case non vide etant ce qui decide de la direction.

    F2 — cellule f8e13c03 (stale-claim). L'avertissement « la correction depend de la densite de la table jointe, pas seulement du nombre de cases » designait la mauvaise quantite : la correction de premier ordre ne depend que du nombre de cases non vides (c'est de la qu'elle est calculee et imprimee) ; ce qui fait basculer la direction est le regime de remplissage, que cette correction de premier ordre ne capte pas. Les deux quantites sont desormais nommees.

    Aucun chiffre ajoute. La redaction n'introduit aucune valeur que le carnet ne mesure pas : elle renvoie aux quantites que la cellule de mesure imprime deja (m1, m2, m12, N). Les valeurs du balayage de l'audit restent des valeurs d'audit.

    Diagnostic derive. Cause (b) claim anterieure fabriquee : les deux phrases proscrivaient une invariant la ou la mesure porte sur un regime. Verdict CAUSE_FIXED. Les deux cellules corrigees sont des cellules markdown : aucune cellule de code touchee, donc aucune re-execution due, sorties commitees inchangees.

    Verification. check_stale_claims 0 · check_factual_mislabel 0 · check_prose_quantitative_claims (classe artifact) 0 · check_activity_leak 0 · check_duplicate_sections 0 · check_interp_positioning 0 · check_cell_source_parses 0 · check_output_failure_text 0 regresse · check_output_collapse 0 signale. Pre-commit vert (H.3). Blob de base 36b8f6b8ebf3c65261bb4c6570bf8b2aa8d3246e, exactement celui audite.

    Tete 882bc05949d59.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions