algo/docs/features/collatz_minorated_descent_clauses.md
ncantu 9759114f49 collatz: add hensel chain, targeted refinement leaves and brother-derived D_minor
**Motivations:**
- Extend refinement tooling with hensel chain leaves, targeted refinement leaves and brother-derived minorated clauses.
- Document grammar extensions and targeted leaves/diagnostics workflows.

**Root causes:**
- N/A (evolutions)

**Correctifs:**
- N/A

**Evolutions:**
- Add collatz_build_hensel_chain_leaves.py, collatz_verify_hensel_chain_leaves.py.
- Add collatz_build_targeted_refinement_leaves.py, collatz_verify_targeted_refinement_leaves.py, collatz_diagnose_targeted_leaves_failure.py.
- Add collatz_build_refinement_bundle_over_Sm_multilevel.py.
- Add collatz_derive_brother_minorated_clauses_from_terminal_over_Sm.py, collatz_verify_brother_derived_minorated_clauses_over_Sm.py.
- Add refinement_K artefacts (bundle, hensel_chain_leaves, targeted_leaves) and minorated_clauses_over_Sm_derived_from_brothers.
- Update README, conjoncture, and feature docs.

**Pages affectées:**
- applications/collatz/collatz_k_scripts/README.md
- applications/collatz/conjoncture_collatz.md
- applications/collatz/collatz_k_scripts/*.py (new)
- docs/features/*.md
- docs/artefacts/collatz/**
2026-03-10 09:07:11 +01:00

6.1 KiB
Raw Blame History

Auteur : Équipe 4NK

Minorated descent clauses (D_minor) over S_M

Objectif

Ajouter une grammaire de feuilles terminales de type descente minorée (notée D_{\underline{}} dans applications/collatz/conjoncture_collatz.md) pour fermer, à palier fixé 2^M, des classes qui échouent à produire une clause exacte directement décidable (typiquement parce que la dernière valuation nest pas figée).

Cette grammaire vise en particulier les branches dominantes du résidu non couvert (p.ex. classes congruentes aux “sommets” 2^t-1) où une simple borne inférieure sur une valuation suffit à conclure à la descente.

Impacts

  • Extension du jeu de feuilles utilisables par collatz_build_refinement_certificate_over_Sm_multilevel.py via des clauses D_minor exprimées à un palier 2^M.
  • Réduction observée de open_roots sur S_15 lors de lajout des feuilles D_minor (horizon k=8, \underline A=13).

Modifications

Scripts

  • applications/collatz/collatz_k_scripts/collatz_generate_minorated_descent_clauses_over_Sm.py

    • Génère les clauses D_minor sur S_M (tous résidus impairs modulo 2^M).
    • Paramètres: --palier M, --k, --underlineA.
  • applications/collatz/collatz_k_scripts/collatz_verify_minorated_descent_clauses_over_Sm.py

    • Vérifie déterministiquement les clauses produites (stabilité du préfixe, cohérence de C_k, congruence \bmod 2^{\underline A}, seuil N_0).
  • applications/collatz/collatz_k_scripts/collatz_derive_brother_minorated_clauses_from_terminal_over_Sm.py

    • Dérive des clauses D_minor pour des frères à partir de clauses D_exact sur S_m (complétion par frères, via le même numérateur affine).
    • Sort un JSON de feuilles additionnel, consommable par la fermeture multi-niveaux.

Artefacts

Par défaut, sortie sous:

  • docs/artefacts/collatz/minorated_clauses_over_Sm/palier2p<M>/clauses_D_minor_over_Sm_mod2p<M>.json
  • docs/artefacts/collatz/minorated_clauses_over_Sm/palier2p<M>/clauses_D_minor_over_Sm_mod2p<M>.md
  • docs/artefacts/collatz/minorated_clauses_over_Sm/palier2p<M>/verification_D_minor_over_Sm_mod2p<M>.{json,md}

Clauses dérivées “par frères” :

  • docs/artefacts/collatz/minorated_clauses_over_Sm_derived_from_brothers/palier2p<M>/clauses_D_minor_derived_from_brothers_over_Sm_mod2p<M>.json

Modalités danalyse

Génération (exemple M=15, k=8, underlineA=13)

cd /home/ncantu/code/algo
python3 applications/collatz/collatz_k_scripts/collatz_generate_minorated_descent_clauses_over_Sm.py \
  --repo-root /home/ncantu/code/algo \
  --palier 15 \
  --k 8 \
  --underlineA 13

Génération (familles, M=15..18)

Exemple de génération “familles” par horizons k avec \underline A minimal contractif (2^{\underline A}>3^k) :

cd /home/ncantu/code/algo
for palier in 15 16 17 18; do
  for k in 6 7 8 9 10 11; do
    u=$(K="$k" python3 - <<'PY'
import os
k=int(os.environ["K"])
a=3**k
u=0
while (1<<u) <= a:
    u += 1
print(u)
PY
)
    if [ "$u" -le "$palier" ]; then
      python3 applications/collatz/collatz_k_scripts/collatz_generate_minorated_descent_clauses_over_Sm.py \
        --repo-root /home/ncantu/code/algo \
        --palier "$palier" \
        --k "$k" \
        --underlineA "$u"
      python3 applications/collatz/collatz_k_scripts/collatz_verify_minorated_descent_clauses_over_Sm.py \
        --clauses-json "docs/artefacts/collatz/minorated_clauses_over_Sm/palier2p${palier}/clauses_D_minor_over_Sm_mod2p${palier}_k${k}_u${u}.json"
    fi
  done
done

Vérification

cd /home/ncantu/code/algo
python3 applications/collatz/collatz_k_scripts/collatz_verify_minorated_descent_clauses_over_Sm.py \
  --clauses-json docs/artefacts/collatz/minorated_clauses_over_Sm/palier2p15/clauses_D_minor_over_Sm_mod2p15_k8_u13.json

Intégration dans la fermeture par raffinement multi-niveaux

Ajouter le JSON de clauses D_minor comme source de feuilles supplémentaire:

cd /home/ncantu/code/algo
python3 applications/collatz/collatz_k_scripts/collatz_build_refinement_certificate_over_Sm_multilevel.py \
  --repo-root /home/ncantu/code/algo \
  --root-palier 15 \
  --max-palier 18 \
  --leaf-json docs/artefacts/collatz/terminal_clauses_over_Sm/palier2p15/clauses_terminal_over_Sm_mod2p15.json \
  --leaf-json docs/artefacts/collatz/minorated_clauses_over_Sm/palier2p15/clauses_D_minor_over_Sm_mod2p15_k8_u13.json \
  --leaf-json docs/artefacts/collatz/terminal_clauses_over_Sm/palier2p16/clauses_terminal_over_Sm_mod2p16.json \
  --leaf-json docs/artefacts/collatz/terminal_clauses_over_Sm/palier2p17/clauses_terminal_over_Sm_mod2p17.json \
  --leaf-json docs/artefacts/collatz/terminal_clauses_over_Sm/palier2p18/clauses_terminal_over_Sm_mod2p18.json

Tableau comparatif automatisé (par ajout incrémental de familles)

Le script collatz_compare_dminor_families_incremental.py produit une table versionnable par “run” :

  • \Delta open\_roots
  • \Delta q_m (au palier racine, et les valeurs q_m restent disponibles dans chaque certificat)
  • \Delta parents\_one\_child
  • quantiles lb_any (p99/max) sur les racines encore ouvertes après chaque ajout
cd /home/ncantu/code/algo
python3 applications/collatz/collatz_k_scripts/collatz_compare_dminor_families_incremental.py \
  --repo-root /home/ncantu/code/algo \
  --root-palier 15 \
  --max-palier 18 \
  --k-max 256 \
  --t-max 256 \
  --search-max-required-m 256 \
  --target-extremes-top-n 200

Suivi dune liste fixe (tracked roots file)

Pour comparer des runs sur exactement le même sous-ensemble dextrêmes (liste stable), fournir un fichier texte :

  • une racine par ligne (entier impair strictement positif)
  • commentaires # ... autorisés
cd /home/ncantu/code/algo
python3 applications/collatz/collatz_k_scripts/collatz_compare_dminor_families_incremental.py \
  --repo-root /home/ncantu/code/algo \
  --root-palier 15 \
  --max-palier 18 \
  --k-max 256 \
  --t-max 256 \
  --search-max-required-m 256 \
  --tracked-roots-file /path/to/tracked_roots.txt

Déploiement

Aucun déploiement.