Commit Graph

289 Commits

Author SHA1 Message Date
didericis 291f7e98c7 Add Medial Tire Cuts paper with walk-depth labelling and cut
New paper "Medial Tire Cuts" citing the medial tire decompositions
paper. States the goal of decomposing the medial graph into a tree of
3-faces, and gives the walk-depth labelling-and-cut procedure for a
single full medial tire graph: a cut duplicates the annular vertex
where a face's tooth traversal closes (planar unzip), reducing the
inner faces to teeth.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-14 21:39:03 -04:00
didericis b2439e4bac Walkthrough: show only the medial graph in panels C and D
Drop the faint base-graph (G') edges and the dotted restored base edge from the
medial panels, leaving just the medial graph (medial vertices at edge midpoints,
medial edges, colours, halos, and the restored-diagonal medial square). Panels A
and B still show the triangulation.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-13 00:20:25 -04:00
didericis 20e2cc94b4 Fix walkthrough figure to use verified planar embeddings
The walkthrough previously used a concentric layout whose outer-triangle->ring
spokes can cross -- not a valid plane embedding. Rebuild draw_walkthrough.py on
networkx planar_layout with an explicit crossing check: G, G', and the medial
M(G') drawn at edge midpoints are each verified crossing-free before rendering.
G' is embedded once and reused for panels B/C/D; G reuses it when still planar.

The medial-at-midpoints drawing is planar except for the medial triangle of the
geometric outer face (its midpoint-chords would cut across the unbounded region),
so those three edges are detected via the convex hull and omitted; the remainder
is verified crossing-free. Note updated to describe the embedding.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-13 00:16:03 -04:00
didericis e7e8536559 Draw the minimal failing graph with a verified planar embedding
draw_failing_graph.py renders seed2 #26 (ring [3,6,3]+face leaf, 12 vertices),
the smallest graph the programme fails on after exhausting sites x tread-phases x
root colour-orders. Uses networkx planar_layout for a straight-line embedding and
verifies no two non-incident edges cross before drawing. Panel A: plain embedding;
panel B: BFS levels with the odd level-2 seam (the inner triangle 9-11-10) bold,
the terminal leaf face shaded -- the face-leaf/gadget spot where removal fails.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-13 00:09:42 -04:00
didericis faf9e01139 Enumerate colour/tread phase over the residue graphs
residue_phase_sweep.py exhaustively enumerates the two colouring control knobs
-- the per-annulus tread phase {0,1}^A and the root-DFS colour order perms(0,1,2)
-- on top of every insertion-site combo, for the graphs the random-phase site
sweep still fails. canonical_coloring_explicit makes this deterministic.

Result (residue_phase_sweep_results.txt): the two hub graphs are RESCUED once
phase is enumerated rather than sampled (so the random-phase fail count overstates
difficulty); the genuine obstructions that survive sites x phases x colour-orders
are exactly the face-leaf graphs (terminal-triangle leaf gadget). Smallest is
seed2 #26 [3,6,3] face (1 combo, 24 settings, all fail at gadget-removal) -- a
minimal obstruction target. Caveat: try_establish is a bounded local Kempe search,
so STILL FAILS means unreachable by the bounded search from canonical-even over
all knob settings, not that no Kempe path exists.

Findings note updated.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-13 00:03:49 -04:00
didericis 9d296eb9c8 Add worked walkthrough; factor explicit phase/colorder colouring
Refactor canonical_coloring into coloring_skeleton (phase-independent parts) +
canonical_coloring_explicit (explicit phases + DFS colour order) + a random-phase
wrapper for back-compat. This exposes the two control knobs deterministically so
they can be enumerated rather than only sampled.

Add a fully worked example on the smallest clean graph (ring [3,5]+hub, 9
vertices, one odd seam, no gadgets): even_program_walkthrough.md traces all six
stages -- generate G with embedding, pick source + BFS levels, choose the diamond
site that evens the level-5 seam, build M(G'), the canonical colouring (seam
mono-3, hub annulus alternates, root by DFS), and a real {1,2}-Kempe switch that
makes the diamond quad reducible. dump_walkthrough.py reproduces every number;
draw_walkthrough.py renders the 4-panel figure even_program_walkthrough.png.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-12 23:44:29 -04:00
didericis 2ff712b994 Sweep all diamond insertion sites; report first-match vs full sweep
run_graph no longer takes the first admissible seam edge per odd seam. It now
enumerates every valid diamond site per odd seam (_candidate_sites), sweeps the
full Cartesian product (capped by --max-combos), runs <=4 colour phases per
combination, and counts a graph ok iff SOME placement fully descends. Reports
both the old first-match tally and the swept tally, plus design-space stats and
how many graphs the sweep rescued.

Finding: most "fail:diamond-switch" cases were heuristic, not intrinsic. The
old 39/60 was the first-match heuristic (one point in the design space, and
seed-sensitive 31-39). Sweeping insertion sites rescues ~20 of ~24 first-match
failures:

  seed 1:  first-match 31 ok / 29 fail  ->  sweep 54 ok / 6 fail  (rescued 23)
  seed 2:  first-match 36 ok / 24 fail  ->  sweep 57 ok / 3 fail  (rescued 21)

Only ~3-6 fail:diamond-switch survive the full site sweep -- those are the real
obstruction targets for the joint {1,3}-cycle bipartiteness solver. The colour/
tread phase is still only randomized over 4 attempts, not enumerated.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-12 23:08:17 -04:00
didericis c6e2c3e1a5 Add even-level-cycle colouring program harness
Constructive route: surger G so every level cycle is even (two-vertex leaf gadget
on terminal triangles -> 4-wheel, no defect; diamond on odd internal seams), take
the canonical even colouring of M(G') (no 4CT used), Kempe-remove the planted
degree-4/3 vertices to reach a proper 3-colouring of M(G).

Pipeline runs end to end on synthetic ring triangulations: surgery, canonical
colouring, and gadget removal all work; the program lands on the CYCLE LAYER
(39/60 ok, rest fail:diamond-switch). Diagnostic: a descendable colouring always
EXISTS (M(G) is 3-colourable), so failures are Kempe-reachability from the
canonical even colouring, not non-existence -- the entire difficulty is localised
there. Greedy per-diamond switching is insufficient because diamonds share vertical
{1,3}-Kempe cycles; the principled solve is joint (bipartiteness of the diamond /
side-cycle constraint graph), which is the identified next step. Includes the leaf
gadget figure and a findings note.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-12 22:36:15 -04:00
didericis d547076cba Verify chain-pigeonhole exhaustively for n<=14 via R_T composition fixpoint
Add kempe_rt_composition_probe.py: Ext(T) = boundary necklaces realisable on a
subtree's outer seam by a compatible Kempe-balanced selection; monotone maps over
minimal-antichain families decide whether empty Ext is reachable. Modeling facts
established: the seam is exactly the singleton down apexes (bite apexes have parent
faces on both sides, hence parent-internal); necklace states are exact because a
child attaches with free dihedral placement (dihedral-closed sequence sets).

Result over all no-length-3-boundary tiles n<=14 (7750 tiles, 1966 distinct
relations, 149 leaf, 27 branching): empty Ext is NOT reachable — every assemblable
tree admits a compatible selection, verifying the chain-pigeonhole conjecture
exhaustively for tire trees with treads n<=14 and no separating triangles. The
fixpoint saturates in 2 rounds: restriction does not accumulate along chains.
Tightest subtree pins a size-5 seam to the single necklace 00012; every smallest
minimal Ext contains the blocky/regular state. Relations cached (~6MB) for cheap
extension to larger n. Caveat: terminal facial-triangle leaves not yet modeled.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-12 02:34:27 -04:00
didericis 28d3d55b92 Refute the regular uniform seam family at n=15
Add kempe_regular_family_test.py (fixed family, per-tile early-exit, --branch-only).
Threads 614/614 at n=12 but FAILS at n=15 on two classes of no-separating-triangle
tiles: non-branching large-even-outer + odd inner (UUUUUUDUDUDUDUD, p=10, face 5) and
branching odd-outer + two even inner faces (UDUDUDDUDUDDDDD bite=(5,12), p=5, [4,4];
11/1022 branching fail). This is the R_T coupling (not a product) biting at scale: the
uniform family sets outer/inner states independently per size. The shortcut was
stronger than the chain-pigeonhole conjecture (which allows per-interface freedom), so
its failure costs a constructive route, not the conjecture; pairwise overlap still
holds. Next line: per-interface R_T composition respecting coupling.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-12 01:57:13 -04:00
didericis 8b47af6036 n=14 branching case feasible with one regular uniform seam family
Full uniform-family CSP at n=14 --no-tri (4403 tiles, 193 branching) is FEASIBLE:
one family threads every tile incl. branching nodes (outer rim + both inner faces
at once). Independent candidate test threads 193/193 branching tiles. Witness is
fully regular: sigma_m = 0^m if m even (monochromatic), 0^(m-2)12 if m odd. So on
the 4CT-relevant class the chained pigeonhole is constructively resolved throughout
the tested range (n=9,12,14, incl. branching).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-12 00:54:48 -04:00
didericis 2b016bc1ca Find smallest n admitting branching tiles (n=11 unrestricted, n=14 no-tri)
Add kempe_branching_min_probe.py (structural: >=2 inner faces with singletons).
Unrestricted branching first appears at n=11; no-separating-triangle branching
(>=2 inner faces each >=4 singletons, p>=4) first appears at n=14 (193 tiles).
Smallest example: word=UUUUDDDDDDDDDD bite=(8,13), p=4, faces root{4,5,6,7} and
bite{9,10,11,12}. n=14 is the smallest place to test the uniform family / R_T
composition on a genuine branching no-separating-triangle tile.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-12 00:31:19 -04:00
didericis bacbdaaf26 No-separating-triangle restriction removes the chained-seam obstruction
Add --no-tri filter (exclude tiles with a length-3 boundary = separating/non-facial
triangle in G: outer rim of 3 up teeth, or an inner face of exactly 3 singleton
downs) to the trend and uniform-family probes.

The n=12 breaker UUUDUDUDUDUD bite=(3,11) has a size-3 inner face (encloses d5,d7,d9)
and is excluded. With the restriction the size-7 universal at n=12 is restored
(|D[7]| 0->2), every |D[m]|>=1 across n=6..13, and the uniform-family CSP becomes
FEASIBLE at n=12 with the simplest family (monochromatic on even sizes, min-cut on
odd). So the only universal failure was an artifact of admitting non-4-connected
configs; on the 4CT-relevant class gluing is constructively trivial in range.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-12 00:21:26 -04:00
didericis 1aa76a5226 Plot the n=12 size-7 universal breaker tile
Add plot_breaker_tile.py and figure for word=UUUDUDUDUDUD bite=(3,11): structure
(7 up teeth = size-7 outer rim, bite (3,11), singleton downs d5,d7,d9) plus a
Kempe-balanced colouring. Reconfirms the outer rim realises 9/10 admissible size-7
necklaces, never 0001112 -- the lone tile that empties the size-7 universal at n=12.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 23:51:36 -04:00
didericis a724a50344 Track odd-size universal trend; the n=12 failure is sporadic, not a trend
Add kempe_universal_trend_probe.py (|D[m]| per size across n). Across n=6..13 and
all sizes, the ONLY empty per-size universal is (n=12, m=7): at n=13 size 7 is back
to |D|=2 with more boundaries (579), so the vanishing is sporadic, not monotone.
The lone n=12 breaker is the outer rim of word=UUUDUDUDUDUD bite=(3,11) (most-
alternating 7-up word, antipodal bite), realising 9/10 size-7 necklaces and missing
only 0001112. Correct the earlier "doomed at scale" reading in the findings note:
the uniform shortcut almost always works (near-total coverage) but is fragile to a
single exceptional tile; pairwise gluability still always holds.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 23:40:48 -04:00
didericis b1100b41d9 Add chained-seam findings note (medial pigeonhole)
Write up the R_T coupling, the uniform-family result (feasible n=9, infeasible
n=12 via empty size-7 universal, 0001112 blocked 210/211), and the open threads.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 23:22:27 -04:00
didericis b656b6aed3 Add transfer-relation & uniform-family probes (chained-seam / pigeonhole)
Pursue the paper's medial pigeonhole programme (R_T restriction relation,
chain-pigeonhole conjecture) at the data level.

Findings: R_T (outer<->inner boundary necklace, one Kempe-balanced colouring)
is genuinely coupled, not a product of its projections. A uniform per-size
boundary-state family threading every tile EXISTS at n=9 (unique per size, the
balanced-block necklaces 0011/000011/012/00012 -- not monochromatic), but FAILS
at n=12: size-7 seams admit no universal state (|D[7]|=0; near-universal 0001112
realised on 210/211 boundaries, blocked by one tile). So the uniform "same state
everywhere" shortcut breaks once large odd seams appear and universals vanish as
the tile population grows; the per-interface pigeonhole choice is genuinely
needed. Pairwise gluability still holds, so this locates the conjecture's
difficulty rather than obstructing gluing.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 23:16:27 -04:00
didericis aecbc5ed28 Add tile-overlap probe: per-tile interface subsets always glue
Each tile realises only a subset of the parity-admissible alphabet on its rim,
and tiles genuinely omit interfaces (n=12 m=8: max 273/274, min 43). But any
two tiles always glue: interface subsets always overlap (n=9 m=3-6, n=12 m=3-8)
-- usually via a global universal seam present on every inner+outer rim, and
where none exists (n=12 m=7) the worst pair still shares 14 seams. The universal
seams are the low-complexity ones (<=2 colours, single contiguous block). No
local gluing obstruction; any obstruction must be global across a nested stack.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 22:52:38 -04:00
didericis c56da7bb23 Add interface-admissibility probe; confirm parity characterization at n=12
For each interface size m, compare the realized census vocabulary (outer
up-tooth apexes and inner singleton-down apexes) against the full
parity-admissible set. At n=12, m=3..8 every parity-admissible sequence is
realized on both faces (counts 1,4,10,31,91,274; none missing), and up==down
throughout -- the n=9 result is n-independent and scales to m=8. Validated
against the known n=9 answer before running n=12.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 22:47:46 -04:00
didericis d094a310d8 Read up/down apex sequences off the un-deduped census
The anchored single-representative reading interacted with dihedral graph
dedup to record an arbitrary orientation of each necklace, producing a
spurious up-vs-down split at n=9,m=6 (001212 only up, 010122 only down --
the same necklace). Add dihedral_reading_sequences(), which unions the
canonical reading over all 2n dihedral anchors and exactly reproduces the
brute un-deduped census; make it the default for both experiments, with
--anchored to recover the old behaviour. Document the artifact and fix in
kempe_sequence_orientation_note.md.

Regenerate up + down for n=9, m=3..6. Up and down now agree on sequences
and groupings at every m (m=6: identical 31 sequences, 6 groups; the
001212/010122 pair appears on both sides). Groupings coarsen vs anchored
(m=4: 3 groups; m=5: 2 groups) since the orientation-honest vocabulary
merges previously split sequence-sets.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 22:25:44 -04:00
didericis d8b5975f81 Add inner-face down-apex colour-sequence experiment (n=9 sweep)
Mirror of the up-tooth experiment with the distinguished valid face moved
from the outer face to an inner non-tooth face (root or bite inner-gap).
For each (M(T), inner face) config holding m singleton down-tooth apexes,
record the apex colour sequence (cyclic order, mod colour permutation) over
Kempe-balanced colourings and group configs by their sequence-set. Runs for
m=3,4,5,6 with per-sequence notes, figures, and a config atlas.

Finding: inner faces realise the same parity-admissible sequence vocabulary
and the same distinct-sequence counts (1/4/10/28) as the outer face, i.e.
the Kempe-parity law acts uniformly on every valid face. At m=6 the configs
are the U<->D embedding mirror of the up-m=6 graphs (matching 7 configs,
28 sequences, 127 colourings).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 21:19:35 -04:00
didericis d93e8d137a Add up-tooth apex colour-sequence experiment over n=9 up-teeth sweep
Enumerate Kempe-balanced 3-colourings of every M(T) with |A(T)|=9 and a
fixed number m of up teeth, record the up-tooth apex colour sequence
(cyclic order, mod colour permutation only), and group the M(T) by their
set of unique sequences. Runs for m=3,4,5,6 with per-sequence notes and
figures plus a summary atlas.

Finding: realised sequences obey outer-face Kempe parity (all three
colour-counts share m's parity). Distinct sequences grow 1/4/10/28 while
M(T) count falls 23/29/18/7 across m=3..6.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 21:04:59 -04:00
didericis a4b3a6fb50 Draw per-graph Realized/Unrealized/Invalid colouring notes
Add draw_tire_realization.py: for each full medial tire graph from the seed-1
analysis, draw every proper 3-colouring (mod colour permutation) in a grid,
each panel coloured by its three colour classes and banner-labelled Realized /
Unrealized / Invalid, and write one standalone note per graph (plus a README
index).  Refactor tire_realization_analysis to expose iter_pieces() yielding
per-piece coloured colourings.

Output: tire_realization_seed1/ with 17 piece notes + figures.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 17:58:41 -04:00
didericis dacef25cbb Add Realized/Unrealized/Invalid tire-colouring analysis
For a random 12-vertex maximal planar graph (sphere convex hull), enumerate
all proper 3-colourings of M(G), take the BFS-level (tire-tree) decomposition
from every source vertex, and build each full medial tire graph M(T) in the
ambient tread-face model (cycle + teeth + bites).  Recognise each M(T) as a
FullMedialTireGraph and label every proper 3-colouring Realized (Kempe-balanced
and a restriction of a global colouring), Unrealized (balanced but not a
restriction), or Invalid (not balanced).

Findings on seed 1 (17 pieces, M(G) with 90 colourings): zero realized-but-
invalid colourings (confirms Remark 5.8 on a real triangulation), and 12 of 17
pieces carry Unrealized colourings -- Kempe-balance is necessary but not
sufficient for realization; it is sufficient only on cap-like all-up/shallow
treads.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 17:36:34 -04:00
didericis cf035243f6 Verify Remark 5.8 on genuine bite treads
Bites arise when the inner outerplanar graph O has a bridge: the bridge
edge is traversed twice by the outer-face walk, so its medial vertex is
adjacent to four annular vertices.

- check_remark58_bite.py: a minimal bite tread (outer 4-cycle + interior
  bridge u-w) restricts to Kempe-balanced on all colourings (outer face).
- check_remark58_bite_rich.py: O = triangle abc + pendant bridge a-d gives
  one bite plus three singleton down teeth in the bite's inner-gap face;
  every restriction is Kempe-balanced (the three gap singletons are a
  rainbow in every global colouring).

Update Remark 5.8's verification note: the bite case, including singletons
in the bite-gap face, is now confirmed.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 16:46:53 -04:00
didericis 5bed8b4dfb Verify Remark 5.8 mechanism; correct it to level-cycle conservation
Computational checks of the necessity of Kempe-balance (Remark 5.8):

- check_medial_face_parity.py shows the naive "even P-coloured vertices
  per medial face" claim is false (odd vertex-faces on the octahedron and
  stacked triangulations), so the original face-parity justification was
  wrong.
- check_remark58_bitefree.py builds genuine bite-free tire pieces (capped
  triangulated annuli) and confirms every proper 3-colouring of M(G)
  restricts to a Kempe-balanced colouring (|A(T)|=6,8,10,12, all
  colourings, zero failures).

Rewrite Remark 5.8 to cite the correct mechanism: the up/down apexes lie
on level cycles, and a P-Kempe cycle meets each level cycle in an even
number of P-coloured incidences (Lemma 5.6).  Note the bite case is not
yet checked end to end.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 16:33:00 -04:00
didericis 79cbca8e00 Add Kempe-balanced colouring definition and validity classifier
Define Kempe-balanced colourings of a full medial tire graph (Def 5.7):
for each valid face (outer face or interior non-tooth face of B(T)) and
each colour pair {a,b}, the number of tooth apexes incident to the face
coloured a or b must be even.  Add Remark 5.8 (necessity: a colouring of
M(T) extends to M(G) only if it is Kempe-balanced) and rename Lemma 5.5
to "Kempe chains are cycles".

Add kempe_valid_colorings.py: enumerate all proper 3-colourings of a full
medial tire graph, label each Kempe-balanced/valid or invalid, and plot
them with the offending face's Kempe chains and odd apex set highlighted
on invalid panels.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 16:00:10 -04:00
didericis 8cc94fb6b9 Add full medial tire graph generator and n=9 atlas
Name A(T) the "annular cycle" (Thm 3.3, Def 3.4); clarify the bite-face
condition in Remark 3.8 to count down-tooth apexes interior to each face;
add the non-incidence stipulation for bite edges to Def 3.7.

Add an exhaustive generator over |A(T)| enforcing the 3.1-3.9 properties
(tooth word, non-crossing non-incident bites, >=3 up teeth, bite-face
condition), plus a plotting script and the n=9 atlas (81 dihedral classes).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 12:23:57 -04:00
didericis 4062e87c61 Add figures, Kempe-cycle section, and restriction experiments
Adds two TikZ figures (boundary-state worst cases and annular cycle
counterexample), a new subsection on Kempe-cycle conservation across
medial tires, and the experiment scripts/findings for the medial tire
restriction search and annular cycle condition check.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-11 01:16:05 -04:00
didericis 20fe6c24ca Add medial tire decomposition paper 2026-06-08 15:34:53 -04:00
didericis 6400fdfc5e Move tire coloring transfer to restrictions paper 2026-06-08 15:09:58 -04:00
didericis 3910bc9fb7 Split three-colour restrictions into separate paper 2026-06-08 14:56:13 -04:00
didericis d83703abd0 Add medial tire graph definition and color bound 2026-06-08 14:44:35 -04:00
didericis a00bc70fec Add tire Kempe and D-reducibility experiments 2026-06-08 14:24:32 -04:00
didericis 35d226f8f8 Add related-work section, refute floor-containment conjecture
Introduction now positions the tire-tree decomposition against
Birkhoff, Tutte, Heesch, Robertson-Sanders-Seymour-Thomas, and
Dvorak-Lidicky's coloring count cones (closest modern parallel).

Floor-containment conjecture refuted at n=4 and n=6: explicit
counterexample colorings (1,2,1,2), (1,3,2,1,3,2), (2,3,2,3,2,3)
absent from non-floor supports.  Skip-m=3 sweep through m=8 partial
still consistent with floor-stability-in-m.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-03 00:09:58 -04:00
didericis 57f5c2839a Canonicalize tire symmetry and exhaust n=6 level-cycle supports
Quotient (m, k, path, chords, cycle) by the order-2(m+k) dihedral
action on the rung sequence; exhaustive sweep over outer 3..7, inner
7..9 yields 19 distinct supports with a unique floor at 252/732
realised by m=3, k=7, single-chord 6-face.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 10:28:30 -04:00
didericis b175f0ab59 Refute inner-boundary conjecture with n=14 counterexample
The 14-vertex 3-connected triangulation at plantri index 263993 has
no vertex source admitting a witnessing 4-colouring; the level-cycle
conjecture still holds on it via v0=10.  Reorder the section so the
level-cycle conjecture follows the failed inner-boundary refinement.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-01 21:57:05 -04:00
didericis 59410747ea Test inner-boundary conjecture on Holton-McKay duals
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-01 20:56:19 -04:00
didericis 88c74efd28 Add tire inner-boundary three-colour conjecture
Introduce Conjecture 1.31 (tire inner-boundary three-colour) as a
decomposition-native weakening of the level-cycle conjecture 1.29:
every maximal planar graph admits a vertex source and proper 4-colouring
under which each tire inner boundary omits a colour. Remark 1.32 shows
inner boundaries are single-level cycles, so the vertex-source form of
1.29 implies it on 2-connected boundaries.

Extend check_level_cycle_three_color.py with --restriction inner-boundary
(reconstructs the tire-tree decomposition from the embedding; inner
boundary = level-(d+1) vertices of each depth-d dual component) and a
--min-connectivity flag for the 5-connected slice.

Verified: full census 4<=n<=13 (57716 triangulations) and 5-connected
slice 14<=n<=24 (9732 graphs) all admit witnesses; no counterexample.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-01 15:29:34 -04:00
didericis 31186a1f8c Remove source check count from table 2026-06-01 13:34:49 -04:00
didericis fdab1e2e33 Simplify level-cycle search table 2026-06-01 13:33:29 -04:00
didericis 7e684e41a0 Add planar counterexample figure 2026-06-01 13:10:45 -04:00
didericis 15fc7c3b8f Record level-cycle coloring conjectures 2026-06-01 02:02:04 -04:00
didericis f71852efd2 Add tire chromatic transfer content 2026-06-01 01:43:06 -04:00
didericis 236a3f8288 Add level-cycle coloring conjecture 2026-06-01 01:41:11 -04:00
didericis 2bbd863643 coloring_nested_tire_graphs: rename induced tire graph C -> T_{C'}
In the tire-component lemma the induced subgraph that becomes the tire
graph was named C, clashing with C used everywhere else for cycles
(seam cycles C_T, cycle graphs C_n, the seam cycle C in Def 1.16).
Rename it to T_{C'} throughout the lemma statement, its proof, and the
degenerate-boundary remark, so C/C'/C_T are uniformly reserved for
cycles and components.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-01 00:18:04 -04:00
didericis 92f5efc3f1 coloring_nested_tire_graphs: notation cleanup pass
Define previously-implicit objects and unify conventions:
- define level sets L_d (and L_{<d}, L_{>=d}) in the Levels definition
- factor G'_d, F_{C'}, V_{C'}, R_{C'} into a standalone definition
  before Prop 1.6, removing the forward reference
- name the annular faces F_ann and state the tire-graph tuple form
  T = (B_out, O, E_ann) in the tire-graph definition
- ground the full tire dual D(T) where Gamma is introduced
- normalize tree superscripts (0)/(p)/(c) to the tire-symbol form
  (T_0)/(T_p)/(T_c)
- resolve the boundary-count clash: use nu = |V(B_in)| (inner) and
  mu = |V(B_out)| (outer) throughout, freeing n for |V(G)|

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-05-29 23:38:12 -04:00
didericis 4810121ec4 coloring_nested_tire_graphs: cycle sources, tire-tree decomposition, seam lemma
Definition 1.1 (Level source) is broadened: a level source is now a set
that is either a single vertex or a simple cycle, splitting the old
notion into 'vertex source' and 'cycle source'.  Downstream theorems
(Prop 1.7, Lemma 1.8, Thm 1.17) remain stated for vertex sources but
are referenced by the new material with cycle sources.

New Theorem 1.19 (Tire-tree decomposition): for any tread T in
T(G, {v_0}) at depth d >= 1 with outer cycle C_T, the sub-graph G_T
inside C_T on the side away from v_0 is a triangulated disk; taking
C_T as a cycle source, T(G_T, C_T) is canonically iso to the
sub-tree of T(G, {v_0}) rooted at T.  Proof in three steps:
(D1) triangulated-disk via Jordan curve, (D2) level-shift
ell_{G_T}(.) = ell_G(.) - d via shortest-path stays in R_T, (D3)
component-of-G'_k bijection with descendants of T.

Figure fig_tire_tree_decomposition.png (and its generator
experiments/draw_tire_tree_decomposition.py) illustrates the
decomposition on a 13-vertex, 5-level example with four nested seams
C_{T_R}, C_{T_L}, C_{T_{LL}}, C_{T_{LLL}}; the generator script
verifies the level-shift assertion on this instance.  Vertex
positions are hand-tuned in TikZiT and copied back; the right-panel
labels are rotated relative to the parent G to emphasise the new
role of C_{T_L} as cycle source.

New Definition 1.21 (Seam): a seam is the outer-boundary cycle
B_out^{(T)} of a non-root tread T, separating G into the seam
interior G_T and seam exterior G_C^{ext}.  Notation Col(X | C) for
boundary-restricted 4-colourings is also defined here.

New Definition 1.22 (Partial tire tree): G_{T_r}^{circle} =
G_{T_r} with V(C_{T_r}) removed, i.e. the strict interior of the
triangulated disk inside the seam.

New Lemma 1.23 (Seam edges shared by <= one other depth-d seam):
an edge on the seam of a depth-d tread T is in the seam of at most
one other depth-d tread T'.  Proof via inner-dual-of-outerplanar-
is-a-tree: C_T bounds a face of the parent's O^{(T_p)} (outerplanar),
so each edge of O^{(T_p)} lies in at most two of its bounded face
cycles, giving at most one sibling seam containing e.

New Conjecture 1.24 (Seam structure of minimum 4CT counterexamples,
sketch): a hypothetical minimum 4CT counterexample has bilateral
colourability, bilateral incompatibility, Birkhoff's seam-length
>= 6 bound, and an innermost obstruction at a leaf tread T^* whose
seam interior is one of a finite list of minimal seam configurations,
with the boundary palette restriction propagating outward along the
root-to-T^* obstruction chain.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-27 23:21:50 -04:00
didericis bfa8b8956d coloring_nested_tire_graphs: drop the universal-nesting block
Delete Definition 1.20 (iso of trees of tire treads), Conjecture 1.21
(universal nesting), Conjecture 1.22 (seam realizability), the
seam-construction figure inclusion, Remark 1.23 (nesting reduces to
seam), and Remark 1.24 (motivation / open questions).  The paper now
ends after Remark 1.19 (tree-coloring-factorisation).

The fig_seam_construction.png file and its generator script remain in
the repo as assets; nothing in the paper currently references them.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-27 04:39:49 -04:00
didericis 388ab19db9 coloring_nested_tire_graphs: pin nesting iso, factor seam lemma, add figure
Rewrite Conjecture 1.20 (universal nesting) with the iso notion fixed
to combinatorial with O preserved: rooted tree iso + plane-outerplanar
iso of O on each tread + child/face correspondence, with B_out
explicitly not required to match (essential for sub-tree embedding).

Factor the technical core out as Conjecture 1.22 (seam realizability):
for every k >= 3, exhibit a triangulated planar disk H_k with
boundary a k-cycle whose BFS-from-boundary tree of treads is iso to a
given T_1. Add Remark 1.23 stating that universal nesting reduces to
seam realizability by excise-and-glue using the existing structural
theorems.

Reworked Remark 1.24 (motivation) keeps the compositional-colourability
and universality bullets, and replaces the old open-questions paragraph
with three concrete subproblems: a candidate apex-removal construction
for the seam, 6-connectivity preservation as the relevant 4CT
subproblem, and a justification of why the weaker iso notion is
necessary.

Add fig_seam_construction.png (and the matplotlib script that generates
it) illustrating the seam construction on a 10-vertex G_1 with
T_1 a chain of length 3; the script asserts BFS-from-boundary in H_5
reproduces ell_{G_1} on V(G_1) \ {S_1}, giving a verified small
instance of the conjecture.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-27 04:30:48 -04:00