experiments/check_S_face_structure.py: detailed analysis of S-cycle
structure for the 1,314 bad chord-apex+Kempe colourings.
Findings:
1. S-cycle is NEVER a face boundary of the reduced dual (0% across
all |S| from 2 to 10). So the S-cycle's "interior" contains
additional faces.
2. Refined pigeonhole + p_G ≥ 7 + S-cycle structure closes:
- |S| = 2: max hit 2 < p_G ≥ 7. ✓ 420 / 1314.
- |S| = 4: max hit 4 < p_G ≥ 8. ✓ 258 / 1314.
- |S| = 6: max hit 7 < p_G ≥ 8. ✓ 348 / 1314.
- |S| = 10: max hit 7 < p_G ≥ 8. ✓ 36 / 1314.
Total: 1062 / 1314 = 80.8% of bad colourings closed.
3. |S| = 8: max hit = 8 = min p_G (sometimes). ≤ 30 colourings
(~2.3% of bad, ~0.02% of full 142,812) have ALL G'-pentagons hit
by S — so the G'-pentagon fallback (Conjecture 5.X) is
EMPIRICALLY FALSE in this sub-case! For these, the deciding face
must be a G'-heptagon (length 7) or G'-octagon (length 8), not a
pentagon. Both lengths are ≢ 0 mod 3 and so still serve as
deciding faces.
So the structurally-correct fallback is "G'-face of length ≢ 0 mod 3",
not "G'-pentagon" specifically. This is consistent with the
deciding-face data: 462 incidences of length-7 G-prime-faces, 6 of
length-8.
Combined structural coverage:
- Tight cases (a', b', c): 91% (1,205 / 1,314 plus full-coverage cases)
- Refined pigeonhole: 80.8% of bad colourings = 1062 / 1314
- Total: ≈ 99.5% of full 142,812 chord-apex+Kempe colourings
structurally proven.
The remaining ~0.02% (30 colourings) need a structural argument that
some G'-face of length ≢ 0 mod 3 always exists with boundary in
V(K_b) ∪ V(K_c).
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
math-research
Personal mathematics research repository by Eric Bauerfeld. Papers are written in AMS-LaTeX using the amsart document class.
Papers
kempe_style_search_for_smaller_contradiction
Humans Suffice: A Novel Proof of the Four Color Theorem
An in-progress proof of the Four Color Theorem via a minimal counterexample argument. The paper builds on Kempe's 1879 strategy — establishing valid cases for vertices of degree ≤ 4, then extending the argument to the degree-5 case using properties of non-adjacent degree-5 vertices, merged subgraphs, and locked colorings.
plane_depth_labelling
Plane Depth Labelling
Early-stage paper. Title and author information set; content in progress.
Creating a New Paper
Use run.sh to scaffold a new paper from the AMS-LaTeX template:
./run.sh init_paper "Your Paper Title"
This creates a new directory (name derived from the title) containing a paper.tex pre-filled with the title and author.
Setup
The Python library code in lib/ requires SageMath. Run setup once per machine:
./run.sh setup <sage_python_path> <sage_site_packages> [system_name]
sage_python_path— path to the SageMath Python interpreter (e.g./opt/sage/local/bin/python3)sage_site_packages— path to SageMath's site-packages directorysystem_name— optional label for this machine (defaults tohostname -s); used to store per-machine env files as.env.<system_name>
On subsequent runs the paths default to whatever was saved in .env, so ./run.sh setup alone re-runs setup with the existing configuration.
Setup also compiles the plantri submodule via make.
Running Sage
To run a Sage script with plantri available on PATH:
./run.sh sage <script.py> [args...]
Or to open an interactive Sage session:
./run.sh sage
Linting
./run.sh lint
Runs pyright and pylint on lib/ using the SageMath Python interpreter.
Shell Completion
To enable tab-completion for run.sh in zsh, add this to your .zshrc:
eval "$(path/to/run.sh completion)"
Or source it once in the current shell session:
eval "$(./run.sh completion)"
Building
Papers are compiled with LaTeX. From within a paper directory:
latexmk -pdf paper.tex