algo/docs/features/collatz_hensel_chain_shifted_phase3.md
ncantu 015792d5d0 collatz: update hensel chain leaves shifted script, README and certs
**Motivations:**
- Sync certs_shifted artefacts, script and README.

**Root causes:** N/A
**Correctifs:** N/A
**Evolutions:**
- collatz_build_hensel_chain_leaves_shifted.py
- README.md
- docs/artefacts/collatz/refinement_K/.../certs_shifted/*.json

**Pages affectées:**
- applications/collatz/collatz_k_scripts/README.md
- applications/collatz/collatz_k_scripts/collatz_build_hensel_chain_leaves_shifted.py
- docs/artefacts/collatz/refinement_K/palier2p15/hensel_chain_leaves/certs_shifted/
2026-03-10 13:07:33 +01:00

46 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

**Auteur** : Équipe 4NK
# Chaîne Hensel décalée (Phase 3)
## Objectif
Fermer des racines en démarrant la chaîne de Hensel à m=19 (au lieu de m=15) pour les résidus dont le frère à m=19 est déjà fermable par la grammaire Phase 1 (terminal + D_minor).
## Hypothèse
La Piste 3 échouait car les frères à m=16 ne sont pas fermables. Avec Phase 1 (terminal + D_minor à m=19,20,21), certains frères à m≥19 deviennent fermables. Pour chaque parent (18, r18) ayant exactement un enfant dans le leaf set à m=19, on tente de fermer l'autre enfant par une chaîne Hensel de m=19 à m_end.
## Script
`applications/collatz/collatz_k_scripts/collatz_build_hensel_chain_leaves_shifted.py`
**Paramètres** :
- `--start-m 19|20|21` : niveau de démarrage de la chaîne
- `--leaf-json` : chemins vers terminal + D_minor (par défaut : palier 1921 + D_minor m=20,21)
**Sorties** :
- `clauses_hensel_chain_leaves_shifted_mod2p19.json` : feuilles à palier 19 (format compatible multilevel)
- `certs_shifted/*.json` : certificats par résidu fermé
## Résultat (exécution 2026-03-10)
- 1373 résidus fermés à m=19
- open_roots : 1349 → 1101 (248)
- tracked.max, tracked.p99 : inchangés (les racines fermées ne sont pas dans le top 200 par lb_any)
## Option B (start_m=20, 21)
- 1373 résidus fermés à m=20 et à m=21 (même structure quà m=19)
- Aucun impact supplémentaire : closed_roots, open_roots, tracked.max, tracked.p99 inchangés
- Rapport : `docs/artefacts/collatz/refinement_K/palier2p15/option_b_hensel_m20_m21_report.md`
## Optimisation mémoire
- Chargement prioritaire de `.residues.json` (streaming ijson) pour les clauses terminales
- `_ResidueBitset` pour `leaves_by_m` quand palier ≥ 20
## Références
- `docs/features/collatz_grammar_extensions_implementation_plan.md` : Phase 3
- `docs/artefacts/collatz/refinement_K/palier2p15/phase1_grammar_extensions_report.md` : rapport Phase 1 + 3