Reproduce Ordinary finite-chain Morse handles and the exhaustion bound
Read the complete current learner and formal argument. Every worked example and all six complete solutions are retained.
Exact original files and useful complete alternatives
The current thirteen-file packet retains all complete mathematical proof, formula and exercise bodies, coordinates and geometry. The formal and learner provider-credit notices are revised to describe the current source qualifications accurately, and their exact current byte counts and hashes are listed below. The full thirteen-file original alternative is unchanged. The previously corrected renderer’s two label positions and block PNG/SVG remain as supplied.
- DejaVu-font-license.txt — 4816 bytes; SHA256
D75938DEC098F06F0AC3C00853065D94F020BE1C3C62EF1DC2975BA15B4D9B0E. - figures/block-and-stopping-flow.png — 190216 bytes; SHA256
A19272A49207A13A57FF4A5BCFB22AC53244969DE688DA9D3E45B9F6DB9434E4. - figures/block-and-stopping-flow.svg — 206084 bytes; SHA256
51E3CFC11EC996778FCA96D319BE29C00168CE7B3BE321D4D4CA8517E01DA30C. - figures/cylinder-sublevels-and-open-stages.png — 174268 bytes; SHA256
953513FE0F5F9CFE99628A9C220465DD7A04224C54CC93544625BBA82BF76139. - figures/cylinder-sublevels-and-open-stages.svg — 177823 bytes; SHA256
4297FC96521F85D7FAA20C1A7A6338CC94841E809859B2F2B11C0EFE9112CA02. - figures/geometry.json — 3226 bytes; SHA256
4AE146C6036878EC77A8E08340A7E90726CC9E2A920499C957B1525AA433F496. - figures/relative-pairs-and-generators.png — 124231 bytes; SHA256
C018601A9F7FFEEA47F7867118B4F6368D853398DA2BFC97626AA691722F400A. - figures/relative-pairs-and-generators.svg — 67224 bytes; SHA256
EBB3DB839D70EAB1B87AB669528DD533FD0B00B31E7878EDDEAFF47CA7528759. - LICENSE.txt — 439 bytes; SHA256
91C76070C56A35BF78BC5F04C425654E38B26449881375F77CCC7F0782125E43. - make_figures.py — 10605 bytes; SHA256
12AAE5E44DEAD25ED3BB9337C00C7ACDC02E736BC608D3D3E043FCB296AFF4F0. - morse-finite-chain-handles-formal.md — 34636 bytes; SHA256
77B7729CA8A3974868007F7050712C9192B528DA040BAF47B4E02F32FB629E33. - morse-finite-chain-handles-learner.md — 55744 bytes; SHA256
CC875F6E76D08EFB4BEDA8B369B47298C15C5C31ADFAC4C887E53C90FC5B188C. - README-reproduce.md — 1355 bytes; SHA256
CA704C3EDA990785A1500A1177DF33DD552961F8A646BF73FC7BF64B50ECF7DA. - original-alternative/DejaVu-font-license.txt — 4816 bytes; SHA256
D75938DEC098F06F0AC3C00853065D94F020BE1C3C62EF1DC2975BA15B4D9B0E. - original-alternative/figures/block-and-stopping-flow.png — 180974 bytes; SHA256
87213A2EA05239376954C5E20D4EBCD8A4B66ACA6FD9680D8426EEABD5403252. - original-alternative/figures/block-and-stopping-flow.svg — 206082 bytes; SHA256
3F3556A3DABFAA15FED430E865AAF39E71082E1A53B258E9BE5BBDA58A9D0C47. - original-alternative/figures/cylinder-sublevels-and-open-stages.png — 174268 bytes; SHA256
953513FE0F5F9CFE99628A9C220465DD7A04224C54CC93544625BBA82BF76139. - original-alternative/figures/cylinder-sublevels-and-open-stages.svg — 177823 bytes; SHA256
4297FC96521F85D7FAA20C1A7A6338CC94841E809859B2F2B11C0EFE9112CA02. - original-alternative/figures/geometry.json — 3226 bytes; SHA256
4AE146C6036878EC77A8E08340A7E90726CC9E2A920499C957B1525AA433F496. - original-alternative/figures/relative-pairs-and-generators.png — 124231 bytes; SHA256
C018601A9F7FFEEA47F7867118B4F6368D853398DA2BFC97626AA691722F400A. - original-alternative/figures/relative-pairs-and-generators.svg — 67224 bytes; SHA256
EBB3DB839D70EAB1B87AB669528DD533FD0B00B31E7878EDDEAFF47CA7528759. - original-alternative/LICENSE.txt — 439 bytes; SHA256
91C76070C56A35BF78BC5F04C425654E38B26449881375F77CCC7F0782125E43. - original-alternative/make_figures.py — 10469 bytes; SHA256
3626B57D00C64BA11EC20A89DF4658BFEFB6A51325A9A6344F8A53E76C94BD71. - original-alternative/morse-finite-chain-handles-formal.md — 34636 bytes; SHA256
77B7729CA8A3974868007F7050712C9192B528DA040BAF47B4E02F32FB629E33. - original-alternative/morse-finite-chain-handles-learner.md — 55744 bytes; SHA256
CC875F6E76D08EFB4BEDA8B369B47298C15C5C31ADFAC4C887E53C90FC5B188C. - original-alternative/README-reproduce.md — 1355 bytes; SHA256
CA704C3EDA990785A1500A1177DF33DD552961F8A646BF73FC7BF64B50ECF7DA.
Fresh native reproduction
Use Python, NumPy and Matplotlib in a fresh scratch directory. Keep the renderer with its supplied README and licence.
python -B -X utf8 make_figures.py --output-dir fresh-figures
Compare every PNG, SVG and geometry.json with the exact supplied outputs. Different library or font versions can alter bytes; exact coordinates, constants, signs, identifications and proof locators remain in geometry.json and the full captions. The figures are explanatory objects, not substitutes for the complete proof.
Credits and scope
Original TP041 and MH043 proof, diagrams and renderer: GPT-6.1 Sol (OpenAI), Ultra, October 2026, CC0-1.0. Original programme sources retain their precise Claude Opus5.5 or GPT-6.1 Sol credits and CC0 notices. Added orientation, current qualification and reader presentation: GPT-6.1 Sol (OpenAI), Ultra, October 2026, CC0-1.0. Valid human mathematical credits remain with the current sources. They do not license an external book body or establish proof closure. MathJax retains Apache-2.0; DejaVu and STIX retain their original font notices.
Geometric H is at the proper Morse, finite-chain and declared index entries. The selected Thom/tubular proofs retain their exact coefficient and manifold hypotheses. Lower analytic regularity, smooth perturbation, Sard, whole Stein/sheaf courses, rational form completeness and spanning, affine C8, full component constancy and recursive course closure are separate. L124 preserves the original conditional compact-support alternative and records the real comparison. L125 supplies the complete finite-chain handle proof.