diff --git a/papers/coloring_nested_tire_graphs/experiments/check_level_cycle_three_color.py b/papers/coloring_nested_tire_graphs/experiments/check_level_cycle_three_color.py new file mode 100644 index 0000000..d421c1b --- /dev/null +++ b/papers/coloring_nested_tire_graphs/experiments/check_level_cycle_three_color.py @@ -0,0 +1,298 @@ +"""Empirical test for the level-cycle three-colour conjecture. + +The weakened conjecture says: for every maximal planar graph G, there +is some level source S and some proper 4-vertex-colouring c such that +every simple cycle contained in a single level G[L_d] uses at most +three colours. + +Important: this checks the cycle-by-cycle version. Two cycles in the +same level or the same inner outerplanar component may omit different +colours. + +Run examples: + sage -python experiments/check_level_cycle_three_color.py 4 9 + sage -python experiments/check_level_cycle_three_color.py 4 8 --quantifier all-sources + sage -python experiments/check_level_cycle_three_color.py 4 8 --sources all +""" + +from __future__ import annotations + +import argparse +from collections import deque +from itertools import combinations +from typing import Any, Iterable, Iterator, Sequence, cast + +from sage.all import Graph, graphs # type: ignore[attr-defined] # pylint: disable=no-name-in-module +from sage.graphs.graph_coloring import all_graph_colorings # type: ignore[attr-defined] # pylint: disable=no-name-in-module + + +Coloring = dict[Any, int] +Source = tuple[Any, ...] + + +def vertex_key(v: Any) -> str: + """Stable ordering key for Sage vertex labels.""" + return repr(v) + + +def is_induced_cycle(g: Graph, vertices: Sequence[Any]) -> bool: + """Return True iff G[vertices] is a simple cycle.""" + if len(vertices) < 3: + return False + h = cast(Graph, g.subgraph(list(vertices))) + return h.is_connected() and h.num_edges() == len(vertices) and all( + h.degree(v) == 2 for v in h.vertices() + ) + + +def induced_cycle_sources(g: Graph, max_size: int | None = None) -> Iterator[Source]: + """Yield every vertex set inducing a simple cycle in G.""" + vertices = sorted(g.vertices(), key=vertex_key) + upper = len(vertices) if max_size is None else min(max_size, len(vertices)) + for k in range(3, upper + 1): + for subset in combinations(vertices, k): + if is_induced_cycle(g, subset): + yield tuple(subset) + + +def level_sources(g: Graph, mode: str, max_cycle_source_size: int | None) -> Iterator[Source]: + """Yield level sources according to the requested mode.""" + if mode in ("vertex", "all"): + for v in sorted(g.vertices(), key=vertex_key): + yield (v,) + if mode in ("cycle", "all"): + yield from induced_cycle_sources(g, max_cycle_source_size) + + +def distances_from_source(g: Graph, source: Source) -> dict[Any, int]: + """Shortest-path distance from a vertex or cycle source.""" + if len(source) == 1: + return dict(g.shortest_path_lengths(source[0])) + distances = {v: 0 for v in source} + queue: deque[Any] = deque(source) + while queue: + v = queue.popleft() + for w in g.neighbor_iterator(v): + if w in distances: + continue + distances[w] = distances[v] + 1 + queue.append(w) + return distances + + +def simple_cycle_vertex_sets(g: Graph) -> set[frozenset[Any]]: + """Enumerate vertex sets of simple cycles in an undirected graph. + + The DFS only starts a cycle at its least vertex under vertex_key, which + avoids most duplicates; the final frozenset de-duplicates cycles with the + same vertex set. + """ + vertices = sorted(g.vertices(), key=vertex_key) + index = {v: i for i, v in enumerate(vertices)} + cycles: set[frozenset[Any]] = set() + + def dfs(start: Any, current: Any, path: list[Any], seen: set[Any]) -> None: + for nxt in g.neighbor_iterator(current): + if nxt == start: + if len(path) >= 3: + cycles.add(frozenset(path)) + continue + if nxt in seen: + continue + if index[nxt] <= index[start]: + continue + seen.add(nxt) + path.append(nxt) + dfs(start, nxt, path, seen) + path.pop() + seen.remove(nxt) + + for start in vertices: + dfs(start, start, [start], {start}) + return cycles + + +def level_cycle_violation( + g: Graph, distances: dict[Any, int], coloring: Coloring +) -> tuple[int, frozenset[Any], set[int]] | None: + """Return the first level cycle using all four colours, if any.""" + by_level: dict[int, list[Any]] = {} + for v, d in distances.items(): + by_level.setdefault(d, []).append(v) + + for d in sorted(by_level): + if len(by_level[d]) < 3: + continue + h = cast(Graph, g.subgraph(by_level[d])) + for cycle in simple_cycle_vertex_sets(h): + used = {coloring[v] for v in cycle} + if len(used) > 3: + return d, cycle, used + return None + + +def coloring_witness( + g: Graph, + source: Source, + max_colorings: int | None, +) -> tuple[Coloring | None, int, bool]: + """Find a proper 4-colouring satisfying the conjectured restriction. + + Returns (witness, checked_count, exhausted). If witness is None and + exhausted is False, max_colorings was reached before a decision. + """ + distances = distances_from_source(g, source) + checked = 0 + for raw in all_graph_colorings(g, 4, vertex_color_dict=True): + coloring = cast(Coloring, raw) + checked += 1 + if level_cycle_violation(g, distances, coloring) is None: + return coloring, checked, True + if max_colorings is not None and checked >= max_colorings: + return None, checked, False + return None, checked, True + + +def source_label(source: Source) -> str: + if len(source) == 1: + return f"vertex:{source[0]}" + return "cycle:{" + ",".join(str(v) for v in source) + "}" + + +def test_graph( + g: Graph, + sources: Iterable[Source], + max_colorings: int | None, + stop_first: bool, + quantifier: str, +) -> tuple[bool, bool, int]: + """Test a graph over selected sources. + + Returns (passed, complete, sources_checked). + """ + checked_sources = 0 + complete = True + found_any_source = False + for source in sources: + checked_sources += 1 + witness, n_checked, exhausted = coloring_witness(g, source, max_colorings) + if witness is None: + if not exhausted: + complete = False + status = "FAIL" if exhausted else "UNKNOWN" + print( + f" {status}: source={source_label(source)}, " + f"colorings_checked={n_checked}" + ) + if exhausted and quantifier == "all-sources": + distances = distances_from_source(g, source) + first = next(all_graph_colorings(g, 4, vertex_color_dict=True), None) + if first is not None: + violation = level_cycle_violation(g, distances, cast(Coloring, first)) + print(f" first_coloring_violation={violation}") + return False, complete, checked_sources + if stop_first: + if quantifier == "all-sources": + return True, False, checked_sources + if not exhausted: + return True, False, checked_sources + else: + found_any_source = True + print( + f" pass: source={source_label(source)}, " + f"colorings_checked={n_checked}" + ) + if quantifier == "exists-source": + return True, complete, checked_sources + + if quantifier == "exists-source" and not found_any_source: + return False, complete, checked_sources + return True, complete, checked_sources + + +def parse_args() -> argparse.Namespace: + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("n_min", type=int, nargs="?", default=4) + parser.add_argument("n_max", type=int, nargs="?", default=9) + parser.add_argument( + "--sources", + choices=("vertex", "cycle", "all"), + default="vertex", + help=( + "which candidate level sources to search; cycle means induced " + "cycle sources" + ), + ) + parser.add_argument( + "--quantifier", + choices=("exists-source", "all-sources"), + default="exists-source", + help=( + "exists-source tests the weakened conjecture; all-sources tests " + "the stronger earlier version" + ), + ) + parser.add_argument( + "--max-cycle-source-size", + type=int, + default=None, + help="optional cap on induced cycle source size", + ) + parser.add_argument( + "--max-colorings", + type=int, + default=None, + help="optional cap per graph/source; capped searches report UNKNOWN", + ) + parser.add_argument( + "--full", + action="store_true", + help="continue after failures/unknowns instead of stopping at first", + ) + return parser.parse_args() + + +def main() -> int: + args = parse_args() + stop_first = not args.full + total_graphs = 0 + total_sources = 0 + unknown = 0 + + for n in range(args.n_min, args.n_max + 1): + print(f"=== n={n} ===") + for idx, g in enumerate(graphs.triangulations(n), start=1): + total_graphs += 1 + source_list = list( + level_sources(g, args.sources, args.max_cycle_source_size) + ) + print(f" graph #{idx}: sources={len(source_list)}") + passed, complete, checked_sources = test_graph( + g, source_list, args.max_colorings, stop_first, args.quantifier + ) + total_sources += checked_sources + if not complete: + unknown += 1 + if not passed: + print( + f"COUNTEREXAMPLE candidate: n={n}, graph_index={idx}, " + f"source_mode={args.sources}, quantifier={args.quantifier}" + ) + print(f" edges={sorted(tuple(sorted(e)) for e in g.edges(labels=False))}") + return 1 + if not complete and stop_first: + print( + f"UNKNOWN: n={n}, graph_index={idx}, " + f"source_mode={args.sources}, quantifier={args.quantifier}" + ) + return 2 + + print( + f"PASS: checked {total_graphs} triangulations and {total_sources} " + f"sources; unknown_graphs={unknown}" + ) + return 0 if unknown == 0 else 2 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/papers/coloring_nested_tire_graphs/paper.aux b/papers/coloring_nested_tire_graphs/paper.aux index 9cd7bb5..11196e0 100644 --- a/papers/coloring_nested_tire_graphs/paper.aux +++ b/papers/coloring_nested_tire_graphs/paper.aux @@ -38,12 +38,15 @@ \newlabel{rem:tree-coloring-factorisation}{{1.24}{15}} \@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces Tire-tree decomposition (Theorem\nonbreakingspace 1.23\hbox {}) on a $13$-vertex maximal planar example $G$ with five BFS levels. $(a)$ $G$ with vertex source $v_0$ and $\ell _G \in \{0,1,2,3,4\}$; four nested seams are highlighted, $C_{T_R} = \{a,b,c\}$ (orange), $C_{T_L} = \{a,c,d\}$ (red, including the chord $a$-$c$ shared with $C_{T_R}$), $C_{T_{LL}} = \{f_1, f_2, f_3\}$ (purple), $C_{T_{LLL}} = \{g_1, g_2, g_3\}$ (teal). Inset: the rooted tree of tire treads $\mathcal {T}(G, \{v_0\})$ branches at $T_0$ into the leaf $T_R$ (containing $e$) and a chain $T_L \to T_{LL} \to T_{LLL}$ (the highlighted sub-tree). $(b)$ The disk $G_{T_L}$ inside the seam $C_{T_L}$, drawn standalone with $C_{T_L}$ as cycle source and vertex labels rotated to match the new (cycle-source) role of the boundary triangle. $\ell _{G_{T_L}}(\cdot ) = \ell _G(\cdot ) - 1$ on $V(G_{T_L})$ (verified by the generator script), and $\mathcal {T}(G_{T_L}, C_{T_L})$ is the chain $T_L \to T_{LL} \to T_{LLL}$, iso to the highlighted sub-tree of $(a)$.}}{16}{}\protected@file@percent } \newlabel{fig:tire-tree-decomposition}{{5}{16}} -\newlabel{def:level-cycle-three-colour-restriction}{{1.25}{16}} -\newlabel{conj:level-cycle-three-colour}{{1.26}{16}} -\newlabel{def:seam}{{1.27}{16}} -\newlabel{def:partial-tire-tree}{{1.28}{17}} -\newlabel{lem:seam-edge-shared}{{1.29}{17}} -\newlabel{conj:seam-counterexample}{{1.30}{17}} +\newlabel{rem:level-cycle-motivation}{{1.25}{16}} +\newlabel{def:level-cycle-three-colour-restriction}{{1.26}{16}} +\newlabel{conj:false-universal-level-cycle-three-colour}{{1.27}{17}} +\newlabel{ex:universal-level-cycle-counterexample}{{1.28}{17}} +\newlabel{conj:level-cycle-three-colour}{{1.29}{17}} +\newlabel{def:seam}{{1.30}{17}} +\newlabel{def:partial-tire-tree}{{1.31}{18}} +\newlabel{lem:seam-edge-shared}{{1.32}{18}} +\newlabel{conj:seam-counterexample}{{1.33}{18}} \bibcite{tait-original}{1} \bibcite{bauerfeld-depth}{2} \bibcite{bauerfeld-nested-tire-duals}{3} @@ -52,5 +55,5 @@ \newlabel{tocindent1}{17.77782pt} \newlabel{tocindent2}{0pt} \newlabel{tocindent3}{0pt} -\@writefile{toc}{\contentsline {section}{\tocsection {}{}{References}}{18}{}\protected@file@percent } -\gdef \@abspage@last{18} +\@writefile{toc}{\contentsline {section}{\tocsection {}{}{References}}{19}{}\protected@file@percent } +\gdef \@abspage@last{19} diff --git a/papers/coloring_nested_tire_graphs/paper.fdb_latexmk b/papers/coloring_nested_tire_graphs/paper.fdb_latexmk index 85fee2c..3c289cb 100644 --- a/papers/coloring_nested_tire_graphs/paper.fdb_latexmk +++ b/papers/coloring_nested_tire_graphs/paper.fdb_latexmk @@ -1,5 +1,6 @@ # Fdb version 3 -["pdflatex"] 1780292322 "paper.tex" "paper.pdf" "paper" 1780292323 +["pdflatex"] 1780293652 "/Users/didericis/Code/math-research/papers/coloring_nested_tire_graphs/paper.tex" "paper.pdf" "paper" 1780293654 + "/Users/didericis/Code/math-research/papers/coloring_nested_tire_graphs/paper.tex" 1780293651 72086 2cfd3ee83346bfad39a1634334bf5a52 "" "/usr/local/texlive/2022/texmf-dist/fonts/map/fontname/texfonts.map" 1577235249 3524 cb3e574dea2d1052e39280babc910dc8 "" "/usr/local/texlive/2022/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex7.tfm" 1246382020 1004 54797486969f23fa377b128694d548df "" "/usr/local/texlive/2022/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex8.tfm" 1246382020 988 bdf658c3bfc2d96d3c8b02cfc1c94c20 "" @@ -143,8 +144,8 @@ "fig_dual_depth.png" 1779857443 255786 cb48aab5aa40fc161d13a75df0544511 "" "fig_tire_example.png" 1779857443 104494 8f9ce26b469b4236b8b67829f73a5faa "" "fig_tire_tree_decomposition.png" 1780290287 372371 1b44f5a3e9f637d78ae951b1f2e3a89d "" - "paper.aux" 1780292323 6175 ebbbf2866e419e516eb77ba5a2680133 "pdflatex" - "paper.tex" 1780292317 69555 979a83d28dfdbc431f7615347bd06fb1 "" + "paper.aux" 1780293654 6357 b849d53dbfe33172763a2fcfb81eb3e7 "pdflatex" + "paper.tex" 1780293651 72086 2cfd3ee83346bfad39a1634334bf5a52 "" (generated) "paper.aux" "paper.log" diff --git a/papers/coloring_nested_tire_graphs/paper.fls b/papers/coloring_nested_tire_graphs/paper.fls index 63a3067..e5d1069 100644 --- a/papers/coloring_nested_tire_graphs/paper.fls +++ b/papers/coloring_nested_tire_graphs/paper.fls @@ -2,7 +2,7 @@ PWD /Users/didericis/Code/math-research/papers/coloring_nested_tire_graphs INPUT /usr/local/texlive/2022/texmf.cnf INPUT /usr/local/texlive/2022/texmf-dist/web2c/texmf.cnf INPUT /usr/local/texlive/2022/texmf-var/web2c/pdftex/pdflatex.fmt -INPUT paper.tex +INPUT /Users/didericis/Code/math-research/papers/coloring_nested_tire_graphs/paper.tex OUTPUT paper.log INPUT /usr/local/texlive/2022/texmf-dist/tex/latex/amscls/amsart.cls INPUT /usr/local/texlive/2022/texmf-dist/tex/latex/amscls/amsart.cls diff --git a/papers/coloring_nested_tire_graphs/paper.log b/papers/coloring_nested_tire_graphs/paper.log index fca0889..35e570b 100644 --- a/papers/coloring_nested_tire_graphs/paper.log +++ b/papers/coloring_nested_tire_graphs/paper.log @@ -1,12 +1,12 @@ -This is pdfTeX, Version 3.141592653-2.6-1.40.24 (TeX Live 2022) (preloaded format=pdflatex 2022.10.5) 1 JUN 2026 01:38 +This is pdfTeX, Version 3.141592653-2.6-1.40.24 (TeX Live 2022) (preloaded format=pdflatex 2022.10.5) 1 JUN 2026 02:00 entering extended mode restricted \write18 enabled. + file:line:error style messages enabled. %&-line parsing enabled. -**paper.tex -(./paper.tex +**/Users/didericis/Code/math-research/papers/coloring_nested_tire_graphs/paper.tex +(/Users/didericis/Code/math-research/papers/coloring_nested_tire_graphs/paper.tex LaTeX2e <2021-11-15> patch level 1 -L3 programming layer <2022-02-24> -(/usr/local/texlive/2022/texmf-dist/tex/latex/amscls/amsart.cls +L3 programming layer <2022-02-24> (/usr/local/texlive/2022/texmf-dist/tex/latex/amscls/amsart.cls Document Class: amsart 2020/05/29 v2.20.6 \linespacing=\dimen138 \normalparindent=\dimen139 @@ -18,17 +18,14 @@ Package: amsmath 2021/10/15 v2.17l AMS math features 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 + (/usr/local/texlive/2022/texmf-dist/tex/latex/amsmath/amsgen.sty File: amsgen.sty 1999/11/30 v2.0 generic functions \@emptytoks=\toks16 \ex@=\dimen140 -)) -(/usr/local/texlive/2022/texmf-dist/tex/latex/amsmath/amsbsy.sty +)) (/usr/local/texlive/2022/texmf-dist/tex/latex/amsmath/amsbsy.sty Package: amsbsy 1999/11/29 v1.2d Bold Symbols \pmbraise@=\dimen141 -) -(/usr/local/texlive/2022/texmf-dist/tex/latex/amsmath/amsopn.sty +) (/usr/local/texlive/2022/texmf-dist/tex/latex/amsmath/amsopn.sty Package: amsopn 2021/08/26 v2.02 operator names ) \inf@bad=\count185 @@ -69,13 +66,10 @@ LaTeX Font Info: Redeclaring font encoding OMS on input line 744. LaTeX Info: Redefining \[ on input line 2938. LaTeX Info: Redefining \] on input line 2939. ) -LaTeX Font Info: Trying to load font information for U+msa on input line 397 -. - -(/usr/local/texlive/2022/texmf-dist/tex/latex/amsfonts/umsa.fd +LaTeX Font Info: Trying to load font information for U+msa on input line 397. + (/usr/local/texlive/2022/texmf-dist/tex/latex/amsfonts/umsa.fd File: umsa.fd 2013/01/14 v3.01 AMS symbols A -) -(/usr/local/texlive/2022/texmf-dist/tex/latex/amsfonts/amsfonts.sty +) (/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 @@ -106,63 +100,42 @@ LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold' \thm@postskip=\skip55 \thm@headsep=\skip56 \dth@everypar=\toks26 -) -(/usr/local/texlive/2022/texmf-dist/tex/latex/amsfonts/amssymb.sty +) (/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/graphics/graphicx.sty +) (/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 + (/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 +) (/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 + (/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 +) (/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 + (/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=\dimen150 \Gin@req@width=\dimen151 -) -(/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty -(/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty -(/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/utilities/pgfutil-common.te -x +) (/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty (/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty (/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/utilities/pgfutil-common.tex \pgfutil@everybye=\toks28 \pgfutil@tempdima=\dimen152 \pgfutil@tempdimb=\dimen153 - -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/utilities/pgfutil-common-li -sts.tex)) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def + (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/utilities/pgfutil-common-lists.tex)) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def \pgfutil@abb=\box53 -) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/pgf.revision.tex) +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/pgf.revision.tex) Package: pgfrcs 2021/05/15 v3.1.9a (3.1.9a) )) Package: pgf 2021/05/15 v3.1.9a (3.1.9a) - -(/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty -(/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex + (/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty (/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex Package: pgfsys 2021/05/15 v3.1.9a (3.1.9a) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex + (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex \pgfkeys@pathtoks=\toks29 \pgfkeys@temptoks=\toks30 - -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/utilities/pgfkeysfiltered.c -ode.tex + (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/utilities/pgfkeysfiltered.code.tex \pgfkeys@tmptoks=\toks31 )) \pgf@x=\dimen154 @@ -185,33 +158,23 @@ ode.tex \t@pgf@tokb=\toks33 \t@pgf@tokc=\toks34 \pgf@sys@id@count=\count276 - -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/systemlayer/pgf.cfg + (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/systemlayer/pgf.cfg File: pgf.cfg 2021/05/15 v3.1.9a (3.1.9a) ) Driver file for pgf: pgfsys-pdftex.def - -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-pdftex.d -ef + (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-pdftex.def File: pgfsys-pdftex.def 2021/05/15 v3.1.9a (3.1.9a) - -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-p -df.def + (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-pdf.def File: pgfsys-common-pdf.def 2021/05/15 v3.1.9a (3.1.9a) -))) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath. -code.tex +))) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath.code.tex File: pgfsyssoftpath.code.tex 2021/05/15 v3.1.9a (3.1.9a) \pgfsyssoftpath@smallbuffer@items=\count277 \pgfsyssoftpath@bigbuffer@items=\count278 -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol. -code.tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol.code.tex File: pgfsysprotocol.code.tex 2021/05/15 v3.1.9a (3.1.9a) )) (/usr/local/texlive/2022/texmf-dist/tex/latex/xcolor/xcolor.sty Package: xcolor 2021/10/31 v2.13 LaTeX color extensions (UK) - -(/usr/local/texlive/2022/texmf-dist/tex/latex/graphics-cfg/color.cfg + (/usr/local/texlive/2022/texmf-dist/tex/latex/graphics-cfg/color.cfg File: color.cfg 2016/01/02 v1.6 sample color configuration ) Package xcolor Info: Driver file: pdftex.def on input line 227. @@ -224,43 +187,18 @@ Package xcolor Info: Model `tHsb' substituted by `hsb' on input line 1372. Package xcolor Info: Model `HSB' substituted by `hsb' on input line 1373. Package xcolor Info: Model `Gray' substituted by `gray' on input line 1374. Package xcolor Info: Model `wave' substituted by `hsb' on input line 1375. -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex Package: pgfcore 2021/05/15 v3.1.9a (3.1.9a) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathcalc.code.tex -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathutil.code.tex) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathparser.code.tex + (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathcalc.code.tex (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathutil.code.tex) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathparser.code.tex \pgfmath@dimen=\dimen164 \pgfmath@count=\count279 \pgfmath@box=\box54 \pgfmath@toks=\toks35 \pgfmath@stack@operand=\toks36 \pgfmath@stack@operation=\toks37 -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.code. -tex -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.basic -.code.tex) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.trigo -nometric.code.tex) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.rando -m.code.tex) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.compa -rison.code.tex) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.base. -code.tex) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.round -.code.tex) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.misc. -code.tex) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.integ -erarithmetics.code.tex))) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfloat.code.tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.code.tex (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.basic.code.tex) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.trigonometric.code.tex) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.random.code.tex) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.comparison.code.tex) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.base.code.tex) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.round.code.tex) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.misc.code.tex) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.integerarithmetics.code.tex))) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmathfloat.code.tex \c@pgfmathroundto@lastzeros=\count280 -)) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfint.code.tex) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepoints.co -de.tex +)) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfint.code.tex) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepoints.code.tex File: pgfcorepoints.code.tex 2021/05/15 v3.1.9a (3.1.9a) \pgf@picminx=\dimen165 \pgf@picmaxx=\dimen166 @@ -276,127 +214,76 @@ File: pgfcorepoints.code.tex 2021/05/15 v3.1.9a (3.1.9a) \pgf@yy=\dimen176 \pgf@zx=\dimen177 \pgf@zy=\dimen178 -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathconst -ruct.code.tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathconstruct.code.tex File: pgfcorepathconstruct.code.tex 2021/05/15 v3.1.9a (3.1.9a) \pgf@path@lastx=\dimen179 \pgf@path@lasty=\dimen180 -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathusage -.code.tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathusage.code.tex File: pgfcorepathusage.code.tex 2021/05/15 v3.1.9a (3.1.9a) \pgf@shorten@end@additional=\dimen181 \pgf@shorten@start@additional=\dimen182 -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorescopes.co -de.tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorescopes.code.tex File: pgfcorescopes.code.tex 2021/05/15 v3.1.9a (3.1.9a) \pgfpic=\box55 \pgf@hbox=\box56 \pgf@layerbox@main=\box57 \pgf@picture@serial@count=\count281 -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcoregraphicst -ate.code.tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcoregraphicstate.code.tex File: pgfcoregraphicstate.code.tex 2021/05/15 v3.1.9a (3.1.9a) \pgflinewidth=\dimen183 -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransform -ations.code.tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransformations.code.tex File: pgfcoretransformations.code.tex 2021/05/15 v3.1.9a (3.1.9a) \pgf@pt@x=\dimen184 \pgf@pt@y=\dimen185 \pgf@pt@temp=\dimen186 -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorequick.cod -e.tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorequick.code.tex File: pgfcorequick.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreobjects.c -ode.tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreobjects.code.tex File: pgfcoreobjects.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathproce -ssing.code.tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathprocessing.code.tex File: pgfcorepathprocessing.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorearrows.co -de.tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorearrows.code.tex File: pgfcorearrows.code.tex 2021/05/15 v3.1.9a (3.1.9a) \pgfarrowsep=\dimen187 -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreshade.cod -e.tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreshade.code.tex File: pgfcoreshade.code.tex 2021/05/15 v3.1.9a (3.1.9a) \pgf@max=\dimen188 \pgf@sys@shading@range@num=\count282 \pgf@shadingcount=\count283 -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreimage.cod -e.tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreimage.code.tex File: pgfcoreimage.code.tex 2021/05/15 v3.1.9a (3.1.9a) - -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreexternal. -code.tex + (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreexternal.code.tex File: pgfcoreexternal.code.tex 2021/05/15 v3.1.9a (3.1.9a) \pgfexternal@startupbox=\box58 -)) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorelayers.co -de.tex +)) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorelayers.code.tex File: pgfcorelayers.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretranspare -ncy.code.tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransparency.code.tex File: pgfcoretransparency.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepatterns. -code.tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepatterns.code.tex File: pgfcorepatterns.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorerdf.code. -tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/basiclayer/pgfcorerdf.code.tex File: pgfcorerdf.code.tex 2021/05/15 v3.1.9a (3.1.9a) -))) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.cod -e.tex +))) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex File: pgfmoduleshapes.code.tex 2021/05/15 v3.1.9a (3.1.9a) \pgfnodeparttextbox=\box59 -) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/modules/pgfmoduleplot.code. -tex +) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/modules/pgfmoduleplot.code.tex File: pgfmoduleplot.code.tex 2021/05/15 v3.1.9a (3.1.9a) -) -(/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version --0-65.sty +) (/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty Package: pgfcomp-version-0-65 2021/05/15 v3.1.9a (3.1.9a) \pgf@nodesepstart=\dimen189 \pgf@nodesepend=\dimen190 -) -(/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version --1-18.sty +) (/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty Package: pgfcomp-version-1-18 2021/05/15 v3.1.9a (3.1.9a) -)) -(/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/utilities/pgffor.sty -(/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex) -) (/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/math/pgfmath.sty -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex)) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex +)) (/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/utilities/pgffor.sty (/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex)) (/usr/local/texlive/2022/texmf-dist/tex/latex/pgf/math/pgfmath.sty (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex)) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex Package: pgffor 2021/05/15 v3.1.9a (3.1.9a) - -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex) + (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex) \pgffor@iter=\dimen191 \pgffor@skip=\dimen192 \pgffor@stack=\toks38 \pgffor@toks=\toks39 -)) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.cod -e.tex +)) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex Package: tikz 2021/05/15 v3.1.9a (3.1.9a) - -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/libraries/pgflibraryplothan -dlers.code.tex + (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/libraries/pgflibraryplothandlers.code.tex File: pgflibraryplothandlers.code.tex 2021/05/15 v3.1.9a (3.1.9a) \pgf@plot@mark@count=\count284 \pgfplotmarksize=\dimen193 @@ -417,34 +304,26 @@ File: pgflibraryplothandlers.code.tex 2021/05/15 v3.1.9a (3.1.9a) \tikznumberofchildren=\count286 \tikznumberofcurrentchild=\count287 \tikz@fig@count=\count288 - -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/modules/pgfmodulematrix.cod -e.tex + (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/modules/pgfmodulematrix.code.tex File: pgfmodulematrix.code.tex 2021/05/15 v3.1.9a (3.1.9a) \pgfmatrixcurrentrow=\count289 \pgfmatrixcurrentcolumn=\count290 \pgf@matrix@numberofcolumns=\count291 ) \tikz@expandcount=\count292 - -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/frontendlayer/tikz/librarie -s/tikzlibrarytopaths.code.tex + (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex File: tikzlibrarytopaths.code.tex 2021/05/15 v3.1.9a (3.1.9a) -))) -(/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/frontendlayer/tikz/librarie -s/tikzlibrarybackgrounds.code.tex +))) (/usr/local/texlive/2022/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybackgrounds.code.tex File: tikzlibrarybackgrounds.code.tex 2021/05/15 v3.1.9a (3.1.9a) \pgf@layerbox@background=\box64 \pgf@layerboxsaved@background=\box65 ) \c@theorem=\count293 - -(/usr/local/texlive/2022/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def + (/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=\count294 \l__pdf_internal_box=\box66 -) -(./paper.aux) +) (./paper.aux) \openout1 = `paper.aux'. LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 29. @@ -462,17 +341,13 @@ LaTeX Font Info: ... okay on input line 29. LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 29. LaTeX Font Info: ... okay on input line 29. LaTeX Font Info: Trying to load font information for U+msa on input line 29. - (/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 29. - - -(/usr/local/texlive/2022/texmf-dist/tex/latex/amsfonts/umsb.fd + (/usr/local/texlive/2022/texmf-dist/tex/latex/amsfonts/umsb.fd File: umsb.fd 2013/01/14 v3.01 AMS symbols B -) -(/usr/local/texlive/2022/texmf-dist/tex/context/base/mkii/supp-pdf.mkii +) (/usr/local/texlive/2022/texmf-dist/tex/context/base/mkii/supp-pdf.mkii [Loading MPS to PDF converter (version 2006.09.02).] \scratchcounter=\count295 \scratchdimen=\dimen259 @@ -487,21 +362,16 @@ File: umsb.fd 2013/01/14 v3.01 AMS symbols B \everyMPtoPDFconversion=\toks41 ) (/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 -)) -[1{/usr/local/texlive/2022/texmf-var/fonts/map/pdftex/updmap/pdftex.map}] +Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 485. + (/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 Live +)) [1{/usr/local/texlive/2022/texmf-var/fonts/map/pdftex/updmap/pdftex.map}] File: fig_dual_depth.png Graphic file (type png) Package pdftex.def Info: fig_dual_depth.png used on input line 131. (pdftex.def) Requested size: 251.9989pt x 237.67276pt. - -[2 <./fig_dual_depth.png>] + [2 <./fig_dual_depth.png>] File: fig_tire_example.png Graphic file (type png) @@ -522,64 +392,35 @@ LaTeX Warning: `h' float specifier changed to `ht'. [9] Underfull \vbox (badness 10000) has occurred while \output is active [] - [10] -[11] [12] [13] [14] + [10] [11] [12] [13] [14] File: fig_tire_tree_decomposition.png Graphic file (type png) -Package pdftex.def Info: fig_tire_tree_decomposition.png used on input line 12 -21. +Package pdftex.def Info: fig_tire_tree_decomposition.png used on input line 1221. (pdftex.def) Requested size: 341.9989pt x 196.86678pt. LaTeX Warning: `h' float specifier changed to `ht'. -[15] [16 <./fig_tire_tree_decomposition.png>] -Overfull \hbox (1.78508pt too wide) in paragraph at lines 1377--1379 -[]\OT1/cmr/m/n/10 Length lower bound (Birkhoff). \OT1/cmr/m/it/10 Ev-ery non-tr -ivial seam $\OML/cmm/m/it/10 C$ \OT1/cmr/m/it/10 of $\OML/cmm/m/it/10 G$ \OT1/c -mr/m/it/10 has $\OMS/cmsy/m/n/10 j\OML/cmm/m/it/10 V\OT1/cmr/m/n/10 (\OML/cmm/m -/it/10 C\OT1/cmr/m/n/10 )\OMS/cmsy/m/n/10 j ^^U +[15] [16 <./fig_tire_tree_decomposition.png>] [17] +Overfull \hbox (1.78508pt too wide) in paragraph at lines 1430--1432 +[]\OT1/cmr/m/n/10 Length lower bound (Birkhoff). \OT1/cmr/m/it/10 Ev-ery non-trivial seam $\OML/cmm/m/it/10 C$ \OT1/cmr/m/it/10 of $\OML/cmm/m/it/10 G$ \OT1/cmr/m/it/10 has $\OMS/cmsy/m/n/10 j\OML/cmm/m/it/10 V\OT1/cmr/m/n/10 (\OML/cmm/m/it/10 C\OT1/cmr/m/n/10 )\OMS/cmsy/m/n/10 j ^^U [] -[17] [18] (./paper.aux) ) +[18] [19] (./paper.aux) ) Here is how much of TeX's memory you used: - 14067 strings out of 478268 - 279813 string characters out of 5846347 - 567042 words of memory out of 5000000 - 31890 multiletter control sequences out of 15000+600000 + 14071 strings out of 478268 + 280140 string characters out of 5846347 + 567078 words of memory out of 5000000 + 31893 multiletter control sequences out of 15000+600000 478218 words of font info for 62 fonts, out of 8000000 for 9000 1302 hyphenation exceptions out of 8191 - 84i,12n,89p,1168b,803s stack positions out of 10000i,1000n,20000p,200000b,200000s -< -/usr/local/texlive/2022/texmf-dist/fonts/type1/public/amsfonts/cm/cmr8.pfb> -Output written on paper.pdf (18 pages, 939287 bytes). + 84i,12n,89p,1239b,803s stack positions out of 10000i,1000n,20000p,200000b,200000s + +Output written on paper.pdf (19 pages, 942692 bytes). PDF statistics: - 198 PDF objects out of 1000 (max. 8388607) - 120 compressed objects within 2 object streams + 202 PDF objects out of 1000 (max. 8388607) + 123 compressed objects within 2 object streams 0 named destinations out of 1000 (max. 500000) 28 words of extra memory for PDF output out of 10000 (max. 10000000) diff --git a/papers/coloring_nested_tire_graphs/paper.pdf b/papers/coloring_nested_tire_graphs/paper.pdf index 5fbfbf2..05300e5 100644 Binary files a/papers/coloring_nested_tire_graphs/paper.pdf and b/papers/coloring_nested_tire_graphs/paper.pdf differ diff --git a/papers/coloring_nested_tire_graphs/paper.tex b/papers/coloring_nested_tire_graphs/paper.tex index 4aabd01..57d0036 100644 --- a/papers/coloring_nested_tire_graphs/paper.tex +++ b/papers/coloring_nested_tire_graphs/paper.tex @@ -1257,6 +1257,21 @@ This is the structural setup underlying the chain-pigeonhole program for tire treads. \end{remark} +\begin{remark}[Motivation for level-cycle restrictions] +\label{rem:level-cycle-motivation} +The tire-tree decomposition reduces global colouring questions to local +choices on treads together with compatibility along nested boundary +cycles. Without further structure, the number of boundary colour states +can grow quickly as one descends the tree: each seam or level cycle may +in principle carry any proper restriction of a $4$-colouring. The +following restriction is meant to test whether this state space can be +compressed. If level cycles can always be made to omit one colour, then +each such interface behaves like a three-colour boundary object, while +still allowing different cycles to omit different colours. This would +not by itself solve the gluing problem, but it would give a simpler +target class of boundary states for arguments about nested tire trees. +\end{remark} + \begin{definition}[Level-cycle three-colour restriction] \label{def:level-cycle-three-colour-restriction} Let $G$ be a maximal planar graph, let $S \subseteq V(G)$ be a level @@ -1276,13 +1291,51 @@ tread, or the same inner outerplanar component are not required to omit the same colour. \end{definition} -\begin{conjecture}[Level-cycle three-colour conjecture] -\label{conj:level-cycle-three-colour} +\begin{conjecture}[False universal-source form] +\label{conj:false-universal-level-cycle-three-colour} Let $G$ be a maximal planar graph and let $S \subseteq V(G)$ be any level source. Then $G$ admits a proper $4$-vertex-colouring with the level-cycle three-colour restriction with respect to $S$. \end{conjecture} +\begin{example}[Counterexample to Conjecture~\ref{conj:false-universal-level-cycle-three-colour}] +\label{ex:universal-level-cycle-counterexample} +Let $G$ be the maximal planar graph on vertex set +$\{1,2,3,4,5,6,7,8\}$ with edge set +\[ +\begin{aligned} +E(G)=\{& +12,13,14,15,16,17,23,26,27,34,35,36,38,\\ +&45,56,58,67,68\}. +\end{aligned} +\] +Here $ij$ denotes the edge $\{i,j\}$. +Take the vertex source $S=\{7\}$. The corresponding levels are +\[ +L_0=\{7\},\qquad L_1=\{1,2,6\},\qquad +L_2=\{3,4,5,8\}. +\] +Inside $G[L_2]$ the vertices $(3,4,5,8)$ form a simple cycle. In +every proper $4$-vertex-colouring of $G$, these four vertices receive +four distinct colours. The edges $34$, $45$, $58$, $38$, and $35$ +force all pairs among $\{3,4,5,8\}$ except possibly $\{4,8\}$ to have +distinct colours. If $4$ and $8$ had the same colour, then vertex $6$, +which is adjacent to $3$, $5$, and $8$, would have to use the fourth +colour; but vertex $1$ is adjacent to $3$, $4$, $5$, and $6$, and +would then be adjacent to all four colours, impossible in a proper +$4$-colouring. Hence $4$ and $8$ also have distinct colours, so the +level cycle $(3,4,5,8)$ uses all four colours in every proper +$4$-colouring of $G$. Therefore no proper $4$-colouring has the +level-cycle three-colour restriction with respect to $S=\{7\}$. +\end{example} + +\begin{conjecture}[Level-cycle three-colour conjecture] +\label{conj:level-cycle-three-colour} +Let $G$ be a maximal planar graph. Then there exists a level source +$S \subseteq V(G)$ such that $G$ admits a proper $4$-vertex-colouring +with the level-cycle three-colour restriction with respect to $S$. +\end{conjecture} + \begin{definition}[Seam] \label{def:seam} A \emph{seam} of a maximal planar graph $G$ is a simple cycle