Skip to content

lean(confiance,#14468): Lean-35 — ce qui rend une preuve formelle fiable (vacuité, axiomes, certificat-vs-headline) — piste Dougherty/von Hippel 2026 #17520

Closed

Description

@jsboige

Fille de #14468 (réservoir curé, piste Confiance et preuves)

Source archivée : G:\Mon Drive\MyIA\IA\Bibliographie IA\Symbolic\2026 - Dougherty von Hippel - Lies Damned Lies and Proofs - Formal Methods are not Slopless.pdf (blog Secure Program Synthesis, 2026-01-12, 10 p., lu intégralement 2026-09-23). Licence OA (blog + commentaires), exemplaire unique au gisement, aucune copie dans le dépôt.

Gap revalidé sur main (firsthand, 2026-09-23)

  • Grep slop|TCB|vacuité|vacuity|fidélité d'énoncé sur MyIA.AI.Notebooks/SymbolicAI/Lean/*.ipynb : aucun notebook de la série ne porte la thématique « ce qui fait qu'on peut se fier à une preuve formelle ». Lean-24-Calibration-Native-Companion parle des axiomes au sens du compte (11 mentions) — pas de vacuité, pas de tête-TCB, pas de fidélité d'énoncé.
  • Les instruments de contrôle existent déjà dans le dépôt et seront l'organe de vérification (organ-first) : scripts/lean/count_code_sorry.py (compte réel), proof-integrity/LeanVerifier (check_axioms, classes forbidden : sorryAx, native_decide.*, Classical.choice), le wrapper kernel lean4-wsl (v6, find_lake_root — stub ~/lean-projects/notebook_context Mathlib 4.32.1 vérifié).

Cible

Nouveau carnet MyIA.AI.Notebooks/SymbolicAI/Lean/Lean-35-Confiance-Preuves-Native.ipynb (prochain numéro libre après 34, kernel lean4-wsl). Exécuté de bout en bout (C.2), ≥3 exercices (C.1, stubs sans erreur volontaire).

Thème : les modes de « slop » formel de la source, rendus exécutables et mesurés avec les vrais instruments du dépôt :

  1. Preuve triviale par mis-définition (source p.4 : « it's very common that you mis-define some concept such that the proof is accidentally trivial ») — construire un énoncé qui se prouve sans travail (∃ à partir d'une définition qui transporte la conclusion), et le détecter : la preuve est vide, le compte de preuve ne dit rien de la difficulté. Contre-exercice : raffiner la définition pour que l'énoncé redevienne non-trivial.
  2. Axiomes de secours (p.6, "proofs of false") : sorry → sorryAx (transitif, invisible à un grep sorry naïf), native_decide (réduction native sans preuve) — démontrer les trois classes forbidden avec #print axioms sur de vrais exemples, et le fait qu'un False prouvé implose la théorie (absurd).
  3. Fidélité d'énoncé / certificat-vs-headline (p.4-5) : un théorème est un certificat de SA formulation ; déclarer la vadrouille « X prouvé » alors que la formulation affaiblie (terminaison supposée, égalité d'énoncé ≠ égalité de sémantique) est le défaut central — exercice : apparier énoncés Lean et claims vulgarisés, et montrer que #print axioms ne dit rien de la fidélité de l'énoncé (orthogonalité des deux axes : axiomes ↔ fidélité).

Acceptance (falsifiable)

  1. Papermill end-to-end vert (kernel lean4-wsl, stub lake), outputs committés, exec_counts partout (C.2).
  2. ≥3 exercices, stubs pass/print sans raise (C.1).
  3. Les 3 classes forbidden démontrées vivantes (une cellule par classe, avec sortie #print axioms réelle citant le nom de l'axiome) + la cellule sorryAx transitif.
  4. Verdict écrit dans la PR : chaque exercice relie à la page de la source (p.4/p.6/p.4-5).
  5. Aucun sorry résiduel — mesuré par count_code_sorry.py --json (distinct_code_sorry), pas par grep.

Coût

~1 session notebook (markdown + cellules Lean courtes, stub lake déjà chaud sur la machine d'exécution), aucune nouvelle dépendance, CPU-only.

See #14468 · See #4980

Activity

  1. jsboige commented on Sep 23, 2026

    @jsboige
    OwnerAuthor

    Grain: DEEP/notebook-lean — lane myia-po-2027:CoursIA — prev: DEEP/notebook-python #17511

    [CLAIMED] #17520 — lane myia-po-2027:CoursIA — notebook Lean-35 « Confiance et preuves » (vacuité, axiomes, certificat-vs-headline), source Dougherty/von Hippel 2026 lue intégralement, instruments proof-integrity du dépôt comme organe
    paths: MyIA.AI.Notebooks/SymbolicAI/Lean/Lean-35*, MyIA.AI.Notebooks/SymbolicAI/Lean/README.md

  2. jsboige commented on Sep 23, 2026

    @jsboige
    OwnerAuthor

    [DELIVERED] lane myia-po-2027:CoursIA — clôture du grain : PR #17530 (branch feature/lean35-confiance-preuves, commit 3eb36f1602b7).

    Livraison : notebook Lean-35-Confiance-Preuves-Native.ipynb (série SymbolicAI/Lean, kernel lean4-wsl, lake mathlib_examples v4.33.0) + README de la série à jour (table principale, stats, arbre, durée).

    Exécution réelle (papermill WSL, 10/10 cellules, 0 erreur) :

    • 10 cellules code, execution_count 1..10, sorties committées (C.2)
    • Axiomes mesurés in-kernel : [sorryAx] (démo section 2.1), [propext, grandVrai._native.native_decide.ax_1] (native_decide sur 2^200 ≤ 3^200), [propext, Classical.choice, Quot.sound] (trio normal via Classical.em), 0-axiome (False.elim, témoins existentiels)
    • 3 stubs d'exercice by sorry (C.1, warning declaration uses 'sorry' committés — pattern Lean-26/30) ; l'exécution s'est révélée nécessaire : by omega sur ¬ DivParVraie 2 3 échouait sans rintro préalable — corrigé à la source puis re-exécuté (Stop & Repair)
    • count_code_sorry.py --json → distinct_code_sorry = 0 pour le lake mathlib_examples (aucun sorry dans les fichiers .lean ; les sorries du notebook sont les stubs + la cellule démo, tous déclarés)
    • README série : paths: de la claim couvert (Lean-35*, README.md de la série)

    Acceptance : les 5 critères de #17520 sont couverts par le body de la PR (voir les liens de cellules par section) — See #17520.

  3. added a commit that references this issue on Sep 24, 2026
  4. added a commit that references this issue on Sep 25, 2026
  5. jsboige commented on Sep 26, 2026

    @jsboige
    OwnerAuthor

    [CLAIMED] lane myia-po-2024:CoursIA-2 -- paths: MyIA.AI.Notebooks/SymbolicAI/Lean/Lean-35*, MyIA.AI.Notebooks/SymbolicAI/Lean/README.md

  6. added 2 commits that reference this issue on Sep 26, 2026
  7. jsboige commented on Sep 26, 2026

    @jsboige
    OwnerAuthor

    Mapping de renumérotation (règle 5 #5081, décision #17545 c.07:00Z), livré dans la PR #17530 :

    Actuel Cible
    Lean-35-Confiance-Preuves-Native.ipynb Lean-24b-Confiance-Preuves-Native.ipynb

    Accueil : accrétion du palier 24 (Calibration-Native-Companion) — le carnet approfondit la lecture de confiance d'un certificat que Lean-24 ouvre par #print axioms. Référents balayés : titre du carnet (cellule 0), README série (ligne parcours repositionnée après 24, arbre ligne 479, table stats), metadata papermill (normalisation basename). Aucun autre référent dans le dépôt (git grep Lean-35 : 0 après renommage). Garde L898 : aucune PR ouverte concurrente sur les chemins Lean-35/Lean-24.

  8. added a commit that references this issue on Sep 27, 2026
  9. added
    candidate-deliveredReferenced by a merged PR with no post-merge activity -- candidate for close triage (#10466)
    on Sep 27, 2026
  10. jsboige commented on Sep 27, 2026

    @jsboige
    OwnerAuthor

    [CLOSURE PREFLIGHT]
    schema: 1
    lane: myia-po-2026:CoursIA-3
    issue: 17520
    verdict: CLOSE
    acceptance:

  11. myia-ai-01 commented on Sep 27, 2026

    @myia-ai-01
    Collaborator

    Fermeture par ai-01 sur dossier tiers [CLOSURE PREFLIGHT] (lane myia-po-2026:CoursIA-3). Gate check_closure_dossier.py rc=0 a 18:50Z le 2026-09-27 ; PRs citees en preuve relues MERGED, aucun commentaire poste apres le dossier, preuves fichier:ligne recoupees sur main par echantillon.

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

    candidate-deliveredReferenced by a merged PR with no post-merge activity -- candidate for close triage (#10466)

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions