coloring_nested_tire_graphs: enumerate spoke-only tire fiber distributions for n ≤ 12
Step 1 of birkhoff_heesch_reducibility action items. Brute-force
enumerates N(T'_{f'}; σ) for G_n = C_n + n pendants at 3 colors,
n=3..12. Two empirical findings: (1) fiber sizes are always 1 or 2
(constant σ on even n gives size 2; everything else gives size 1);
(2) projecting C onto k evenly-spread positions covers {1,2,3}^k iff
n ≥ 2k. The second implies that for a tire with |B_out| ≥ |B_in|,
every ring coloring on the inner boundary is realisable — so the
chain-pigeonhole intersection step is trivially nonempty whenever the
shared cycle is not locally the longest. Includes script, raw JSON,
text dump, and 4-page data note.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,53 @@
|
|||||||
|
=== FIBER DISTRIBUTION SUMMARY (G_n = C_n + n pendants, k=3 colors) ===
|
||||||
|
|
||||||
|
n | P_e | |C| | 3^n | |C|/3^n | A-red? | max | min | mean | fiber sizes
|
||||||
|
----+-------+-------+--------+---------+--------+-----+-----+-------+-------------
|
||||||
|
3 | 6 | 6 | 27 | 0.222 | no | 1 | 1 | 1.00 | 1×6
|
||||||
|
4 | 18 | 15 | 81 | 0.185 | no | 2 | 1 | 1.20 | 1×12, 2×3
|
||||||
|
5 | 30 | 30 | 243 | 0.123 | no | 1 | 1 | 1.00 | 1×30
|
||||||
|
6 | 66 | 63 | 729 | 0.086 | no | 2 | 1 | 1.05 | 1×60, 2×3
|
||||||
|
7 | 126 | 126 | 2187 | 0.058 | no | 1 | 1 | 1.00 | 1×126
|
||||||
|
8 | 258 | 255 | 6561 | 0.039 | no | 2 | 1 | 1.01 | 1×252, 2×3
|
||||||
|
9 | 510 | 510 | 19683 | 0.026 | no | 1 | 1 | 1.00 | 1×510
|
||||||
|
10 | 1026 | 1023 | 59049 | 0.017 | no | 2 | 1 | 1.00 | 1×1020, 2×3
|
||||||
|
11 | 2046 | 2046 | 177147 | 0.012 | no | 1 | 1 | 1.00 | 1×2046
|
||||||
|
12 | 4098 | 4095 | 531441 | 0.008 | no | 2 | 1 | 1.00 | 1×4092, 2×3
|
||||||
|
|
||||||
|
=== PROJECTION ONTO SHARED-CYCLE BLOCKS ===
|
||||||
|
|
||||||
|
n | k | contiguous-block |/ 3^k | spread |/ 3^k
|
||||||
|
----+-----+-------------------+-------+--------+-------
|
||||||
|
3 | 3 | 6 / 27 | 0.222 | 6 | 0.222
|
||||||
|
4 | 3 | 15 / 27 | 0.556 | 15 | 0.556
|
||||||
|
4 | 4 | 15 / 81 | 0.185 | 15 | 0.185
|
||||||
|
5 | 3 | 21 / 27 | 0.778 | 24 | 0.889
|
||||||
|
5 | 4 | 30 / 81 | 0.370 | 30 | 0.370
|
||||||
|
5 | 5 | 30 / 243 | 0.123 | 30 | 0.123
|
||||||
|
6 | 3 | 21 / 27 | 0.778 | 27 | 1.000
|
||||||
|
6 | 4 | 45 / 81 | 0.556 | 51 | 0.630
|
||||||
|
6 | 5 | 63 / 243 | 0.259 | 63 | 0.259
|
||||||
|
6 | 6 | 63 / 729 | 0.086 | 63 | 0.086
|
||||||
|
7 | 3 | 21 / 27 | 0.778 | 27 | 1.000
|
||||||
|
7 | 4 | 45 / 81 | 0.556 | 78 | 0.963
|
||||||
|
7 | 5 | 93 / 243 | 0.383 | 114 | 0.469
|
||||||
|
7 | 6 | 126 / 729 | 0.173 | 126 | 0.173
|
||||||
|
8 | 3 | 21 / 27 | 0.778 | 27 | 1.000
|
||||||
|
8 | 4 | 45 / 81 | 0.556 | 81 | 1.000
|
||||||
|
8 | 5 | 93 / 243 | 0.383 | 171 | 0.704
|
||||||
|
8 | 6 | 189 / 729 | 0.259 | 237 | 0.325
|
||||||
|
9 | 3 | 21 / 27 | 0.778 | 27 | 1.000
|
||||||
|
9 | 4 | 45 / 81 | 0.556 | 81 | 1.000
|
||||||
|
9 | 5 | 93 / 243 | 0.383 | 240 | 0.988
|
||||||
|
9 | 6 | 189 / 729 | 0.259 | 384 | 0.527
|
||||||
|
10 | 3 | 21 / 27 | 0.778 | 27 | 1.000
|
||||||
|
10 | 4 | 45 / 81 | 0.556 | 81 | 1.000
|
||||||
|
10 | 5 | 93 / 243 | 0.383 | 243 | 1.000
|
||||||
|
10 | 6 | 189 / 729 | 0.259 | 561 | 0.770
|
||||||
|
11 | 3 | 21 / 27 | 0.778 | 27 | 1.000
|
||||||
|
11 | 4 | 45 / 81 | 0.556 | 81 | 1.000
|
||||||
|
11 | 5 | 93 / 243 | 0.383 | 243 | 1.000
|
||||||
|
11 | 6 | 189 / 729 | 0.259 | 726 | 0.996
|
||||||
|
12 | 3 | 21 / 27 | 0.778 | 27 | 1.000
|
||||||
|
12 | 4 | 45 / 81 | 0.556 | 81 | 1.000
|
||||||
|
12 | 5 | 93 / 243 | 0.383 | 243 | 1.000
|
||||||
|
12 | 6 | 189 / 729 | 0.259 | 729 | 1.000
|
||||||
@@ -0,0 +1,219 @@
|
|||||||
|
"""Step 1 of birkhoff_heesch_reducibility.tex: enumerate the fiber
|
||||||
|
distribution N(T'_{f'}; σ) for spoke-only tire annular face connectors.
|
||||||
|
|
||||||
|
In the spoke-only setting (Remark 1.16.1) the tire annular face
|
||||||
|
connector is
|
||||||
|
|
||||||
|
G_n = C_n + one pendant edge at each cycle vertex
|
||||||
|
|
||||||
|
where n = m + k = |V(B_out)| + |V(B_in)|. Each cycle vertex v_i has
|
||||||
|
degree 3 (two cycle edges + one pendant spoke). At k = 3 colors, the
|
||||||
|
proper-edge-coloring constraint forces the spoke color s_i at v_i to
|
||||||
|
be the unique color not used by the two cycle edges at v_i.
|
||||||
|
|
||||||
|
So the map
|
||||||
|
|
||||||
|
proper edge 3-coloring of G_n --> σ ∈ {1,2,3}^n
|
||||||
|
|
||||||
|
is well-defined (each cycle coloring maps to one σ). The fiber count
|
||||||
|
N(σ) := #{cycle colorings inducing σ} partitions the P_e(G_n, 3) =
|
||||||
|
2^n + 2(-1)^n proper edge colorings into fibers over σ.
|
||||||
|
|
||||||
|
This script computes the full fiber distribution and various
|
||||||
|
summaries. Output is written to fiber_data.json next to this file.
|
||||||
|
"""
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
|
import json
|
||||||
|
import os
|
||||||
|
from collections import Counter
|
||||||
|
from itertools import product
|
||||||
|
|
||||||
|
|
||||||
|
COLORS = (1, 2, 3)
|
||||||
|
|
||||||
|
|
||||||
|
def induced_sigma(cycle_coloring: tuple[int, ...]) -> tuple[int, ...]:
|
||||||
|
"""Given a proper edge 3-coloring (c(e_0), ..., c(e_{n-1})) of C_n,
|
||||||
|
return the induced spoke configuration σ where σ_i = third color at v_i.
|
||||||
|
v_i is incident to edges e_{i-1} and e_i (indices mod n)."""
|
||||||
|
n = len(cycle_coloring)
|
||||||
|
return tuple(
|
||||||
|
({1, 2, 3} - {cycle_coloring[(i - 1) % n], cycle_coloring[i]}).pop()
|
||||||
|
for i in range(n)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def enumerate_proper_cycle_colorings(n: int):
|
||||||
|
"""Yield all proper edge 3-colorings of C_n (i.e., n-tuples in {1,2,3}^n
|
||||||
|
with consecutive entries distinct, including wraparound)."""
|
||||||
|
for ce in product(COLORS, repeat=n):
|
||||||
|
if all(ce[i] != ce[(i + 1) % n] for i in range(n)):
|
||||||
|
yield ce
|
||||||
|
|
||||||
|
|
||||||
|
def fiber_distribution(n: int) -> dict[tuple[int, ...], int]:
|
||||||
|
"""Return Counter mapping σ -> N(σ) for G_n = C_n + n pendants."""
|
||||||
|
fibers: Counter[tuple[int, ...]] = Counter()
|
||||||
|
for ce in enumerate_proper_cycle_colorings(n):
|
||||||
|
fibers[induced_sigma(ce)] += 1
|
||||||
|
return dict(fibers)
|
||||||
|
|
||||||
|
|
||||||
|
def projection_support(fibers: dict[tuple[int, ...], int], positions: tuple[int, ...]) -> set[tuple[int, ...]]:
|
||||||
|
"""Return the set of σ-projections onto the given positions
|
||||||
|
(e.g., positions=(0,1,2,3) extracts the first four coords of each σ)."""
|
||||||
|
return {tuple(sigma[p] for p in positions) for sigma in fibers}
|
||||||
|
|
||||||
|
|
||||||
|
def summary_row(n: int) -> dict:
|
||||||
|
"""Compute summary statistics for n = m + k."""
|
||||||
|
fibers = fiber_distribution(n)
|
||||||
|
total = sum(fibers.values())
|
||||||
|
support = len(fibers)
|
||||||
|
fiber_sizes = list(fibers.values())
|
||||||
|
size_dist = Counter(fiber_sizes)
|
||||||
|
|
||||||
|
# P_e(C_n, 3) closed form
|
||||||
|
pe_closed = 2**n + 2 * ((-1) ** n)
|
||||||
|
|
||||||
|
# Universe size for σ
|
||||||
|
universe = 3**n
|
||||||
|
|
||||||
|
# A-reducibility check: is every σ realizable?
|
||||||
|
a_reducible = (support == universe)
|
||||||
|
|
||||||
|
return {
|
||||||
|
'n': n,
|
||||||
|
'P_e_computed': total,
|
||||||
|
'P_e_closed_form': pe_closed,
|
||||||
|
'match': total == pe_closed,
|
||||||
|
'sigma_support': support,
|
||||||
|
'sigma_universe': universe,
|
||||||
|
'support_fraction': support / universe if universe else 0.0,
|
||||||
|
'A_reducible': a_reducible,
|
||||||
|
'max_fiber': max(fiber_sizes) if fiber_sizes else 0,
|
||||||
|
'min_fiber': min(fiber_sizes) if fiber_sizes else 0,
|
||||||
|
'mean_fiber': total / support if support else 0.0,
|
||||||
|
'fiber_size_distribution': dict(size_dist),
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
def half_cycle_projections(n: int, k_values=(3, 4, 5, 6)) -> dict:
|
||||||
|
"""For each k <= n in k_values, project σ onto contiguous-block
|
||||||
|
positions (0, 1, ..., k-1) and tabulate how many of {1,2,3}^k are
|
||||||
|
covered. This is the support of σ restricted to a 'shared cycle'
|
||||||
|
of length k.
|
||||||
|
|
||||||
|
Also try the 'alternating' pattern (take every other position)
|
||||||
|
when the math works out."""
|
||||||
|
fibers = fiber_distribution(n)
|
||||||
|
out = {}
|
||||||
|
for k in k_values:
|
||||||
|
if k > n:
|
||||||
|
continue
|
||||||
|
# contiguous block: first k positions
|
||||||
|
contiguous = projection_support(fibers, tuple(range(k)))
|
||||||
|
# 'spread' block: positions evenly spaced (if possible)
|
||||||
|
if k <= n:
|
||||||
|
spread_positions = tuple(round(i * n / k) % n for i in range(k))
|
||||||
|
# ensure distinct
|
||||||
|
if len(set(spread_positions)) == k:
|
||||||
|
spread = projection_support(fibers, spread_positions)
|
||||||
|
else:
|
||||||
|
spread = None
|
||||||
|
else:
|
||||||
|
spread = None
|
||||||
|
out[k] = {
|
||||||
|
'k': k,
|
||||||
|
'positions_contiguous': tuple(range(k)),
|
||||||
|
'support_contiguous': len(contiguous),
|
||||||
|
'positions_spread': spread_positions if spread else None,
|
||||||
|
'support_spread': len(spread) if spread else None,
|
||||||
|
'universe_k': 3**k,
|
||||||
|
}
|
||||||
|
return out
|
||||||
|
|
||||||
|
|
||||||
|
def format_table(rows: list[dict]) -> str:
|
||||||
|
lines = [
|
||||||
|
'n | P_e | |C| | 3^n | |C|/3^n | A-red? | max | min | mean | fiber sizes',
|
||||||
|
'----+-------+-------+--------+---------+--------+-----+-----+-------+-------------',
|
||||||
|
]
|
||||||
|
for r in rows:
|
||||||
|
sz_dist = sorted(r['fiber_size_distribution'].items())
|
||||||
|
sz_str = ', '.join(f"{s}×{c}" for s, c in sz_dist)
|
||||||
|
lines.append(
|
||||||
|
f"{r['n']:2d} | {r['P_e_computed']:5d} | {r['sigma_support']:5d} | "
|
||||||
|
f"{r['sigma_universe']:6d} | {r['support_fraction']:7.3f} | "
|
||||||
|
f"{'yes' if r['A_reducible'] else 'no':4s} | "
|
||||||
|
f"{r['max_fiber']:3d} | {r['min_fiber']:3d} | "
|
||||||
|
f"{r['mean_fiber']:5.2f} | {sz_str}"
|
||||||
|
)
|
||||||
|
return '\n'.join(lines)
|
||||||
|
|
||||||
|
|
||||||
|
def format_projection_table(projections_by_n: dict[int, dict]) -> str:
|
||||||
|
lines = [
|
||||||
|
'n | k | contiguous-block |/ 3^k | spread |/ 3^k',
|
||||||
|
'----+-----+-------------------+-------+--------+-------',
|
||||||
|
]
|
||||||
|
for n in sorted(projections_by_n):
|
||||||
|
for k, info in sorted(projections_by_n[n].items()):
|
||||||
|
uni = info['universe_k']
|
||||||
|
sc = info['support_contiguous']
|
||||||
|
ss = info['support_spread']
|
||||||
|
ss_str = f"{ss:6d} | {ss/uni:.3f}" if ss is not None else f"{'-':6s} | - "
|
||||||
|
lines.append(
|
||||||
|
f"{n:2d} | {k:2d} | {sc:7d} / {uni:5d} | {sc/uni:.3f} | {ss_str}"
|
||||||
|
)
|
||||||
|
return '\n'.join(lines)
|
||||||
|
|
||||||
|
|
||||||
|
def main():
|
||||||
|
here = os.path.dirname(os.path.abspath(__file__))
|
||||||
|
out_json = os.path.join(here, 'fiber_data.json')
|
||||||
|
out_txt = os.path.join(here, 'fiber_data.txt')
|
||||||
|
|
||||||
|
# Step 1: fiber distribution for n = 3..12
|
||||||
|
n_range = range(3, 13)
|
||||||
|
rows = []
|
||||||
|
full_fibers = {}
|
||||||
|
projections = {}
|
||||||
|
for n in n_range:
|
||||||
|
rows.append(summary_row(n))
|
||||||
|
full_fibers[n] = fiber_distribution(n)
|
||||||
|
projections[n] = half_cycle_projections(n)
|
||||||
|
|
||||||
|
# Output tables
|
||||||
|
summary_text = (
|
||||||
|
'=== FIBER DISTRIBUTION SUMMARY (G_n = C_n + n pendants, k=3 colors) ===\n\n'
|
||||||
|
+ format_table(rows)
|
||||||
|
+ '\n\n=== PROJECTION ONTO SHARED-CYCLE BLOCKS ===\n\n'
|
||||||
|
+ format_projection_table(projections)
|
||||||
|
+ '\n'
|
||||||
|
)
|
||||||
|
print(summary_text)
|
||||||
|
|
||||||
|
with open(out_txt, 'w') as f:
|
||||||
|
f.write(summary_text)
|
||||||
|
print(f"\nWrote {out_txt}")
|
||||||
|
|
||||||
|
# Save raw data for follow-up analyses (step 2: adjacent-tire overlap)
|
||||||
|
data = {
|
||||||
|
'summary_rows': rows,
|
||||||
|
'projections': {str(n): projections[n] for n in projections},
|
||||||
|
# full_fibers: convert tuple keys to strings for JSON
|
||||||
|
'full_fibers': {
|
||||||
|
str(n): {','.join(map(str, sigma)): count
|
||||||
|
for sigma, count in full_fibers[n].items()}
|
||||||
|
for n in full_fibers
|
||||||
|
},
|
||||||
|
}
|
||||||
|
with open(out_json, 'w') as f:
|
||||||
|
json.dump(data, f, indent=2)
|
||||||
|
print(f"Wrote {out_json}")
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
main()
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
\relax
|
||||||
|
\newlabel{obs:dichotomy}{{}{2}}
|
||||||
|
\newlabel{obs:threshold}{{}{2}}
|
||||||
|
\@writefile{toc}{\contentsline {paragraph}{Threshold data (spread projection).}{2}{}\protected@file@percent }
|
||||||
|
\@writefile{toc}{\contentsline {paragraph}{Contiguous projection (for contrast).}{2}{}\protected@file@percent }
|
||||||
|
\@writefile{toc}{\contentsline {paragraph}{Implication for the chain-pigeonhole step.}{3}{}\protected@file@percent }
|
||||||
|
\newlabel{obs:conjecture}{{}{3}}
|
||||||
|
\gdef \@abspage@last{4}
|
||||||
@@ -0,0 +1,325 @@
|
|||||||
|
This is pdfTeX, Version 3.141592653-2.6-1.40.24 (TeX Live 2022) (preloaded format=pdflatex 2022.10.5) 26 MAY 2026 01:26
|
||||||
|
entering extended mode
|
||||||
|
restricted \write18 enabled.
|
||||||
|
%&-line parsing enabled.
|
||||||
|
**tire_fiber_data.tex
|
||||||
|
(./tire_fiber_data.tex
|
||||||
|
LaTeX2e <2021-11-15> patch level 1
|
||||||
|
L3 programming layer <2022-02-24>
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/base/article.cls
|
||||||
|
Document Class: article 2021/10/04 v1.4n Standard LaTeX document class
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/base/size11.clo
|
||||||
|
File: size11.clo 2021/10/04 v1.4n Standard LaTeX file (size option)
|
||||||
|
)
|
||||||
|
\c@part=\count185
|
||||||
|
\c@section=\count186
|
||||||
|
\c@subsection=\count187
|
||||||
|
\c@subsubsection=\count188
|
||||||
|
\c@paragraph=\count189
|
||||||
|
\c@subparagraph=\count190
|
||||||
|
\c@figure=\count191
|
||||||
|
\c@table=\count192
|
||||||
|
\abovecaptionskip=\skip47
|
||||||
|
\belowcaptionskip=\skip48
|
||||||
|
\bibindent=\dimen138
|
||||||
|
)
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsmath/amsmath.sty
|
||||||
|
Package: amsmath 2021/10/15 v2.17l AMS math features
|
||||||
|
\@mathmargin=\skip49
|
||||||
|
|
||||||
|
For additional information on amsmath, use the `?' option.
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsmath/amstext.sty
|
||||||
|
Package: amstext 2021/08/26 v2.01 AMS text
|
||||||
|
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsmath/amsgen.sty
|
||||||
|
File: amsgen.sty 1999/11/30 v2.0 generic functions
|
||||||
|
\@emptytoks=\toks16
|
||||||
|
\ex@=\dimen139
|
||||||
|
))
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsmath/amsbsy.sty
|
||||||
|
Package: amsbsy 1999/11/29 v1.2d Bold Symbols
|
||||||
|
\pmbraise@=\dimen140
|
||||||
|
)
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsmath/amsopn.sty
|
||||||
|
Package: amsopn 2021/08/26 v2.02 operator names
|
||||||
|
)
|
||||||
|
\inf@bad=\count193
|
||||||
|
LaTeX Info: Redefining \frac on input line 234.
|
||||||
|
\uproot@=\count194
|
||||||
|
\leftroot@=\count195
|
||||||
|
LaTeX Info: Redefining \overline on input line 399.
|
||||||
|
\classnum@=\count196
|
||||||
|
\DOTSCASE@=\count197
|
||||||
|
LaTeX Info: Redefining \ldots on input line 496.
|
||||||
|
LaTeX Info: Redefining \dots on input line 499.
|
||||||
|
LaTeX Info: Redefining \cdots on input line 620.
|
||||||
|
\Mathstrutbox@=\box50
|
||||||
|
\strutbox@=\box51
|
||||||
|
\big@size=\dimen141
|
||||||
|
LaTeX Font Info: Redeclaring font encoding OML on input line 743.
|
||||||
|
LaTeX Font Info: Redeclaring font encoding OMS on input line 744.
|
||||||
|
\macc@depth=\count198
|
||||||
|
\c@MaxMatrixCols=\count199
|
||||||
|
\dotsspace@=\muskip16
|
||||||
|
\c@parentequation=\count266
|
||||||
|
\dspbrk@lvl=\count267
|
||||||
|
\tag@help=\toks17
|
||||||
|
\row@=\count268
|
||||||
|
\column@=\count269
|
||||||
|
\maxfields@=\count270
|
||||||
|
\andhelp@=\toks18
|
||||||
|
\eqnshift@=\dimen142
|
||||||
|
\alignsep@=\dimen143
|
||||||
|
\tagshift@=\dimen144
|
||||||
|
\tagwidth@=\dimen145
|
||||||
|
\totwidth@=\dimen146
|
||||||
|
\lineht@=\dimen147
|
||||||
|
\@envbody=\toks19
|
||||||
|
\multlinegap=\skip50
|
||||||
|
\multlinetaggap=\skip51
|
||||||
|
\mathdisplay@stack=\toks20
|
||||||
|
LaTeX Info: Redefining \[ on input line 2938.
|
||||||
|
LaTeX Info: Redefining \] on input line 2939.
|
||||||
|
)
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsfonts/amssymb.sty
|
||||||
|
Package: amssymb 2013/01/14 v3.01 AMS font symbols
|
||||||
|
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsfonts/amsfonts.sty
|
||||||
|
Package: amsfonts 2013/01/14 v3.01 Basic AMSFonts support
|
||||||
|
\symAMSa=\mathgroup4
|
||||||
|
\symAMSb=\mathgroup5
|
||||||
|
LaTeX Font Info: Redeclaring math symbol \hbar on input line 98.
|
||||||
|
LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold'
|
||||||
|
(Font) U/euf/m/n --> U/euf/b/n on input line 106.
|
||||||
|
))
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/amscls/amsthm.sty
|
||||||
|
Package: amsthm 2020/05/29 v2.20.6
|
||||||
|
\thm@style=\toks21
|
||||||
|
\thm@bodyfont=\toks22
|
||||||
|
\thm@headfont=\toks23
|
||||||
|
\thm@notefont=\toks24
|
||||||
|
\thm@headpunct=\toks25
|
||||||
|
\thm@preskip=\skip52
|
||||||
|
\thm@postskip=\skip53
|
||||||
|
\thm@headsep=\skip54
|
||||||
|
\dth@everypar=\toks26
|
||||||
|
)
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/graphics/graphicx.sty
|
||||||
|
Package: graphicx 2021/09/16 v1.2d Enhanced LaTeX Graphics (DPC,SPQR)
|
||||||
|
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/graphics/keyval.sty
|
||||||
|
Package: keyval 2014/10/28 v1.15 key=value parser (DPC)
|
||||||
|
\KV@toks@=\toks27
|
||||||
|
)
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/graphics/graphics.sty
|
||||||
|
Package: graphics 2021/03/04 v1.4d Standard LaTeX Graphics (DPC,SPQR)
|
||||||
|
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/graphics/trig.sty
|
||||||
|
Package: trig 2021/08/11 v1.11 sin cos tan (DPC)
|
||||||
|
)
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/graphics-cfg/graphics.cfg
|
||||||
|
File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration
|
||||||
|
)
|
||||||
|
Package graphics Info: Driver file: pdftex.def on input line 107.
|
||||||
|
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/graphics-def/pdftex.def
|
||||||
|
File: pdftex.def 2020/10/05 v1.2a Graphics/color driver for pdftex
|
||||||
|
))
|
||||||
|
\Gin@req@height=\dimen148
|
||||||
|
\Gin@req@width=\dimen149
|
||||||
|
)
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/geometry/geometry.sty
|
||||||
|
Package: geometry 2020/01/02 v5.9 Page Geometry
|
||||||
|
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/generic/iftex/ifvtex.sty
|
||||||
|
Package: ifvtex 2019/10/25 v1.7 ifvtex legacy package. Use iftex instead.
|
||||||
|
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/generic/iftex/iftex.sty
|
||||||
|
Package: iftex 2022/02/03 v1.0f TeX engine tests
|
||||||
|
))
|
||||||
|
\Gm@cnth=\count271
|
||||||
|
\Gm@cntv=\count272
|
||||||
|
\c@Gm@tempcnt=\count273
|
||||||
|
\Gm@bindingoffset=\dimen150
|
||||||
|
\Gm@wd@mp=\dimen151
|
||||||
|
\Gm@odd@mp=\dimen152
|
||||||
|
\Gm@even@mp=\dimen153
|
||||||
|
\Gm@layoutwidth=\dimen154
|
||||||
|
\Gm@layoutheight=\dimen155
|
||||||
|
\Gm@layouthoffset=\dimen156
|
||||||
|
\Gm@layoutvoffset=\dimen157
|
||||||
|
\Gm@dimlist=\toks28
|
||||||
|
)
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/booktabs/booktabs.sty
|
||||||
|
Package: booktabs 2020/01/12 v1.61803398 Publication quality tables
|
||||||
|
\heavyrulewidth=\dimen158
|
||||||
|
\lightrulewidth=\dimen159
|
||||||
|
\cmidrulewidth=\dimen160
|
||||||
|
\belowrulesep=\dimen161
|
||||||
|
\belowbottomsep=\dimen162
|
||||||
|
\aboverulesep=\dimen163
|
||||||
|
\abovetopsep=\dimen164
|
||||||
|
\cmidrulesep=\dimen165
|
||||||
|
\cmidrulekern=\dimen166
|
||||||
|
\defaultaddspace=\dimen167
|
||||||
|
\@cmidla=\count274
|
||||||
|
\@cmidlb=\count275
|
||||||
|
\@aboverulesep=\dimen168
|
||||||
|
\@belowrulesep=\dimen169
|
||||||
|
\@thisruleclass=\count276
|
||||||
|
\@lastruleclass=\count277
|
||||||
|
\@thisrulewidth=\dimen170
|
||||||
|
)
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/caption/caption.sty
|
||||||
|
Package: caption 2022/03/01 v3.6b Customizing captions (AR)
|
||||||
|
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/caption/caption3.sty
|
||||||
|
Package: caption3 2022/03/17 v2.3b caption3 kernel (AR)
|
||||||
|
\caption@tempdima=\dimen171
|
||||||
|
\captionmargin=\dimen172
|
||||||
|
\caption@leftmargin=\dimen173
|
||||||
|
\caption@rightmargin=\dimen174
|
||||||
|
\caption@width=\dimen175
|
||||||
|
\caption@indent=\dimen176
|
||||||
|
\caption@parindent=\dimen177
|
||||||
|
\caption@hangindent=\dimen178
|
||||||
|
Package caption Info: Standard document class detected.
|
||||||
|
)
|
||||||
|
\c@caption@flags=\count278
|
||||||
|
\c@continuedfloat=\count279
|
||||||
|
)
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def
|
||||||
|
File: l3backend-pdftex.def 2022-02-07 L3 backend support: PDF output (pdfTeX)
|
||||||
|
\l__color_backend_stack_int=\count280
|
||||||
|
\l__pdf_internal_box=\box52
|
||||||
|
)
|
||||||
|
(./tire_fiber_data.aux)
|
||||||
|
\openout1 = `tire_fiber_data.aux'.
|
||||||
|
|
||||||
|
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 17.
|
||||||
|
LaTeX Font Info: ... okay on input line 17.
|
||||||
|
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 17.
|
||||||
|
LaTeX Font Info: ... okay on input line 17.
|
||||||
|
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 17.
|
||||||
|
LaTeX Font Info: ... okay on input line 17.
|
||||||
|
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 17.
|
||||||
|
LaTeX Font Info: ... okay on input line 17.
|
||||||
|
LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 17.
|
||||||
|
LaTeX Font Info: ... okay on input line 17.
|
||||||
|
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 17.
|
||||||
|
LaTeX Font Info: ... okay on input line 17.
|
||||||
|
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 17.
|
||||||
|
LaTeX Font Info: ... okay on input line 17.
|
||||||
|
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/context/base/mkii/supp-pdf.mkii
|
||||||
|
[Loading MPS to PDF converter (version 2006.09.02).]
|
||||||
|
\scratchcounter=\count281
|
||||||
|
\scratchdimen=\dimen179
|
||||||
|
\scratchbox=\box53
|
||||||
|
\nofMPsegments=\count282
|
||||||
|
\nofMParguments=\count283
|
||||||
|
\everyMPshowfont=\toks29
|
||||||
|
\MPscratchCnt=\count284
|
||||||
|
\MPscratchDim=\dimen180
|
||||||
|
\MPnumerator=\count285
|
||||||
|
\makeMPintoPDFobject=\count286
|
||||||
|
\everyMPtoPDFconversion=\toks30
|
||||||
|
) (/usr/local/texlive/2022/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty
|
||||||
|
Package: epstopdf-base 2020-01-24 v2.11 Base part for package epstopdf
|
||||||
|
Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4
|
||||||
|
85.
|
||||||
|
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg
|
||||||
|
File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv
|
||||||
|
e
|
||||||
|
))
|
||||||
|
*geometry* driver: auto-detecting
|
||||||
|
*geometry* detected driver: pdftex
|
||||||
|
*geometry* verbose mode - [ preamble ] result:
|
||||||
|
* driver: pdftex
|
||||||
|
* paper: <default>
|
||||||
|
* layout: <same size as paper>
|
||||||
|
* layoutoffset:(h,v)=(0.0pt,0.0pt)
|
||||||
|
* modes:
|
||||||
|
* h-part:(L,W,R)=(72.26999pt, 469.75502pt, 72.26999pt)
|
||||||
|
* v-part:(T,H,B)=(72.26999pt, 650.43001pt, 72.26999pt)
|
||||||
|
* \paperwidth=614.295pt
|
||||||
|
* \paperheight=794.96999pt
|
||||||
|
* \textwidth=469.75502pt
|
||||||
|
* \textheight=650.43001pt
|
||||||
|
* \oddsidemargin=0.0pt
|
||||||
|
* \evensidemargin=0.0pt
|
||||||
|
* \topmargin=-37.0pt
|
||||||
|
* \headheight=12.0pt
|
||||||
|
* \headsep=25.0pt
|
||||||
|
* \topskip=11.0pt
|
||||||
|
* \footskip=30.0pt
|
||||||
|
* \marginparwidth=59.0pt
|
||||||
|
* \marginparsep=10.0pt
|
||||||
|
* \columnsep=10.0pt
|
||||||
|
* \skip\footins=10.0pt plus 4.0pt minus 2.0pt
|
||||||
|
* \hoffset=0.0pt
|
||||||
|
* \voffset=0.0pt
|
||||||
|
* \mag=1000
|
||||||
|
* \@twocolumnfalse
|
||||||
|
* \@twosidefalse
|
||||||
|
* \@mparswitchfalse
|
||||||
|
* \@reversemarginfalse
|
||||||
|
* (1in=72.27pt=25.4mm, 1cm=28.453pt)
|
||||||
|
|
||||||
|
Package caption Info: Begin \AtBeginDocument code.
|
||||||
|
Package caption Info: End \AtBeginDocument code.
|
||||||
|
LaTeX Font Info: Trying to load font information for U+msa on input line 18.
|
||||||
|
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsfonts/umsa.fd
|
||||||
|
File: umsa.fd 2013/01/14 v3.01 AMS symbols A
|
||||||
|
)
|
||||||
|
LaTeX Font Info: Trying to load font information for U+msb on input line 18.
|
||||||
|
|
||||||
|
|
||||||
|
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsfonts/umsb.fd
|
||||||
|
File: umsb.fd 2013/01/14 v3.01 AMS symbols B
|
||||||
|
)
|
||||||
|
Overfull \hbox (4.90312pt too wide) in paragraph at lines 29--34
|
||||||
|
\OML/cmm/m/it/10.95 n$\OT1/cmr/m/n/10.95 ). Script: \OT1/cmtt/m/n/10.95 experim
|
||||||
|
ents/tire[]fiber[]enumeration.py\OT1/cmr/m/n/10.95 ; raw data: \OT1/cmtt/m/n/10
|
||||||
|
.95 experiments/fiber[]data.json\OT1/cmr/m/n/10.95 .
|
||||||
|
[]
|
||||||
|
|
||||||
|
[1
|
||||||
|
|
||||||
|
{/usr/local/texlive/2022/texmf-var/fonts/map/pdftex/updmap/pdftex.map}]
|
||||||
|
[2] [3] [4] (./tire_fiber_data.aux) )
|
||||||
|
Here is how much of TeX's memory you used:
|
||||||
|
4585 strings out of 478268
|
||||||
|
74198 string characters out of 5846347
|
||||||
|
378410 words of memory out of 5000000
|
||||||
|
22762 multiletter control sequences out of 15000+600000
|
||||||
|
482013 words of font info for 77 fonts, out of 8000000 for 9000
|
||||||
|
1141 hyphenation exceptions out of 8191
|
||||||
|
55i,9n,63p,249b,229s stack positions out of 10000i,1000n,20000p,200000b,200000s
|
||||||
|
{/usr/local/texlive/2022/texmf-dist/fonts/
|
||||||
|
enc/dvips/cm-super/cm-super-ts1.enc}</usr/local/texlive/2022/texmf-dist/fonts/t
|
||||||
|
ype1/public/amsfonts/cm/cmbx10.pfb></usr/local/texlive/2022/texmf-dist/fonts/ty
|
||||||
|
pe1/public/amsfonts/cm/cmbx12.pfb></usr/local/texlive/2022/texmf-dist/fonts/typ
|
||||||
|
e1/public/amsfonts/cm/cmex10.pfb></usr/local/texlive/2022/texmf-dist/fonts/type
|
||||||
|
1/public/amsfonts/cm/cmmi10.pfb></usr/local/texlive/2022/texmf-dist/fonts/type1
|
||||||
|
/public/amsfonts/cm/cmmi12.pfb></usr/local/texlive/2022/texmf-dist/fonts/type1/
|
||||||
|
public/amsfonts/cm/cmmi7.pfb></usr/local/texlive/2022/texmf-dist/fonts/type1/pu
|
||||||
|
blic/amsfonts/cm/cmmi8.pfb></usr/local/texlive/2022/texmf-dist/fonts/type1/publ
|
||||||
|
ic/amsfonts/cm/cmr10.pfb></usr/local/texlive/2022/texmf-dist/fonts/type1/public
|
||||||
|
/amsfonts/cm/cmr17.pfb></usr/local/texlive/2022/texmf-dist/fonts/type1/public/a
|
||||||
|
msfonts/cm/cmr8.pfb></usr/local/texlive/2022/texmf-dist/fonts/type1/public/amsf
|
||||||
|
onts/cm/cmsy10.pfb></usr/local/texlive/2022/texmf-dist/fonts/type1/public/amsfo
|
||||||
|
nts/cm/cmsy6.pfb></usr/local/texlive/2022/texmf-dist/fonts/type1/public/amsfont
|
||||||
|
s/cm/cmsy8.pfb></usr/local/texlive/2022/texmf-dist/fonts/type1/public/amsfonts/
|
||||||
|
cm/cmti10.pfb></usr/local/texlive/2022/texmf-dist/fonts/type1/public/amsfonts/c
|
||||||
|
m/cmtt10.pfb></usr/local/texlive/2022/texmf-dist/fonts/type1/public/cm-super/sf
|
||||||
|
rm1095.pfb>
|
||||||
|
Output written on tire_fiber_data.pdf (4 pages, 199931 bytes).
|
||||||
|
PDF statistics:
|
||||||
|
98 PDF objects out of 1000 (max. 8388607)
|
||||||
|
59 compressed objects within 1 object stream
|
||||||
|
0 named destinations out of 1000 (max. 500000)
|
||||||
|
1 words of extra memory for PDF output out of 10000 (max. 10000000)
|
||||||
|
|
||||||
Binary file not shown.
@@ -0,0 +1,254 @@
|
|||||||
|
\documentclass[11pt]{article}
|
||||||
|
\usepackage{amsmath,amssymb,amsthm}
|
||||||
|
\usepackage{graphicx}
|
||||||
|
\usepackage{geometry}
|
||||||
|
\usepackage{booktabs}
|
||||||
|
\usepackage{caption}
|
||||||
|
\geometry{margin=1in}
|
||||||
|
|
||||||
|
\title{Fiber distributions for spoke-only tire face connectors:\\
|
||||||
|
enumeration data for $n = 3, \dots, 12$}
|
||||||
|
\author{}
|
||||||
|
\date{}
|
||||||
|
|
||||||
|
\newtheorem*{obs}{Observation}
|
||||||
|
\newtheorem*{defn}{Definition}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
\maketitle
|
||||||
|
|
||||||
|
\section*{What this is}
|
||||||
|
|
||||||
|
This note is the output of Step~1 of the action items in
|
||||||
|
\texttt{birkhoff\_heesch\_reducibility.tex}: a brute-force enumeration
|
||||||
|
of the fiber distribution $N(T'_{f'}; \sigma)$ for small spoke-only
|
||||||
|
tire annular face connectors, framed as a $k = 3$ edge-coloring of the
|
||||||
|
graph
|
||||||
|
\[
|
||||||
|
G_n \;:=\; C_n \;+\; \text{(one pendant edge at each cycle vertex)},
|
||||||
|
\]
|
||||||
|
which is the spoke-only $T'_{f'}$ when $n = m + k$ (the boundary
|
||||||
|
cycle lengths of the underlying tire sum to $n$). Script:
|
||||||
|
\texttt{experiments/tire\_fiber\_enumeration.py}; raw data:
|
||||||
|
\texttt{experiments/fiber\_data.json}.
|
||||||
|
|
||||||
|
\section*{Setup recap}
|
||||||
|
|
||||||
|
A proper edge $3$-coloring of $G_n$ assigns colors to $n$ cycle edges
|
||||||
|
and $n$ pendant edges so that the three edges incident to each cycle
|
||||||
|
vertex $v_i$ get distinct colors. Since $\deg(v_i) = 3$ and we have
|
||||||
|
exactly $3$ colors, the pendant color $s_i$ is uniquely determined by
|
||||||
|
the two cycle-edge colors at $v_i$ as $s_i = \{1,2,3\} \setminus
|
||||||
|
\{c(e_{i-1}), c(e_i)\}$. Therefore the map
|
||||||
|
\[
|
||||||
|
\{\text{proper edge $3$-colorings of } G_n\}
|
||||||
|
\;\longrightarrow\;
|
||||||
|
\Sigma := \{1,2,3\}^n, \qquad (c, s) \mapsto s,
|
||||||
|
\]
|
||||||
|
is well-defined, and
|
||||||
|
\[
|
||||||
|
P_e(G_n, 3) \;=\; |\{\text{cycle colorings}\}| \;=\; 2^n + 2(-1)^n
|
||||||
|
\;=\; \sum_{\sigma \in \Sigma} N(G_n; \sigma).
|
||||||
|
\]
|
||||||
|
The realisable support is $\mathcal{C} := \{\sigma : N(G_n; \sigma) >
|
||||||
|
0\}$. ``A-reducibility'' (every $\sigma$ realisable) corresponds to
|
||||||
|
$\mathcal{C} = \Sigma$.
|
||||||
|
|
||||||
|
\section*{Main table}
|
||||||
|
|
||||||
|
\begin{center}
|
||||||
|
\small
|
||||||
|
\begin{tabular}{r r r r r r r r l}
|
||||||
|
\toprule
|
||||||
|
$n$ & $P_e$ & $|\mathcal{C}|$ & $|\Sigma| = 3^n$
|
||||||
|
& $|\mathcal{C}|/|\Sigma|$ & A-red.? & max $N$ & min $N$ & fiber size dist.\\
|
||||||
|
\midrule
|
||||||
|
$3$ & $6$ & $6$ & $27$ & $0.222$ & no & $1$ & $1$ & $1{\times}6$ \\
|
||||||
|
$4$ & $18$ & $15$ & $81$ & $0.185$ & no & $2$ & $1$ & $1{\times}12,\;2{\times}3$ \\
|
||||||
|
$5$ & $30$ & $30$ & $243$ & $0.123$ & no & $1$ & $1$ & $1{\times}30$ \\
|
||||||
|
$6$ & $66$ & $63$ & $729$ & $0.086$ & no & $2$ & $1$ & $1{\times}60,\;2{\times}3$ \\
|
||||||
|
$7$ & $126$ & $126$ & $2187$ & $0.058$ & no & $1$ & $1$ & $1{\times}126$ \\
|
||||||
|
$8$ & $258$ & $255$ & $6561$ & $0.039$ & no & $2$ & $1$ & $1{\times}252,\;2{\times}3$ \\
|
||||||
|
$9$ & $510$ & $510$ & $19683$ & $0.026$ & no & $1$ & $1$ & $1{\times}510$ \\
|
||||||
|
$10$ & $1026$ & $1023$ & $59049$ & $0.017$ & no & $2$ & $1$ & $1{\times}1020,\;2{\times}3$ \\
|
||||||
|
$11$ & $2046$ & $2046$ & $177147$ & $0.012$ & no & $1$ & $1$ & $1{\times}2046$ \\
|
||||||
|
$12$ & $4098$ & $4095$ & $531441$ & $0.008$ & no & $2$ & $1$ & $1{\times}4092,\;2{\times}3$ \\
|
||||||
|
\bottomrule
|
||||||
|
\end{tabular}
|
||||||
|
\end{center}
|
||||||
|
|
||||||
|
\section*{Two empirical findings}
|
||||||
|
|
||||||
|
\begin{obs}[Fiber-size dichotomy]
|
||||||
|
\label{obs:dichotomy}
|
||||||
|
For every $n \in \{3, \dots, 12\}$ examined, every fiber has size $1$
|
||||||
|
or $2$. The only $\sigma$ with $N(\sigma) = 2$ are the three constant
|
||||||
|
configurations $\sigma = (a, a, \dots, a)$ for $a \in \{1, 2, 3\}$,
|
||||||
|
and only when $n$ is even. For odd $n$, no constant $\sigma$ is
|
||||||
|
realisable.
|
||||||
|
\end{obs}
|
||||||
|
|
||||||
|
This is straightforward from the cycle structure: a constant $\sigma$
|
||||||
|
forces every cycle edge to lie in $\{1,2,3\} \setminus \{a\}$, so the
|
||||||
|
cycle alternates between two colors --- possible only for even $n$,
|
||||||
|
and in two ways. For non-constant $\sigma$, the cycle coloring is
|
||||||
|
uniquely determined by $\sigma$ via constraint propagation.
|
||||||
|
|
||||||
|
\medskip
|
||||||
|
|
||||||
|
\noindent
|
||||||
|
The much more interesting finding concerns projections of $\mathcal{C}$
|
||||||
|
onto a $k$-position subset of $\sigma$:
|
||||||
|
|
||||||
|
\begin{obs}[Spread-projection threshold]
|
||||||
|
\label{obs:threshold}
|
||||||
|
Fix $k \geq 3$ and let $P \subseteq \{0, 1, \dots, n-1\}$ be a set
|
||||||
|
of $k$ positions chosen as evenly spaced as possible (i.e.\
|
||||||
|
$P = \{\lfloor i n/k \rfloor : 0 \leq i < k\}$). Write $\pi_P :
|
||||||
|
\Sigma \to \{1,2,3\}^k$ for the projection. Then empirically, for
|
||||||
|
$n \in \{3, \dots, 12\}$,
|
||||||
|
\[
|
||||||
|
\pi_P(\mathcal{C}) \;=\; \{1,2,3\}^k
|
||||||
|
\qquad\Longleftrightarrow\qquad n \;\geq\; 2k.
|
||||||
|
\]
|
||||||
|
For $n < 2k$ the deficit $|\{1,2,3\}^k| - |\pi_P(\mathcal{C})|$ is
|
||||||
|
small (between $1$ and roughly $30$ across the data) and shrinks as
|
||||||
|
$n \to 2k$ from below.
|
||||||
|
\end{obs}
|
||||||
|
|
||||||
|
\paragraph{Threshold data (spread projection).}
|
||||||
|
\begin{center}
|
||||||
|
\small
|
||||||
|
\begin{tabular}{r | c c c c c c c c c c}
|
||||||
|
\toprule
|
||||||
|
& \multicolumn{10}{c}{$n$}\\
|
||||||
|
$k$ & $3$ & $4$ & $5$ & $6$ & $7$ & $8$ & $9$ & $10$ & $11$ & $12$ \\
|
||||||
|
\midrule
|
||||||
|
$3$ & $6$ & $15$ & $24$ & $\mathbf{27}$ & $27$ & $27$ & $27$ & $27$ & $27$ & $27$ \\
|
||||||
|
$4$ & --- & $15$ & $30$ & $51$ & $78$ & $\mathbf{81}$ & $81$ & $81$ & $81$ & $81$ \\
|
||||||
|
$5$ & --- & --- & $30$ & $63$ & $114$ & $171$ & $240$ & $\mathbf{243}$ & $243$ & $243$ \\
|
||||||
|
$6$ & --- & --- & --- & $63$ & $126$ & $237$ & $384$ & $561$ & $726$ & $\mathbf{729}$ \\
|
||||||
|
\bottomrule
|
||||||
|
\end{tabular}
|
||||||
|
\end{center}
|
||||||
|
\noindent
|
||||||
|
(Entries are $|\pi_P(\mathcal{C})|$; bold $=$ first row where the
|
||||||
|
support reaches the universe $3^k$. Universe sizes: $3^3 = 27,\;
|
||||||
|
3^4 = 81,\; 3^5 = 243,\; 3^6 = 729$.)
|
||||||
|
|
||||||
|
\paragraph{Contiguous projection (for contrast).}
|
||||||
|
Projecting onto a \emph{contiguous} block $P = \{0, 1, \dots, k-1\}$
|
||||||
|
gives a much smaller support that quickly stabilises and never reaches
|
||||||
|
the universe. For $k = 3$ and $n \geq 5$, the contiguous projection
|
||||||
|
plateaus at exactly $21/27$, with the $6$ missing patterns being
|
||||||
|
\[
|
||||||
|
\{(a, b, a) \in \{1,2,3\}^3 : a \neq b\}
|
||||||
|
\;=\; \{(1,2,1), (1,3,1), (2,1,2), (2,3,2), (3,1,3), (3,2,3)\}.
|
||||||
|
\]
|
||||||
|
These are the ``$aba$ palindromes,'' and the obstruction is a local
|
||||||
|
one: at three consecutive cycle positions with $\sigma = (a, b, a)$,
|
||||||
|
the two cycle edges $c(e_0)$ and $c(e_1)$ are both forced to be the
|
||||||
|
unique color not in $\{a, b\}$, contradicting proper-coloring at the
|
||||||
|
middle vertex.
|
||||||
|
|
||||||
|
\section*{Reducibility interpretation}
|
||||||
|
|
||||||
|
Translating through the dictionary of
|
||||||
|
\texttt{birkhoff\_heesch\_reducibility.tex}:
|
||||||
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item \textbf{No spoke-only tire is A-reducible.} The realisable
|
||||||
|
support is a vanishing fraction of $\Sigma = \{1,2,3\}^n$ as $n$
|
||||||
|
grows ($\sim\!2^n / 3^n$). This is unsurprising --- it would
|
||||||
|
have been startling if it held.
|
||||||
|
|
||||||
|
\item \textbf{Fiber concentration is extreme.} Every fiber has size
|
||||||
|
$\leq 2$. This is the strongest possible concentration of the
|
||||||
|
fiber distribution: realisable spoke configurations and
|
||||||
|
cycle-edge colorings are essentially in bijection.
|
||||||
|
|
||||||
|
\item \textbf{Spread-projection saturation gives a strong positive
|
||||||
|
result.} The projection of $\mathcal{C}$ onto any half-cycle (or
|
||||||
|
shorter spread block) covers \emph{all} of $\{1,2,3\}^k$ once
|
||||||
|
$n \geq 2k$. In tire language: if the dual annular cycle is at
|
||||||
|
least twice as long as the shared boundary cycle, every ring
|
||||||
|
coloring on the shared cycle is realisable.
|
||||||
|
|
||||||
|
\item \textbf{Tires with $m \geq k$ saturate.} A tire with boundary
|
||||||
|
lengths $|B_{\mathrm{out}}| = m$ and $|B_{\mathrm{in}}| = k$ has
|
||||||
|
dual cycle of length $n = m + k$ in the spoke-only setting. The
|
||||||
|
$k$ inner-direction spokes occupy $k$ positions among $n$; in a
|
||||||
|
balanced triangulation (alternating U/D triangles), these
|
||||||
|
positions are spread. Observation~\ref{obs:threshold} then says
|
||||||
|
$\pi(\mathcal{C}) = \{1,2,3\}^k$ whenever $m \geq k$.
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
\paragraph{Implication for the chain-pigeonhole step.}
|
||||||
|
Two tires sharing a cycle $\gamma$ of length $k$ admit a joint edge
|
||||||
|
$3$-coloring iff the realisable spoke-projections of the two tires
|
||||||
|
onto $\gamma$ intersect. By the above:
|
||||||
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item If \emph{both} adjacent tires have their non-$\gamma$-boundary
|
||||||
|
at least as long as $\gamma$, both projections equal
|
||||||
|
$\{1,2,3\}^k$ and the intersection is trivially non-empty.
|
||||||
|
Chain pigeonhole succeeds.
|
||||||
|
\item If \emph{one} side saturates and the other does not, the
|
||||||
|
intersection still equals the smaller (non-saturating) set,
|
||||||
|
which is non-empty. Chain pigeonhole succeeds.
|
||||||
|
\item The only potentially troublesome case is when \emph{both}
|
||||||
|
sides fail to saturate, i.e.\ both adjacent tires have
|
||||||
|
non-$\gamma$ boundaries shorter than $\gamma$ (in particular,
|
||||||
|
$\gamma$ is locally the longest cycle).
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
In a level-source BFS decomposition with cycles growing outward from
|
||||||
|
the source, ``$\gamma$ is locally the longest cycle'' happens at most
|
||||||
|
at one cycle: the outermost level. So for a level decomposition with
|
||||||
|
strictly nested cycles, only the outermost shared boundary is a
|
||||||
|
candidate failure point.
|
||||||
|
|
||||||
|
\section*{Conjecture suggested by the data}
|
||||||
|
|
||||||
|
\begin{obs}[Conjectural saturation principle]
|
||||||
|
\label{obs:conjecture}
|
||||||
|
For any spoke-only tire $T$ with boundary cycle lengths
|
||||||
|
$|B_{\mathrm{out}}| = m$ and $|B_{\mathrm{in}}| = k$ satisfying
|
||||||
|
$m \geq k$, the projection of the realisable spoke support
|
||||||
|
$\mathcal{C}(T'_{f'})$ onto the $k$ inner-direction spokes equals
|
||||||
|
$\{1,2,3\}^k$, independently of the choice of triangulation
|
||||||
|
(provided the inner-spoke positions are not all consecutive).
|
||||||
|
\end{obs}
|
||||||
|
|
||||||
|
\noindent
|
||||||
|
The data verifies this for $m + k = n \leq 12$ and balanced (spread)
|
||||||
|
triangulations. A proof would presumably proceed by induction on $m$
|
||||||
|
or by an explicit construction of cycle colorings realising any
|
||||||
|
target boundary configuration. This is the natural next computational
|
||||||
|
step (e.g.\ extend the enumeration to $n \leq 18$ and try unbalanced
|
||||||
|
spoke partitions) and the natural next analytic step (try to prove
|
||||||
|
the saturation principle from first principles).
|
||||||
|
|
||||||
|
\section*{Caveats}
|
||||||
|
|
||||||
|
\begin{enumerate}
|
||||||
|
\item All data is for the \textbf{spoke-only} case
|
||||||
|
(Remark~1.16.1): no chords in the inner outerplanar graph
|
||||||
|
$O$. Tires with non-trivial $O$ have additional structure
|
||||||
|
inside $T'_{f'}$ that we have not enumerated.
|
||||||
|
\item The ``spread'' position pattern in the enumeration script
|
||||||
|
uses
|
||||||
|
$P = \{\lfloor in/k \rfloor : 0 \leq i < k\}$, which is one
|
||||||
|
canonical evenly-spaced choice. Other spread patterns may
|
||||||
|
give different supports at the same $(n, k)$.
|
||||||
|
\item The threshold $n = 2k$ is observed empirically up to $n = 12$.
|
||||||
|
It is consistent with the heuristic that ``$k$ spread spoke
|
||||||
|
positions on $C_n$ are independent enough to range freely once
|
||||||
|
$n \geq 2k$,'' but is not proven here.
|
||||||
|
\item Adjacent-tire intersection (the actual chain pigeonhole step)
|
||||||
|
is left to a separate computation that takes pairs of fiber
|
||||||
|
distributions and intersects projections on the shared cycle.
|
||||||
|
That is Step~2 of the action items.
|
||||||
|
\end{enumerate}
|
||||||
|
|
||||||
|
\end{document}
|
||||||
Reference in New Issue
Block a user