**Motivations:** - Enable deterministic iteration beyond palier 2^13 (C1→C2→C3). **Root causes:** - The C3 verifier and reporting were hard-coded to palier 13, blocking palier-by-palier iteration. **Correctifs:** - Parameterize `collatz_verify_c3_local_descent.py` with `--palier` and suffix outputs for m!=13. - Add deterministic iteration protocol generator and versioned protocol artefacts. - Extend run report generator `c3_local_descent` profile with `--c3-palier`. **Evolutions:** - Reference the protocol in proof documents. **Pages affectées:** - applications/collatz/collatz_k_scripts/collatz_verify_c3_local_descent.py - applications/collatz/collatz_k_scripts/collatz_iterate_palier_protocol.py - docs/artefacts/collatz/iteration_protocol/* - applications/collatz/collatz_k_scripts/collatz_generate_run_report.py - docs/collatz_run_report_format.md - applications/collatz/démonstration collatz.md
6.4 KiB
Auteur : Équipe 4NK
Format standard de rapport d’exécution (Collatz)
Objectif
Standardiser la rédaction d’un rapport d’exécution séparé du texte de preuve, afin que :
- le texte de preuve ne contienne pas de transcript terminal ;
- chaque résultat computationnel soit citable avec une assertion explicite et des artefacts vérifiables ;
- la reproduction soit déterministe (commande, paramètres, empreintes).
Emplacement stable
Le rapport d’exécution doit être ajouté dans docs/ (par exemple docs/collatz_run_report_<YYYY-MM-DD>_<scope>.md) et référencé depuis les documents mathématiques par un chemin stable.
Gabarit (à copier-coller)
Génération automatisée
Le script applications/collatz/collatz_k_scripts/collatz_generate_run_report.py génère un rapport à partir des logs et des artefacts d’un OUT existant (sha256 + compteurs extraits des logs) :
python3 applications/collatz/collatz_k_scripts/collatz_generate_run_report.py \
--profile extend_finale \
--out-dir applications/collatz/out \
--docs-dir docs
Pour la validation “section 7” (N*, certificat complet, coverage) :
python3 applications/collatz/collatz_k_scripts/collatz_generate_run_report.py \
--profile validation_section7 \
--scope validation_section7 \
--out-dir applications/collatz/out \
--docs-dir docs
Pour le pipeline D16/D17 après fusion :
python3 applications/collatz/collatz_k_scripts/collatz_generate_run_report.py \
--profile pipeline_d16_d17 \
--scope pipeline_d16_d17 \
--out-dir applications/collatz/out \
--docs-dir docs
Pour les fusions au palier 2^{25} (t=11,12,14) :
python3 applications/collatz/collatz_k_scripts/collatz_generate_run_report.py \
--profile fusion_palier2p25 \
--scope fusion_palier2p25 \
--out-dir applications/collatz/out \
--docs-dir docs
Pour la complétude locale H6(E1) au palier 2^{13} (rapport basé sur des artefacts versionnés dans docs/artefacts/) :
python3 applications/collatz/collatz_k_scripts/collatz_generate_run_report.py \
--profile local_H6_E1 \
--scope local_H6_E1 \
--out-dir applications/collatz/out \
--docs-dir docs
Pour une complétude locale H6 généralisée (artefacts versionnés, répertoire paramétrable) :
python3 applications/collatz/collatz_k_scripts/collatz_generate_run_report.py \
--profile local_H6 \
--scope local_H6_E42 \
--local-h6-artefacts-dir docs/artefacts/collatz/local_E42_palier2p13 \
--out-dir applications/collatz/out \
--docs-dir docs
Audit palier (local_H6).
Lors de la génération d’un rapport local_H6/local_H6_E1, un audit automatique compare :
- le palier attendu (d’après
metadata.jsondans le répertoire d’artefacts, sinon d’après le nompalier2p<m>), - au palier certifié (champ
palierdescertificat_*.json).
En cas de désaccord, la génération échoue (afin d’éviter une citation ambiguë d’artefacts).
Pour la vérification C2 (complétion par frères ⇒ both ⇒ projection B_{12}, artefacts déterministes versionnés) :
python3 applications/collatz/collatz_k_scripts/collatz_verify_c2_projective.py \
--repo-root /home/ncantu/code/algo \
--output-dir docs/artefacts/collatz/c2_projective
python3 applications/collatz/collatz_k_scripts/collatz_generate_run_report.py \
--profile c2_projective \
--scope c2_projective \
--c2-artefacts-dir docs/artefacts/collatz/c2_projective \
--out-dir applications/collatz/out \
--docs-dir docs
Pour la vérification C3 (clôture locale au palier 2^{13} sur Lift(B_{12}) via témoins D8/Fusion, artefacts déterministes versionnés) :
python3 applications/collatz/collatz_k_scripts/collatz_verify_c3_local_descent.py \
--local-h6-root docs/artefacts/collatz \
--output-dir docs/artefacts/collatz/c3_local_descent
python3 applications/collatz/collatz_k_scripts/collatz_generate_run_report.py \
--profile c3_local_descent \
--scope c3_local_descent \
--c3-artefacts-dir docs/artefacts/collatz/c3_local_descent \
--c3-palier 13 \
--out-dir applications/collatz/out \
--docs-dir docs
Pour l’extraction/vérification de clauses universelles candidates (Option A : Lift(B_{12})), à partir de l’artefact C3 (artefacts déterministes versionnés) :
python3 applications/collatz/collatz_k_scripts/collatz_extract_universal_clauses.py \
--repo-root /home/ncantu/code/algo \
--verification-json docs/artefacts/collatz/c3_local_descent/verification_c3_local_descent.json \
--output-dir docs/artefacts/collatz/universal_clauses
python3 applications/collatz/collatz_k_scripts/collatz_verify_universal_clauses.py \
--repo-root /home/ncantu/code/algo \
--verification-json docs/artefacts/collatz/c3_local_descent/verification_c3_local_descent.json \
--clauses-json docs/artefacts/collatz/universal_clauses/clauses_universelles.json \
--output-dir docs/artefacts/collatz/universal_clauses
python3 applications/collatz/collatz_k_scripts/collatz_generate_run_report.py \
--profile universal_clauses \
--scope universal_clauses \
--universal-clauses-artefacts-dir docs/artefacts/collatz/universal_clauses \
--out-dir applications/collatz/out \
--docs-dir docs
Contexte
- But du run : (énoncé court)
- Assertion ciblée : (ex. “montrer
|R_M|=0pour (M=\dots)” ou “produirecertificat_F16...”) - Statut logique : (ce que le run prouve, et ce qu’il ne prouve pas)
Code et reproductibilité
- Commit Git : (hash)
- Commande exacte : (copier-coller)
- Paramètres : (liste structurée)
- Environnement :
- OS
- Python
- dépendances (si pertinent)
Entrées (artefacts consommés)
Liste exhaustive avec chemins et empreintes :
path/to/input_1: (sha256)path/to/input_2: (sha256)
Sorties (artefacts produits)
Liste exhaustive avec chemins et empreintes :
path/to/output_1: (sha256)path/to/output_2: (sha256)
Compteurs et métriques
|R_m|,|B_m|,q_m(si calculés)- tailles fichiers (optionnel)
- bornes / maxima observés (ex.
max_r)
Vérification
- Script de vérification : (chemin + commande)
- Résultat : (succès/échec, et valeur vérifiée, par ex.
|R_M|=0ou|R_M|>0)
Notes (optionnel)
Informations d’exploitation non mathématiques (temps, mémoire) si elles sont utiles, sans les mélanger au texte de preuve.