Skip to content

Commit 884ff2f

Browse files
phasetrclaude
andauthored
feat: deleteEdges-straddling = induce sumCompl disjoint sum — #2965 (#2979)
* feat: deleteEdges-separating = induce sumCompl disjoint sum (Part of #2965) * feat: deleteEdges-straddling = induce sumCompl disjoint sum Add induce_sum_map_sumCompl_eq_deleteEdges (SumGraph.lean): for a predicate p, deleting every edge whose endpoints lie on different sides of p decomposes G into the disjoint sum of the two induced subgraphs, up to Equiv.sumCompl p: ((G.induce {p}) ⊕g (G.induce {¬p})).map (Equiv.sumCompl p) = G.deleteEdges {e | e straddles p} Proved by edge extensionality (4-case analysis on Sum constructors): an edge survives iff its endpoints are adjacent and on the same side of p. This is the structural identity behind component factorization of a bond-deleted (cut) finite-volume system — Step 2 of the exhaustion-increment bridge. Part of #2965 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
1 parent 03ced9c commit 884ff2f

3 files changed

Lines changed: 54 additions & 0 deletions

File tree

IsingModel/SumGraph.lean

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
import Mathlib.Combinatorics.SimpleGraph.Sum
22
import Mathlib.Combinatorics.SimpleGraph.Finite
3+
import Mathlib.Combinatorics.SimpleGraph.DeleteEdges
4+
import Mathlib.Logic.Equiv.Sum
35

46
/-!
57
# Edge-set decomposition for the disjoint sum graph
@@ -135,4 +137,32 @@ theorem card_edgeFinset_sum [Fintype G.edgeSet] [Fintype H.edgeSet] :
135137
Finset.card_union_of_disjoint (disjoint_inl_inr_edgeFinset G H),
136138
Finset.card_map, Finset.card_map]
137139

140+
/-- **Deleting the edges that straddle a predicate `p` decomposes `G` into a
141+
disjoint sum of the two induced subgraphs.** Up to the relabeling
142+
`Equiv.sumCompl p : {a // p a} ⊕ {a // ¬p a} ≃ V`, the graph obtained by removing
143+
every edge whose endpoints lie on different sides of `p` equals the disjoint sum
144+
`G.induce {a | p a} ⊕g G.induce {a | ¬p a}`.
145+
146+
This is the structural identity behind the component factorization of a fully
147+
separated (bond-deleted) finite-volume Ising system: deleting the bonds across a
148+
cut yields two independent subsystems (Issue #2965, Phase A). -/
149+
theorem induce_sum_map_sumCompl_eq_deleteEdges (p : V → Prop) [DecidablePred p] :
150+
((G.induce {a | p a}).sum (G.induce {a | ¬ p a})).map (Equiv.sumCompl p).toEmbedding
151+
= G.deleteEdges {e : Sym2 V |
152+
¬ Sym2.lift ⟨fun a b => (p a ↔ p b), fun a b => by simp [iff_comm]⟩ e} := by
153+
ext a b
154+
rw [SimpleGraph.map_adj, SimpleGraph.deleteEdges_adj]
155+
simp only [Set.mem_setOf_eq, Sym2.lift_mk, not_not]
156+
constructor
157+
· rintro ⟨x, y, hxy, rfl, rfl⟩
158+
rcases x with ⟨x, hx⟩ | ⟨x, hx⟩ <;> rcases y with ⟨y, hy⟩ | ⟨y, hy⟩
159+
· exact ⟨hxy, iff_of_true hx hy⟩
160+
· exact Bool.noConfusion hxy
161+
· exact Bool.noConfusion hxy
162+
· exact ⟨hxy, iff_of_false hx hy⟩
163+
· rintro ⟨hadj, hiff⟩
164+
by_cases hp : p a
165+
· exact ⟨Sum.inl ⟨a, hp⟩, Sum.inl ⟨b, hiff.mp hp⟩, hadj, rfl, rfl⟩
166+
· exact ⟨Sum.inr ⟨a, hp⟩, Sum.inr ⟨b, fun h => hp (hiff.mpr h)⟩, hadj, rfl, rfl⟩
167+
138168
end SimpleGraph

docs/index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -350,6 +350,7 @@ Named specializations at `A = {i}`:
350350
| `edgeSet_sum` | Edge-set decomposition of `G ⊕g H` | `SumGraph.lean` | Disjoint-sum lemma |
351351
| `disjoint_inl_inr_edgeSet` / `disjoint_inl_inr_edgeFinset` | Set / Finset disjointness of the two images | `SumGraph.lean` | Disjoint-sum lemma |
352352
| `card_edgeFinset_sum` | `#(G ⊕g H).edgeFinset = #G.edgeFinset + #H.edgeFinset` | `SumGraph.lean` | Disjoint-sum lemma |
353+
| `induce_sum_map_sumCompl_eq_deleteEdges` | `((G.induce {p}) ⊕g (G.induce {¬p})).map (Equiv.sumCompl p) = G.deleteEdges {straddling edges}`: deleting every edge whose endpoints lie on different sides of a predicate `p` decomposes `G` into the disjoint sum of the two induced subgraphs. The structural identity behind component factorization of a bond-deleted (cut) system | `SumGraph.lean` | Component split (Issue #2965) |
353354
| `Config.sumEquiv` | `Config (ι ⊕ ι') ≃ Config ι × Config ι'` | `SumModel.lean` | Ising on sum graph |
354355
| `interactionEnergy_sum` / `externalFieldEnergy_sum` | Per-summand additivity of the Hamiltonian's interaction / field contributions on `G ⊕g H` | `SumModel.lean` | Ising on sum graph |
355356
| `hamiltonian_sum` (§4.6 super-add. Step 2-3) | `hamiltonian (G ⊕g H) p (Sum.elim σ₁ σ₂) = hamiltonian G p σ₁ + hamiltonian H p σ₂` | `SumModel.lean` | Ising on sum graph |

tex/proof-guide.tex

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12226,6 +12226,29 @@ \subsection{Edge-set decomposition for disjoint sum graphs (\texttt{SumGraph.lea
1222612226
$\mathrm{Embedding.sym2Map}$.
1222712227
\end{proof}
1222812228

12229+
\begin{proposition}[\texttt{SimpleGraph.induce\_sum\_map\_sumCompl\_eq\_deleteEdges} (Issue \#2965)]
12230+
For a predicate $p$ on the vertices, deleting every edge whose endpoints lie on
12231+
different sides of $p$ decomposes $G$ into the disjoint sum of the two induced
12232+
subgraphs, up to the relabeling $\mathrm{Equiv.sumCompl}\,p
12233+
: \{a\mid p\,a\}\oplus\{a\mid\neg p\,a\}\simeq V$:
12234+
\[
12235+
\bigl((G\,\mathrm{induce}\,\{a\mid p\,a\})
12236+
\oplus_g (G\,\mathrm{induce}\,\{a\mid\neg p\,a\})\bigr)
12237+
.\mathrm{map}\,(\mathrm{Equiv.sumCompl}\,p)
12238+
= G.\mathrm{deleteEdges}\,\{e\mid e\text{ straddles }p\}.
12239+
\]
12240+
\end{proposition}
12241+
12242+
\begin{proof}
12243+
By edge extensionality: an edge $a\sim b$ survives the deletion iff
12244+
$G.\mathrm{Adj}\,a\,b$ and $a,b$ are on the same side of $p$, which is exactly
12245+
the adjacency of the transported disjoint sum (the $\mathrm{inl}$/$\mathrm{inr}$
12246+
arms of \texttt{SimpleGraph.sum} for same-side pairs, and $\bot$ for straddling
12247+
pairs). This is the structural identity behind the component factorization of a
12248+
fully separated (bond-deleted) finite-volume Ising system: cutting all bonds
12249+
across a partition yields two independent subsystems.
12250+
\end{proof}
12251+
1222912252
\paragraph{Context.} This file is the combinatorial Step~1 toward the
1223012253
Glimm--Jaffe \S 4.6 super-additivity proof of thermodynamic-limit
1223112254
convergence of the free-energy density. Subsequent steps

0 commit comments

Comments
 (0)