From 464c524fa1645e605075fa6988f3c4f7be9c45ea Mon Sep 17 00:00:00 2001 From: didericis Date: Sun, 24 May 2026 11:27:50 -0400 Subject: [PATCH] dual_decomposition: Conj 3.6 (face/Kempe witness) and constructive lift Paper: - Lemmas 3.4 (exactly one match) and 3.5 (all-distinct exists for 4-colourable G) replace the earlier conjecture; both have proofs. - Add Conjecture 3.6: every proper 3-edge-colouring of a counterexample's reduced dual has a face with two same-colour edges that share a Kempe cycle with the merged edge, neither of them being the merged edge. Experiments (all under experiments/): - search_conj_3_6_counterexample.py: finds n=14 tri#1 i_red=0 where the algorithm's phi_t* sits in a Kempe class with no all-distinct colouring (disproves an earlier formulation). - check_kempe_class.py / check_kempe_class_invariance.py / check_kempe_class_monotone.py: Kempe-class counts on H_1 and H_t* for small triangulations; neither monotonicity direction holds. - check_all_distinct_exists.py: even in the conj-3.6 disproof case, H_t* itself admits all-distinct colourings in the *other* Kempe class. - check_constrained_feasibility.py: literal H_t*-interpretation of C1 + K0 + K1 is empirically unsatisfiable (gap in proof strategy noted). - check_conj_face_kempe.py / check_conj_face_kempe_n15.py: test Conj 3.6 on chord-apex+Kempe colourings of reduced duals at n=12, 14, 15; 216/216 colourings on n=14 satisfy the conjecture, others vacuous. - draw_step1_conj36.py: figure showing a Conj 3.6 witness on H_1 with two new vertices on the witness edges and a new red bridge between them. - draw_step1_conj36_recolored.py: same but with the Kempe cycle recoloured alternately from merged so propriety holds. - draw_lift_to_Gprime.py: lifts the modified+recoloured H_1 back to a proper 3-edge-colouring of the modified G' (24+2 vertices, 39 edges, same Tutte layout as figure 3's first graphic so positions line up). Co-Authored-By: Claude Opus 4.7 --- .../experiments/check_all_distinct_exists.py | 329 +++++++++++++ .../experiments/check_conj_face_kempe.py | 192 ++++++++ .../experiments/check_conj_face_kempe_n15.py | 59 +++ .../check_constrained_feasibility.py | 259 ++++++++++ .../experiments/check_kempe_class.py | 183 +++++++ .../check_kempe_class_invariance.py | 288 +++++++++++ .../experiments/check_kempe_class_monotone.py | 310 ++++++++++++ .../experiments/draw_lift_to_Gprime.py | 464 ++++++++++++++++++ .../experiments/draw_step1_conj36.py | 277 +++++++++++ .../draw_step1_conj36_recolored.py | 373 ++++++++++++++ .../search_conj_3_6_counterexample.py | 380 ++++++++++++++ .../fig_alg_step1_conj36.png | Bin 0 -> 84381 bytes .../fig_alg_step1_conj36_recolored.png | Bin 0 -> 84537 bytes .../fig_lift_to_Gprime.png | Bin 0 -> 89397 bytes .../paper.aux | 10 +- .../paper.fdb_latexmk | 18 +- .../paper.fls | 35 ++ .../paper.log | 139 ++---- .../paper.pdf | Bin 969703 -> 977618 bytes .../paper.tex | 123 ++++- 20 files changed, 3326 insertions(+), 113 deletions(-) create mode 100644 papers/dual_decomposition_minimal_counterexamples/experiments/check_all_distinct_exists.py create mode 100644 papers/dual_decomposition_minimal_counterexamples/experiments/check_conj_face_kempe.py create mode 100644 papers/dual_decomposition_minimal_counterexamples/experiments/check_conj_face_kempe_n15.py create mode 100644 papers/dual_decomposition_minimal_counterexamples/experiments/check_constrained_feasibility.py create mode 100644 papers/dual_decomposition_minimal_counterexamples/experiments/check_kempe_class.py create mode 100644 papers/dual_decomposition_minimal_counterexamples/experiments/check_kempe_class_invariance.py create mode 100644 papers/dual_decomposition_minimal_counterexamples/experiments/check_kempe_class_monotone.py create mode 100644 papers/dual_decomposition_minimal_counterexamples/experiments/draw_lift_to_Gprime.py create mode 100644 papers/dual_decomposition_minimal_counterexamples/experiments/draw_step1_conj36.py create mode 100644 papers/dual_decomposition_minimal_counterexamples/experiments/draw_step1_conj36_recolored.py create mode 100644 papers/dual_decomposition_minimal_counterexamples/experiments/search_conj_3_6_counterexample.py create mode 100644 papers/dual_decomposition_minimal_counterexamples/fig_alg_step1_conj36.png create mode 100644 papers/dual_decomposition_minimal_counterexamples/fig_alg_step1_conj36_recolored.png create mode 100644 papers/dual_decomposition_minimal_counterexamples/fig_lift_to_Gprime.png diff --git a/papers/dual_decomposition_minimal_counterexamples/experiments/check_all_distinct_exists.py b/papers/dual_decomposition_minimal_counterexamples/experiments/check_all_distinct_exists.py new file mode 100644 index 0000000..1677684 --- /dev/null +++ b/papers/dual_decomposition_minimal_counterexamples/experiments/check_all_distinct_exists.py @@ -0,0 +1,329 @@ +"""Probe: even when phi_t* is in a Kempe class with no all-distinct, does +H_t* itself admit an all-distinct coloring in SOME (other) Kempe class? + +Reuses the Conj 3.6 counterexample: n=14, tri#1, i_red=0, phi_1 from the +chord-apex+Kempe colorings. Enumerates every proper 3-edge-coloring of +H_t*, marks the Kempe classes, and for each class reports whether it +contains an all-distinct coloring. + +Run with: sage experiments/check_all_distinct_exists.py +""" +from sage.all import Graph +from sage.graphs.graph_generators import graphs +import sys + + +def dual_of(G): + G.is_planar(set_embedding=True) + faces = G.faces() + edge_to_faces = {} + for fi, face in enumerate(faces): + for u, v in face: + edge_to_faces.setdefault(frozenset((u, v)), []).append(fi) + dual_edges = [(fs[0], fs[1]) for fs in edge_to_faces.values() if len(fs) == 2] + return Graph(dual_edges, multiedges=False, loops=False) + + +def proper_3_edge_colorings(G): + edges = list(G.edges(labels=False)) + n = len(edges) + adj = [[] for _ in range(n)] + for i in range(n): + u, v = edges[i][0], edges[i][1] + for j in range(i): + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + adj[i].append(j) + adj[j].append(i) + coloring = [-1] * n + results = [] + + def back(k): + if k == n: + results.append(tuple(coloring)) + return + for c in range(3): + if all(coloring[j] != c for j in adj[k]): + coloring[k] = c + back(k + 1) + coloring[k] = -1 + + back(0) + return edges, results + + +def kempe_cycle(edges, coloring, start_idx, color_pair): + a, b = color_pair + if coloring[start_idx] not in (a, b): + return set() + in_sub = set(i for i in range(len(edges)) if coloring[i] in (a, b)) + visited = {start_idx} + stack = [start_idx] + while stack: + cur = stack.pop() + u, v = edges[cur][0], edges[cur][1] + for j in in_sub: + if j in visited: + continue + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + visited.add(j) + stack.append(j) + return visited + + +def edge_idx(edges, e_frozen): + for i, e in enumerate(edges): + if frozenset((e[0], e[1])) == e_frozen: + return i + return None + + +def matches_chord_apex_kempe(edges, col, named): + idx = {role: edge_idx(edges, ns) for role, ns in named.items()} + if any(v is None for v in idx.values()): + return False + c_spike = col[idx['spike']] + c_merged = col[idx['merged']] + if c_spike != c_merged: + return False + c_s0 = col[idx['side_0']] + c_s1 = col[idx['side_1']] + kc0 = kempe_cycle(edges, col, idx['spike'], (c_spike, c_s0)) + if idx['side_0'] not in kc0 or idx['merged'] not in kc0: + return False + kc1 = kempe_cycle(edges, col, idx['spike'], (c_spike, c_s1)) + if idx['side_1'] not in kc1 or idx['merged'] not in kc1: + return False + return True + + +def apply_reduction(G, face, i, v_n_label): + boundary = [u for (u, v) in face] + if len(set(boundary)) != 5: + return None + A = [] + for B_k in boundary: + outer = [w for w in G.neighbor_iterator(B_k) if w not in boundary] + if len(outer) != 1: + return None + A.append(outer[0]) + if len(set(A)) != 5: + return None + if A[(i + 3) % 5] == A[(i + 4) % 5]: + return None + H = G.copy() + for v in boundary: + H.delete_vertex(v) + H.add_vertex(v_n_label) + side_0 = (v_n_label, A[i]) + spike = (v_n_label, A[(i + 1) % 5]) + side_1 = (v_n_label, A[(i + 2) % 5]) + merged = (A[(i + 3) % 5], A[(i + 4) % 5]) + H.add_edges([side_0, spike, side_1, merged]) + if H.has_multiple_edges() or H.has_loops(): + return None + if not H.is_planar(set_embedding=True): + return None + if not all(H.degree(v) == 3 for v in H.vertex_iterator()): + return None + return { + 'H': H, 'A': A, + 'named': { + 'spike': frozenset(spike), + 'side_0': frozenset(side_0), + 'side_1': frozenset(side_1), + 'merged': frozenset(merged), + }, + } + + +def find_safe_pentagonal_face(G, protected): + for face in G.faces(): + if len(face) != 5: + continue + boundary = [u for (u, v) in face] + boundary_edges = [frozenset([u, v]) for (u, v) in face] + externals = [] + A = [] + ok = True + for B_k in boundary: + outer = [w for w in G.neighbor_iterator(B_k) if w not in boundary] + if len(outer) != 1: + ok = False + break + externals.append(frozenset([B_k, outer[0]])) + A.append(outer[0]) + if not ok: + continue + if any(e in protected for e in boundary_edges + externals): + continue + return boundary, externals, A + return None + + +def valid_index(f_vec, A): + for i in range(5): + if f_vec[(i + 3) % 5] != f_vec[(i + 4) % 5]: + continue + if len({f_vec[i], f_vec[(i + 1) % 5], f_vec[(i + 2) % 5]}) != 3: + continue + if A[(i + 3) % 5] == A[(i + 4) % 5]: + continue + return i + return None + + +def run_algorithm_to_completion(H, phi_1_dict, named_step1, vn_start=10000): + H = H.copy() + coloring = dict(phi_1_dict) + all_named = [named_step1] + E = set(named_step1.values()) + next_vn = vn_start + while True: + H.is_planar(set_embedding=True) + result = find_safe_pentagonal_face(H, E) + if result is None: + break + boundary, externals, A = result + f_vec = [coloring[e] for e in externals] + i_t = valid_index(f_vec, A) + if i_t is None: + break + v_n = next_vn + next_vn += 1 + H_new = H.copy() + for v in boundary: + H_new.delete_vertex(v) + H_new.add_vertex(v_n) + side_0 = (v_n, A[i_t]) + spike = (v_n, A[(i_t + 1) % 5]) + side_1 = (v_n, A[(i_t + 2) % 5]) + merged = (A[(i_t + 3) % 5], A[(i_t + 4) % 5]) + H_new.add_edges([side_0, spike, side_1, merged]) + if H_new.has_multiple_edges() or H_new.has_loops(): + break + if not H_new.is_planar(set_embedding=True): + break + H = H_new + coloring = {e: c for e, c in coloring.items() + if not any(u in boundary for u in e)} + coloring[frozenset(side_0)] = f_vec[i_t] + coloring[frozenset(spike)] = f_vec[(i_t + 1) % 5] + coloring[frozenset(side_1)] = f_vec[(i_t + 2) % 5] + coloring[frozenset(merged)] = f_vec[(i_t + 3) % 5] + named = { + 'spike': frozenset(spike), + 'side_0': frozenset(side_0), + 'side_1': frozenset(side_1), + 'merged': frozenset(merged), + } + E |= set(named.values()) + all_named.append(named) + return H, coloring, all_named + + +def is_all_distinct(edges, col, all_named): + for named in all_named: + i_s = edge_idx(edges, named['spike']) + i_m = edge_idx(edges, named['merged']) + if i_s is None or i_m is None: + return False + if col[i_s] == col[i_m]: + return False + return True + + +def main(): + print("Reconstructing Conj 3.6 counterexample: n=14, tri#1, i_red=0") + for G in graphs.triangulations(14, minimum_degree=5): + D = dual_of(G) + D.is_planar(set_embedding=True) + chosen = None + for face in D.faces(): + if len(face) != 5: + continue + res = apply_reduction(D, face, 0, 9999) + if res is None: + continue + H_1, named_1 = res['H'], res['named'] + edges_1, colorings_1 = proper_3_edge_colorings(H_1) + cand = [c for c in colorings_1 + if matches_chord_apex_kempe(edges_1, c, named_1)] + if cand: + chosen = (face, res, cand) + break + if chosen is None: + continue + face, res, cand = chosen + H_1, named_1 = res['H'], res['named'] + edges_1, _ = proper_3_edge_colorings(H_1) + if not cand: + continue + phi_1 = cand[0] + phi_1_dict = {frozenset((e[0], e[1])): c for e, c in zip(edges_1, phi_1)} + H_final, phi_final_dict, all_named = run_algorithm_to_completion( + H_1, phi_1_dict, named_1) + edges_f, colorings_f = proper_3_edge_colorings(H_final) + print(f" H_t*: |V|={H_final.order()}, |E|={H_final.size()}, " + f"{len(colorings_f)} proper 3-edge-colorings, " + f"{len(all_named)} named-edge steps.") + + # Kempe equivalence classes via union-find + col_idx = {c: i for i, c in enumerate(colorings_f)} + parent = list(range(len(colorings_f))) + + def find(x): + while parent[x] != x: + parent[x] = parent[parent[x]] + x = parent[x] + return x + + def union(x, y): + rx, ry = find(x), find(y) + if rx != ry: + parent[rx] = ry + + for c_idx, col in enumerate(colorings_f): + for pair in [(0, 1), (0, 2), (1, 2)]: + visited = set() + for start in range(len(edges_f)): + if col[start] not in pair or start in visited: + continue + cyc = kempe_cycle(edges_f, col, start, pair) + visited |= cyc + a, b = pair + new_col = list(col) + for k in cyc: + if new_col[k] == a: + new_col[k] = b + elif new_col[k] == b: + new_col[k] = a + new_col = tuple(new_col) + if new_col != col and new_col in col_idx: + union(c_idx, col_idx[new_col]) + + roots = {} + for i in range(len(colorings_f)): + r = find(i) + roots.setdefault(r, []).append(i) + + # phi_t* identification + phi_final = tuple(phi_final_dict[frozenset((e[0], e[1]))] + for e in edges_f) + phi_idx = colorings_f.index(phi_final) + phi_root = find(phi_idx) + + print() + print(f" Found {len(roots)} Kempe equivalence classes:") + for r, members in sorted(roots.items(), key=lambda kv: -len(kv[1])): + ad = [m for m in members + if is_all_distinct(edges_f, colorings_f[m], all_named)] + label = " (contains phi_t*)" if r == phi_root else "" + print(f" class size {len(members)}: " + f"{len(ad)} all-distinct colorings{label}") + return + + +if __name__ == '__main__': + main() diff --git a/papers/dual_decomposition_minimal_counterexamples/experiments/check_conj_face_kempe.py b/papers/dual_decomposition_minimal_counterexamples/experiments/check_conj_face_kempe.py new file mode 100644 index 0000000..c894ce7 --- /dev/null +++ b/papers/dual_decomposition_minimal_counterexamples/experiments/check_conj_face_kempe.py @@ -0,0 +1,192 @@ +"""Test Conjecture 3.6: for every reduced dual of a minimal counterexample, +every proper 3-edge-coloring has a face with two same-color edges that share +a Kempe cycle with the merged edge. + +We can't run on actual counterexamples (none exist by the 4CT). Instead we +test on the structural surrogates: proper 3-edge-colorings of reduced duals +that *satisfy* chord-apex (Lemma 2.6) and the Kempe-cycle condition +(Lemma 2.7). These are the kinds of colorings a counterexample's reduced +dual would be forced to admit. + +For each such (G, face, i_red, phi), check whether some face F of H_1 and +some pair of edges (e1, e2) in partial F satisfy: + - phi(e1) = phi(e2) + - e1, e2, and merged all lie on a common {a,b}-Kempe cycle. + +If conjecture FAILS for some coloring, we have empirical evidence against. +If every coloring passes, evidence in favour. + +Run with: sage experiments/check_conj_face_kempe.py +""" +from sage.all import Graph +from sage.graphs.graph_generators import graphs + + +def dual_of(G): + G.is_planar(set_embedding=True) + faces = G.faces() + edge_to_faces = {} + for fi, face in enumerate(faces): + for u, v in face: + edge_to_faces.setdefault(frozenset((u, v)), []).append(fi) + return Graph( + [(fs[0], fs[1]) for fs in edge_to_faces.values() if len(fs) == 2], + multiedges=False, loops=False) + + +def apply_reduction(G, face, i, v_n_label): + boundary = [u for (u, v) in face] + if len(set(boundary)) != 5: return None + A = [] + for B_k in boundary: + outer = [w for w in G.neighbor_iterator(B_k) if w not in boundary] + if len(outer) != 1: return None + A.append(outer[0]) + if len(set(A)) != 5 or A[(i+3) % 5] == A[(i+4) % 5]: return None + H = G.copy() + for v in boundary: H.delete_vertex(v) + H.add_vertex(v_n_label) + side_0 = (v_n_label, A[i]) + spike = (v_n_label, A[(i+1) % 5]) + side_1 = (v_n_label, A[(i+2) % 5]) + merged = (A[(i+3) % 5], A[(i+4) % 5]) + H.add_edges([side_0, spike, side_1, merged]) + if H.has_multiple_edges() or H.has_loops(): return None + if not H.is_planar(set_embedding=True): return None + if not all(H.degree(v) == 3 for v in H.vertex_iterator()): return None + return { + 'H': H, + 'named': { + 'spike': frozenset(spike), 'side_0': frozenset(side_0), + 'side_1': frozenset(side_1), 'merged': frozenset(merged), + }, + } + + +def proper_3_edge_colorings(G): + edges = list(G.edges(labels=False)) + n = len(edges) + adj = [[] for _ in range(n)] + for i in range(n): + u, v = edges[i][0], edges[i][1] + for j in range(i): + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + adj[i].append(j); adj[j].append(i) + coloring = [-1] * n + results = [] + + def back(k): + if k == n: + results.append(tuple(coloring)) + return + for c in range(3): + if all(coloring[j] != c for j in adj[k]): + coloring[k] = c + back(k + 1) + coloring[k] = -1 + back(0) + return edges, results + + +def kempe_cycle(edges, coloring, start_idx, color_pair): + a, b = color_pair + if coloring[start_idx] not in (a, b): + return set() + in_sub = set(i for i in range(len(edges)) if coloring[i] in (a, b)) + visited = {start_idx} + stack = [start_idx] + while stack: + cur = stack.pop() + u, v = edges[cur][0], edges[cur][1] + for j in in_sub: + if j in visited: + continue + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + visited.add(j); stack.append(j) + return visited + + +def edge_idx(edges, e_frozen): + for i, e in enumerate(edges): + if frozenset((e[0], e[1])) == e_frozen: + return i + return None + + +def matches_chord_apex_kempe(edges, col, named): + idx = {role: edge_idx(edges, ns) for role, ns in named.items()} + if any(v is None for v in idx.values()): return False + c_spike = col[idx['spike']] + c_merged = col[idx['merged']] + if c_spike != c_merged: return False + c_s0 = col[idx['side_0']]; c_s1 = col[idx['side_1']] + kc0 = kempe_cycle(edges, col, idx['spike'], (c_spike, c_s0)) + if idx['side_0'] not in kc0 or idx['merged'] not in kc0: return False + kc1 = kempe_cycle(edges, col, idx['spike'], (c_spike, c_s1)) + if idx['side_1'] not in kc1 or idx['merged'] not in kc1: return False + return True + + +def conjecture_holds_for(H, edges, col, named): + """Returns (F, e1, e2, kc) if some face F has two same-color edges (e1, e2) + and both, together with merged, lie on a Kempe cycle kc. Else None.""" + merged_idx = edge_idx(edges, named['merged']) + c_merged = col[merged_idx] + # All Kempe cycles through merged (one per color pair (c_merged, c')) + kempe_cycles = [] + for c_prime in range(3): + if c_prime == c_merged: continue + kc = kempe_cycle(edges, col, merged_idx, (c_merged, c_prime)) + kempe_cycles.append(kc) + for face in H.faces(): + face_edge_indices = [] + for u, v in face: + ei = edge_idx(edges, frozenset((u, v))) + if ei is not None: + face_edge_indices.append(ei) + for i in range(len(face_edge_indices)): + for j in range(i + 1, len(face_edge_indices)): + e1, e2 = face_edge_indices[i], face_edge_indices[j] + if col[e1] != col[e2]: continue + for kc in kempe_cycles: + if e1 in kc and e2 in kc: + return face, e1, e2, kc + return None + + +def main(): + for n in [12, 14, 15]: + print(f"=== n = {n} ===") + try: + triangulations = list(graphs.triangulations(n, minimum_degree=5)) + except Exception as ex: + print(f" cannot enumerate: {ex}"); continue + for tri_idx, G in enumerate(triangulations, start=1): + G.is_planar(set_embedding=True) + D = dual_of(G); D.is_planar(set_embedding=True) + for face_no, face in enumerate( + f for f in D.faces() if len(f) == 5): + for i_red in range(5): + res = apply_reduction(D, face, i_red, 9999) + if res is None: continue + H = res['H']; named = res['named'] + H.is_planar(set_embedding=True) + edges, colorings = proper_3_edge_colorings(H) + cand = [c for c in colorings + if matches_chord_apex_kempe(edges, c, named)] + if not cand: continue + n_pass = sum(1 for c in cand + if conjecture_holds_for(H, edges, c, named) + is not None) + n_fail = len(cand) - n_pass + status = "PASSED" if n_fail == 0 else "*** FAILED ***" + print(f" n={n} tri#{tri_idx} face#{face_no} i_red={i_red}: " + f"{len(cand)} chord-apex+Kempe colorings; " + f"{n_pass} satisfy conjecture, {n_fail} fail. " + f"{status}") + + +if __name__ == '__main__': + main() diff --git a/papers/dual_decomposition_minimal_counterexamples/experiments/check_conj_face_kempe_n15.py b/papers/dual_decomposition_minimal_counterexamples/experiments/check_conj_face_kempe_n15.py new file mode 100644 index 0000000..defa88d --- /dev/null +++ b/papers/dual_decomposition_minimal_counterexamples/experiments/check_conj_face_kempe_n15.py @@ -0,0 +1,59 @@ +"""Run conjecture 3.6 test specifically on n=15 with progress output.""" +from sage.all import Graph +from sage.graphs.graph_generators import graphs +import sys + +# Reuse helpers from check_conj_face_kempe.py by importing +sys.path.insert(0, '/Users/didericis/Code/math-research/papers/dual_decomposition_minimal_counterexamples/experiments') +from check_conj_face_kempe import ( + dual_of, apply_reduction, proper_3_edge_colorings, + kempe_cycle, edge_idx, matches_chord_apex_kempe, + conjecture_holds_for +) + + +def main(): + n = 15 + print(f"=== n = {n} ===") + triangulations = list(graphs.triangulations(n, minimum_degree=5)) + print(f" Found {len(triangulations)} triangulations.") + total_cand = 0 + total_pass = 0 + total_fail = 0 + for tri_idx, G in enumerate(triangulations, start=1): + G.is_planar(set_embedding=True) + D = dual_of(G); D.is_planar(set_embedding=True) + pentagonal_faces = [f for f in D.faces() if len(f) == 5] + for face_no, face in enumerate(pentagonal_faces): + for i_red in range(5): + res = apply_reduction(D, face, i_red, 9999) + if res is None: continue + H = res['H']; named = res['named'] + H.is_planar(set_embedding=True) + edges, colorings = proper_3_edge_colorings(H) + cand = [c for c in colorings + if matches_chord_apex_kempe(edges, c, named)] + if not cand: continue + n_pass = sum(1 for c in cand + if conjecture_holds_for(H, edges, c, named) + is not None) + n_fail = len(cand) - n_pass + total_cand += len(cand) + total_pass += n_pass + total_fail += n_fail + status = "PASSED" if n_fail == 0 else "*** FAILED ***" + print(f" tri#{tri_idx} face#{face_no} i_red={i_red}: " + f"{len(cand)} chord-apex+Kempe; {n_pass} pass, " + f"{n_fail} fail. {status}") + sys.stdout.flush() + if tri_idx % 5 == 0: + print(f" ... finished tri#{tri_idx}/{len(triangulations)}; " + f"cumulative cand={total_cand}, pass={total_pass}, " + f"fail={total_fail}") + sys.stdout.flush() + print(f"\nTotal: {total_cand} chord-apex+Kempe colorings tested; " + f"{total_pass} pass, {total_fail} fail.") + + +if __name__ == '__main__': + main() diff --git a/papers/dual_decomposition_minimal_counterexamples/experiments/check_constrained_feasibility.py b/papers/dual_decomposition_minimal_counterexamples/experiments/check_constrained_feasibility.py new file mode 100644 index 0000000..1d2909b --- /dev/null +++ b/papers/dual_decomposition_minimal_counterexamples/experiments/check_constrained_feasibility.py @@ -0,0 +1,259 @@ +"""Constrained 3-edge-colouring feasibility on H_t*. + +The chord-apex (Lemma 2.6) and Kempe-cycle (Lemma 2.7) lemmas give proven +constraints on proper 3-edge-colourings of H_1 when G is a minimal +counterexample. The step-1 constraints, *interpreted on H_t*, are: + + (C1) phi(spike_1) = phi(merged_1) [chord-apex] + (K0) the {phi(spike_1), phi(side_0_1)}-Kempe cycle of H_t* through + spike_1 contains side_0_1 and merged_1 + (K1) the {phi(spike_1), phi(side_1_1)}-Kempe cycle of H_t* through + spike_1 contains side_1_1 and merged_1 + +If G is a minimal counterexample then every proper 3-edge-colouring of H_t* +that *lifts back* to a proper 3-edge-colouring of H_1 must satisfy (C1) + +(K0) + (K1) on H_1; the Kempe-cycle structure on H_t* and H_1 can differ, +but we test the H_t*-interpreted versions here as the natural constraint +set the algorithm propagates. + +For each min-deg-5 triangulation G and each (face, i_red) we enumerate +proper 3-edge-colourings of H_t* and count those satisfying these step-1 +constraints. If the constrained problem is INFEASIBLE on H_t* for some G +in our test set, that would be a hint that constraints alone can rule out +3-edge-colourability of H_t* -- a potential mechanism for proving smaller +counterexamples exist. + +Run with: sage experiments/check_constrained_feasibility.py +""" +from sage.all import Graph +from sage.graphs.graph_generators import graphs +from sage.graphs.graph_coloring import edge_coloring +import sys + + +def dual_of(G): + G.is_planar(set_embedding=True) + faces = G.faces() + edge_to_faces = {} + for fi, face in enumerate(faces): + for u, v in face: + edge_to_faces.setdefault(frozenset((u, v)), []).append(fi) + return Graph( + [(fs[0], fs[1]) for fs in edge_to_faces.values() if len(fs) == 2], + multiedges=False, loops=False) + + +def proper_3_edge_colorings(G): + edges = list(G.edges(labels=False)) + n = len(edges) + adj = [[] for _ in range(n)] + for i in range(n): + u, v = edges[i][0], edges[i][1] + for j in range(i): + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + adj[i].append(j); adj[j].append(i) + coloring = [-1] * n + results = [] + + def back(k): + if k == n: + results.append(tuple(coloring)) + return + for c in range(3): + if all(coloring[j] != c for j in adj[k]): + coloring[k] = c + back(k + 1) + coloring[k] = -1 + back(0) + return edges, results + + +def kempe_cycle(edges, coloring, start_idx, color_pair): + a, b = color_pair + if coloring[start_idx] not in (a, b): + return set() + in_sub = set(i for i in range(len(edges)) if coloring[i] in (a, b)) + visited = {start_idx} + stack = [start_idx] + while stack: + cur = stack.pop() + u, v = edges[cur][0], edges[cur][1] + for j in in_sub: + if j in visited: + continue + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + visited.add(j); stack.append(j) + return visited + + +def edge_idx(edges, e_frozen): + for i, e in enumerate(edges): + if frozenset((e[0], e[1])) == e_frozen: + return i + return None + + +def apply_reduction(G, face, i, v_n_label): + boundary = [u for (u, v) in face] + if len(set(boundary)) != 5: return None + A = [] + for B_k in boundary: + outer = [w for w in G.neighbor_iterator(B_k) if w not in boundary] + if len(outer) != 1: return None + A.append(outer[0]) + if len(set(A)) != 5 or A[(i+3) % 5] == A[(i+4) % 5]: return None + H = G.copy() + for v in boundary: H.delete_vertex(v) + H.add_vertex(v_n_label) + side_0 = (v_n_label, A[i]) + spike = (v_n_label, A[(i+1) % 5]) + side_1 = (v_n_label, A[(i+2) % 5]) + merged = (A[(i+3) % 5], A[(i+4) % 5]) + H.add_edges([side_0, spike, side_1, merged]) + if H.has_multiple_edges() or H.has_loops(): return None + if not H.is_planar(set_embedding=True): return None + if not all(H.degree(v) == 3 for v in H.vertex_iterator()): return None + return { + 'H': H, + 'named': { + 'spike': frozenset(spike), 'side_0': frozenset(side_0), + 'side_1': frozenset(side_1), 'merged': frozenset(merged), + }, + } + + +def find_safe_pentagonal_face(G, protected): + for face in G.faces(): + if len(face) != 5: continue + boundary = [u for (u, v) in face] + boundary_edges = [frozenset([u, v]) for (u, v) in face] + externals, A, ok = [], [], True + for B_k in boundary: + outer = [w for w in G.neighbor_iterator(B_k) if w not in boundary] + if len(outer) != 1: ok = False; break + externals.append(frozenset([B_k, outer[0]])); A.append(outer[0]) + if not ok: continue + if any(e in protected for e in boundary_edges + externals): continue + return boundary, externals, A + return None + + +def valid_index(f_vec, A): + for i in range(5): + if f_vec[(i+3) % 5] != f_vec[(i+4) % 5]: continue + if len({f_vec[i], f_vec[(i+1) % 5], f_vec[(i+2) % 5]}) != 3: continue + if A[(i+3) % 5] == A[(i+4) % 5]: continue + return i + return None + + +def run_to_completion(H, phi_dict, named_step1, vn_start=10000): + H = H.copy() + coloring = dict(phi_dict) + all_named = [named_step1] + E = set(named_step1.values()) + next_vn = vn_start + while True: + H.is_planar(set_embedding=True) + result = find_safe_pentagonal_face(H, E) + if result is None: break + boundary, externals, A = result + f_vec = [coloring[e] for e in externals] + i_t = valid_index(f_vec, A) + if i_t is None: break + v_n = next_vn; next_vn += 1 + H_new = H.copy() + for v in boundary: H_new.delete_vertex(v) + H_new.add_vertex(v_n) + s0 = (v_n, A[i_t]); sp = (v_n, A[(i_t+1) % 5]) + s1 = (v_n, A[(i_t+2) % 5]); mg = (A[(i_t+3) % 5], A[(i_t+4) % 5]) + H_new.add_edges([s0, sp, s1, mg]) + if H_new.has_multiple_edges() or H_new.has_loops(): break + if not H_new.is_planar(set_embedding=True): break + H = H_new + coloring = {e: c for e, c in coloring.items() + if not any(u in boundary for u in e)} + coloring[frozenset(s0)] = f_vec[i_t] + coloring[frozenset(sp)] = f_vec[(i_t+1) % 5] + coloring[frozenset(s1)] = f_vec[(i_t+2) % 5] + coloring[frozenset(mg)] = f_vec[(i_t+3) % 5] + all_named.append({ + 'spike': frozenset(sp), 'side_0': frozenset(s0), + 'side_1': frozenset(s1), 'merged': frozenset(mg), + }) + E |= set(all_named[-1].values()) + return H, coloring, all_named + + +def check_constraints(edges, col, named): + """Check (C1) + (K0) + (K1) on this colouring.""" + idx = {role: edge_idx(edges, ns) for role, ns in named.items()} + if any(v is None for v in idx.values()): + return False, False, False + c_spike = col[idx['spike']] + c_merged = col[idx['merged']] + C1 = (c_spike == c_merged) + if not C1: + return False, False, False + c_s0 = col[idx['side_0']]; c_s1 = col[idx['side_1']] + kc0 = kempe_cycle(edges, col, idx['spike'], (c_spike, c_s0)) + kc1 = kempe_cycle(edges, col, idx['spike'], (c_spike, c_s1)) + K0 = idx['side_0'] in kc0 and idx['merged'] in kc0 + K1 = idx['side_1'] in kc1 and idx['merged'] in kc1 + return C1, K0, K1 + + +def run_case(G, n, tri_idx): + G.is_planar(set_embedding=True) + D = dual_of(G); D.is_planar(set_embedding=True) + for face_n, face in enumerate([f for f in D.faces() if len(f) == 5]): + for i_red in range(5): + res = apply_reduction(D, face, i_red, 9999) + if res is None: continue + H_1, named_1 = res['H'], res['named'] + # Default phi_1: Sage's edge_coloring + try: + classes = edge_coloring(H_1, value_only=False) + except Exception: + continue + if len(classes) > 3: continue + phi_1_dict = {} + for k, edge_list in enumerate(classes): + for u, v in edge_list: + phi_1_dict[frozenset([u, v])] = k + H_final, _, all_named = run_to_completion(H_1, phi_1_dict, named_1) + edges_f, colorings_f = proper_3_edge_colorings(H_final) + n_total = len(colorings_f) + n_c1 = 0; n_c1_k0 = 0; n_c1_k1 = 0; n_all = 0 + for col in colorings_f: + C1, K0, K1 = check_constraints(edges_f, col, named_1) + if C1: n_c1 += 1 + if C1 and K0: n_c1_k0 += 1 + if C1 and K1: n_c1_k1 += 1 + if C1 and K0 and K1: n_all += 1 + feasible = n_all > 0 + print(f" n={n} tri#{tri_idx} face#{face_n} i_red={i_red}: " + f"|V(H_t*)|={H_final.order()}, |E|={H_final.size()}, " + f"colorings={n_total}, " + f"C1={n_c1}, C1+K0={n_c1_k0}, C1+K1={n_c1_k1}, " + f"C1+K0+K1={n_all} " + f"{'OK' if feasible else '*** INFEASIBLE ***'}") + sys.stdout.flush() + return # one (face, i_red) per triangulation + + +def main(max_n=15): + for n in range(12, max_n + 1): + print(f"\n=== n = {n} ===") + try: + triangulations = list(graphs.triangulations(n, minimum_degree=5)) + except Exception as ex: + print(f" cannot enumerate: {ex}"); continue + for tri_idx, G in enumerate(triangulations, start=1): + run_case(G, n, tri_idx) + + +if __name__ == '__main__': + main() diff --git a/papers/dual_decomposition_minimal_counterexamples/experiments/check_kempe_class.py b/papers/dual_decomposition_minimal_counterexamples/experiments/check_kempe_class.py new file mode 100644 index 0000000..3d03299 --- /dev/null +++ b/papers/dual_decomposition_minimal_counterexamples/experiments/check_kempe_class.py @@ -0,0 +1,183 @@ +"""Check empirically whether all proper 3-edge-colorings of a cubic plane +graph form a single Kempe equivalence class. + +For each test graph: + 1. enumerate all proper 3-edge-colorings; + 2. build a multigraph K whose vertices are the colorings and whose edges + connect pairs related by a single Kempe swap (swapping two colors on + one cycle of the 2-color subgraph); + 3. report the number of connected components of K (= number of Kempe + classes). + +Test inputs: + - Dodecahedron's reduced dual (16 v, 24 e), built as in + check_dodecahedron_kempe.py; + - The n=14 reduced dual found by search_kempe_property.py (20 v, 30 e). +""" +from sage.all import Graph +from sage.graphs.graph_generators import graphs +import sys + + +def all_proper_3_edge_colorings(G): + edges = list(G.edges(labels=False)) + n = len(edges) + adj = [[] for _ in range(n)] + for i in range(n): + u, v = edges[i][0], edges[i][1] + for j in range(i): + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + adj[i].append(j) + adj[j].append(i) + coloring = [-1] * n + results = [] + + def back(k): + if k == n: + results.append(tuple(coloring)) + return + for c in range(3): + if all(coloring[j] != c for j in adj[k]): + coloring[k] = c + back(k + 1) + coloring[k] = -1 + back(0) + return edges, results + + +def kempe_cycles_of(edges, coloring, color_pair): + """List of connected components (as sorted tuples of edge indices) in + the subgraph of edges with color in color_pair.""" + a, b = color_pair + in_sub = [i for i in range(len(edges)) if coloring[i] in (a, b)] + in_set = set(in_sub) + visited = set() + components = [] + for start in in_sub: + if start in visited: + continue + comp = [] + stack = [start] + visited.add(start) + while stack: + cur = stack.pop() + comp.append(cur) + u, v = edges[cur][0], edges[cur][1] + for j in in_set: + if j in visited: + continue + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + visited.add(j) + stack.append(j) + components.append(tuple(sorted(comp))) + return components + + +def swap_on_cycle(coloring, cycle_edges, color_pair): + a, b = color_pair + swap = list(coloring) + for i in cycle_edges: + if swap[i] == a: + swap[i] = b + elif swap[i] == b: + swap[i] = a + return tuple(swap) + + +def kempe_components(G): + edges, colorings = all_proper_3_edge_colorings(G) + print(f" {len(colorings)} proper 3-edge-colorings") + idx = {c: i for i, c in enumerate(colorings)} + parent = list(range(len(colorings))) + + def find(x): + while parent[x] != x: + parent[x] = parent[parent[x]] + x = parent[x] + return x + + def union(x, y): + rx, ry = find(x), find(y) + if rx != ry: + parent[rx] = ry + + for col in colorings: + for a, b in [(0, 1), (0, 2), (1, 2)]: + for cyc in kempe_cycles_of(edges, col, (a, b)): + new_col = swap_on_cycle(col, cyc, (a, b)) + if new_col == col: + continue + if new_col in idx: + union(idx[col], idx[new_col]) + n_classes = len({find(i) for i in range(len(colorings))}) + print(f" Kempe equivalence classes: {n_classes}") + return n_classes + + +def dodecahedron_reduced_dual(): + edges = [] + for k in range(5): + edges.append((('b', k), ('c', k))) + edges.append((('b', k), ('c', (k - 1) % 5))) + edges.append((('c', k), ('d', k))) + edges.append((('d', k), ('d', (k + 1) % 5))) + edges.append(('v_n', ('b', 0))) + edges.append(('v_n', ('b', 1))) + edges.append(('v_n', ('b', 2))) + edges.append((('b', 3), ('b', 4))) + return Graph(edges, multiedges=False, loops=False) + + +def n14_reduced_dual(): + # First min-degree-5 plantri triangulation on 14 vertices, reduced at the + # first pentagonal face with i_red = 1 (matches search_kempe_property.py). + G = next(graphs.triangulations(14, minimum_degree=5)) + G.is_planar(set_embedding=True) + faces = G.faces() + edge_to_faces = {} + for fi, face in enumerate(faces): + for u, v in face: + edge_to_faces.setdefault(frozenset((u, v)), []).append(fi) + dual_edges = [(fs[0], fs[1]) for fs in edge_to_faces.values() if len(fs) == 2] + D = Graph(dual_edges, multiedges=False, loops=False) + D.is_planar(set_embedding=True) + # use first pentagonal face, i_red = 1 + face = next(f for f in D.faces() if len(f) == 5) + boundary = [u for (u, v) in face] + A = [] + for B_k in boundary: + outer = [w for w in D.neighbor_iterator(B_k) if w not in boundary] + A.append(outer[0]) + H = D.copy() + for v in boundary: + H.delete_vertex(v) + vn = '__v_n__' + H.add_vertex(vn) + H.add_edge(vn, A[1]) # spike + H.add_edge(vn, A[0]) # side_0 + H.add_edge(vn, A[2]) # side_1 + H.add_edge(A[3], A[4]) # merged + H.is_planar(set_embedding=True) + return H + + +def main(): + print("Dodecahedron's reduced dual:") + G1 = dodecahedron_reduced_dual() + kempe_components(G1) + + print() + print("n=14 reduced dual (first plantri triangulation, i_red=1):") + G2 = n14_reduced_dual() + kempe_components(G2) + + print() + print("Small sanity check: K_4") + K4 = graphs.CompleteGraph(4) + kempe_components(K4) + + +if __name__ == '__main__': + main() diff --git a/papers/dual_decomposition_minimal_counterexamples/experiments/check_kempe_class_invariance.py b/papers/dual_decomposition_minimal_counterexamples/experiments/check_kempe_class_invariance.py new file mode 100644 index 0000000..9d2cb4d --- /dev/null +++ b/papers/dual_decomposition_minimal_counterexamples/experiments/check_kempe_class_invariance.py @@ -0,0 +1,288 @@ +"""Investigate the conjecture: H_t* has the same number of Kempe equivalence +classes as H_1. + +For each min-deg-5 triangulation G (up to some n) and each reduction index +i_red in {0,...,4}: + - Build H_1 from the first pentagonal face of G' = dual(G). + - Count Kempe classes of H_1. + - Run Algorithm 3.1 to completion with Sage's edge_coloring as phi_1. + - Count Kempe classes of H_t*. + - Print a row. + +Run with: sage experiments/check_kempe_class_invariance.py +""" +from sage.all import Graph +from sage.graphs.graph_generators import graphs +from sage.graphs.graph_coloring import edge_coloring +import sys + + +def dual_of(G): + G.is_planar(set_embedding=True) + faces = G.faces() + edge_to_faces = {} + for fi, face in enumerate(faces): + for u, v in face: + edge_to_faces.setdefault(frozenset((u, v)), []).append(fi) + dual_edges = [(fs[0], fs[1]) for fs in edge_to_faces.values() if len(fs) == 2] + return Graph(dual_edges, multiedges=False, loops=False) + + +def proper_3_edge_colorings(G): + edges = list(G.edges(labels=False)) + n = len(edges) + adj = [[] for _ in range(n)] + for i in range(n): + u, v = edges[i][0], edges[i][1] + for j in range(i): + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + adj[i].append(j) + adj[j].append(i) + coloring = [-1] * n + results = [] + + def back(k): + if k == n: + results.append(tuple(coloring)) + return + for c in range(3): + if all(coloring[j] != c for j in adj[k]): + coloring[k] = c + back(k + 1) + coloring[k] = -1 + + back(0) + return edges, results + + +def kempe_cycle(edges, coloring, start_idx, color_pair): + a, b = color_pair + if coloring[start_idx] not in (a, b): + return set() + in_sub = set(i for i in range(len(edges)) if coloring[i] in (a, b)) + visited = {start_idx} + stack = [start_idx] + while stack: + cur = stack.pop() + u, v = edges[cur][0], edges[cur][1] + for j in in_sub: + if j in visited: + continue + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + visited.add(j) + stack.append(j) + return visited + + +def num_kempe_classes(G): + """Count the Kempe equivalence classes of proper 3-edge-colorings of G.""" + edges, colorings = proper_3_edge_colorings(G) + if not colorings: + return None, 0 + n = len(colorings) + parent = list(range(n)) + + def find(x): + while parent[x] != x: + parent[x] = parent[parent[x]] + x = parent[x] + return x + + def union(x, y): + rx, ry = find(x), find(y) + if rx != ry: + parent[rx] = ry + + col_idx = {c: i for i, c in enumerate(colorings)} + for c_idx, col in enumerate(colorings): + for pair in [(0, 1), (0, 2), (1, 2)]: + visited = set() + for start in range(len(edges)): + if col[start] not in pair or start in visited: + continue + cyc = kempe_cycle(edges, col, start, pair) + visited |= cyc + a, b = pair + new_col = list(col) + for k in cyc: + if new_col[k] == a: + new_col[k] = b + elif new_col[k] == b: + new_col[k] = a + new_col = tuple(new_col) + if new_col != col and new_col in col_idx: + union(c_idx, col_idx[new_col]) + classes = len({find(i) for i in range(n)}) + return n, classes + + +def apply_reduction(G, face, i, v_n_label): + boundary = [u for (u, v) in face] + if len(set(boundary)) != 5: + return None + A = [] + for B_k in boundary: + outer = [w for w in G.neighbor_iterator(B_k) if w not in boundary] + if len(outer) != 1: + return None + A.append(outer[0]) + if len(set(A)) != 5: + return None + if A[(i + 3) % 5] == A[(i + 4) % 5]: + return None + H = G.copy() + for v in boundary: + H.delete_vertex(v) + H.add_vertex(v_n_label) + side_0 = (v_n_label, A[i]) + spike = (v_n_label, A[(i + 1) % 5]) + side_1 = (v_n_label, A[(i + 2) % 5]) + merged = (A[(i + 3) % 5], A[(i + 4) % 5]) + H.add_edges([side_0, spike, side_1, merged]) + if H.has_multiple_edges() or H.has_loops(): + return None + if not H.is_planar(set_embedding=True): + return None + if not all(H.degree(v) == 3 for v in H.vertex_iterator()): + return None + return { + 'H': H, 'A': A, + 'named': { + 'spike': frozenset(spike), + 'side_0': frozenset(side_0), + 'side_1': frozenset(side_1), + 'merged': frozenset(merged), + }, + } + + +def find_safe_pentagonal_face(G, protected): + for face in G.faces(): + if len(face) != 5: + continue + boundary = [u for (u, v) in face] + boundary_edges = [frozenset([u, v]) for (u, v) in face] + externals = [] + A = [] + ok = True + for B_k in boundary: + outer = [w for w in G.neighbor_iterator(B_k) if w not in boundary] + if len(outer) != 1: + ok = False + break + externals.append(frozenset([B_k, outer[0]])) + A.append(outer[0]) + if not ok: + continue + if any(e in protected for e in boundary_edges + externals): + continue + return boundary, externals, A + return None + + +def valid_index(f_vec, A): + for i in range(5): + if f_vec[(i + 3) % 5] != f_vec[(i + 4) % 5]: + continue + if len({f_vec[i], f_vec[(i + 1) % 5], f_vec[(i + 2) % 5]}) != 3: + continue + if A[(i + 3) % 5] == A[(i + 4) % 5]: + continue + return i + return None + + +def run_algorithm_to_completion(H, phi_1_coloring_dict, named_step1, + vn_start=10000): + H = H.copy() + coloring = dict(phi_1_coloring_dict) + E = set(named_step1.values()) + next_vn = vn_start + while True: + H.is_planar(set_embedding=True) + result = find_safe_pentagonal_face(H, E) + if result is None: + break + boundary, externals, A = result + f_vec = [coloring[e] for e in externals] + i_t = valid_index(f_vec, A) + if i_t is None: + break + v_n = next_vn + next_vn += 1 + H_new = H.copy() + for v in boundary: + H_new.delete_vertex(v) + H_new.add_vertex(v_n) + side_0 = (v_n, A[i_t]) + spike = (v_n, A[(i_t + 1) % 5]) + side_1 = (v_n, A[(i_t + 2) % 5]) + merged = (A[(i_t + 3) % 5], A[(i_t + 4) % 5]) + H_new.add_edges([side_0, spike, side_1, merged]) + if H_new.has_multiple_edges() or H_new.has_loops(): + break + if not H_new.is_planar(set_embedding=True): + break + H = H_new + coloring = {e: c for e, c in coloring.items() + if not any(u in boundary for u in e)} + coloring[frozenset(side_0)] = f_vec[i_t] + coloring[frozenset(spike)] = f_vec[(i_t + 1) % 5] + coloring[frozenset(side_1)] = f_vec[(i_t + 2) % 5] + coloring[frozenset(merged)] = f_vec[(i_t + 3) % 5] + E |= {frozenset(spike), frozenset(side_0), frozenset(side_1), + frozenset(merged)} + return H, coloring + + +def main(): + print(f"{'n':>3} {'tri#':>5} {'i_red':>5} | " + f"{'|V(H_1)|':>9} {'|E(H_1)|':>9} {'#col(H_1)':>10} {'#K(H_1)':>8} | " + f"{'|V(H_t*)|':>10} {'|E(H_t*)|':>10} {'#col(H_t*)':>11} {'#K(H_t*)':>10}") + print("-" * 120) + for n in [12, 14]: + try: + triangulations = list(graphs.triangulations(n, minimum_degree=5)) + except Exception as ex: + print(f" cannot enumerate n={n}: {ex}") + continue + for tri_idx, G in enumerate(triangulations, start=1): + G_copy = G.copy() + G_copy.is_planar(set_embedding=True) + D = dual_of(G_copy) + D.is_planar(set_embedding=True) + # iterate over all pentagonal faces (or just the first) + faces = [f for f in D.faces() if len(f) == 5] + if not faces: + continue + face = faces[0] + for i_red in range(5): + res = apply_reduction(D, face, i_red, 9999) + if res is None: + continue + H_1 = res['H'] + # count Kempe classes of H_1 + n_col_h1, n_kc_h1 = num_kempe_classes(H_1) + # run algorithm to completion with Sage's edge_coloring as phi_1 + classes = edge_coloring(H_1, value_only=False) + if len(classes) > 3: + continue + phi_1_dict = {} + for k, edge_list in enumerate(classes): + for u, v in edge_list: + phi_1_dict[frozenset([u, v])] = k + H_final, _ = run_algorithm_to_completion(H_1, phi_1_dict, + res['named']) + n_col_hf, n_kc_hf = num_kempe_classes(H_final) + same = "same" if n_kc_h1 == n_kc_hf else "DIFFERENT" + print(f"{n:>3} {tri_idx:>5} {i_red:>5} | " + f"{H_1.order():>9} {H_1.size():>9} {n_col_h1:>10} {n_kc_h1:>8} | " + f"{H_final.order():>10} {H_final.size():>10} " + f"{n_col_hf:>11} {n_kc_hf:>10} {same}") + sys.stdout.flush() + + +if __name__ == '__main__': + main() diff --git a/papers/dual_decomposition_minimal_counterexamples/experiments/check_kempe_class_monotone.py b/papers/dual_decomposition_minimal_counterexamples/experiments/check_kempe_class_monotone.py new file mode 100644 index 0000000..3ad7436 --- /dev/null +++ b/papers/dual_decomposition_minimal_counterexamples/experiments/check_kempe_class_monotone.py @@ -0,0 +1,310 @@ +"""Investigate the conjecture: + #(Kempe classes of H_t*) <= #(Kempe classes of H_1). + +For each min-deg-5 triangulation G and each (face, i_red) choice giving a +valid H_1, vary phi_1 across many proper 3-edge-colorings of H_1 -- so we +exercise multiple algorithm executions, each potentially producing a +different H_t*. For each execution, count Kempe classes of H_t* and compare +to H_1. + +Reports any case where #classes(H_t*) > #classes(H_1) (counterexample to +the conjecture). + +Run with: sage experiments/check_kempe_class_monotone.py +""" +from sage.all import Graph +from sage.graphs.graph_generators import graphs +import sys +import time + + +def dual_of(G): + G.is_planar(set_embedding=True) + faces = G.faces() + edge_to_faces = {} + for fi, face in enumerate(faces): + for u, v in face: + edge_to_faces.setdefault(frozenset((u, v)), []).append(fi) + dual_edges = [(fs[0], fs[1]) for fs in edge_to_faces.values() if len(fs) == 2] + return Graph(dual_edges, multiedges=False, loops=False) + + +def proper_3_edge_colorings(G): + edges = list(G.edges(labels=False)) + n = len(edges) + adj = [[] for _ in range(n)] + for i in range(n): + u, v = edges[i][0], edges[i][1] + for j in range(i): + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + adj[i].append(j) + adj[j].append(i) + coloring = [-1] * n + results = [] + + def back(k): + if k == n: + results.append(tuple(coloring)) + return + for c in range(3): + if all(coloring[j] != c for j in adj[k]): + coloring[k] = c + back(k + 1) + coloring[k] = -1 + + back(0) + return edges, results + + +def kempe_cycle(edges, coloring, start_idx, color_pair): + a, b = color_pair + if coloring[start_idx] not in (a, b): + return set() + in_sub = set(i for i in range(len(edges)) if coloring[i] in (a, b)) + visited = {start_idx} + stack = [start_idx] + while stack: + cur = stack.pop() + u, v = edges[cur][0], edges[cur][1] + for j in in_sub: + if j in visited: + continue + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + visited.add(j) + stack.append(j) + return visited + + +def num_kempe_classes(G): + edges, colorings = proper_3_edge_colorings(G) + if not colorings: + return 0, 0 + n = len(colorings) + parent = list(range(n)) + + def find(x): + while parent[x] != x: + parent[x] = parent[parent[x]] + x = parent[x] + return x + + def union(x, y): + rx, ry = find(x), find(y) + if rx != ry: + parent[rx] = ry + + col_idx = {c: i for i, c in enumerate(colorings)} + for c_idx, col in enumerate(colorings): + for pair in [(0, 1), (0, 2), (1, 2)]: + visited = set() + for start in range(len(edges)): + if col[start] not in pair or start in visited: + continue + cyc = kempe_cycle(edges, col, start, pair) + visited |= cyc + a, b = pair + new_col = list(col) + for k in cyc: + if new_col[k] == a: + new_col[k] = b + elif new_col[k] == b: + new_col[k] = a + new_col = tuple(new_col) + if new_col != col and new_col in col_idx: + union(c_idx, col_idx[new_col]) + classes = len({find(i) for i in range(n)}) + return n, classes + + +def apply_reduction(G, face, i, v_n_label): + boundary = [u for (u, v) in face] + if len(set(boundary)) != 5: + return None + A = [] + for B_k in boundary: + outer = [w for w in G.neighbor_iterator(B_k) if w not in boundary] + if len(outer) != 1: + return None + A.append(outer[0]) + if len(set(A)) != 5: + return None + if A[(i + 3) % 5] == A[(i + 4) % 5]: + return None + H = G.copy() + for v in boundary: + H.delete_vertex(v) + H.add_vertex(v_n_label) + side_0 = (v_n_label, A[i]) + spike = (v_n_label, A[(i + 1) % 5]) + side_1 = (v_n_label, A[(i + 2) % 5]) + merged = (A[(i + 3) % 5], A[(i + 4) % 5]) + H.add_edges([side_0, spike, side_1, merged]) + if H.has_multiple_edges() or H.has_loops(): + return None + if not H.is_planar(set_embedding=True): + return None + if not all(H.degree(v) == 3 for v in H.vertex_iterator()): + return None + return { + 'H': H, 'A': A, + 'named': { + 'spike': frozenset(spike), + 'side_0': frozenset(side_0), + 'side_1': frozenset(side_1), + 'merged': frozenset(merged), + }, + } + + +def find_safe_pentagonal_face(G, protected): + for face in G.faces(): + if len(face) != 5: + continue + boundary = [u for (u, v) in face] + boundary_edges = [frozenset([u, v]) for (u, v) in face] + externals = [] + A = [] + ok = True + for B_k in boundary: + outer = [w for w in G.neighbor_iterator(B_k) if w not in boundary] + if len(outer) != 1: + ok = False + break + externals.append(frozenset([B_k, outer[0]])) + A.append(outer[0]) + if not ok: + continue + if any(e in protected for e in boundary_edges + externals): + continue + return boundary, externals, A + return None + + +def valid_index(f_vec, A): + for i in range(5): + if f_vec[(i + 3) % 5] != f_vec[(i + 4) % 5]: + continue + if len({f_vec[i], f_vec[(i + 1) % 5], f_vec[(i + 2) % 5]}) != 3: + continue + if A[(i + 3) % 5] == A[(i + 4) % 5]: + continue + return i + return None + + +def run_algorithm_to_completion(H, phi_1_dict, named_step1, vn_start=10000): + H = H.copy() + coloring = dict(phi_1_dict) + E = set(named_step1.values()) + next_vn = vn_start + while True: + H.is_planar(set_embedding=True) + result = find_safe_pentagonal_face(H, E) + if result is None: + break + boundary, externals, A = result + f_vec = [coloring[e] for e in externals] + i_t = valid_index(f_vec, A) + if i_t is None: + break + v_n = next_vn + next_vn += 1 + H_new = H.copy() + for v in boundary: + H_new.delete_vertex(v) + H_new.add_vertex(v_n) + side_0 = (v_n, A[i_t]) + spike = (v_n, A[(i_t + 1) % 5]) + side_1 = (v_n, A[(i_t + 2) % 5]) + merged = (A[(i_t + 3) % 5], A[(i_t + 4) % 5]) + H_new.add_edges([side_0, spike, side_1, merged]) + if H_new.has_multiple_edges() or H_new.has_loops(): + break + if not H_new.is_planar(set_embedding=True): + break + H = H_new + coloring = {e: c for e, c in coloring.items() + if not any(u in boundary for u in e)} + coloring[frozenset(side_0)] = f_vec[i_t] + coloring[frozenset(spike)] = f_vec[(i_t + 1) % 5] + coloring[frozenset(side_1)] = f_vec[(i_t + 2) % 5] + coloring[frozenset(merged)] = f_vec[(i_t + 3) % 5] + E |= {frozenset(spike), frozenset(side_0), frozenset(side_1), + frozenset(merged)} + return H + + +def main(max_n=15, time_budget_sec=600): + start = time.time() + violations = [] + for n in range(12, max_n + 1): + if time.time() - start > time_budget_sec: + print(f"Time budget exhausted at n={n}.") + break + print(f"\n=== n = {n} ===") + try: + triangulations = list(graphs.triangulations(n, minimum_degree=5)) + except Exception as ex: + print(f" cannot enumerate: {ex}") + continue + for tri_idx, G in enumerate(triangulations, start=1): + if time.time() - start > time_budget_sec: + break + G_copy = G.copy() + G_copy.is_planar(set_embedding=True) + D = dual_of(G_copy) + D.is_planar(set_embedding=True) + for face in D.faces(): + if len(face) != 5: + continue + for i_red in range(5): + if time.time() - start > time_budget_sec: + break + res = apply_reduction(D, face, i_red, 9999) + if res is None: + continue + H_1 = res['H'] + n_col_h1, kc_h1 = num_kempe_classes(H_1) + if kc_h1 == 0: + continue + # enumerate all proper colorings of H_1 to vary phi_1 + edges_1, colorings_1 = proper_3_edge_colorings(H_1) + # try EVERY phi_1 (might be slow for large H_1) + max_kc_hf = 0 + h_final_seen = {} # signature -> classes + for phi_1 in colorings_1: + phi_1_dict = {frozenset((e[0], e[1])): c + for e, c in zip(edges_1, phi_1)} + H_final = run_algorithm_to_completion( + H_1, phi_1_dict, res['named']) + # signature = (|V|, |E|, sorted edge tuples) + sig = (H_final.order(), H_final.size()) + if sig in h_final_seen: + continue + _, kc_hf = num_kempe_classes(H_final) + h_final_seen[sig] = kc_hf + if kc_hf > max_kc_hf: + max_kc_hf = kc_hf + over = max_kc_hf > kc_h1 + flag = "*** OVER ***" if over else "ok" + print(f" n={n} tri#{tri_idx} face|{len(face)} i_red={i_red}: " + f"H_1 kc={kc_h1}, max H_t* kc over {len(h_final_seen)} " + f"distinct outputs = {max_kc_hf} {flag}") + if over: + violations.append((n, tri_idx, i_red, kc_h1, max_kc_hf)) + sys.stdout.flush() + break # first face only + + print() + if violations: + print(f"Counterexamples (#K(H_t*) > #K(H_1)): {len(violations)}") + for v in violations: + print(f" {v}") + else: + print("No counterexamples found within tested range.") + + +if __name__ == '__main__': + main() diff --git a/papers/dual_decomposition_minimal_counterexamples/experiments/draw_lift_to_Gprime.py b/papers/dual_decomposition_minimal_counterexamples/experiments/draw_lift_to_Gprime.py new file mode 100644 index 0000000..3c85cdf --- /dev/null +++ b/papers/dual_decomposition_minimal_counterexamples/experiments/draw_lift_to_Gprime.py @@ -0,0 +1,464 @@ +"""Lift the recoloured + bridged H_1 back to G' (dual of the n=14 +triangulation), producing a proper 3-edge-colouring of the modified G'. + +The modified G' = G' with: subdivisions Y_1, Y_2 of the two green witness +edges, plus a new red edge Y_1-Y_2. + +Run with: sage experiments/draw_lift_to_Gprime.py +""" +from sage.all import Graph +from sage.graphs.graph_generators import graphs +import matplotlib.pyplot as plt +import math +import os + + +def tutte_layout(G_sage, avoid_verts=None, iterations=300): + """Same Tutte barycentric layout as in draw_iterated_reduction_n14.py.""" + avoid = set(avoid_verts or ()) + candidates = [] + for face in G_sage.faces(): + verts = [u for (u, v) in face] + if not (set(verts) & avoid): + candidates.append(verts) + if not candidates: + outer = [u for (u, v) in max(G_sage.faces(), key=len)] + else: + outer = max(candidates, key=len) + n_outer = len(outer) + pos = {} + for k, v in enumerate(outer): + ang = 2 * math.pi * k / n_outer + math.pi / 2 + pos[v] = (math.cos(ang), math.sin(ang)) + interior = [v for v in G_sage.vertex_iterator() if v not in pos] + for v in interior: pos[v] = (0.0, 0.0) + for _ in range(iterations): + new_pos = dict(pos) + for v in interior: + nbrs = list(G_sage.neighbor_iterator(v)) + sx = sum(pos[w][0] for w in nbrs) / len(nbrs) + sy = sum(pos[w][1] for w in nbrs) / len(nbrs) + new_pos[v] = (sx, sy) + pos = new_pos + return pos + +OUT_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) + +C = ['#dc2626', '#16a34a', '#2563eb'] +DARK = '#374151' +HIGHLIGHT = '#fef3c7' + + +def dual_of(G): + G.is_planar(set_embedding=True) + faces = G.faces() + edge_to_faces = {} + for fi, face in enumerate(faces): + for u, v in face: + edge_to_faces.setdefault(frozenset((u, v)), []).append(fi) + return Graph( + [(fs[0], fs[1]) for fs in edge_to_faces.values() if len(fs) == 2], + multiedges=False, loops=False) + + +def proper_3_edge_colorings(G): + edges = list(G.edges(labels=False)) + n = len(edges) + adj = [[] for _ in range(n)] + for i in range(n): + u, v = edges[i][0], edges[i][1] + for j in range(i): + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + adj[i].append(j); adj[j].append(i) + coloring = [-1] * n + results = [] + + def back(k): + if k == n: + results.append(tuple(coloring)); return + for c in range(3): + if all(coloring[j] != c for j in adj[k]): + coloring[k] = c + back(k + 1) + coloring[k] = -1 + back(0) + return edges, results + + +def kempe_cycle_set(edges, col_list, start_idx, color_pair): + a, b = color_pair + if col_list[start_idx] not in (a, b): return set() + in_sub = set(i for i in range(len(edges)) if col_list[i] in (a, b)) + visited = {start_idx}; stack = [start_idx] + while stack: + cur = stack.pop() + u, v = edges[cur][0], edges[cur][1] + for j in in_sub: + if j in visited: continue + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + visited.add(j); stack.append(j) + return visited + + +def edge_idx(edges, e_frozen): + for i, e in enumerate(edges): + if frozenset((e[0], e[1])) == e_frozen: + return i + return None + + +def trace_kempe_cycle(edges, col_list, start_idx, color_pair): + cycle_set = kempe_cycle_set(edges, col_list, start_idx, color_pair) + incident_at = {} + for ei in cycle_set: + u, v = edges[ei][0], edges[ei][1] + incident_at.setdefault(u, []).append(ei) + incident_at.setdefault(v, []).append(ei) + start_u, start_v = edges[start_idx][0], edges[start_idx][1] + walk = [(start_idx, start_v)] + cur_e = start_idx + cur_leave = start_v + while True: + nbrs = incident_at[cur_leave] + if len(nbrs) != 2: break + nxt = nbrs[0] if nbrs[1] == cur_e else nbrs[1] + u2, v2 = edges[nxt][0], edges[nxt][1] + leave_next = v2 if u2 == cur_leave else u2 + if nxt == start_idx: break + walk.append((nxt, leave_next)) + cur_e = nxt + cur_leave = leave_next + return walk + + +def matches_chord_apex_kempe(edges, col, named): + idx = {role: edge_idx(edges, ns) for role, ns in named.items()} + if any(v is None for v in idx.values()): return False + c_spike = col[idx['spike']] + c_merged = col[idx['merged']] + if c_spike != c_merged: return False + c_s0 = col[idx['side_0']]; c_s1 = col[idx['side_1']] + kc0 = kempe_cycle_set(edges, col, idx['spike'], (c_spike, c_s0)) + if idx['side_0'] not in kc0 or idx['merged'] not in kc0: return False + kc1 = kempe_cycle_set(edges, col, idx['spike'], (c_spike, c_s1)) + if idx['side_1'] not in kc1 or idx['merged'] not in kc1: return False + return True + + +def apply_reduction(G, face, i, v_n_label): + boundary = [u for (u, v) in face] + if len(set(boundary)) != 5: return None + A = [] + for B_k in boundary: + outer = [w for w in G.neighbor_iterator(B_k) if w not in boundary] + if len(outer) != 1: return None + A.append(outer[0]) + if len(set(A)) != 5 or A[(i+3) % 5] == A[(i+4) % 5]: return None + H = G.copy() + for v in boundary: H.delete_vertex(v) + H.add_vertex(v_n_label) + side_0 = (v_n_label, A[i]) + spike = (v_n_label, A[(i+1) % 5]) + side_1 = (v_n_label, A[(i+2) % 5]) + merged = (A[(i+3) % 5], A[(i+4) % 5]) + H.add_edges([side_0, spike, side_1, merged]) + if H.has_multiple_edges() or H.has_loops(): return None + if not H.is_planar(set_embedding=True): return None + if not all(H.degree(v) == 3 for v in H.vertex_iterator()): return None + return { + 'H': H, 'A': A, 'boundary': boundary, 'face': face, 'i_red': i, + 'named': { + 'spike': frozenset(spike), + 'side_0': frozenset(side_0), + 'side_1': frozenset(side_1), + 'merged': frozenset(merged), + }, + } + + +def find_first_match(): + for G in graphs.triangulations(14, minimum_degree=5): + if not G.is_planar(set_embedding=True): continue + D = dual_of(G); D.is_planar(set_embedding=True) + for face in D.faces(): + if len(face) != 5: continue + for i_red in range(5): + res = apply_reduction(D, face, i_red, '__v_n_1__') + if res is None: continue + H, named = res['H'], res['named'] + edges, gen = proper_3_edge_colorings(H) + for col in gen: + if matches_chord_apex_kempe(edges, col, named): + coloring_dict = {frozenset((e[0], e[1])): c + for e, c in zip(edges, col)} + return G, D, res, H, coloring_dict + return None + + +def find_conj_witness(H, edges, col_list, named): + GREEN, BLUE = 1, 2 + merged_idx = edge_idx(edges, named['merged']) + kc_gb = kempe_cycle_set(edges, col_list, merged_idx, (GREEN, BLUE)) + if merged_idx not in kc_gb: return None + for face in H.faces(): + face_edge_ids = [] + for u, v in face: + ei = edge_idx(edges, frozenset((u, v))) + if ei is not None: + face_edge_ids.append(ei) + green_on_face_in_kc = [ei for ei in face_edge_ids + if col_list[ei] == GREEN + and ei in kc_gb + and ei != merged_idx] + if len(green_on_face_in_kc) >= 2: + return face, green_on_face_in_kc[0], green_on_face_in_kc[1], kc_gb + return None + + +def main(): + print("Setting up ...") + G14, D, red_info, H, coloring = find_first_match() + i_red = red_info['i_red'] + boundary_in_D = red_info['boundary'] + A_in_D = red_info['A'] + named_in_D = red_info['named'] + print(f" Found: i_red = {i_red}") + print(f" G' has |V|={D.order()}, |E|={D.size()}") + + # Relabel H so all vertices are integers + H_relabel_map = {v: i for i, v in enumerate(H.vertex_iterator())} + inv_relabel = {i: v for v, i in H_relabel_map.items()} + H.relabel(perm=H_relabel_map, inplace=True) + coloring = {frozenset(H_relabel_map[u] for u in e): c + for e, c in coloring.items()} + named_H = {role: frozenset(H_relabel_map[u] for u in e) + for role, e in named_in_D.items()} + + H.is_planar(set_embedding=True) + edges_H = list(H.edges(labels=False)) + col_list = [coloring[frozenset((u, v))] for (u, v) in edges_H] + witness = find_conj_witness(H, edges_H, col_list, named_H) + face_w, e1, e2, kc_gb = witness + e1_uv = tuple(edges_H[e1]); e2_uv = tuple(edges_H[e2]) + print(f" Witness in H_1 (relabeled): e1 = {e1_uv}, e2 = {e2_uv}") + + e1_D = (inv_relabel[e1_uv[0]], inv_relabel[e1_uv[1]]) + e2_D = (inv_relabel[e2_uv[0]], inv_relabel[e2_uv[1]]) + print(f" Witness in D labels: e1 = {e1_D}, e2 = {e2_D}") + + # Build modified G' + G_mod = D.copy() + max_label = max(v for v in D.vertices(sort=False) if isinstance(v, int)) + Y1 = max_label + 1 + Y2 = Y1 + 1 + G_mod.add_vertex(Y1); G_mod.add_vertex(Y2) + G_mod.delete_edge(e1_D); G_mod.delete_edge(e2_D) + G_mod.add_edges([(e1_D[0], Y1), (Y1, e1_D[1]), + (e2_D[0], Y2), (Y2, e2_D[1]), + (Y1, Y2)]) + assert G_mod.is_planar(set_embedding=True) + print(f" Modified G': |V|={G_mod.order()}, |E|={G_mod.size()}") + + # Trace Kempe cycle from merged + merged_idx = edge_idx(edges_H, named_H['merged']) + walk = trace_kempe_cycle(edges_H, col_list, merged_idx, (1, 2)) + walk_edges = [w[0] for w in walk] + leave_at = [w[1] for w in walk] + + # Map relabeled-H vertex -> D label if not v_n_1, else None + def H_to_D(v): + d = inv_relabel[v] + return d if d != '__v_n_1__' else None + + # Build new coloring on G_mod's edges. + # Step A: copy non-named, non-e1, non-e2, non-v_n_1 edges' original colors. + new_coloring = {} + named_H_set = set(named_H.values()) + for e_fs, c in coloring.items(): + if e_fs in named_H_set: continue + if e_fs == frozenset(e1_uv) or e_fs == frozenset(e2_uv): continue + u, v = tuple(e_fs) + du, dv = H_to_D(u), H_to_D(v) + if du is None or dv is None: continue + new_coloring[frozenset((du, dv))] = c + + # Step B: walk K' (subdivided cycle) starting from merged. + # For each old cycle edge that is NOT spike/side_0/side_1/merged + # (i.e., not involving v_n_1, not the chord), we OVERWRITE its color + # via the alternation. For e1, e2 we instead emit the two subdivision + # halves. For named edges (spike, side_1, merged), they don't exist + # in G_mod, so we record the would-be color to use later for f-vector. + pos = 0 + cycle_label = {} # e_fs in D labels -> new color (for cycle edges in G_mod) + half_label = {} # halves' colors + would_be = {} # named role -> would-be color after recoloring + for k, ei in enumerate(walk_edges): + leaving_vertex = leave_at[k] + u, v = edges_H[ei][0], edges_H[ei][1] + entry_vertex = v if leaving_vertex == u else u + e_fs_H = frozenset((u, v)) + if ei == e1: + c0 = 2 if pos % 2 == 0 else 1; pos += 1 + c1 = 2 if pos % 2 == 0 else 1; pos += 1 + half_label[frozenset((inv_relabel[entry_vertex], Y1))] = c0 + half_label[frozenset((Y1, inv_relabel[leaving_vertex]))] = c1 + elif ei == e2: + c0 = 2 if pos % 2 == 0 else 1; pos += 1 + c1 = 2 if pos % 2 == 0 else 1; pos += 1 + half_label[frozenset((inv_relabel[entry_vertex], Y2))] = c0 + half_label[frozenset((Y2, inv_relabel[leaving_vertex]))] = c1 + else: + c = 2 if pos % 2 == 0 else 1; pos += 1 + # is this a named edge (spike/side_1/merged)? Note: it can't be + # side_0 since side_0 is red and the cycle is green/blue. + for role, ef in named_H.items(): + if ef == e_fs_H: + would_be[role] = c + break + else: + # Regular cycle edge: convert to D labels + du, dv = H_to_D(u), H_to_D(v) + if du is None or dv is None: + # Shouldn't happen for non-named edges + pass + else: + cycle_label[frozenset((du, dv))] = c + + # Apply cycle relabeling + for e_fs, c in cycle_label.items(): + new_coloring[e_fs] = c + # Apply half colors + for e_fs, c in half_label.items(): + new_coloring[e_fs] = c + # New red edge + new_coloring[frozenset((Y1, Y2))] = 0 + + print(f" Would-be colors of named H_1 edges after recolor: {would_be}") + # would_be may not include side_0 (not on cycle); side_0's color is + # whatever it was in original (= red = 0). + if 'side_0' not in would_be: + would_be['side_0'] = coloring[named_H['side_0']] # 0 (red) + + # Step C: color the 5 externals f_k = B_k - A_k. + # At each A_k, the third color = would_be color of the missing H_1 edge. + def third(c1, c2): return ({0, 1, 2} - {c1, c2}).pop() + externals_colors = [None] * 5 + for k, B_k in enumerate(boundary_in_D): + A_k = A_in_D[k] + # Which named role was at A_k in H_1? + # A_in_D[i_red] = side_0's endpoint, A_in_D[i_red+1] = spike's, + # A_in_D[i_red+2] = side_1's, A_in_D[i_red+3,+4] = merged. + if k == i_red: role = 'side_0' + elif k == (i_red+1) % 5: role = 'spike' + elif k == (i_red+2) % 5: role = 'side_1' + else: role = 'merged' + c_ext = would_be[role] + new_coloring[frozenset((B_k, A_k))] = c_ext + externals_colors[k] = c_ext + print(f" f-vector at F_v: {externals_colors}") + + # Step D: 5 boundary edges B_k - B_{k+1} via Lemma 2.4. + boundary_colors = [None] * 5 + for k in range(5): + f_k = externals_colors[k] + f_kp1 = externals_colors[(k + 1) % 5] + if f_k != f_kp1: + boundary_colors[k] = third(f_k, f_kp1) + for _ in range(20): + changed = False + for k in range(5): + if boundary_colors[k] is not None: continue + f_k = externals_colors[k] + prev_c = boundary_colors[(k - 1) % 5] + next_c = boundary_colors[(k + 1) % 5] + forbidden = {f_k} + if prev_c is not None: forbidden.add(prev_c) + if next_c is not None: forbidden.add(next_c) + allowed = list({0, 1, 2} - forbidden) + if allowed: + boundary_colors[k] = allowed[0] + changed = True + if not changed: break + + for k in range(5): + if boundary_colors[k] is None: + print(f" WARNING: undetermined boundary color at k={k}") + return + B_k = boundary_in_D[k]; B_kp1 = boundary_in_D[(k + 1) % 5] + new_coloring[frozenset((B_k, B_kp1))] = boundary_colors[k] + + # Sanity check + bad = [] + for v in G_mod.vertices(sort=False): + seen = [] + for w in G_mod.neighbor_iterator(v): + seen.append(new_coloring.get(frozenset((v, w)))) + if None in seen or len(set(seen)) != len(seen): + bad.append((v, seen)) + if bad: + print(f" PROPRIETY FAILS at vertices:") + for v, s in bad[:5]: + print(f" {v}: {s}") + else: + print(" Propriety holds at every vertex of modified G'.") + + # Use H_1's Tutte layout for vertices shared between H_1 and G' (the 19 + # surviving vertices). Then add the 5 boundary vertices B_k of partial F_v + # by running a local barycenter iteration with the shared vertices fixed. + H.is_planar(set_embedding=True) + H_pos = tutte_layout(H, + avoid_verts={H_relabel_map['__v_n_1__']}) + # Map H_1 positions back to D labels (skip v_n_1) + pos_layout = {} + for v_H, p in H_pos.items(): + v_D = inv_relabel[v_H] + if v_D != '__v_n_1__': + pos_layout[v_D] = p + # Place B_k's by iterating barycenter of their 3 neighbours in G_mod + # (B_{k-1}, B_{k+1}, A_k); start each B_k near its A_k. + B_pos = {B_k: pos_layout[A_in_D[k]] + for k, B_k in enumerate(boundary_in_D)} + for _ in range(300): + new_B = {} + for k, B_k in enumerate(boundary_in_D): + B_prev = boundary_in_D[(k - 1) % 5] + B_next = boundary_in_D[(k + 1) % 5] + A_k = A_in_D[k] + sx = (B_pos[B_prev][0] + B_pos[B_next][0] + pos_layout[A_k][0]) / 3 + sy = (B_pos[B_prev][1] + B_pos[B_next][1] + pos_layout[A_k][1]) / 3 + new_B[B_k] = (sx, sy) + B_pos = new_B + for B_k, p in B_pos.items(): + pos_layout[B_k] = p + # Y_1, Y_2 at midpoints of their subdivided edges e1, e2 + pos_layout[Y1] = ((pos_layout[e1_D[0]][0] + pos_layout[e1_D[1]][0]) / 2, + (pos_layout[e1_D[0]][1] + pos_layout[e1_D[1]][1]) / 2) + pos_layout[Y2] = ((pos_layout[e2_D[0]][0] + pos_layout[e2_D[1]][0]) / 2, + (pos_layout[e2_D[0]][1] + pos_layout[e2_D[1]][1]) / 2) + + fig, ax = plt.subplots(figsize=(8, 8)) + for u, v, _ in G_mod.edges(): + e = frozenset((u, v)) + c = C[new_coloring[e]] + lw = 3.4 if e == frozenset((Y1, Y2)) else 1.5 + (x0, y0), (x1, y1) = pos_layout[u], pos_layout[v] + ax.plot([x0, x1], [y0, y1], color=c, lw=lw, zorder=2) + for v in G_mod.vertices(sort=False): + x, y = pos_layout[v] + if v in (Y1, Y2): + ax.scatter(x, y, s=140, color=DARK, edgecolors='white', + linewidths=1.6, zorder=6) + else: + ax.scatter(x, y, s=55, color=DARK, zorder=3) + ax.set_aspect('equal') + ax.axis('off') + out_path = os.path.join(OUT_DIR, 'fig_lift_to_Gprime.png') + fig.savefig(out_path, dpi=170, bbox_inches='tight') + plt.close(fig) + print(f"Wrote {out_path}") + + +if __name__ == '__main__': + main() diff --git a/papers/dual_decomposition_minimal_counterexamples/experiments/draw_step1_conj36.py b/papers/dual_decomposition_minimal_counterexamples/experiments/draw_step1_conj36.py new file mode 100644 index 0000000..3624d8c --- /dev/null +++ b/papers/dual_decomposition_minimal_counterexamples/experiments/draw_step1_conj36.py @@ -0,0 +1,277 @@ +"""Draw a Conjecture 3.6 witness: on H_1 with its chord-apex+Kempe coloring, +find a face with two green edges that lie (with the merged edge) on a common +{green, blue}-Kempe cycle. Subdivide both green edges with new vertices and +join the two new vertices by a new red edge. + +Run with: sage experiments/draw_step1_conj36.py +""" +from sage.all import Graph +from sage.graphs.graph_generators import graphs +import matplotlib.pyplot as plt +from matplotlib.patches import Polygon +import math +import os + +OUT_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) + +C = ['#dc2626', '#16a34a', '#2563eb'] # 0=red 1=green 2=blue +GRAY = '#9ca3af' +DARK = '#374151' +HIGHLIGHT = '#fef3c7' + + +def dual_of(G): + G.is_planar(set_embedding=True) + faces = G.faces() + edge_to_faces = {} + for fi, face in enumerate(faces): + for u, v in face: + edge_to_faces.setdefault(frozenset((u, v)), []).append(fi) + return Graph( + [(fs[0], fs[1]) for fs in edge_to_faces.values() if len(fs) == 2], + multiedges=False, loops=False) + + +def apply_reduction(G, face, i, v_n_label): + boundary = [u for (u, v) in face] + if len(set(boundary)) != 5: return None + A = [] + for B_k in boundary: + outer = [w for w in G.neighbor_iterator(B_k) if w not in boundary] + if len(outer) != 1: return None + A.append(outer[0]) + if len(set(A)) != 5 or A[(i+3) % 5] == A[(i+4) % 5]: return None + H = G.copy() + for v in boundary: H.delete_vertex(v) + H.add_vertex(v_n_label) + side_0 = (v_n_label, A[i]) + spike = (v_n_label, A[(i+1) % 5]) + side_1 = (v_n_label, A[(i+2) % 5]) + merged = (A[(i+3) % 5], A[(i+4) % 5]) + H.add_edges([side_0, spike, side_1, merged]) + if H.has_multiple_edges() or H.has_loops(): return None + if not H.is_planar(set_embedding=True): return None + if not all(H.degree(v) == 3 for v in H.vertex_iterator()): return None + return { + 'H': H, 'A': A, + 'named': { + 'spike': frozenset(spike), + 'side_0': frozenset(side_0), + 'side_1': frozenset(side_1), + 'merged': frozenset(merged), + }, + } + + +def proper_3_edge_colorings(G): + edges = list(G.edges(labels=False)) + n = len(edges) + adj = [[] for _ in range(n)] + for i in range(n): + u, v = edges[i][0], edges[i][1] + for j in range(i): + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + adj[i].append(j); adj[j].append(i) + coloring = [-1] * n + results = [] + + def back(k): + if k == n: + results.append(tuple(coloring)); return + for c in range(3): + if all(coloring[j] != c for j in adj[k]): + coloring[k] = c + back(k + 1) + coloring[k] = -1 + back(0) + return edges, results + + +def kempe_cycle(edges, coloring, start_idx, color_pair): + a, b = color_pair + if coloring[start_idx] not in (a, b): return set() + in_sub = set(i for i in range(len(edges)) if coloring[i] in (a, b)) + visited = {start_idx}; stack = [start_idx] + while stack: + cur = stack.pop() + u, v = edges[cur][0], edges[cur][1] + for j in in_sub: + if j in visited: continue + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + visited.add(j); stack.append(j) + return visited + + +def edge_idx(edges, e_frozen): + for i, e in enumerate(edges): + if frozenset((e[0], e[1])) == e_frozen: + return i + return None + + +def matches_chord_apex_kempe(edges, col, named): + idx = {role: edge_idx(edges, ns) for role, ns in named.items()} + if any(v is None for v in idx.values()): return False + c_spike = col[idx['spike']] + c_merged = col[idx['merged']] + if c_spike != c_merged: return False + c_s0 = col[idx['side_0']]; c_s1 = col[idx['side_1']] + kc0 = kempe_cycle(edges, col, idx['spike'], (c_spike, c_s0)) + if idx['side_0'] not in kc0 or idx['merged'] not in kc0: return False + kc1 = kempe_cycle(edges, col, idx['spike'], (c_spike, c_s1)) + if idx['side_1'] not in kc1 or idx['merged'] not in kc1: return False + return True + + +def find_first_match(): + for G in graphs.triangulations(14, minimum_degree=5): + if not G.is_planar(set_embedding=True): continue + D = dual_of(G); D.is_planar(set_embedding=True) + for face in D.faces(): + if len(face) != 5: continue + for i_red in range(5): + res = apply_reduction(D, face, i_red, '__v_n_1__') + if res is None: continue + H, named = res['H'], res['named'] + edges, gen = proper_3_edge_colorings(H) + for col in gen: + if matches_chord_apex_kempe(edges, col, named): + coloring_dict = {frozenset((e[0], e[1])): c + for e, c in zip(edges, col)} + return G, D, face, i_red, H, named, coloring_dict + return None + + +def tutte_layout(G_sage, avoid_verts=None, iterations=300): + avoid = set(avoid_verts or ()) + candidates = [] + for face in G_sage.faces(): + verts = [u for (u, v) in face] + if not (set(verts) & avoid): + candidates.append(verts) + if not candidates: + outer = [u for (u, v) in max(G_sage.faces(), key=len)] + else: + outer = max(candidates, key=len) + n_outer = len(outer) + pos = {} + for k, v in enumerate(outer): + ang = 2 * math.pi * k / n_outer + math.pi / 2 + pos[v] = (math.cos(ang), math.sin(ang)) + interior = [v for v in G_sage.vertex_iterator() if v not in pos] + for v in interior: pos[v] = (0.0, 0.0) + for _ in range(iterations): + new_pos = dict(pos) + for v in interior: + nbrs = list(G_sage.neighbor_iterator(v)) + sx = sum(pos[w][0] for w in nbrs) / len(nbrs) + sy = sum(pos[w][1] for w in nbrs) / len(nbrs) + new_pos[v] = (sx, sy) + pos = new_pos + return pos + + +def find_conj_witness(H, edges, col_list, named): + """Find a face F of H with two distinct green edges e1, e2, NEITHER equal + to the merged edge, such that e1, e2, merged all lie on the + {green, blue}-Kempe cycle through merged.""" + GREEN, BLUE = 1, 2 + merged_idx = edge_idx(edges, named['merged']) + kc_gb = kempe_cycle(edges, col_list, merged_idx, (GREEN, BLUE)) + if merged_idx not in kc_gb: + return None + for face in H.faces(): + face_edge_ids = [] + for u, v in face: + ei = edge_idx(edges, frozenset((u, v))) + if ei is not None: + face_edge_ids.append(ei) + green_on_face_in_kc = [ei for ei in face_edge_ids + if col_list[ei] == GREEN + and ei in kc_gb + and ei != merged_idx] + if len(green_on_face_in_kc) >= 2: + return face, green_on_face_in_kc[0], green_on_face_in_kc[1], kc_gb + return None + + +def main(): + print("Searching for the first n=14 chord-apex+Kempe match ...") + result = find_first_match() + G14, D, face_chosen, i_red, H, named, coloring = result + print(f" Found: i_red = {i_red}") + + H_relabel_map = {v: i for i, v in enumerate(H.vertex_iterator())} + H.relabel(perm=H_relabel_map, inplace=True) + vn = H_relabel_map['__v_n_1__'] + coloring = {frozenset(H_relabel_map[u] for u in e): c + for e, c in coloring.items()} + named = {role: frozenset(H_relabel_map[u] for u in e) + for role, e in named.items()} + + H.is_planar(set_embedding=True) + pos = tutte_layout(H, avoid_verts={vn}) + E_protected = set(named.values()) + + # Build (edges, coloring) in list/tuple form to use kempe helpers + edges = list(H.edges(labels=False)) + col_list = [coloring[frozenset((u, v))] for (u, v) in edges] + + witness = find_conj_witness(H, edges, col_list, named) + if witness is None: + print("ERROR: no witness found.") + return + face_w, e1, e2, kc_gb = witness + e1_uv = tuple(edges[e1]); e2_uv = tuple(edges[e2]) + print(f" Witness face has {len(face_w)} edges.") + print(f" e1 = {e1_uv}, e2 = {e2_uv}") + print(f" {{green, blue}}-Kempe cycle through merged: {len(kc_gb)} edges.") + + # Midpoints in the layout + mp1 = ((pos[e1_uv[0]][0] + pos[e1_uv[1]][0]) / 2, + (pos[e1_uv[0]][1] + pos[e1_uv[1]][1]) / 2) + mp2 = ((pos[e2_uv[0]][0] + pos[e2_uv[1]][0]) / 2, + (pos[e2_uv[0]][1] + pos[e2_uv[1]][1]) / 2) + + # Draw + fig, ax = plt.subplots(figsize=(8, 8)) + for u, v, _ in H.edges(): + e = frozenset([u, v]) + c = C[coloring[e]] + lw = 3.8 if e in E_protected else 1.4 + (x0, y0), (x1, y1) = pos[u], pos[v] + ax.plot([x0, x1], [y0, y1], color=c, lw=lw, zorder=2) + for v in H.vertices(sort=False): + x, y = pos[v] + if v == vn: + ax.scatter(x, y, s=320, color=HIGHLIGHT, marker='s', + edgecolors='black', linewidths=1.2, zorder=4) + ax.annotate('$v_n^{(1)}$', (x, y), + textcoords='offset points', xytext=(16, 16), + ha='left', fontsize=14, fontweight='bold', + color=DARK, zorder=6, + bbox=dict(boxstyle='round,pad=0.2', fc='white', + ec=DARK, lw=0.6)) + else: + ax.scatter(x, y, s=70, color=DARK, zorder=3) + + # New red edge between midpoints + ax.plot([mp1[0], mp2[0]], [mp1[1], mp2[1]], + color=C[0], lw=4.0, zorder=5) + # New vertices + for (mx, my) in (mp1, mp2): + ax.scatter(mx, my, s=130, color=DARK, edgecolors='white', + linewidths=1.6, zorder=6) + + ax.set_aspect('equal') + ax.axis('off') + out_path = os.path.join(OUT_DIR, 'fig_alg_step1_conj36.png') + fig.savefig(out_path, dpi=170, bbox_inches='tight') + plt.close(fig) + print(f"Wrote {out_path}") + + +if __name__ == '__main__': + main() diff --git a/papers/dual_decomposition_minimal_counterexamples/experiments/draw_step1_conj36_recolored.py b/papers/dual_decomposition_minimal_counterexamples/experiments/draw_step1_conj36_recolored.py new file mode 100644 index 0000000..02699a2 --- /dev/null +++ b/papers/dual_decomposition_minimal_counterexamples/experiments/draw_step1_conj36_recolored.py @@ -0,0 +1,373 @@ +"""Build the Conjecture 3.6 witness on H_1, subdivide the two green edges +with new vertices X1, X2, add a new red edge X1-X2, then recolor the +{green, blue}-Kempe cycle through merged so that walking it from merged +gives the alternating sequence blue, green, blue, green, ... (equivalently, +a Kempe swap of green/blue along the cycle). + +Edges off the cycle keep their original colour; the new red edge stays red. +Propriety holds throughout: at every old vertex the 2 cycle edges still +alternate green/blue and the off-cycle edge is red; at X1 and X2 the two +cycle halves are forced to opposite colours of {green, blue} and the new +red edge supplies the third colour. + +Run with: sage experiments/draw_step1_conj36_recolored.py +""" +from sage.all import Graph +from sage.graphs.graph_generators import graphs +import matplotlib.pyplot as plt +from matplotlib.patches import Polygon +import math +import os + +OUT_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) + +C = ['#dc2626', '#16a34a', '#2563eb'] # 0=red 1=green 2=blue +GRAY = '#9ca3af' +DARK = '#374151' +HIGHLIGHT = '#fef3c7' + + +def dual_of(G): + G.is_planar(set_embedding=True) + faces = G.faces() + edge_to_faces = {} + for fi, face in enumerate(faces): + for u, v in face: + edge_to_faces.setdefault(frozenset((u, v)), []).append(fi) + return Graph( + [(fs[0], fs[1]) for fs in edge_to_faces.values() if len(fs) == 2], + multiedges=False, loops=False) + + +def apply_reduction(G, face, i, v_n_label): + boundary = [u for (u, v) in face] + if len(set(boundary)) != 5: return None + A = [] + for B_k in boundary: + outer = [w for w in G.neighbor_iterator(B_k) if w not in boundary] + if len(outer) != 1: return None + A.append(outer[0]) + if len(set(A)) != 5 or A[(i+3) % 5] == A[(i+4) % 5]: return None + H = G.copy() + for v in boundary: H.delete_vertex(v) + H.add_vertex(v_n_label) + side_0 = (v_n_label, A[i]) + spike = (v_n_label, A[(i+1) % 5]) + side_1 = (v_n_label, A[(i+2) % 5]) + merged = (A[(i+3) % 5], A[(i+4) % 5]) + H.add_edges([side_0, spike, side_1, merged]) + if H.has_multiple_edges() or H.has_loops(): return None + if not H.is_planar(set_embedding=True): return None + if not all(H.degree(v) == 3 for v in H.vertex_iterator()): return None + return { + 'H': H, 'A': A, + 'named': { + 'spike': frozenset(spike), + 'side_0': frozenset(side_0), + 'side_1': frozenset(side_1), + 'merged': frozenset(merged), + }, + } + + +def proper_3_edge_colorings(G): + edges = list(G.edges(labels=False)) + n = len(edges) + adj = [[] for _ in range(n)] + for i in range(n): + u, v = edges[i][0], edges[i][1] + for j in range(i): + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + adj[i].append(j); adj[j].append(i) + coloring = [-1] * n + results = [] + + def back(k): + if k == n: + results.append(tuple(coloring)); return + for c in range(3): + if all(coloring[j] != c for j in adj[k]): + coloring[k] = c + back(k + 1) + coloring[k] = -1 + back(0) + return edges, results + + +def kempe_cycle_edges(edges, col_list, start_idx, color_pair): + a, b = color_pair + if col_list[start_idx] not in (a, b): return set() + in_sub = set(i for i in range(len(edges)) if col_list[i] in (a, b)) + visited = {start_idx}; stack = [start_idx] + while stack: + cur = stack.pop() + u, v = edges[cur][0], edges[cur][1] + for j in in_sub: + if j in visited: continue + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + visited.add(j); stack.append(j) + return visited + + +def edge_idx(edges, e_frozen): + for i, e in enumerate(edges): + if frozenset((e[0], e[1])) == e_frozen: + return i + return None + + +def trace_kempe_cycle(edges, col_list, start_idx, color_pair): + """Walk the (a,b)-Kempe cycle through edges[start_idx]. Returns a list + of (edge_idx, direction) where direction is the vertex you LEAVE the + edge by. The returned list is in cyclic order, length 2L.""" + a, b = color_pair + cycle_edges = kempe_cycle_edges(edges, col_list, start_idx, color_pair) + # build adjacency: at each vertex on the cycle, the 2 (a,b)-edges incident + incident_at = {} + for ei in cycle_edges: + u, v = edges[ei][0], edges[ei][1] + incident_at.setdefault(u, []).append(ei) + incident_at.setdefault(v, []).append(ei) + # walk + start_u, start_v = edges[start_idx][0], edges[start_idx][1] + walk = [(start_idx, start_v)] + cur_e = start_idx + cur_leave = start_v + while True: + # at cur_leave, the 2 cycle edges are cur_e and the next one + nbrs = incident_at[cur_leave] + if len(nbrs) != 2: break + nxt = nbrs[0] if nbrs[1] == cur_e else nbrs[1] + u2, v2 = edges[nxt][0], edges[nxt][1] + leave_next = v2 if u2 == cur_leave else u2 + if nxt == start_idx: break + walk.append((nxt, leave_next)) + cur_e = nxt + cur_leave = leave_next + return walk + + +def matches_chord_apex_kempe(edges, col, named): + idx = {role: edge_idx(edges, ns) for role, ns in named.items()} + if any(v is None for v in idx.values()): return False + c_spike = col[idx['spike']] + c_merged = col[idx['merged']] + if c_spike != c_merged: return False + c_s0 = col[idx['side_0']]; c_s1 = col[idx['side_1']] + kc0 = kempe_cycle_edges(edges, col, idx['spike'], (c_spike, c_s0)) + if idx['side_0'] not in kc0 or idx['merged'] not in kc0: return False + kc1 = kempe_cycle_edges(edges, col, idx['spike'], (c_spike, c_s1)) + if idx['side_1'] not in kc1 or idx['merged'] not in kc1: return False + return True + + +def find_first_match(): + for G in graphs.triangulations(14, minimum_degree=5): + if not G.is_planar(set_embedding=True): continue + D = dual_of(G); D.is_planar(set_embedding=True) + for face in D.faces(): + if len(face) != 5: continue + for i_red in range(5): + res = apply_reduction(D, face, i_red, '__v_n_1__') + if res is None: continue + H, named = res['H'], res['named'] + edges, gen = proper_3_edge_colorings(H) + for col in gen: + if matches_chord_apex_kempe(edges, col, named): + coloring_dict = {frozenset((e[0], e[1])): c + for e, c in zip(edges, col)} + return G, D, face, i_red, H, named, coloring_dict + return None + + +def tutte_layout(G_sage, avoid_verts=None, iterations=300): + avoid = set(avoid_verts or ()) + candidates = [] + for face in G_sage.faces(): + verts = [u for (u, v) in face] + if not (set(verts) & avoid): + candidates.append(verts) + if not candidates: + outer = [u for (u, v) in max(G_sage.faces(), key=len)] + else: + outer = max(candidates, key=len) + n_outer = len(outer) + pos = {} + for k, v in enumerate(outer): + ang = 2 * math.pi * k / n_outer + math.pi / 2 + pos[v] = (math.cos(ang), math.sin(ang)) + interior = [v for v in G_sage.vertex_iterator() if v not in pos] + for v in interior: pos[v] = (0.0, 0.0) + for _ in range(iterations): + new_pos = dict(pos) + for v in interior: + nbrs = list(G_sage.neighbor_iterator(v)) + sx = sum(pos[w][0] for w in nbrs) / len(nbrs) + sy = sum(pos[w][1] for w in nbrs) / len(nbrs) + new_pos[v] = (sx, sy) + pos = new_pos + return pos + + +def find_conj_witness(H, edges, col_list, named): + GREEN, BLUE = 1, 2 + merged_idx = edge_idx(edges, named['merged']) + kc_gb = kempe_cycle_edges(edges, col_list, merged_idx, (GREEN, BLUE)) + if merged_idx not in kc_gb: + return None + for face in H.faces(): + face_edge_ids = [] + for u, v in face: + ei = edge_idx(edges, frozenset((u, v))) + if ei is not None: + face_edge_ids.append(ei) + green_on_face_in_kc = [ei for ei in face_edge_ids + if col_list[ei] == GREEN + and ei in kc_gb + and ei != merged_idx] + if len(green_on_face_in_kc) >= 2: + return face, green_on_face_in_kc[0], green_on_face_in_kc[1], kc_gb + return None + + +def main(): + print("Setting up ...") + result = find_first_match() + G14, D, face_chosen, i_red, H, named, coloring = result + print(f" Found: i_red = {i_red}") + + H_relabel_map = {v: i for i, v in enumerate(H.vertex_iterator())} + H.relabel(perm=H_relabel_map, inplace=True) + vn = H_relabel_map['__v_n_1__'] + coloring = {frozenset(H_relabel_map[u] for u in e): c + for e, c in coloring.items()} + named = {role: frozenset(H_relabel_map[u] for u in e) + for role, e in named.items()} + + H.is_planar(set_embedding=True) + pos = tutte_layout(H, avoid_verts={vn}) + + edges = list(H.edges(labels=False)) + col_list = [coloring[frozenset((u, v))] for (u, v) in edges] + + witness = find_conj_witness(H, edges, col_list, named) + face_w, e1, e2, kc_gb = witness + e1_uv = tuple(edges[e1]); e2_uv = tuple(edges[e2]) + merged_idx = edge_idx(edges, named['merged']) + print(f" Witness: e1 = {e1_uv}, e2 = {e2_uv}, |kc_gb| = {len(kc_gb)}") + + # Trace the Kempe cycle starting from merged + walk = trace_kempe_cycle(edges, col_list, merged_idx, (1, 2)) + walk_edges_in_order = [w[0] for w in walk] + leave_in_order = [w[1] for w in walk] + print(f" Kempe cycle (in order from merged): length {len(walk_edges_in_order)}") + + # Compute midpoints + mp1 = ((pos[e1_uv[0]][0] + pos[e1_uv[1]][0]) / 2, + (pos[e1_uv[0]][1] + pos[e1_uv[1]][1]) / 2) + mp2 = ((pos[e2_uv[0]][0] + pos[e2_uv[1]][0]) / 2, + (pos[e2_uv[0]][1] + pos[e2_uv[1]][1]) / 2) + + # Construct the new graph: H with e1, e2 subdivided and new red edge X1-X2. + H_new = H.copy() + X1 = max(H.vertices(sort=False)) + 1 + X2 = X1 + 1 + H_new.add_vertex(X1); H_new.add_vertex(X2) + H_new.delete_edge(e1_uv) + H_new.delete_edge(e2_uv) + e1_a, e1_b = e1_uv + e2_a, e2_b = e2_uv + H_new.add_edges([(e1_a, X1), (X1, e1_b), + (e2_a, X2), (X2, e2_b), + (X1, X2)]) + pos_new = dict(pos); pos_new[X1] = mp1; pos_new[X2] = mp2 + + # Build subdivided cycle K' as a list of (edge_frozenset, "entry vertex + # in original direction") in cyclic order starting from merged. + K_prime = [] + for k, ei in enumerate(walk_edges_in_order): + leaving_vertex = leave_in_order[k] + u, v = edges[ei][0], edges[ei][1] + entry_vertex = v if leaving_vertex == u else u + if ei == e1: + K_prime.append(frozenset((entry_vertex, X1))) + K_prime.append(frozenset((X1, leaving_vertex))) + elif ei == e2: + K_prime.append(frozenset((entry_vertex, X2))) + K_prime.append(frozenset((X2, leaving_vertex))) + else: + K_prime.append(frozenset((u, v))) + + print(f" Subdivided cycle length: {len(K_prime)}") + + # Recolor K' alternately starting from merged = blue + new_coloring = dict(coloring) + new_coloring.pop(frozenset(e1_uv), None) + new_coloring.pop(frozenset(e2_uv), None) + for k, e_fs in enumerate(K_prime): + new_coloring[e_fs] = 2 if k % 2 == 0 else 1 # blue, green, blue, green + # New red edge X1-X2 + new_coloring[frozenset((X1, X2))] = 0 + + # Sanity: check propriety at every vertex of H_new + bad = False + for v in H_new.vertices(sort=False): + seen = [] + for w in H_new.neighbor_iterator(v): + seen.append(new_coloring[frozenset((v, w))]) + if len(set(seen)) != len(seen): + print(f" *** propriety FAILS at vertex {v}: colors {seen}") + bad = True + if not bad: + print(" Propriety holds at every vertex.") + + # Identify which edges of H_new are "protected" (the original named edges, + # minus e1, e2 which have been subdivided away). + E_protected = set() + for role, ef in named.items(): + if ef in (frozenset(e1_uv), frozenset(e2_uv)): + continue + E_protected.add(ef) + + # Draw + fig, ax = plt.subplots(figsize=(8, 8)) + for u, v, _ in H_new.edges(): + e = frozenset([u, v]) + c = C[new_coloring[e]] + if e == frozenset((X1, X2)): + lw = 4.0 + elif e in E_protected: + lw = 3.8 + else: + lw = 1.4 + (x0, y0), (x1, y1) = pos_new[u], pos_new[v] + ax.plot([x0, x1], [y0, y1], color=c, lw=lw, zorder=2) + for v in H_new.vertices(sort=False): + x, y = pos_new[v] + if v == vn: + ax.scatter(x, y, s=320, color=HIGHLIGHT, marker='s', + edgecolors='black', linewidths=1.2, zorder=4) + ax.annotate('$v_n^{(1)}$', (x, y), + textcoords='offset points', xytext=(16, 16), + ha='left', fontsize=14, fontweight='bold', + color=DARK, zorder=6, + bbox=dict(boxstyle='round,pad=0.2', fc='white', + ec=DARK, lw=0.6)) + elif v in (X1, X2): + ax.scatter(x, y, s=130, color=DARK, edgecolors='white', + linewidths=1.6, zorder=6) + else: + ax.scatter(x, y, s=70, color=DARK, zorder=3) + + ax.set_aspect('equal') + ax.axis('off') + out_path = os.path.join(OUT_DIR, 'fig_alg_step1_conj36_recolored.png') + fig.savefig(out_path, dpi=170, bbox_inches='tight') + plt.close(fig) + print(f"Wrote {out_path}") + + +if __name__ == '__main__': + main() diff --git a/papers/dual_decomposition_minimal_counterexamples/experiments/search_conj_3_6_counterexample.py b/papers/dual_decomposition_minimal_counterexamples/experiments/search_conj_3_6_counterexample.py new file mode 100644 index 0000000..d1d684a --- /dev/null +++ b/papers/dual_decomposition_minimal_counterexamples/experiments/search_conj_3_6_counterexample.py @@ -0,0 +1,380 @@ +"""Search for a counterexample to Conjecture 3.6. + +For each min-deg-5 triangulation G and each reduced dual H_1, find a proper +3-edge-coloring phi_1 of H_1 that satisfies (i) chord-apex (spike = merged) +and (ii) both Kempe-chain conditions of Lemma 2.7 -- i.e., the kind of +coloring that a minimal counterexample's reduced dual would be forced to +have. Run Algorithm 3.1 to completion from phi_1, get the final colouring +phi_t* on H_t*. Then enumerate all proper 3-edge-colorings of H_t*, find the +Kempe class containing phi_t*, and check whether any coloring in that class +is "all-distinct" (every spike_t != merged_t for t = 1, ..., t*). + +If no such all-distinct coloring exists in phi_t*'s Kempe class: +counterexample to Conjecture 3.6 found. + +Run with: sage experiments/search_conj_3_6_counterexample.py +""" +from sage.all import Graph +from sage.graphs.graph_generators import graphs +import sys +import time + + +def dual_of(G): + G.is_planar(set_embedding=True) + faces = G.faces() + edge_to_faces = {} + for fi, face in enumerate(faces): + for u, v in face: + edge_to_faces.setdefault(frozenset((u, v)), []).append(fi) + dual_edges = [(fs[0], fs[1]) for fs in edge_to_faces.values() if len(fs) == 2] + return Graph(dual_edges, multiedges=False, loops=False) + + +def apply_reduction(G, face, i, v_n_label): + boundary = [u for (u, v) in face] + if len(set(boundary)) != 5: + return None + A = [] + for B_k in boundary: + outer = [w for w in G.neighbor_iterator(B_k) if w not in boundary] + if len(outer) != 1: + return None + A.append(outer[0]) + if len(set(A)) != 5: + return None + if A[(i + 3) % 5] == A[(i + 4) % 5]: + return None + H = G.copy() + for v in boundary: + H.delete_vertex(v) + H.add_vertex(v_n_label) + side_0 = (v_n_label, A[i]) + spike = (v_n_label, A[(i + 1) % 5]) + side_1 = (v_n_label, A[(i + 2) % 5]) + merged = (A[(i + 3) % 5], A[(i + 4) % 5]) + H.add_edges([side_0, spike, side_1, merged]) + if H.has_multiple_edges() or H.has_loops(): + return None + if not H.is_planar(set_embedding=True): + return None + if not all(H.degree(v) == 3 for v in H.vertex_iterator()): + return None + return { + 'H': H, 'A': A, 'boundary': boundary, + 'named': { + 'spike': frozenset(spike), + 'side_0': frozenset(side_0), + 'side_1': frozenset(side_1), + 'merged': frozenset(merged), + }, + } + + +def proper_3_edge_colorings(G): + edges = list(G.edges(labels=False)) + n = len(edges) + adj = [[] for _ in range(n)] + for i in range(n): + u, v = edges[i][0], edges[i][1] + for j in range(i): + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + adj[i].append(j) + adj[j].append(i) + coloring = [-1] * n + results = [] + + def back(k): + if k == n: + results.append(tuple(coloring)) + return + for c in range(3): + if all(coloring[j] != c for j in adj[k]): + coloring[k] = c + back(k + 1) + coloring[k] = -1 + + back(0) + return edges, results + + +def edge_idx(edges, e_frozen): + for i, e in enumerate(edges): + if frozenset((e[0], e[1])) == e_frozen: + return i + return None + + +def kempe_cycle(edges, coloring, start_idx, color_pair): + a, b = color_pair + if coloring[start_idx] not in (a, b): + return set() + in_sub = set(i for i in range(len(edges)) if coloring[i] in (a, b)) + visited = {start_idx} + stack = [start_idx] + while stack: + cur = stack.pop() + u, v = edges[cur][0], edges[cur][1] + for j in in_sub: + if j in visited: + continue + x, y = edges[j][0], edges[j][1] + if u in (x, y) or v in (x, y): + visited.add(j) + stack.append(j) + return visited + + +def matches_chord_apex_kempe(edges, col, named): + idx = {role: edge_idx(edges, ns) for role, ns in named.items()} + if any(v is None for v in idx.values()): + return False + c_spike = col[idx['spike']] + c_merged = col[idx['merged']] + if c_spike != c_merged: + return False + c_s0 = col[idx['side_0']] + c_s1 = col[idx['side_1']] + kc0 = kempe_cycle(edges, col, idx['spike'], (c_spike, c_s0)) + if idx['side_0'] not in kc0 or idx['merged'] not in kc0: + return False + kc1 = kempe_cycle(edges, col, idx['spike'], (c_spike, c_s1)) + if idx['side_1'] not in kc1 or idx['merged'] not in kc1: + return False + return True + + +def find_safe_pentagonal_face(G, protected): + for face in G.faces(): + if len(face) != 5: + continue + boundary = [u for (u, v) in face] + boundary_edges = [frozenset([u, v]) for (u, v) in face] + externals = [] + A = [] + ok = True + for B_k in boundary: + outer = [w for w in G.neighbor_iterator(B_k) if w not in boundary] + if len(outer) != 1: + ok = False + break + externals.append(frozenset([B_k, outer[0]])) + A.append(outer[0]) + if not ok: + continue + if any(e in protected for e in boundary_edges + externals): + continue + return boundary, externals, A + return None + + +def valid_index(f_vec, A): + for i in range(5): + if f_vec[(i + 3) % 5] != f_vec[(i + 4) % 5]: + continue + if len({f_vec[i], f_vec[(i + 1) % 5], f_vec[(i + 2) % 5]}) != 3: + continue + if A[(i + 3) % 5] == A[(i + 4) % 5]: + continue + return i + return None + + +def run_algorithm_to_completion(H, coloring_dict, named_step1, vn_start=1000): + """Returns (H_final, coloring_final, list_of_named_dicts).""" + H = H.copy() + coloring = dict(coloring_dict) + all_named = [named_step1] + E = set(named_step1.values()) + next_vn = vn_start + + while True: + H.is_planar(set_embedding=True) + result = find_safe_pentagonal_face(H, E) + if result is None: + break + boundary, externals, A = result + f_vec = [coloring[e] for e in externals] + i_t = valid_index(f_vec, A) + if i_t is None: + break + v_n = next_vn + next_vn += 1 + H_new = H.copy() + for v in boundary: + H_new.delete_vertex(v) + H_new.add_vertex(v_n) + side_0 = (v_n, A[i_t]) + spike = (v_n, A[(i_t + 1) % 5]) + side_1 = (v_n, A[(i_t + 2) % 5]) + merged = (A[(i_t + 3) % 5], A[(i_t + 4) % 5]) + H_new.add_edges([side_0, spike, side_1, merged]) + if H_new.has_multiple_edges() or H_new.has_loops(): + break + if not H_new.is_planar(set_embedding=True): + break + H = H_new + coloring = {e: c for e, c in coloring.items() + if not any(u in boundary for u in e)} + coloring[frozenset(side_0)] = f_vec[i_t] + coloring[frozenset(spike)] = f_vec[(i_t + 1) % 5] + coloring[frozenset(side_1)] = f_vec[(i_t + 2) % 5] + coloring[frozenset(merged)] = f_vec[(i_t + 3) % 5] + named = { + 'spike': frozenset(spike), + 'side_0': frozenset(side_0), + 'side_1': frozenset(side_1), + 'merged': frozenset(merged), + } + E |= set(named.values()) + all_named.append(named) + return H, coloring, all_named + + +def kempe_class_via_union_find(edges, colorings): + """For each coloring, attempt every Kempe swap and union. Returns parent + array of disjoint-set forest.""" + n = len(colorings) + parent = list(range(n)) + + def find(x): + while parent[x] != x: + parent[x] = parent[parent[x]] + x = parent[x] + return x + + def union(x, y): + rx, ry = find(x), find(y) + if rx != ry: + parent[rx] = ry + + col_idx = {c: i for i, c in enumerate(colorings)} + for c_idx, col in enumerate(colorings): + for pair in [(0, 1), (0, 2), (1, 2)]: + visited = set() + for start in range(len(edges)): + if col[start] not in pair or start in visited: + continue + cyc = kempe_cycle(edges, col, start, pair) + visited |= cyc + a, b = pair + new_col = list(col) + for k in cyc: + if new_col[k] == a: + new_col[k] = b + elif new_col[k] == b: + new_col[k] = a + new_col = tuple(new_col) + if new_col != col and new_col in col_idx: + union(c_idx, col_idx[new_col]) + return [find(i) for i in range(n)] + + +def is_all_distinct(edges, col, all_named): + for named in all_named: + i_spike = edge_idx(edges, named['spike']) + i_merged = edge_idx(edges, named['merged']) + if i_spike is None or i_merged is None: + return False + if col[i_spike] == col[i_merged]: + return False + return True + + +def check_one_triangulation(G, n, idx_label, time_budget): + G_planar = G.is_planar(set_embedding=True) + if not G_planar: + return None + D = dual_of(G) + D.is_planar(set_embedding=True) + for face in D.faces(): + if len(face) != 5: + continue + for i_red in range(5): + res = apply_reduction(D, face, i_red, 999) + if res is None: + continue + H_1, named_1 = res['H'], res['named'] + edges_1, colorings_1 = proper_3_edge_colorings(H_1) + candidates = [col for col in colorings_1 + if matches_chord_apex_kempe(edges_1, col, named_1)] + if not candidates: + continue + # For the first candidate, run algorithm and check. + phi_1 = candidates[0] + coloring_dict = {frozenset((e[0], e[1])): c + for e, c in zip(edges_1, phi_1)} + H_final, phi_final_dict, all_named = run_algorithm_to_completion( + H_1, coloring_dict, named_1) + edges_final, colorings_final = proper_3_edge_colorings(H_final) + # find phi_final as a tuple + phi_final = tuple( + phi_final_dict[frozenset((e[0], e[1]))] for e in edges_final + ) + if phi_final not in colorings_final: + # not in enumeration, skip + continue + print(f" n={n}, tri#{idx_label}, face_size={len(face)}, " + f"i_red={i_red}: H_1 has {len(candidates)} chord+Kempe " + f"colorings; algorithm produced H_t* with |V|={H_final.order()}, " + f"|E|={H_final.size()}; H_t* has {len(colorings_final)} " + f"proper colorings.") + # Kempe classes + parent = kempe_class_via_union_find(edges_final, colorings_final) + phi_final_idx = colorings_final.index(phi_final) + phi_class = parent[phi_final_idx] + n_in_class = sum(1 for p in parent if p == phi_class) + print(f" phi_final's Kempe class has {n_in_class} colorings; " + f"total classes: {len(set(parent))}") + # search for all-distinct in same class + for ci, p in enumerate(parent): + if p != phi_class: + continue + if is_all_distinct(edges_final, colorings_final[ci], all_named): + print(f" found all-distinct coloring in same Kempe " + f"class -- Conj 3.6 holds for this instance.") + break + else: + print(f" *** NO all-distinct coloring in phi_final's " + f"Kempe class -- CONJECTURE 3.6 FAILS HERE ***") + return { + 'n': n, 'tri': idx_label, 'face_size': len(face), + 'i_red': i_red, 'H_final': H_final, + 'phi_final': phi_final, 'all_named': all_named, + } + return None + + +def main(max_n=16, time_budget_sec=600): + start = time.time() + for n in range(12, max_n + 1): + elapsed = time.time() - start + if elapsed > time_budget_sec: + print(f"\nTime budget {time_budget_sec}s exhausted at n={n}.") + return + print(f"\n=== n = {n} (elapsed {elapsed:.1f}s) ===") + try: + it = graphs.triangulations(n, minimum_degree=5) + except Exception as ex: + print(f" cannot enumerate: {ex}") + continue + for idx, G in enumerate(it, start=1): + if time.time() - start > time_budget_sec: + print(f"Time budget exhausted mid-n={n}.") + return + hit = check_one_triangulation(G, n, idx, + time_budget_sec - (time.time() - start)) + if hit is not None: + print() + print(f"=== Counterexample to Conjecture 3.6 ===") + print(f" n = {hit['n']}, triangulation #{hit['tri']}, " + f"i_red = {hit['i_red']}") + print(f" H_t* has |V|={hit['H_final'].order()}, " + f"|E|={hit['H_final'].size()}") + return + sys.stdout.flush() + + +if __name__ == '__main__': + main() diff --git a/papers/dual_decomposition_minimal_counterexamples/fig_alg_step1_conj36.png b/papers/dual_decomposition_minimal_counterexamples/fig_alg_step1_conj36.png new file mode 100644 index 0000000000000000000000000000000000000000..29231f46f928c3290b597046639261c285a36c57 GIT binary patch literal 84381 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

$7&>HO>*m#4RD_{+BHi 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 b^%5z98rL+*;jKob8=&+^?O~z(^H=`|4g})_ literal 0 HcmV?d00001 diff --git a/papers/dual_decomposition_minimal_counterexamples/fig_alg_step1_conj36_recolored.png b/papers/dual_decomposition_minimal_counterexamples/fig_alg_step1_conj36_recolored.png new file mode 100644 index 0000000000000000000000000000000000000000..da1e98eeec05c9aa64243f71de7254383f10bc18 GIT binary patch literal 84537 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 S@)!99JiM=|RC4d}i~j|ngvbB@ literal 0 HcmV?d00001 diff --git a/papers/dual_decomposition_minimal_counterexamples/fig_lift_to_Gprime.png b/papers/dual_decomposition_minimal_counterexamples/fig_lift_to_Gprime.png new file mode 100644 index 0000000000000000000000000000000000000000..f135f2f060bd8f098d4baff068468583c1d01d1c GIT binary patch literal 89397 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%0AAo;A|D18XM|>fy*Rwdtd9(ok-7=~%?ba3 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%0AA`mAO%o#L1KG)mubBJ z!A-d5@N*}4+jL|zfI+?+H|q}uCPG!RMt1VluxFk+BmZ`68HR`qS`TJDn!aNEic2YO1CJfn0kZ=V-^QjMUG`t<8|~=pPJ@U zqQkFKExzc^B4Y-=;{q?3AR-FnL^f3&Ak*LC4<#wT6x*63cbs#f~*i&RmuT*m_oS zWO(7>ZkWd*V&t`xpmotSuBW!_%n z$#XCZiUuoXD1D!Nb3Xuu3Dut5x+RZ8#6 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,42 +100,33 @@ 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 ) \c@theorem=\count272 - -(/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=\count273 \l__pdf_internal_box=\box53 -) -(./paper.aux) +) (./paper.aux) \openout1 = `paper.aux'. LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 27. @@ -159,17 +144,13 @@ LaTeX Font Info: ... okay on input line 27. LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 27. LaTeX Font Info: ... okay on input line 27. LaTeX Font Info: Trying to load font information for U+msa on input line 27. - (/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 27. - - -(/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=\count274 \scratchdimen=\dimen152 @@ -184,18 +165,12 @@ File: umsb.fd 2013/01/14 v3.01 AMS symbols B \everyMPtoPDFconversion=\toks29 ) (/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}] Overfull \hbox (41.917pt too wide) in paragraph at lines 145--147 -[]\OT1/cmr/m/n/10 List the five degree-$2$ ver-tices in clock-wise or-der aroun -d $\OML/cmm/m/it/10 F$ \OT1/cmr/m/n/10 as $\OML/cmm/m/it/10 A \OT1/cmr/m/n/10 = - (\OML/cmm/m/it/10 A[]; A[]; A[]; A[]; A[]\OT1/cmr/m/n/10 )$. +[]\OT1/cmr/m/n/10 List the five degree-$2$ ver-tices in clock-wise or-der around $\OML/cmm/m/it/10 F$ \OT1/cmr/m/n/10 as $\OML/cmm/m/it/10 A \OT1/cmr/m/n/10 = (\OML/cmm/m/it/10 A[]; A[]; A[]; A[]; A[]\OT1/cmr/m/n/10 )$. [] @@ -221,8 +196,7 @@ Package pdftex.def Info: fig_reduced_dual_step4.png used on input line 168. LaTeX Warning: `h' float specifier changed to `ht'. -[2] [3 <./fig_reduced_dual_step1.png> <./fig_reduced_dual_step2.png> <./fig_red -uced_dual_step3.png> <./fig_reduced_dual_step4.png>] +[2] [3 <./fig_reduced_dual_step1.png> <./fig_reduced_dual_step2.png> <./fig_reduced_dual_step3.png> <./fig_reduced_dual_step4.png>] File: fig_chord_apex_step1.png Graphic file (type png) @@ -242,15 +216,9 @@ Package pdftex.def Info: fig_chord_apex_step3.png used on input line 291. LaTeX Warning: `h' float specifier changed to `ht'. -[4] [5 <./fig_chord_apex_step1.png> <./fig_chord_apex_step2.png> <./fig_chord_a -pex_step3.png>] [6] +[4] [5 <./fig_chord_apex_step1.png> <./fig_chord_apex_step2.png> <./fig_chord_apex_step3.png>] [6] Overfull \hbox (4.76643pt too wide) in paragraph at lines 433--440 -\OT1/cmr/m/n/10 which $\OML/cmm/m/it/10 '[]\OT1/cmr/m/n/10 (\OML/cmm/m/it/10 f[ -]\OT1/cmr/m/n/10 ) = \OML/cmm/m/it/10 '[]\OT1/cmr/m/n/10 (\OML/cmm/m/it/10 f[]\ -OT1/cmr/m/n/10 )$ and $\OML/cmm/m/it/10 '[]\OT1/cmr/m/n/10 (\OML/cmm/m/it/10 f[ -]\OT1/cmr/m/n/10 )\OML/cmm/m/it/10 ; '[]\OT1/cmr/m/n/10 (\OML/cmm/m/it/10 f[]\O -T1/cmr/m/n/10 )\OML/cmm/m/it/10 ; '[]\OT1/cmr/m/n/10 (\OML/cmm/m/it/10 f[]\OT1/ -cmr/m/n/10 )$ +\OT1/cmr/m/n/10 which $\OML/cmm/m/it/10 '[]\OT1/cmr/m/n/10 (\OML/cmm/m/it/10 f[]\OT1/cmr/m/n/10 ) = \OML/cmm/m/it/10 '[]\OT1/cmr/m/n/10 (\OML/cmm/m/it/10 f[]\OT1/cmr/m/n/10 )$ and $\OML/cmm/m/it/10 '[]\OT1/cmr/m/n/10 (\OML/cmm/m/it/10 f[]\OT1/cmr/m/n/10 )\OML/cmm/m/it/10 ; '[]\OT1/cmr/m/n/10 (\OML/cmm/m/it/10 f[]\OT1/cmr/m/n/10 )\OML/cmm/m/it/10 ; '[]\OT1/cmr/m/n/10 (\OML/cmm/m/it/10 f[]\OT1/cmr/m/n/10 )$ [] @@ -270,21 +238,17 @@ Package pdftex.def Info: fig_alg_step2.png used on input line 481. (pdftex.def) Requested size: 115.20264pt x 132.48134pt. Underfull \hbox (badness 4391) in paragraph at lines 498--498 -\OT1/cmr/m/sc/10 Figure 3.\OT1/cmr/m/n/10 Algorithm 3.1[] on $\OML/cmm/m/it/10 -G[] \OT1/cmr/m/n/10 = [](\OML/cmm/m/it/10 G\OT1/cmr/m/n/10 )$, where $\OML/cmm/ -m/it/10 G$ +\OT1/cmr/m/sc/10 Figure 3.\OT1/cmr/m/n/10 Algorithm 3.1[] on $\OML/cmm/m/it/10 G[] \OT1/cmr/m/n/10 = [](\OML/cmm/m/it/10 G\OT1/cmr/m/n/10 )$, where $\OML/cmm/m/it/10 G$ [] Underfull \hbox (badness 3623) in paragraph at lines 498--498 -\OT1/cmr/m/n/10 is the first min-degree-$5$ plantri tri-an-gu-la-tion on $14$ v -er- +\OT1/cmr/m/n/10 is the first min-degree-$5$ plantri tri-an-gu-la-tion on $14$ ver- [] Underfull \hbox (badness 3179) in paragraph at lines 498--498 -\OT1/cmr/m/n/10 tices and $\OML/cmm/m/it/10 '[]$ \OT1/cmr/m/n/10 is a spe-cific - proper $3$-edge-colouring of $\OML/cmm/m/it/10 H[]$ +\OT1/cmr/m/n/10 tices and $\OML/cmm/m/it/10 '[]$ \OT1/cmr/m/n/10 is a spe-cific proper $3$-edge-colouring of $\OML/cmm/m/it/10 H[]$ [] @@ -297,37 +261,20 @@ Underfull \hbox (badness 6094) in paragraph at lines 498--498 \OT1/cmr/m/n/10 and the Kempe-cycle con-di-tion (Lemma 2.7[]), found by [] -[7] [8 <./fig_alg_step0.png> <./fig_alg_step1.png> <./fig_alg_step2.png>] -(./paper.aux) ) +[7] [8 <./fig_alg_step0.png> <./fig_alg_step1.png> <./fig_alg_step2.png>] [9] (./paper.aux) ) Here is how much of TeX's memory you used: - 3079 strings out of 478268 - 43848 string characters out of 5846347 - 344259 words of memory out of 5000000 - 21116 multiletter control sequences out of 15000+600000 + 3082 strings out of 478268 + 44173 string characters out of 5846347 + 344279 words of memory out of 5000000 + 21118 multiletter control sequences out of 15000+600000 476532 words of font info for 56 fonts, out of 8000000 for 9000 1302 hyphenation exceptions out of 8191 - 69i,8n,76p,1306b,298s stack positions out of 10000i,1000n,20000p,200000b,200000s - - -Output written on paper.pdf (8 pages, 969703 bytes). + 69i,8n,76p,1392b,298s stack positions out of 10000i,1000n,20000p,200000b,200000s + +Output written on paper.pdf (9 pages, 977618 bytes). PDF statistics: - 137 PDF objects out of 1000 (max. 8388607) - 72 compressed objects within 1 object stream + 140 PDF objects out of 1000 (max. 8388607) + 74 compressed objects within 1 object stream 0 named destinations out of 1000 (max. 500000) 51 words of extra memory for PDF output out of 10000 (max. 10000000) diff --git a/papers/dual_decomposition_minimal_counterexamples/paper.pdf b/papers/dual_decomposition_minimal_counterexamples/paper.pdf index bb72059ecfe3613f098e63aa8a362d0c1a721fd2..a4f46b4a9adbf600b30d2215700c1377534c3180 100644 GIT binary patch delta 105228 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 delta 97241 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 z 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 diff --git a/papers/dual_decomposition_minimal_counterexamples/paper.tex b/papers/dual_decomposition_minimal_counterexamples/paper.tex index 3a2326c..936e5af 100644 --- a/papers/dual_decomposition_minimal_counterexamples/paper.tex +++ b/papers/dual_decomposition_minimal_counterexamples/paper.tex @@ -499,16 +499,121 @@ v_n^{(2)}$ in the interior.} \label{fig:iterated-reduction-trace} \end{figure} +\begin{lemma}[Exactly one matching pair in the algorithm's output] +\label{lem:exactly-one-match} +Let $G$ be a minimal counterexample to the Four Colour Theorem, and let +$(H_{t^*}, \varphi_{t^*})$ be the final graph-and-colouring produced by some +terminating execution of Algorithm~\ref{alg:iterated-reduction} on $G$, with +named pairs $(\mathrm{spike}_t, \mathrm{merged}_t)$ for $t = 1, \dots, t^*$. +Then there is exactly one $t$ with +$\varphi_{t^*}(\mathrm{spike}_t) = \varphi_{t^*}(\mathrm{merged}_t)$, and it +is $t = 1$. +\end{lemma} + +\begin{proof} +The algorithm never re-colours an existing edge: at each iteration +step~(3d) every surviving edge keeps its $\varphi_{t-1}$-colour, and the +four new edges receive fresh colours forced by propriety. Hence for every +$1 \leq k \leq t \leq t^*$, +\[ + \varphi_t(\mathrm{spike}_k) = \varphi_k(\mathrm{spike}_k), + \qquad + \varphi_t(\mathrm{merged}_k) = \varphi_k(\mathrm{merged}_k); +\] +the colours of the step-$k$ named edges, once written, are permanent. It +suffices to compare $\varphi_k(\mathrm{spike}_k)$ and +$\varphi_k(\mathrm{merged}_k)$ at the step where each pair is introduced. + +\textbf{Case $k = 1$.} Since $G$ is a minimal counterexample, $H_1$ is a +reduced dual of $G'$. Lemma~\ref{lem:chord-apex} applied to $\varphi_1$ gives +$\varphi_1(\mathrm{spike}_1) = \varphi_1(\mathrm{merged}_1)$. + +\textbf{Case $k \geq 2$.} At step $k$ the algorithm picks an index $i_k$ for +which $f_{i_k+3} = f_{i_k+4}$ (chord consistency) and $f_{i_k}, f_{i_k+1}, +f_{i_k+2}$ are pairwise distinct (propriety at the new $v_n$), where $f$ is +the external vector of the chosen pentagonal face of $H_{k-1}$ under +$\varphi_{k-1}$. Step~(3d) then assigns +\[ + \varphi_k(\mathrm{spike}_k) = f_{i_k+1}, + \qquad + \varphi_k(\mathrm{merged}_k) = f_{i_k+3}. +\] +By Lemma~\ref{lem:pentagonal-externals}, $f$ has the $(2,2,1)$ pattern: a +block of three consecutive positions $\{p, p+1, p+2\}$ (mod $5$) on which it +is constantly some colour $c$, while the remaining two positions +$\{p+3, p+4\}$ hold the two non-$c$ colours, one each. The condition +$f_{i_k+3} = f_{i_k+4}$ forces $(i_k+3, i_k+4)$ to be either $(p, p+1)$ or +$(p+1, p+2)$ --- the two consecutive pairs inside the block --- and +correspondingly $i_k + 1 \in \{p+3, p+4\}$, \emph{outside} the block. So +$f_{i_k+1}$ is not $c$, whereas $f_{i_k+3} = c$, and hence +$\varphi_k(\mathrm{spike}_k) \neq \varphi_k(\mathrm{merged}_k)$. + +Combining the two cases, exactly one $t \in \{1, \dots, t^*\}$ --- namely +$t = 1$ --- has $\varphi_{t^*}(\mathrm{spike}_t) = +\varphi_{t^*}(\mathrm{merged}_t)$. +\end{proof} + +\begin{lemma}[All-distinct colouring exists on a 4-colourable graph] +\label{lem:all-distinct-exists} +Let $G$ be a $4$-colourable maximal planar graph of minimum degree $\geq 5$ +(equivalently, a maximal planar graph that is \emph{not} a minimal +counterexample to the Four Colour Theorem). Then there is an execution of +Algorithm~\ref{alg:iterated-reduction} on $G$ whose final colouring +$\varphi_{t^*}$ satisfies +$\varphi_{t^*}(\mathrm{spike}_t) \neq \varphi_{t^*}(\mathrm{merged}_t)$ for +every $t \in \{1, \dots, t^*\}$. In particular, there exists a proper +$3$-edge-colouring of $H_{t^*}$ under which every spike-merged pair has +distinct colours. +\end{lemma} + +\begin{proof} +The argument mirrors Lemma~\ref{lem:exactly-one-match}, but extends a +colouring \emph{downward} from $G'$ rather than carrying one forward from +$H_1$. + +Since $G$ is $4$-colourable, by Tait's theorem +$G' = \mathrm{dual}(G)$ admits a proper $3$-edge-colouring $\xi$. Apply +Lemma~\ref{lem:pentagonal-externals} to $\xi$ at the pentagonal face $F_v$ +selected in step~(1): the external vector $f = (f_0, \dots, f_4)$ at $F_v$ +under $\xi$ has the $(3,1,1)$ cyclic-consecutive shape, with a block of +three consecutive positions $\{p, p+1, p+2\}$ (mod $5$) holding a common +colour $c$, and the remaining two positions $\{p+3, p+4\}$ holding the two +non-$c$ colours, one each. The algorithm's choice of $i_1$ forces +$\{i_1+3, i_1+4\}$ inside the $c$-block (so the chord is consistently +coloured) and the three positions $\{i_1, i_1+1, i_1+2\}$ pairwise distinct; +in particular $i_1+1$ lies \emph{outside} the $c$-block. + +Choose $\varphi_1$ to be the proper $3$-edge-colouring of $H_1$ that agrees +with $\xi$ on every surviving edge and assigns each new edge at $A_j$ the +unique third colour at $A_j$. Then +$\varphi_1(\mathrm{spike}_1) = f_{i_1+1}$, a value not equal to $c$, while +$\varphi_1(\mathrm{merged}_1) = f_{i_1+3} = c$, so +$\varphi_1(\mathrm{spike}_1) \neq \varphi_1(\mathrm{merged}_1)$. + +The same argument repeats at every step $k \geq 2$: the external vector at +the chosen pentagonal face under $\varphi_{k-1}$ has the $(3,1,1)$ +cyclic-consecutive shape (Lemma~\ref{lem:pentagonal-externals}), the +algorithm's index choice $i_k$ puts $i_k+3, i_k+4$ inside the colour block +and $i_k+1$ outside, and step~(3d) thus assigns +$\varphi_k(\mathrm{spike}_k) \neq \varphi_k(\mathrm{merged}_k)$. The +algorithm preserves these colours through every later step, so +$\varphi_{t^*}(\mathrm{spike}_t) \neq \varphi_{t^*}(\mathrm{merged}_t)$ for +every $t \in \{1, \dots, t^*\}$. +\end{proof} + \begin{conjecture} -\label{conj:no-all-distinct-coloring} -Let $G$ be a maximal planar graph of minimum degree $\geq 5$, and let -$H_{t^*}$ be the final reduced graph produced by some terminating execution -of Algorithm~\ref{alg:iterated-reduction} on $G$, with the corresponding -sequence of named pairs $(\mathrm{spike}_t, \mathrm{merged}_t)$ for -$t = 1, \dots, t^*$. Then $G$ is a minimal counterexample to the Four Colour -Theorem if and only if there is no proper $3$-edge-colouring of $H_{t^*}$ -under which $\mathrm{spike}_t$ and $\mathrm{merged}_t$ receive different -colours for every $t \in \{1, \dots, t^*\}$. +\label{conj:face-monochromatic-pair-on-merged-kempe-cycle} +Let $G$ be a minimal counterexample to the Four Colour Theorem, and let +$\widehat{G}'_{v,i}$ be a reduced dual of $G' = \mathrm{dual}(G)$. Then for +every proper $3$-edge-colouring $\varphi$ of $\widehat{G}'_{v,i}$ there exist +a face $F$ of $\widehat{G}'_{v,i}$ and two distinct edges +$e_1, e_2 \in \partial F$, with neither $e_1$ nor $e_2$ equal to the merged +edge, such that +\begin{enumerate} + \item $\varphi(e_1) = \varphi(e_2)$, and + \item $e_1$, $e_2$, and the merged edge all lie on a common + $\{a, b\}$-Kempe cycle of $\varphi$. +\end{enumerate} \end{conjecture} \end{document}