Random-cluster measures on finite graphs
DefinitionOpen subgraph of an edge configuration#✓fully proved
The open subgraph of G under the edge configuration ω: the edges of G that ω
declares open.
def openSub (ω : ConfigSpace (Sym2 V)) : SimpleGraph V where
Adj x y := G.Adj x y ∧ ω s(x, y) = true
symm := by
refine ⟨fun x y h => ?_⟩
refine ⟨h.1.symm, ?_⟩
rw [Sym2.eq_swap]; exact h.2
loopless := ⟨fun x h => h.1.ne rfl⟩
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
Uses 1 · Used by 92
LemmaOpen subgraph as the meet of \(G\) with the open-edge graph#✓fully proved
The open subgraph is G ⊓ fromEdgeSet {e | ω e = true} in Mathlib's terms.
lemma openSub_eq_inf_fromEdgeSet (ω : ConfigSpace (Sym2 V)) :
openSub G ω = G ⊓ SimpleGraph.fromEdgeSet {e | ω e = true}
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def openSub (ω : ConfigSpace (Sym2 V)) : SimpleGraph V where
Adj x y := G.Adj x y ∧ ω s(x, y) = true
symm := by
refine ⟨fun x y h => ?_⟩
refine ⟨h.1.symm, ?_⟩
rw [Sym2.eq_swap]; exact h.2
loopless := ⟨fun x h => h.1.ne rfl⟩
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:82
Uses 2
DefinitionNumber of open clusters#✓fully proved
The number k(ω) of open clusters: connected components of the open subgraph, isolated
vertices included.
def numClusters (ω : ConfigSpace (Sym2 V)) : ℕ :=
Fintype.card (openSub G ω).ConnectedComponent
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def openSub (ω : ConfigSpace (Sym2 V)) : SimpleGraph V where
Adj x y := G.Adj x y ∧ ω s(x, y) = true
symm := by
refine ⟨fun x y h => ?_⟩
refine ⟨h.1.symm, ?_⟩
rw [Sym2.eq_swap]; exact h.2
loopless := ⟨fun x h => h.1.ne rfl⟩
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:82
Uses 2 · Used by 81
p · Free box measure dominated by the wired one for \(q \ge 1\) · Holley's condition for free and wired probabilities when \(q \ge 1\) · Holley's condition for free and wired weights when \(q \ge 1\) · Mixed supermodularity of free and wired cluster counts · Cluster count plus open-edge count is monotone · Number of open clusters equals the dimension of the Laplacian kernel · Supermodularity of the random-cluster cluster count · Doubling bound for the box free energy when \(q \ge 1\) · Van Hove subadditivity of the box free energy for \(q \ge 1\) · Per-edge free energy converges along \(K_j\) for \(d, q \ge 1\) · Random-cluster weight is at most \(q^{|V|}\) for \(q \ge 1\) · Uniform upper bound on the box free energy for \(d, n, q \ge 1\) · Isomorphism invariance of the ambient FK normalizer · Ambient FK normalizer is supermultiplicative under disjoint union · Subadditivity of \(-\log Z\) along a juxtaposition sequence · FK partition function of a graph with no vertices is one · FK partition function at least the all-closed weight for \(q \ge 1\) · Bound \(-\log Z \le |E|\,(-\log(1-p))\) for \(q \ge 1\) · Peeling bound for \(-\log Z\) of a tagged graph · Fibre-mass factorization of random-cluster probabilities · Free measure is dominated by induced-wiring measures for \(q \ge 1\) · Random-cluster weight of a glued configuration factorizes · Free box measure of a cylinder event as a finite sum · Next-box free measure of a cylinder event as a finite sum · One-step box monotonicity of free measures for \(q \ge 1\) · Cluster count of a glued configuration splits additively · Fibre masses of the free measure sum to one · Free box measure of a box connection event is the two-point function · Boxes satisfy the additive doubling bound for \(d \ge 1\) · Van Hove tiling bound for the edge partition function · Each non-edge contributes a factor 2 to the partition function · Per-box \(q = 2\) uniqueness off a countable set of tilts · Interface subadditivity of \(-\log\) of the edge partition function · Per-edge free energy of boxes converges for \(d \ge 1\) · Convex limit of centered tilt free energies of boxes for \(d, q \ge 1\) · Per-box uniqueness of the random-cluster measures off a countable set · Countable-exception \(q = 2\) uniqueness from one-sided derivative data · Free off-centre lower bound by the recentred small-box marginal · Free \(q = 2\) edge density lies in \((0, 1)\) · Domain Markov property (finite volume) · Finite-energy property · Ambient random-cluster law as a probability mass function · Graph automorphisms preserve the free FK probability · Unnormalized random-cluster weight · At \(q = 1\) the random-cluster weight is the Bernoulli product · Inhomogeneous random-cluster weight · Isomorphic graphs have equal free FK probabilities after relabelling · Differential formula · Differential formula in β · Opening an edge lowers the cluster count by at most one · Opening an edge does not increase the cluster count · Translation invariance of the free \(q = 2\) infinite-volume measureDefinitionBernoulli edge product#✓fully proved
The Bernoulli edge product ∏_{e ∈ E(G)} (p if e open, 1 - p if e closed).
def edgeProduct (p : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
∏ e ∈ G.edgeFinset, (if ω e then p else 1 - p)
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
Uses 1 · Used by 113
p · Free box measure dominated by the wired one for \(q \ge 1\) · Holley's condition for free and wired probabilities when \(q \ge 1\) · Holley's condition for free and wired weights when \(q \ge 1\) · Doubling bound for the box free energy when \(q \ge 1\) · Van Hove subadditivity of the box free energy for \(q \ge 1\) · Per-edge free energy converges along \(K_j\) for \(d, q \ge 1\) · Random-cluster weight is at most \(q^{|V|}\) for \(q \ge 1\) · Uniform upper bound on the box free energy for \(d, n, q \ge 1\) · Isomorphism invariance of the ambient FK normalizer · Ambient FK normalizer is supermultiplicative under disjoint union · Subadditivity of \(-\log Z\) along a juxtaposition sequence · FK partition function of a graph with no vertices is one · FK partition function at least the all-closed weight for \(q \ge 1\) · Bound \(-\log Z \le |E|\,(-\log(1-p))\) for \(q \ge 1\) · Peeling bound for \(-\log Z\) of a tagged graph · Domain Markov property for the wired measure on nested boxes · Edge product of a glued configuration factorizes · Box-boundary profile tends to \(\theta(p,2)\) if wired probabilities do · Factorization of the wired FK weight of a glued configuration · Factorization of the edge weight of a glued configuration · Outer wired fibre masses sum to one · Inner wired domination of the restricted outer wired measure · Wired random-cluster measure as a probability mass function · Wired random-cluster weight · FKG inequality for the wired measure when \(q \ge 1\) · Closed annulus plus inner-boundary wiring gives wired \(\Lambda_n\) law · Closed-annulus wired bound on origin-to-\(\partial\Lambda_n\), \(q = 2\) · Fibre-mass factorization of random-cluster probabilities · Free measure is dominated by induced-wiring measures for \(q \ge 1\) · Random-cluster weight of a glued configuration factorizes · Free box measure of a cylinder event as a finite sum · Next-box free measure of a cylinder event as a finite sum · One-step box monotonicity of free measures for \(q \ge 1\) · Fibre masses of the free measure sum to one · Domain Markov property for the wired box measure · Free box measure of a box connection event is the two-point function · Wired random-cluster probabilities are positive · Masses of the conditioning fibres sum to one · Wired \(\Lambda_m\) measure of a \(\Lambda_m\) cylinder event as a sum · Wired \(q = 2\) probability of \(0 \leftrightarrow \partial\Lambda_n\) in \(\Lambda_{n+1}\) at most in \(\Lambda_n\) · Wired \(\Lambda_{n+1}\) measure of a \(\Lambda_n\) cylinder event as a sum · Wired box measures decrease on inner increasing events for \(q \ge 1\) · Boxes satisfy the additive doubling bound for \(d \ge 1\) · Van Hove tiling bound for the edge partition function · Each non-edge contributes a factor 2 to the partition function · Per-box \(q = 2\) uniqueness off a countable set of tilts · Interface subadditivity of \(-\log\) of the edge partition function · Per-edge free energy of boxes converges for \(d \ge 1\) · Convex limit of centered tilt free energies of boxes for \(d, q \ge 1\) · Per-box uniqueness of the random-cluster measures off a countable set · Countable-exception \(q = 2\) uniqueness from one-sided derivative data · Free off-centre lower bound by the recentred small-box marginal · Wired FK edge marginals are at most one · Nonnegativity of wired FK edge marginals · Free \(q = 2\) edge density lies in \((0, 1)\) · Domain Markov property (finite volume) · Finite-energy property · Ambient random-cluster law as a probability mass function · Graph automorphisms preserve the free FK probability · Boundary-preserving automorphisms preserve the wired FK probability · Unnormalized random-cluster weight · At \(q = 1\) the random-cluster weight is the Bernoulli product · Isomorphic graphs have equal free FK probabilities after relabelling · Boundary-matching isomorphisms preserve wired FK probabilities · Translation invariance of the free \(q = 2\) infinite-volume measure · Ergodicity of the wired random-cluster measureDefinitionUnnormalized random-cluster weight#✓fully proved
The unnormalized random-cluster weight p ^ o(ω) (1 - p) ^ c(ω) q ^ k(ω).
def fkWeight (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
edgeProduct G p ω * q ^ numClusters G ω
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def edgeProduct (p : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
∏ e ∈ G.edgeFinset, (if ω e then p else 1 - p)
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:126
def numClusters (ω : ConfigSpace (Sym2 V)) : ℕ :=
Fintype.card (openSub G ω).ConnectedComponent
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:116
Uses 3 · Used by 80
p · Free box measure dominated by the wired one for \(q \ge 1\) · Holley's condition for free and wired probabilities when \(q \ge 1\) · Holley's condition for free and wired weights when \(q \ge 1\) · Doubling bound for the box free energy when \(q \ge 1\) · Van Hove subadditivity of the box free energy for \(q \ge 1\) · Per-edge free energy converges along \(K_j\) for \(d, q \ge 1\) · Random-cluster weight is at most \(q^{|V|}\) for \(q \ge 1\) · Edge partition function is at most \(2^{|E|} q^{|V|}\) for \(q \ge 1\) · Uniform upper bound on the box free energy for \(d, n, q \ge 1\) · Isomorphism invariance of the ambient FK normalizer · Ambient FK normalizer is supermultiplicative under disjoint union · Subadditivity of \(-\log Z\) along a juxtaposition sequence · FK partition function of a graph with no vertices is one · FK partition function at least the all-closed weight for \(q \ge 1\) · Bound \(-\log Z \le |E|\,(-\log(1-p))\) for \(q \ge 1\) · Peeling bound for \(-\log Z\) of a tagged graph · Domain Markov property · Fibre-mass factorization of random-cluster probabilities · Free measure is dominated by induced-wiring measures for \(q \ge 1\) · Random-cluster weight of a glued configuration factorizes · Free box measure of a cylinder event as a finite sum · Next-box free measure of a cylinder event as a finite sum · One-step box monotonicity of free measures for \(q \ge 1\) · Conditional partition function in terms of the induced wiring · Fibre masses of the free measure sum to one · Free box measure of a box connection event is the two-point function · Boxes satisfy the additive doubling bound for \(d \ge 1\) · Van Hove tiling bound for the edge partition function · Each non-edge contributes a factor 2 to the partition function · Per-box \(q = 2\) uniqueness off a countable set of tilts · Edge partition function of the random-cluster model · Interface subadditivity of \(-\log\) of the edge partition function · Per-edge free energy of boxes converges for \(d \ge 1\) · Convex limit of centered tilt free energies of boxes for \(d, q \ge 1\) · Per-box uniqueness of the random-cluster measures off a countable set · Countable-exception \(q = 2\) uniqueness from one-sided derivative data · Free off-centre lower bound by the recentred small-box marginal · Free \(q = 2\) edge density lies in \((0, 1)\) · Domain Markov property (finite volume) · Finite-energy property · Ambient random-cluster law as a probability mass function · Probability of an ambient FK configuration · Graph automorphisms preserve the free FK probability · At \(q = 1\) the random-cluster weight is the Bernoulli product · Ambient FK normalizer · Isomorphic graphs have equal free FK probabilities after relabelling · FK measure induced on a fibre · Total FK weight of a fibre · Translation invariance of the free \(q = 2\) infinite-volume measureDefinitionAmbient FK normalizer#✓fully proved
The ambient FK normalizer, summing over every bit assignment on Sym2 V.
Each loop or nonedge contributes a factor of two relative to the edge partition function
ecz_fkZEdge defined in EdgePartitionFunction.
def fkZ (p q : ℝ) : ℝ :=
∑ ω : ConfigSpace (Sym2 V), fkWeight G p q ω
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def fkWeight (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
edgeProduct G p ω * q ^ numClusters G ω
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:140
Uses 2 · Used by 74
p · Free box measure dominated by the wired one for \(q \ge 1\) · Holley's condition for free and wired probabilities when \(q \ge 1\) · Negative log ambient normalizer of a box · Negative log ambient normalizer of the box \(\Lambda_n\) · Doubling bound for the box free energy when \(q \ge 1\) · Van Hove subadditivity of the box free energy for \(q \ge 1\) · Isomorphism invariance of the ambient FK normalizer · Ambient FK normalizer is supermultiplicative under disjoint union · Subadditivity of \(-\log Z\) along a juxtaposition sequence · Negative log of the ambient FK normalizer · Orthant blocks have the FK partition function of \(\Lambda_K\) · Doubling inequality for \(-\log Z\) of the free \(q = 2\) FK model · Iterated and single induced graphs share the FK partition function · Induced graphs with equal range have equal FK partition functions · FK partition function of a graph with no vertices is one · FK partition function at least the all-closed weight for \(q \ge 1\) · Left part of a tag split has the block partition function · Bound \(-\log Z \le |E|\,(-\log(1-p))\) for \(q \ge 1\) · Peeling bound for \(-\log Z\) of a tagged graph · The all-tag restriction has the partition function of \(\Lambda_{2K+1}\) · Right part of a tag split has the restricted partition function · Fibre-mass factorization of random-cluster probabilities · Free measure is dominated by induced-wiring measures for \(q \ge 1\) · Free box measure of a cylinder event as a finite sum · Next-box free measure of a cylinder event as a finite sum · One-step box monotonicity of free measures for \(q \ge 1\) · Fibre masses of the free measure sum to one · Free box measure of a box connection event is the two-point function · Boxes satisfy the additive doubling bound for \(d \ge 1\) · Van Hove tiling bound for the edge partition function · Each non-edge contributes a factor 2 to the partition function · Per-box \(q = 2\) uniqueness off a countable set of tilts · Convex limit of centered tilt free energies of boxes for \(d, q \ge 1\) · Per-box uniqueness of the random-cluster measures off a countable set · Countable-exception \(q = 2\) uniqueness from one-sided derivative data · Free off-centre lower bound by the recentred small-box marginal · Free \(q = 2\) edge density lies in \((0, 1)\) · Domain Markov property (finite volume) · Finite-energy property · Ambient random-cluster law as a probability mass function · Probability of an ambient FK configuration · Graph automorphisms preserve the free FK probability · Isomorphic graphs have equal free FK probabilities after relabelling · Translation invariance of the free \(q = 2\) infinite-volume measureDefinitionProbability of an ambient FK configuration#✓fully proved
The probability of an ambient configuration: fkWeight G p q ω / fkZ G p q.
For 0 < p < 1 and q > 0, its graph-edge marginal is the random-cluster law and
unused coordinates are uniform.
noncomputable def fkProb (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
fkWeight G p q ω / fkZ G p q
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def fkWeight (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
edgeProduct G p ω * q ^ numClusters G ω
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:140
def fkZ (p q : ℝ) : ℝ :=
∑ ω : ConfigSpace (Sym2 V), fkWeight G p q ω
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:154
Uses 3 · Used by 97
p · Free box measure dominated by the wired one for \(q \ge 1\) · Holley's condition for free and wired probabilities when \(q \ge 1\) · Free inner measure is dominated by the conditional outer measure · Free inner measure is dominated by every induced-wiring measure · FKG inequality for free \(q = 2\) box measures on smaller-box events · Translation covariance of free box masses · Free box measure of an all-open event equals its box mass · Free translation invariance from free placements of every shift · Equal free probabilities from eventually equal translated masses · Free placement for a shift via eventually equal box masses · Conditional free probabilities depend only on the outer configuration · One-step growth of free \(q = 2\) measures of increasing cylinders · Fibre-mass factorization of random-cluster probabilities · Conditional free measure dominates the smaller free box for \(q \ge 1\) · Free measure is dominated by induced-wiring measures for \(q \ge 1\) · Free box measure of a cylinder event as a finite sum · Increasing box events gain free \(q = 2\) probability in the next box · Next-box free measure of a cylinder event as a finite sum · Decomposition of the free measure over the outer configuration · One-step box monotonicity of free measures for \(q \ge 1\) · Fibre masses of the free measure sum to one · Off-centre carrier vanishes by translation covariance · Free density is at most each translated wired marginal · Translated wired marginals converge to the wired density · Free box measure of a box connection event is the two-point function · Per-box \(q = 2\) uniqueness off a countable set of tilts · Per-box uniqueness of the random-cluster measures off a countable set · Free unit-edge marginal at \(0\) on \(\Lambda_{\lfloor\sqrt n\rfloor}\) · Countable-exception \(q = 2\) uniqueness from one-sided derivative data · Two-sided free \(q = 2\) bulk bounds from the free sandwich · Free \(q = 2\) bulk sandwich from equal free edge densities · Lower bound on free bulk edge marginals · Free off-centre lower bound by the recentred small-box marginal · Free off-centre sandwich from free rotation residues · Free unit-edge marginals converge to the free density · Free unit-edge marginal in the square-root box · Wired off-centre upper bound by the recentred small-box marginal · Free \(q = 2\) edge density lies in \((0, 1)\) · Free uniform bulk deviation at \(q = 2\) · Random-cluster measure conditioned on the edges off a set · Domain Markov property (finite volume) · Conditional probability that an edge is open given the rest · Finite-energy property · Random-cluster expectation of an observable · Ambient random-cluster law as a probability mass function · Graph automorphisms preserve free FK edge marginals · Graph automorphisms preserve the free FK probability · Box symmetries preserve the free \(q = 2\) density of box edges · Translation covariance of FK edge marginals on boxes · Boundary-matching isomorphisms transport FK edge marginals · Isomorphic graphs have equal free FK probabilities after relabelling · Two-point function of the free random-cluster measure · FKG inequality for connection events for \(q \ge 1\) · Translation invariance of the free \(q = 2\) infinite-volume measure · Free off-centre sandwich hypothesis · Free \(q = 2\) box edge marginals are at most the free density · Translation invariance of free and wired densities if marginals merge · Constant free density gives an upper bound on expected open edges · Free upper bound on expected open edges along a box-symmetry orbit · Equal free densities from merging free marginals · Translation invariance of the free density given merging marginals · Free box integral of an edge indicator is the free edge marginal · Translated free box mass of an edge set · Translated free box mass equals the centred box probabilityDefinitionAmbient random-cluster law as a probability mass function#✓fully proved
The ambient extension of the random-cluster edge law as a PMF on all Sym2 V
configurations, with independent uniform bits on loops and nonedges.
noncomputable def fkPMF {p q : ℝ} (hp : 0 < p) (hp1 : p < 1) (hq : 0 < q) :
PMF (ConfigSpace (Sym2 V)) :=
PMF.ofFintype (fun ω => ENNReal.ofReal (fkProb G p q ω)) <| by
rw [← ENNReal.ofReal_sum_of_nonneg fun ω _ => fkProb_nonneg G hp hp1 hq ω,
fkProb_sum_eq_one G hp hp1 hq]
simp
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def fkProb (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
fkWeight G p q ω / fkZ G p q
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:172
LemmaAt \(q = 1\) the random-cluster weight is the Bernoulli product#✓fully proved
At q = 1 the random-cluster weight is the Bernoulli product weight.
lemma fkWeight_one (p : ℝ) (ω : ConfigSpace (Sym2 V)) :
fkWeight G p 1 ω = edgeProduct G p ω
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def fkWeight (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
edgeProduct G p ω * q ^ numClusters G ω
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:140
def edgeProduct (p : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
∏ e ∈ G.edgeFinset, (if ω e then p else 1 - p)
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:126
Uses 4 · Used by 8
DefinitionAgreement of configurations off an edge set#✓fully proved
ω agrees with ψ on every edge outside F.
def AgreesOff (F : Finset (Sym2 V)) (ψ : ConfigSpace (Sym2 V)) :
ConfigSpace (Sym2 V) → Prop :=
fun ω => ∀ e, e ∉ F → ω e = ψ e
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
Uses 1 · Used by 29
DefinitionFibre of configurations agreeing off an edge set#✓fully proved
The fibre of configurations agreeing with ψ off F.
noncomputable def condFibre (F : Finset (Sym2 V)) (ψ : ConfigSpace (Sym2 V)) :
Finset (ConfigSpace (Sym2 V)) :=
Finset.univ.filter (AgreesOff F ψ)
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def AgreesOff (F : Finset (Sym2 V)) (ψ : ConfigSpace (Sym2 V)) :
ConfigSpace (Sym2 V) → Prop :=
fun ω => ∀ e, e ∉ F → ω e = ψ e
PhyslibExt/StatisticalMechanics/RandomCluster/DomainMarkov.lean:58
Uses 2 · Used by 36
DefinitionTotal FK weight of a fibre#✓fully proved
The total FK weight of the fibre condFibre F ψ.
noncomputable def inducedFkZ (p q : ℝ) (F : Finset (Sym2 V))
(ψ : ConfigSpace (Sym2 V)) : ℝ :=
∑ ρ ∈ condFibre F ψ, fkWeight G p q ρ
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def condFibre (F : Finset (Sym2 V)) (ψ : ConfigSpace (Sym2 V)) :
Finset (ConfigSpace (Sym2 V)) :=
Finset.univ.filter (AgreesOff F ψ)
PhyslibExt/StatisticalMechanics/RandomCluster/DomainMarkov.lean:85
def fkWeight (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
edgeProduct G p ω * q ^ numClusters G ω
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:140
Uses 3 · Used by 4
DefinitionFK measure induced on a fibre#✓fully proved
The FK measure induced on the fibre condFibre F ψ: FK weight divided by the fibre's total
weight.
noncomputable def inducedFkProb (p q : ℝ) (F : Finset (Sym2 V))
(ψ ω : ConfigSpace (Sym2 V)) : ℝ :=
fkWeight G p q ω / inducedFkZ G p q F ψ
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def fkWeight (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
edgeProduct G p ω * q ^ numClusters G ω
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:140
noncomputable def inducedFkZ (p q : ℝ) (F : Finset (Sym2 V))
(ψ : ConfigSpace (Sym2 V)) : ℝ :=
∑ ρ ∈ condFibre F ψ, fkWeight G p q ρ
PhyslibExt/StatisticalMechanics/RandomCluster/DomainMarkov.lean:101
Uses 3 · Used by 2
DefinitionRandom-cluster measure conditioned on the edges off a set#✓fully proved
The random-cluster measure conditioned on agreeing with ψ off F.
noncomputable def condFkProb (p q : ℝ) (F : Finset (Sym2 V))
(ψ ω : ConfigSpace (Sym2 V)) : ℝ :=
fkProb G p q ω / ∑ ρ ∈ condFibre F ψ, fkProb G p q ρ
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def fkProb (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
fkWeight G p q ω / fkZ G p q
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:172
noncomputable def condFibre (F : Finset (Sym2 V)) (ψ : ConfigSpace (Sym2 V)) :
Finset (ConfigSpace (Sym2 V)) :=
Finset.univ.filter (AgreesOff F ψ)
PhyslibExt/StatisticalMechanics/RandomCluster/DomainMarkov.lean:85
Uses 3 · Used by 8
TheoremDomain Markov property (finite volume)#✓fully proved
Conditioned on the states of the edges outside F,
the random-cluster measure is the FK weight renormalized on the fibre
(Grimmett, The Random-Cluster Model, 2006, Lemma 4.13).
theorem condFkProb_eq_inducedFkProb {p q : ℝ} (hp : 0 < p) (hp1 : p < 1) (hq : 0 < q)
(F : Finset (Sym2 V)) (ψ ω : ConfigSpace (Sym2 V)) :
condFkProb G p q F ψ ω = inducedFkProb G p q F ψ ω
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def condFkProb (p q : ℝ) (F : Finset (Sym2 V))
(ψ ω : ConfigSpace (Sym2 V)) : ℝ :=
fkProb G p q ω / ∑ ρ ∈ condFibre F ψ, fkProb G p q ρ
PhyslibExt/StatisticalMechanics/RandomCluster/DomainMarkov.lean:144
noncomputable def inducedFkProb (p q : ℝ) (F : Finset (Sym2 V))
(ψ ω : ConfigSpace (Sym2 V)) : ℝ :=
fkWeight G p q ω / inducedFkZ G p q F ψ
PhyslibExt/StatisticalMechanics/RandomCluster/DomainMarkov.lean:120
Uses 10 · Used by 1
DefinitionClosing the edges of a set in a configuration#✓fully proved
The configuration that closes every edge of F and agrees with ψ elsewhere.
noncomputable def projOff (F : Finset (Sym2 V)) (ψ : ConfigSpace (Sym2 V)) :
ConfigSpace (Sym2 V) :=
fun e => if e ∈ F then false else ψ e
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
Uses 1 · Used by 2
DefinitionFibre representatives with every edge of a set closed#✓fully proved
Representatives of the fibres of F: configurations with every edge of F closed.
noncomputable def fibreReps (F : Finset (Sym2 V)) : Finset (ConfigSpace (Sym2 V)) :=
Finset.univ.filter (fun ψ => projOff F ψ = ψ)
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def projOff (F : Finset (Sym2 V)) (ψ : ConfigSpace (Sym2 V)) :
ConfigSpace (Sym2 V) :=
fun e => if e ∈ F then false else ψ e
PhyslibExt/StatisticalMechanics/RandomCluster/FKDisjointBoxDomainMarkov.lean:74
DefinitionEvent depending only on edges outside a set#✓fully proved
Membership in B depends only on the states of edges outside F.
def DependsOnOutside (F : Finset (Sym2 V)) (B : Set (ConfigSpace (Sym2 V))) : Prop :=
∀ ψ ρ, AgreesOff F ψ ρ → (ψ ∈ B ↔ ρ ∈ B)
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def AgreesOff (F : Finset (Sym2 V)) (ψ : ConfigSpace (Sym2 V)) :
ConfigSpace (Sym2 V) → Prop :=
fun ω => ∀ e, e ∉ F → ω e = ψ e
PhyslibExt/StatisticalMechanics/RandomCluster/DomainMarkov.lean:58
LemmaToggling a non-edge leaves the open subgraph unchanged#✓fully proved
Off the edges of G, flipping e does not change the open subgraph.
lemma openSub_setOpen_eq_setClosed_of_notMem {e : Sym2 V} (he : e ∉ G.edgeFinset)
(ω : ConfigSpace (Sym2 V)) :
openSub G (setOpen e ω) = openSub G (setClosed e ω)
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def openSub (ω : ConfigSpace (Sym2 V)) : SimpleGraph V where
Adj x y := G.Adj x y ∧ ω s(x, y) = true
symm := by
refine ⟨fun x y h => ?_⟩
refine ⟨h.1.symm, ?_⟩
rw [Sym2.eq_swap]; exact h.2
loopless := ⟨fun x h => h.1.ne rfl⟩
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:82
def setOpen (e : E) (ω : ConfigSpace E) : ConfigSpace E := Function.update ω e true
MathlibExt/Probability/CorrelationInequalities/Pivotal.lean:42
def setClosed (e : E) (ω : ConfigSpace E) : ConfigSpace E := Function.update ω e false
MathlibExt/Probability/CorrelationInequalities/Pivotal.lean:45
Uses 4 · Used by 4
LemmaOpening an edge does not increase the cluster count#✓fully proved
Opening an edge does not increase the number of clusters. This is a special case of
Mathlib's SimpleGraph.ConnectedComponent.card_le_card_of_le, which proves it.
lemma numClusters_setOpen_le (e : Sym2 V) (ω : ConfigSpace (Sym2 V)) :
numClusters G (setOpen e ω) ≤ numClusters G (setClosed e ω)
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def numClusters (ω : ConfigSpace (Sym2 V)) : ℕ :=
Fintype.card (openSub G ω).ConnectedComponent
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:116
def setOpen (e : E) (ω : ConfigSpace E) : ConfigSpace E := Function.update ω e true
MathlibExt/Probability/CorrelationInequalities/Pivotal.lean:42
def setClosed (e : E) (ω : ConfigSpace E) : ConfigSpace E := Function.update ω e false
MathlibExt/Probability/CorrelationInequalities/Pivotal.lean:45
Uses 6 · Used by 2
LemmaOpening an edge lowers the cluster count by at most one#✓fully proved
Opening an edge lowers the number of clusters by at most one.
lemma numClusters_setClosed_le_setOpen_succ (e : Sym2 V) (ω : ConfigSpace (Sym2 V)) :
numClusters G (setClosed e ω) ≤ numClusters G (setOpen e ω) + 1
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def numClusters (ω : ConfigSpace (Sym2 V)) : ℕ :=
Fintype.card (openSub G ω).ConnectedComponent
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:116
def setClosed (e : E) (ω : ConfigSpace E) : ConfigSpace E := Function.update ω e false
MathlibExt/Probability/CorrelationInequalities/Pivotal.lean:45
def setOpen (e : E) (ω : ConfigSpace E) : ConfigSpace E := Function.update ω e true
MathlibExt/Probability/CorrelationInequalities/Pivotal.lean:42
Uses 9 · Used by 3
DefinitionBernoulli product over the edges other than one edge#✓fully proved
The Bernoulli product over the edges of G other than e.
noncomputable def edgeRest (p : ℝ) (e : Sym2 V) (ω : ConfigSpace (Sym2 V)) : ℝ :=
∏ e' ∈ G.edgeFinset \ {e}, (if ω e' then p else 1 - p)
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
Uses 1 · Used by 2
DefinitionConditional probability that an edge is open given the rest#✓fully proved
The conditional probability under φ_{G,p,q} that e is open given the states of all
other edges: φ(setOpen e ω) / (φ(setOpen e ω) + φ(setClosed e ω)).
noncomputable def condOpen (p q : ℝ) (e : Sym2 V) (ω : ConfigSpace (Sym2 V)) : ℝ :=
fkProb G p q (setOpen e ω) /
(fkProb G p q (setOpen e ω) + fkProb G p q (setClosed e ω))
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def fkProb (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
fkWeight G p q ω / fkZ G p q
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:172
def setOpen (e : E) (ω : ConfigSpace E) : ConfigSpace E := Function.update ω e true
MathlibExt/Probability/CorrelationInequalities/Pivotal.lean:42
def setClosed (e : E) (ω : ConfigSpace E) : ConfigSpace E := Function.update ω e false
MathlibExt/Probability/CorrelationInequalities/Pivotal.lean:45
Uses 4 · Used by 2
DefinitionFinite-energy constant of the random-cluster measure#✓fully proved
The finite-energy constant min (p / (p + q (1 - p))) (1 - p).
noncomputable def cFE (p q : ℝ) : ℝ := min (p / (p + q * (1 - p))) (1 - p)
Used by 1
TheoremFinite-energy property#✓fully proved
Finite-energy property of the random-cluster measure. For p ∈ (0, 1) and q ≥ 1, the
conditional probability that an edge is open given all other edges lies in
[cFE p q, 1 - cFE p q]. For edges of G the sharper bounds p / (p + q (1 - p)) and p are
proved along the way. See G. Grimmett, The Random-Cluster Model (2006), Chapter 3.
theorem finite_energy {p q : ℝ} (hp : 0 < p) (hp1 : p < 1) (hq : 1 ≤ q)
(e : Sym2 V) (ω : ConfigSpace (Sym2 V)) :
cFE p q ≤ condOpen G p q e ω ∧ condOpen G p q e ω ≤ 1 - cFE p q
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def cFE (p q : ℝ) : ℝ := min (p / (p + q * (1 - p))) (1 - p)
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteEnergy.lean:293
noncomputable def condOpen (p q : ℝ) (e : Sym2 V) (ω : ConfigSpace (Sym2 V)) : ℝ :=
fkProb G p q (setOpen e ω) /
(fkProb G p q (setOpen e ω) + fkProb G p q (setClosed e ω))
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteEnergy.lean:255
Uses 15
DefinitionInhomogeneous Bernoulli edge product#✓fully proved
The inhomogeneous Bernoulli product ∏_{e ∈ E(G)} (pf e if e open, 1 - pf e if closed).
noncomputable def edgeProductW (pf : Sym2 V → ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
∏ e ∈ G.edgeFinset, (if ω e then pf e else 1 - pf e)
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
Uses 1 · Used by 3
DefinitionInhomogeneous random-cluster weight#✓fully proved
The inhomogeneous random-cluster weight edgeProductW G pf ω · q ^ k(ω).
noncomputable def fkWeightW (pf : Sym2 V → ℝ) (q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
edgeProductW G pf ω * q ^ numClusters G ω
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def edgeProductW (pf : Sym2 V → ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
∏ e ∈ G.edgeFinset, (if ω e then pf e else 1 - pf e)
PhyslibExt/StatisticalMechanics/RandomCluster/RussoDerivativeBeta.lean:74
def numClusters (ω : ConfigSpace (Sym2 V)) : ℕ :=
Fintype.card (openSub G ω).ConnectedComponent
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:116
Uses 3 · Used by 5
DefinitionPartition function of the inhomogeneous random-cluster measure#✓fully proved
The partition function of the inhomogeneous random-cluster measure.
noncomputable def fkZW (pf : Sym2 V → ℝ) (q : ℝ) : ℝ :=
∑ ω : ConfigSpace (Sym2 V), fkWeightW G pf q ω
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def fkWeightW (pf : Sym2 V → ℝ) (q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
edgeProductW G pf ω * q ^ numClusters G ω
PhyslibExt/StatisticalMechanics/RandomCluster/RussoDerivativeBeta.lean:78
Uses 2 · Used by 3
DefinitionInhomogeneous random-cluster probability#✓fully proved
The inhomogeneous random-cluster probability fkWeightW / fkZW.
noncomputable def fkProbW (pf : Sym2 V → ℝ) (q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
fkWeightW G pf q ω / fkZW G pf q
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def fkWeightW (pf : Sym2 V → ℝ) (q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
edgeProductW G pf ω * q ^ numClusters G ω
PhyslibExt/StatisticalMechanics/RandomCluster/RussoDerivativeBeta.lean:78
noncomputable def fkZW (pf : Sym2 V → ℝ) (q : ℝ) : ℝ :=
∑ ω : ConfigSpace (Sym2 V), fkWeightW G pf q ω
PhyslibExt/StatisticalMechanics/RandomCluster/RussoDerivativeBeta.lean:82
Uses 3 · Used by 3
DefinitionExpectation under the inhomogeneous random-cluster measure#✓fully proved
The expectation of g under the inhomogeneous random-cluster measure.
noncomputable def fkMeanW (pf : Sym2 V → ℝ) (q : ℝ) (g : ConfigSpace (Sym2 V) → ℝ) : ℝ :=
∑ ω : ConfigSpace (Sym2 V), g ω * fkProbW G pf q ω
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def fkProbW (pf : Sym2 V → ℝ) (q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
fkWeightW G pf q ω / fkZW G pf q
PhyslibExt/StatisticalMechanics/RandomCluster/RussoDerivativeBeta.lean:86
Uses 2 · Used by 4
DefinitionCovariance under the inhomogeneous random-cluster measure#✓fully proved
The covariance E[f g] - E[f] E[g] under the inhomogeneous random-cluster measure
(a finite form of Mathlib's ProbabilityTheory.covariance).
noncomputable def fkCovW (pf : Sym2 V → ℝ) (q : ℝ)
(f g : ConfigSpace (Sym2 V) → ℝ) : ℝ :=
fkMeanW G pf q (fun ω => f ω * g ω) - fkMeanW G pf q f * fkMeanW G pf q g
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def fkMeanW (pf : Sym2 V → ℝ) (q : ℝ) (g : ConfigSpace (Sym2 V) → ℝ) : ℝ :=
∑ ω : ConfigSpace (Sym2 V), g ω * fkProbW G pf q ω
PhyslibExt/StatisticalMechanics/RandomCluster/RussoDerivativeBeta.lean:90
Uses 2 · Used by 2
DefinitionReal-valued indicator that an edge is open#✓fully proved
The real-valued state 𝟙[e open] of the edge e.
noncomputable def coordR (e : Sym2 V) (ω : ConfigSpace (Sym2 V)) : ℝ :=
if ω e then (1 : ℝ) else 0
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
Uses 1 · Used by 3
DefinitionInhomogeneous Bernoulli product over all edges but one#✓fully proved
The inhomogeneous Bernoulli product over the edges of G other than e₀.
noncomputable def edgeProductWOff (pf : Sym2 V → ℝ) (e₀ : Sym2 V)
(ω : ConfigSpace (Sym2 V)) : ℝ :=
∏ j ∈ G.edgeFinset.erase e₀, (if ω j then pf j else 1 - pf j)
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
Uses 1 · Used by 1
DefinitionUnnormalized inhomogeneous random-cluster expectation#✓fully proved
The unnormalized expectation ∑_ω g(ω) fkWeightW G pf q ω.
noncomputable def fkNumerW (pf : Sym2 V → ℝ) (q : ℝ) (g : ConfigSpace (Sym2 V) → ℝ) : ℝ :=
∑ ω : ConfigSpace (Sym2 V), g ω * fkWeightW G pf q ω
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def fkWeightW (pf : Sym2 V → ℝ) (q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
edgeProductW G pf ω * q ^ numClusters G ω
PhyslibExt/StatisticalMechanics/RandomCluster/RussoDerivativeBeta.lean:78
Uses 2 · Used by 2
TheoremDifferential formula#✓fully proved
Differential formula for the random-cluster measure: the derivative of φ[g] in the
parameter of the edge e₀ is Cov(g, 𝟙[e₀ open]) / (p (1 - p)) with p = pf e₀. See
G. Grimmett, The Random-Cluster Model (2006), Chapter 3.
theorem hasDerivAt_fkMeanW {pf : Sym2 V → ℝ} (hpf : ∀ e, 0 < pf e) (hpf1 : ∀ e, pf e < 1)
{q : ℝ} (hq : 0 < q) {e₀ : Sym2 V} (he : e₀ ∈ G.edgeFinset)
(g : ConfigSpace (Sym2 V) → ℝ) :
HasDerivAt (fun t => fkMeanW G (Function.update pf e₀ t) q g)
(fkCovW G (Function.update pf e₀ (pf e₀)) q g (coordR e₀) / (pf e₀ * (1 - pf e₀)))
(pf e₀)
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def fkMeanW (pf : Sym2 V → ℝ) (q : ℝ) (g : ConfigSpace (Sym2 V) → ℝ) : ℝ :=
∑ ω : ConfigSpace (Sym2 V), g ω * fkProbW G pf q ω
PhyslibExt/StatisticalMechanics/RandomCluster/RussoDerivativeBeta.lean:90
noncomputable def fkCovW (pf : Sym2 V → ℝ) (q : ℝ)
(f g : ConfigSpace (Sym2 V) → ℝ) : ℝ :=
fkMeanW G pf q (fun ω => f ω * g ω) - fkMeanW G pf q f * fkMeanW G pf q g
PhyslibExt/StatisticalMechanics/RandomCluster/RussoDerivativeBeta.lean:95
noncomputable def coordR (e : Sym2 V) (ω : ConfigSpace (Sym2 V)) : ℝ :=
if ω e then (1 : ℝ) else 0
PhyslibExt/StatisticalMechanics/RandomCluster/RussoDerivativeBeta.lean:100
Uses 11
DefinitionProbability of an event under the inhomogeneous random-cluster measure#✓fully proved
The probability of the event A under the inhomogeneous random-cluster measure.
noncomputable def fkProbWOf (pf : Sym2 V → ℝ) (q : ℝ)
(A : Set (ConfigSpace (Sym2 V))) : ℝ :=
fkMeanW G pf q (A.indicator (fun _ => (1 : ℝ)))
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def fkMeanW (pf : Sym2 V → ℝ) (q : ℝ) (g : ConfigSpace (Sym2 V) → ℝ) : ℝ :=
∑ ω : ConfigSpace (Sym2 V), g ω * fkProbW G pf q ω
PhyslibExt/StatisticalMechanics/RandomCluster/RussoDerivativeBeta.lean:90
LemmaDerivative in \(\beta\) of the edge parameter \(1 - e^{-\beta J}\)#✓fully proved
The derivative of the edge parameter p(β) = 1 - exp (-β J) is J exp (-β J).
lemma hasDerivAt_paramOfBeta (J β : ℝ) :
HasDerivAt (fun b => 1 - Real.exp (-(b * J))) (J * Real.exp (-(β * J))) β
DefinitionEdge parameters \(p_e(\beta) = 1 - e^{-\beta J_e}\)#✓fully proved
The edge parameters p_e(β) = 1 - exp (-β J_e).
DefinitionLogarithmic \(\beta\)-derivative of the random-cluster weight#✓fully proved
The logarithmic β-derivative of the random-cluster weight under betaParams:
∑_{e ∈ E(G)} (J_e / p_e) (𝟙[e open] - p_e).
noncomputable def betaScore (G : SimpleGraph V) [DecidableRel G.Adj]
(J : Sym2 V → ℝ) (β : ℝ)
(ω : ConfigSpace (Sym2 V)) : ℝ :=
∑ e ∈ G.edgeFinset,
(J e / betaParams J β e) * (coordR e ω - betaParams J β e)
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def betaParams (J : Sym2 V → ℝ) (β : ℝ) : Sym2 V → ℝ :=
fun e => 1 - Real.exp (-(β * J e))
PhyslibExt/StatisticalMechanics/RandomCluster/RussoDerivativeBetaSum.lean:76
noncomputable def coordR (e : Sym2 V) (ω : ConfigSpace (Sym2 V)) : ℝ :=
if ω e then (1 : ℝ) else 0
PhyslibExt/StatisticalMechanics/RandomCluster/RussoDerivativeBeta.lean:100
Uses 3 · Used by 1
TheoremDifferential formula in β#✓fully proved
Differential formula in β for the random-cluster measure with edge parameters
1 - exp (-β J_e): d/dβ φ_β[g] = ∑_e (J_e / p_e) Cov(g, 𝟙[e open]). See G. Grimmett,
The Random-Cluster Model (2006), Chapter 3.
theorem hasDerivAt_fkMeanW_beta_sum (G : SimpleGraph V) [DecidableRel G.Adj]
{J : Sym2 V → ℝ}
(hJ : ∀ e, 0 < J e) {β : ℝ} (hβ : 0 < β) {q : ℝ} (hq : 0 < q)
(g : ConfigSpace (Sym2 V) → ℝ) :
HasDerivAt (fun b => fkMeanW G (betaParams J b) q g)
(∑ e ∈ G.edgeFinset,
(J e / betaParams J β e) * fkCovW G (betaParams J β) q g (coordR e)) β
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def fkMeanW (pf : Sym2 V → ℝ) (q : ℝ) (g : ConfigSpace (Sym2 V) → ℝ) : ℝ :=
∑ ω : ConfigSpace (Sym2 V), g ω * fkProbW G pf q ω
PhyslibExt/StatisticalMechanics/RandomCluster/RussoDerivativeBeta.lean:90
noncomputable def betaParams (J : Sym2 V → ℝ) (β : ℝ) : Sym2 V → ℝ :=
fun e => 1 - Real.exp (-(β * J e))
PhyslibExt/StatisticalMechanics/RandomCluster/RussoDerivativeBetaSum.lean:76
noncomputable def fkCovW (pf : Sym2 V → ℝ) (q : ℝ)
(f g : ConfigSpace (Sym2 V) → ℝ) : ℝ :=
fkMeanW G pf q (fun ω => f ω * g ω) - fkMeanW G pf q f * fkMeanW G pf q g
PhyslibExt/StatisticalMechanics/RandomCluster/RussoDerivativeBeta.lean:95
noncomputable def coordR (e : Sym2 V) (ω : ConfigSpace (Sym2 V)) : ℝ :=
if ω e then (1 : ℝ) else 0
PhyslibExt/StatisticalMechanics/RandomCluster/RussoDerivativeBeta.lean:100
Uses 13
DefinitionNumber of open edges#✓fully proved
The number o(ω) of open edges of G in ω.
def openCount (ω : ConfigSpace (Sym2 V)) : ℕ :=
(G.edgeFinset.filter (fun e => ω e = true)).card
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
Uses 1 · Used by 13
DefinitionNumber of closed edges#✓fully proved
The number c(ω) of closed edges of G in ω.
def closedCount (ω : ConfigSpace (Sym2 V)) : ℕ :=
(G.edgeFinset.filter (fun e => ω e = false)).card
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
Uses 1 · Used by 5
DefinitionTilt factor between two edge parameters#✓fully proved
The tilt factor λ = p₂ (1 - p₁) / ((1 - p₂) p₁), the ratio of the odds of an open edge
at p₂ and at p₁.
noncomputable def tiltFactor (p1 p2 : ℝ) : ℝ := p2 * (1 - p1) / ((1 - p2) * p1)
DefinitionRandom-cluster expectation of an observable#✓fully proved
The expectation φ_{G,p,q}[X] = ∑_ω φ_{G,p,q}(ω) X(ω) of an observable X.
noncomputable def fkExpect (p q : ℝ) (X : ConfigSpace (Sym2 V) → ℝ) : ℝ :=
∑ ω : ConfigSpace (Sym2 V), fkProb G p q ω * X ω
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def fkProb (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
fkWeight G p q ω / fkZ G p q
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:172
Uses 2 · Used by 4
DefinitionRelabelling of an edge configuration by a vertex permutation#✓fully proved
The configuration ω ∘ σ on edges: the edge e is open in reCfg σ ω iff σ e is open in
ω. See also reCfgIso, the same relabelling along an equivalence V ≃ W.
noncomputable def reCfg (σ : V ≃ V) (ω : ConfigSpace (Sym2 V)) : ConfigSpace (Sym2 V) :=
fun e => ω (Sym2.map σ e)
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
Uses 1 · Used by 8
DefinitionRelabelling as a permutation of the configuration space#✓fully proved
Relabelling by σ as a permutation of the configuration space, with inverse relabelling
by σ⁻¹.
noncomputable def reCfgEquiv (σ : V ≃ V) :
ConfigSpace (Sym2 V) ≃ ConfigSpace (Sym2 V) where
toFun := reCfg σ
invFun := reCfg σ.symm
left_inv := fkTI_reCfg_reCfg σ
right_inv := fkTI_reCfg_reCfg' σ
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def reCfg (σ : V ≃ V) (ω : ConfigSpace (Sym2 V)) : ConfigSpace (Sym2 V) :=
fun e => ω (Sym2.map σ e)
PhyslibExt/StatisticalMechanics/RandomCluster/TranslationInvariance.lean:84
lemma fkTI_reCfg_reCfg (σ : V ≃ V) (ω : ConfigSpace (Sym2 V)) :
reCfg σ.symm (reCfg σ ω) = ω
PhyslibExt/StatisticalMechanics/RandomCluster/TranslationInvariance.lean:90
lemma fkTI_reCfg_reCfg' (σ : V ≃ V) (ω : ConfigSpace (Sym2 V)) :
reCfg σ (reCfg σ.symm ω) = ω
PhyslibExt/StatisticalMechanics/RandomCluster/TranslationInvariance.lean:94
DefinitionAutomorphism as an isomorphism of open subgraphs#✓fully proved
An automorphism σ of G is a graph isomorphism from the open subgraph of the relabelled
configuration reCfg σ ω to the open subgraph of ω.
noncomputable def fkTI_openSubIso (σ : V ≃ V)
(hσ : ∀ x y, G.Adj (σ x) (σ y) ↔ G.Adj x y) (ω : ConfigSpace (Sym2 V)) :
openSub G (reCfg σ ω) ≃g openSub G ω where
toEquiv := σ
map_rel_iff' := by
intro x y
simp only [openSub_adj, reCfg]
rw [Sym2.map_mk, hσ x y]
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def openSub (ω : ConfigSpace (Sym2 V)) : SimpleGraph V where
Adj x y := G.Adj x y ∧ ω s(x, y) = true
symm := by
refine ⟨fun x y h => ?_⟩
refine ⟨h.1.symm, ?_⟩
rw [Sym2.eq_swap]; exact h.2
loopless := ⟨fun x h => h.1.ne rfl⟩
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:82
noncomputable def reCfg (σ : V ≃ V) (ω : ConfigSpace (Sym2 V)) : ConfigSpace (Sym2 V) :=
fun e => ω (Sym2.map σ e)
PhyslibExt/StatisticalMechanics/RandomCluster/TranslationInvariance.lean:84
LemmaGraph automorphisms preserve the free FK probability#✓fully proved
Graph automorphisms preserve the free FK probability. See also fvs_fkProb_reCfgIso for
isomorphisms between two graphs.
lemma fkTI_fkProb_reCfg (σ : V ≃ V)
(hσ : ∀ x y, G.Adj (σ x) (σ y) ↔ G.Adj x y) (p q : ℝ) (ω : ConfigSpace (Sym2 V)) :
fkProb G p q (reCfg σ ω) = fkProb G p q ω
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def fkProb (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
fkWeight G p q ω / fkZ G p q
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:172
noncomputable def reCfg (σ : V ≃ V) (ω : ConfigSpace (Sym2 V)) : ConfigSpace (Sym2 V) :=
fun e => ω (Sym2.map σ e)
PhyslibExt/StatisticalMechanics/RandomCluster/TranslationInvariance.lean:84
Uses 9 · Used by 1
DefinitionBoundary-preserving automorphism as an isomorphism of wired graphs#✓fully proved
An automorphism σ of G preserving the boundary set is a graph isomorphism between the
wired graphs (open edges plus all boundary pairs) of reCfg σ ω and ω.
StatMech.FK.fkTI_wiredGraphIso · 16 lines
noncomputable def fkTI_wiredGraphIso (σ : V ≃ V)
(hσ : ∀ x y, G.Adj (σ x) (σ y) ↔ G.Adj x y) (hbdry : ∀ x, bdry (σ x) ↔ bdry x)
(ω : ConfigSpace (Sym2 V)) :
StatMech.Lattice.wiredGraph G bdry (reCfg σ ω) ≃g StatMech.Lattice.wiredGraph G bdry ω where
toEquiv := σ
map_rel_iff' := by
intro x y
simp only [StatMech.Lattice.wiredGraph_adj, reCfg]
rw [Sym2.map_mk, hσ x y, hbdry x, hbdry y]
constructor
· rintro (h | ⟨hne, hx, hy⟩)
· exact Or.inl h
· exact Or.inr ⟨fun h => hne (by rw [h]), hx, hy⟩
· rintro (h | ⟨hne, hx, hy⟩)
· exact Or.inl h
· exact Or.inr ⟨fun h => hne (σ.injective h), hx, hy⟩
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def wiredGraph (ω : Sym2 V → Bool) : SimpleGraph V :=
openGraph G ω ⊔ boundaryCliqueGraph bdry
MathlibExt/Combinatorics/SimpleGraph/Lattice/BoundaryConditions.lean:138
noncomputable def reCfg (σ : V ≃ V) (ω : ConfigSpace (Sym2 V)) : ConfigSpace (Sym2 V) :=
fun e => ω (Sym2.map σ e)
PhyslibExt/StatisticalMechanics/RandomCluster/TranslationInvariance.lean:84
LemmaBoundary-preserving automorphisms preserve the wired FK probability#✓fully proved
Graph automorphisms preserving the boundary preserve the wired FK probability.
lemma fkTI_wiredFkProb_reCfg (σ : V ≃ V)
(hσ : ∀ x y, G.Adj (σ x) (σ y) ↔ G.Adj x y) (hbdry : ∀ x, bdry (σ x) ↔ bdry x)
(p q : ℝ) (ω : ConfigSpace (Sym2 V)) :
wiredFkProb G bdry p q (reCfg σ ω) = wiredFkProb G bdry p q ω
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def wiredFkProb (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
wiredFkWeight G bdry p q ω / wiredFkZ G bdry p q
PhyslibExt/StatisticalMechanics/RandomCluster/InfiniteVolume.lean:105
noncomputable def reCfg (σ : V ≃ V) (ω : ConfigSpace (Sym2 V)) : ConfigSpace (Sym2 V) :=
fun e => ω (Sym2.map σ e)
PhyslibExt/StatisticalMechanics/RandomCluster/TranslationInvariance.lean:84
Uses 13 · Used by 1
LemmaGraph automorphisms preserve free FK edge marginals#✓fully proved
Under the free FK measure, the edges e and σ e are open with the same probability.
lemma fkTI_edgeMargProb_fkProb_reCfg (σ : V ≃ V)
(hσ : ∀ x y, G.Adj (σ x) (σ y) ↔ G.Adj x y) (p q : ℝ) (e : Sym2 V) :
edgeMargProb (fkProb G p q) (Sym2.map σ e) = edgeMargProb (fkProb G p q) e
noncomputable def edgeMargProb (μ : ConfigSpace E → ℝ) (e : E) : ℝ :=
∑ ω : ConfigSpace E, (if ω e then (1 : ℝ) else 0) * μ ω
PhyslibExt/StatisticalMechanics/RandomCluster/EdgeMarginal.lean:59
noncomputable def fkProb (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
fkWeight G p q ω / fkZ G p q
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:172
LemmaBoundary-preserving automorphisms preserve wired FK edge marginals#✓fully proved
Under the wired FK measure, the edges e and σ e are open with the same probability.
lemma fkTI_edgeMargProb_wiredFkProb_reCfg (σ : V ≃ V)
(hσ : ∀ x y, G.Adj (σ x) (σ y) ↔ G.Adj x y) (hbdry : ∀ x, bdry (σ x) ↔ bdry x)
(p q : ℝ) (e : Sym2 V) :
edgeMargProb (wiredFkProb G bdry p q) (Sym2.map σ e)
= edgeMargProb (wiredFkProb G bdry p q) e
noncomputable def edgeMargProb (μ : ConfigSpace E → ℝ) (e : E) : ℝ :=
∑ ω : ConfigSpace E, (if ω e then (1 : ℝ) else 0) * μ ω
PhyslibExt/StatisticalMechanics/RandomCluster/EdgeMarginal.lean:59
noncomputable def wiredFkProb (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
wiredFkWeight G bdry p q ω / wiredFkZ G bdry p q
PhyslibExt/StatisticalMechanics/RandomCluster/InfiniteVolume.lean:105
Uses 6 · Used by 2
StructureBox symmetry of \(\mathbb{Z}^d\)#✓fully proved
A symmetry of ℤ^d that preserves nearest-neighbour adjacency and every centered box
Λ_n = [-n, n]^d, such as a coordinate reflection or a coordinate permutation.
structure BoxSym (d : ℕ) where
/-- The underlying permutation of the sites. -/
τ : Site d ≃ Site d
/-- `τ` preserves nearest-neighbour adjacency. -/
adj : ∀ x y, (hypercubicLattice d).Adj (τ x) (τ y) ↔ (hypercubicLattice d).Adj x y
/-- `τ` maps each centered box onto itself. -/
box_mem : ∀ n x, τ x ∈ box d n ↔ x ∈ box d n
abbrev Site (d : ℕ) : Type := Fin d → ℤ
MathlibExt/Combinatorics/SimpleGraph/Lattice/HypercubicLattice.lean:55
def hypercubicLattice (d : ℕ) : SimpleGraph (Site d) where
Adj := NearestNeighbour d
symm := ⟨fun _ _ h => nearestNeighbour_symm d h⟩
loopless := nearestNeighbour_irrefl d
MathlibExt/Combinatorics/SimpleGraph/Lattice/HypercubicLattice.lean:76
τ : Site d ≃ Site d
PhyslibExt/StatisticalMechanics/RandomCluster/TranslationInvariance.lean:279
def box (d n : ℕ) : Set (Site d) := {x | ∀ i, (x i).natAbs ≤ n}
MathlibExt/Combinatorics/SimpleGraph/Lattice/HypercubicLattice.lean:86
Uses 3 · Used by 14
DefinitionRestriction of a box symmetry to a box#✓fully proved
The restriction of a box symmetry to a permutation of the vertices of the box Λ_n.
def BoxSym.lift (S : BoxSym d) (n : ℕ) : boxVerts d n ≃ boxVerts d n where
toFun := fun x => ⟨S.τ x.val, (S.box_mem n x.val).mpr x.property⟩
invFun := fun x => ⟨S.τ.symm x.val, by
rw [← S.box_mem n (S.τ.symm x.val), Equiv.apply_symm_apply]; exact x.property⟩
left_inv := by intro x; apply Subtype.ext; simp
right_inv := by intro x; apply Subtype.ext; simp
structure BoxSym (d : ℕ) where
/-- The underlying permutation of the sites. -/
τ : Site d ≃ Site d
/-- `τ` preserves nearest-neighbour adjacency. -/
adj : ∀ x y, (hypercubicLattice d).Adj (τ x) (τ y) ↔ (hypercubicLattice d).Adj x y
/-- `τ` maps each centered box onto itself. -/
box_mem : ∀ n x, τ x ∈ box d n ↔ x ∈ box d n
PhyslibExt/StatisticalMechanics/RandomCluster/TranslationInvariance.lean:277
abbrev boxVerts (d n : ℕ) : Type := {x : Site d // x ∈ box d n}
PhyslibExt/StatisticalMechanics/RandomCluster/InfiniteVolume.lean:131
Uses 4 · Used by 9
LemmaBox symmetries preserve the wired \(q = 2\) density of box edges#✓fully proved
Box symmetries preserve the wired q = 2 infinite-volume edge density. See also
rot_wired_density_boxSym for the statement on edges of ℤ^d.
lemma fkTI_wired_density_shift_inv (S : BoxSym d) (N : ℕ) (eb : Sym2 (boxVerts d N))
{p : ℝ} (hp : 0 < p) (hp1 : p < 1) :
wiredEdgeDensity d 2 (edgeIncl d N eb) p
= wiredEdgeDensity d 2 (edgeIncl d N (Sym2.map (S.lift N) eb)) p
structure BoxSym (d : ℕ) where
/-- The underlying permutation of the sites. -/
τ : Site d ≃ Site d
/-- `τ` preserves nearest-neighbour adjacency. -/
adj : ∀ x y, (hypercubicLattice d).Adj (τ x) (τ y) ↔ (hypercubicLattice d).Adj x y
/-- `τ` maps each centered box onto itself. -/
box_mem : ∀ n x, τ x ∈ box d n ↔ x ∈ box d n
PhyslibExt/StatisticalMechanics/RandomCluster/TranslationInvariance.lean:277
abbrev boxVerts (d n : ℕ) : Type := {x : Site d // x ∈ box d n}
PhyslibExt/StatisticalMechanics/RandomCluster/InfiniteVolume.lean:131
noncomputable def wiredEdgeDensity (d : ℕ) (q : ℝ) (e : Sym2 (Site d)) (p : ℝ) : ℝ :=
if h : 0 < p ∧ p < 1 ∧ 0 < q then
(wiredInfiniteVolume d h.1 h.2.1 h.2.2 : Measure (ConfigSpace (Sym2 (Site d)))).real
(fkEdgeOpenEvent e)
else 0
PhyslibExt/StatisticalMechanics/RandomCluster/UniquenessOffCountable.lean:127
def edgeIncl (d n : ℕ) : Sym2 (boxVerts d n) → Sym2 (Site d) :=
Sym2.map (Subtype.val : boxVerts d n → Site d)
PhyslibExt/StatisticalMechanics/RandomCluster/InfiniteVolume.lean:163
Uses 27 · Used by 2
LemmaBox symmetries preserve the free \(q = 2\) density of box edges#✓fully proved
Box symmetries preserve the free q = 2 infinite-volume edge density. See also
rot_free_density_boxSym for the statement on edges of ℤ^d.
lemma fkTI_free_density_shift_inv (S : BoxSym d) (N : ℕ) (eb : Sym2 (boxVerts d N))
{p : ℝ} (hp : 0 < p) (hp1 : p < 1) :
freeEdgeDensity d 2 (edgeIncl d N eb) p
= freeEdgeDensity d 2 (edgeIncl d N (Sym2.map (S.lift N) eb)) p
structure BoxSym (d : ℕ) where
/-- The underlying permutation of the sites. -/
τ : Site d ≃ Site d
/-- `τ` preserves nearest-neighbour adjacency. -/
adj : ∀ x y, (hypercubicLattice d).Adj (τ x) (τ y) ↔ (hypercubicLattice d).Adj x y
/-- `τ` maps each centered box onto itself. -/
box_mem : ∀ n x, τ x ∈ box d n ↔ x ∈ box d n
PhyslibExt/StatisticalMechanics/RandomCluster/TranslationInvariance.lean:277
abbrev boxVerts (d n : ℕ) : Type := {x : Site d // x ∈ box d n}
PhyslibExt/StatisticalMechanics/RandomCluster/InfiniteVolume.lean:131
noncomputable def freeEdgeDensity (d : ℕ) (q : ℝ) (e : Sym2 (Site d)) (p : ℝ) : ℝ :=
if h : 0 < p ∧ p < 1 ∧ 0 < q then
(freeInfiniteVolume d h.1 h.2.1 h.2.2 : Measure (ConfigSpace (Sym2 (Site d)))).real
(fkEdgeOpenEvent e)
else 0
PhyslibExt/StatisticalMechanics/RandomCluster/UniquenessOffCountable.lean:136
def edgeIncl (d n : ℕ) : Sym2 (boxVerts d n) → Sym2 (Site d) :=
Sym2.map (Subtype.val : boxVerts d n → Site d)
PhyslibExt/StatisticalMechanics/RandomCluster/InfiniteVolume.lean:163
Uses 25 · Used by 2
DefinitionReflection of \(\mathbb{Z}^d\) in one coordinate#✓fully proved
The reflection x ↦ x with the j-th coordinate negated.
def fkTI_signFlipEquiv (d : ℕ) (j : Fin d) : Site d ≃ Site d where
toFun := fun x i => if i = j then -(x i) else x i
invFun := fun x i => if i = j then -(x i) else x i
left_inv := by intro x; funext i; by_cases h : i = j <;> simp [h]
right_inv := by intro x; funext i; by_cases h : i = j <;> simp [h]
abbrev Site (d : ℕ) : Type := Fin d → ℤ
MathlibExt/Combinatorics/SimpleGraph/Lattice/HypercubicLattice.lean:55
Uses 1 · Used by 1
DefinitionCoordinate reflection as a box symmetry#✓fully proved
The reflection in the j-th coordinate as a box symmetry.
StatMech.FK.fkTI_signFlip · 25 lines
def fkTI_signFlip (d : ℕ) (j : Fin d) : BoxSym d where
τ := fkTI_signFlipEquiv d j
adj := by
intro x y
simp only [hypercubicLattice_adj, fkTI_signFlipEquiv, Equiv.coe_fn_mk]
have hcoord : ∀ i : Fin d,
((if i = j then -(x i) else x i) - (if i = j then -(y i) else y i)).natAbs
= (x i - y i).natAbs := by
intro i
by_cases hh : i = j
· rw [ite_eq_left hh, ite_eq_left hh, show -(x i) - -(y i) = -(x i - y i) by ring,
Int.natAbs_neg]
· rw [ite_eq_right hh, ite_eq_right hh]
rw [Finset.sum_congr rfl (fun i _ => hcoord i)]
box_mem := by
intro n x
simp only [mem_box, fkTI_signFlipEquiv, Equiv.coe_fn_mk]
have hcoord : ∀ i : Fin d, (if i = j then -(x i) else x i).natAbs = (x i).natAbs := by
intro i
by_cases hh : i = j
· rw [ite_eq_left hh, Int.natAbs_neg]
· rw [ite_eq_right hh]
constructor
· intro h i; rw [← hcoord i]; exact h i
· intro h i; rw [hcoord i]; exact h i
structure BoxSym (d : ℕ) where
/-- The underlying permutation of the sites. -/
τ : Site d ≃ Site d
/-- `τ` preserves nearest-neighbour adjacency. -/
adj : ∀ x y, (hypercubicLattice d).Adj (τ x) (τ y) ↔ (hypercubicLattice d).Adj x y
/-- `τ` maps each centered box onto itself. -/
box_mem : ∀ n x, τ x ∈ box d n ↔ x ∈ box d n
PhyslibExt/StatisticalMechanics/RandomCluster/TranslationInvariance.lean:277
def fkTI_signFlipEquiv (d : ℕ) (j : Fin d) : Site d ≃ Site d where
toFun := fun x i => if i = j then -(x i) else x i
invFun := fun x i => if i = j then -(x i) else x i
left_inv := by intro x; funext i; by_cases h : i = j <;> simp [h]
right_inv := by intro x; funext i; by_cases h : i = j <;> simp [h]
PhyslibExt/StatisticalMechanics/RandomCluster/TranslationInvariance.lean:371
DefinitionPull-back of an edge configuration along a vertex bijection#✓fully proved
The pull-back of a configuration ω on the edges of W along σ : V ≃ W: the edge e is
open in reCfgIso σ ω iff σ e is open in ω. For V = W it is reCfg
(fvs_reCfgIso_eq_reCfg).
noncomputable def reCfgIso (σ : V ≃ W) (ω : ConfigSpace (Sym2 W)) : ConfigSpace (Sym2 V) :=
fun e => ω (Sym2.map σ e)
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
Uses 1 · Used by 9
DefinitionPull-back of configurations as an equivalence#✓fully proved
Pull-back along σ as an equivalence of configuration spaces, with inverse the pull-back
along σ⁻¹.
noncomputable def reCfgIsoEquiv (σ : V ≃ W) :
ConfigSpace (Sym2 W) ≃ ConfigSpace (Sym2 V) where
toFun := reCfgIso σ
invFun := reCfgIso σ.symm
left_inv := fvs_reCfgIso_reCfgIso σ
right_inv := fvs_reCfgIso_reCfgIso' σ
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def reCfgIso (σ : V ≃ W) (ω : ConfigSpace (Sym2 W)) : ConfigSpace (Sym2 V) :=
fun e => ω (Sym2.map σ e)
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteVolumeShift.lean:81
lemma fvs_reCfgIso_reCfgIso (σ : V ≃ W) (ω : ConfigSpace (Sym2 W)) :
reCfgIso σ.symm (reCfgIso σ ω) = ω
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteVolumeShift.lean:87
lemma fvs_reCfgIso_reCfgIso' (σ : V ≃ W) (ω : ConfigSpace (Sym2 V)) :
reCfgIso σ (reCfgIso σ.symm ω) = ω
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteVolumeShift.lean:91
Uses 2 · Used by 5
LemmaPull-back along a permutation is relabelling#✓fully proved
For a permutation σ of V, pulling back along σ is the relabelling reCfg σ.
lemma fvs_reCfgIso_eq_reCfg (σ : V ≃ V) (ω : ConfigSpace (Sym2 V)) :
reCfgIso σ ω = reCfg σ ω
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def reCfgIso (σ : V ≃ W) (ω : ConfigSpace (Sym2 W)) : ConfigSpace (Sym2 V) :=
fun e => ω (Sym2.map σ e)
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteVolumeShift.lean:81
noncomputable def reCfg (σ : V ≃ V) (ω : ConfigSpace (Sym2 V)) : ConfigSpace (Sym2 V) :=
fun e => ω (Sym2.map σ e)
PhyslibExt/StatisticalMechanics/RandomCluster/TranslationInvariance.lean:84
DefinitionOpen-subgraph isomorphism for a pulled-back configuration#✓fully proved
An isomorphism σ : G ≃ H is a graph isomorphism from the open subgraph of the pulled-back
configuration reCfgIso σ ω to the open subgraph of ω.
noncomputable def fvs_openSubIso (σ : V ≃ W)
(hσ : ∀ x y, G.Adj x y ↔ H.Adj (σ x) (σ y)) (ω : ConfigSpace (Sym2 W)) :
openSub G (reCfgIso σ ω) ≃g openSub H ω where
toEquiv := σ
map_rel_iff' := by
intro x y
simp only [openSub_adj, reCfgIso]
rw [Sym2.map_mk, hσ x y]
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def openSub (ω : ConfigSpace (Sym2 V)) : SimpleGraph V where
Adj x y := G.Adj x y ∧ ω s(x, y) = true
symm := by
refine ⟨fun x y h => ?_⟩
refine ⟨h.1.symm, ?_⟩
rw [Sym2.eq_swap]; exact h.2
loopless := ⟨fun x h => h.1.ne rfl⟩
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:82
noncomputable def reCfgIso (σ : V ≃ W) (ω : ConfigSpace (Sym2 W)) : ConfigSpace (Sym2 V) :=
fun e => ω (Sym2.map σ e)
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteVolumeShift.lean:81
LemmaIsomorphic graphs have equal free FK probabilities after relabelling#✓fully proved
Isomorphic graphs have the same free FK probability, up to relabelling by the isomorphism.
See also fkTI_fkProb_reCfg, the special case of an automorphism.
lemma fvs_fkProb_reCfgIso (σ : V ≃ W)
(hσ : ∀ x y, G.Adj x y ↔ H.Adj (σ x) (σ y)) (p q : ℝ) (ω : ConfigSpace (Sym2 W)) :
fkProb G p q (reCfgIso σ ω) = fkProb H p q ω
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def fkProb (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
fkWeight G p q ω / fkZ G p q
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:172
noncomputable def reCfgIso (σ : V ≃ W) (ω : ConfigSpace (Sym2 W)) : ConfigSpace (Sym2 V) :=
fun e => ω (Sym2.map σ e)
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteVolumeShift.lean:81
Uses 10 · Used by 2
DefinitionWired-graph isomorphism for a pulled-back configuration#✓fully proved
An isomorphism σ : G ≃ H matching the boundary sets is a graph isomorphism between the
wired graphs of reCfgIso σ ω and ω.
StatMech.FK.fvs_wiredGraphIso · 17 lines
noncomputable def fvs_wiredGraphIso (σ : V ≃ W)
(hσ : ∀ x y, G.Adj x y ↔ H.Adj (σ x) (σ y)) (hbdry : ∀ x, bdryV x ↔ bdryW (σ x))
(ω : ConfigSpace (Sym2 W)) :
StatMech.Lattice.wiredGraph G bdryV (reCfgIso σ ω)
≃g StatMech.Lattice.wiredGraph H bdryW ω where
toEquiv := σ
map_rel_iff' := by
intro x y
simp only [StatMech.Lattice.wiredGraph_adj, reCfgIso]
rw [Sym2.map_mk, hσ x y, hbdry x, hbdry y]
constructor
· rintro (h | ⟨hne, hx, hy⟩)
· exact Or.inl h
· exact Or.inr ⟨fun h => hne (by rw [h]), hx, hy⟩
· rintro (h | ⟨hne, hx, hy⟩)
· exact Or.inl h
· exact Or.inr ⟨fun h => hne (σ.injective h), hx, hy⟩
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def wiredGraph (ω : Sym2 V → Bool) : SimpleGraph V :=
openGraph G ω ⊔ boundaryCliqueGraph bdry
MathlibExt/Combinatorics/SimpleGraph/Lattice/BoundaryConditions.lean:138
noncomputable def reCfgIso (σ : V ≃ W) (ω : ConfigSpace (Sym2 W)) : ConfigSpace (Sym2 V) :=
fun e => ω (Sym2.map σ e)
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteVolumeShift.lean:81
LemmaBoundary-matching isomorphisms preserve wired FK probabilities#✓fully proved
Isomorphic graphs with matching boundary sets have the same wired FK probability, up to
relabelling. See also fkTI_wiredFkProb_reCfg.
lemma fvs_wiredFkProb_reCfgIso (σ : V ≃ W)
(hσ : ∀ x y, G.Adj x y ↔ H.Adj (σ x) (σ y)) (hbdry : ∀ x, bdryV x ↔ bdryW (σ x))
(p q : ℝ) (ω : ConfigSpace (Sym2 W)) :
wiredFkProb G bdryV p q (reCfgIso σ ω) = wiredFkProb H bdryW p q ω
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def wiredFkProb (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
wiredFkWeight G bdry p q ω / wiredFkZ G bdry p q
PhyslibExt/StatisticalMechanics/RandomCluster/InfiniteVolume.lean:105
noncomputable def reCfgIso (σ : V ≃ W) (ω : ConfigSpace (Sym2 W)) : ConfigSpace (Sym2 V) :=
fun e => ω (Sym2.map σ e)
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteVolumeShift.lean:81
Uses 14 · Used by 2
LemmaBoundary-matching isomorphisms transport FK edge marginals#✓fully proved
Graph isomorphisms transport the wired and the free FK edge marginals: σ e is open in H
with the same probability as e in G.
lemma fvs_finiteVolume_shift_invariant (σ : V ≃ W)
(hσ : ∀ x y, G.Adj x y ↔ H.Adj (σ x) (σ y)) (hbdry : ∀ x, bdryV x ↔ bdryW (σ x))
(p q : ℝ) (e : Sym2 V) :
edgeMargProb (wiredFkProb H bdryW p q) (Sym2.map σ e)
= edgeMargProb (wiredFkProb G bdryV p q) e
∧ edgeMargProb (fkProb H p q) (Sym2.map σ e) = edgeMargProb (fkProb G p q) e
noncomputable def edgeMargProb (μ : ConfigSpace E → ℝ) (e : E) : ℝ :=
∑ ω : ConfigSpace E, (if ω e then (1 : ℝ) else 0) * μ ω
PhyslibExt/StatisticalMechanics/RandomCluster/EdgeMarginal.lean:59
noncomputable def wiredFkProb (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
wiredFkWeight G bdry p q ω / wiredFkZ G bdry p q
PhyslibExt/StatisticalMechanics/RandomCluster/InfiniteVolume.lean:105
noncomputable def fkProb (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
fkWeight G p q ω / fkZ G p q
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:172
Uses 8 · Used by 1
DefinitionTranslated box in \(\mathbb{Z}^d\)#✓fully proved
The translated box v + Λ_m = {y ∈ ℤ^d : ‖y - v‖_∞ ≤ m}.
def fvs_transBox (d m : ℕ) (v : Site d) : Set (Site d) := {y | (y - v) ∈ box d m}
abbrev Site (d : ℕ) : Type := Fin d → ℤ
MathlibExt/Combinatorics/SimpleGraph/Lattice/HypercubicLattice.lean:55
def box (d n : ℕ) : Set (Site d) := {x | ∀ i, (x i).natAbs ≤ n}
MathlibExt/Combinatorics/SimpleGraph/Lattice/HypercubicLattice.lean:86
Uses 2 · Used by 34
AbbreviationVertex type of a translated box#✓fully proved
The vertices of the translated box v + Λ_m, as a subtype of ℤ^d.
abbrev fvs_transBoxVerts (d m : ℕ) (v : Site d) : Type :=
{y : Site d // y ∈ fvs_transBox d m v}
abbrev Site (d : ℕ) : Type := Fin d → ℤ
MathlibExt/Combinatorics/SimpleGraph/Lattice/HypercubicLattice.lean:55
def fvs_transBox (d m : ℕ) (v : Site d) : Set (Site d) := {y | (y - v) ∈ box d m}
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteVolumeShift.lean:304
Uses 2 · Used by 32
DefinitionTranslation from the centered box onto a translated box#✓fully proved
The translation x ↦ x + v from the centered box Λ_m onto v + Λ_m.
noncomputable def fvs_transEquiv (d m : ℕ) (v : Site d) :
boxVerts d m ≃ fvs_transBoxVerts d m v where
toFun := fun x => ⟨(x : Site d) + v, by
change ((x : Site d) + v - v) ∈ box d m
rw [add_sub_cancel_right]; exact x.2⟩
invFun := fun y => ⟨(y : Site d) - v, y.2⟩
left_inv := by intro x; apply Subtype.ext; simp
right_inv := by intro y; apply Subtype.ext; simp
abbrev Site (d : ℕ) : Type := Fin d → ℤ
MathlibExt/Combinatorics/SimpleGraph/Lattice/HypercubicLattice.lean:55
abbrev boxVerts (d n : ℕ) : Type := {x : Site d // x ∈ box d n}
PhyslibExt/StatisticalMechanics/RandomCluster/InfiniteVolume.lean:131
abbrev fvs_transBoxVerts (d m : ℕ) (v : Site d) : Type :=
{y : Site d // y ∈ fvs_transBox d m v}
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteVolumeShift.lean:307
Uses 5 · Used by 28
DefinitionNearest-neighbour graph on a translated box#✓fully proved
The nearest-neighbour graph of ℤ^d restricted to v + Λ_m.
def fvs_transBoxGraph (d m : ℕ) (v : Site d) : SimpleGraph (fvs_transBoxVerts d m v) :=
SimpleGraph.comap Subtype.val (hypercubicLattice d)
abbrev Site (d : ℕ) : Type := Fin d → ℤ
MathlibExt/Combinatorics/SimpleGraph/Lattice/HypercubicLattice.lean:55
abbrev fvs_transBoxVerts (d m : ℕ) (v : Site d) : Type :=
{y : Site d // y ∈ fvs_transBox d m v}
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteVolumeShift.lean:307
def hypercubicLattice (d : ℕ) : SimpleGraph (Site d) where
Adj := NearestNeighbour d
symm := ⟨fun _ _ h => nearestNeighbour_symm d h⟩
loopless := nearestNeighbour_irrefl d
MathlibExt/Combinatorics/SimpleGraph/Lattice/HypercubicLattice.lean:76
Uses 4 · Used by 24
DefinitionVertex boundary of a translated box#✓fully proved
The vertex boundary of v + Λ_m: the translate of the vertex boundary of Λ_m.
def fvs_transBoxBoundary (d m : ℕ) (v : Site d) (y : fvs_transBoxVerts d m v) : Prop :=
((y : Site d) - v) ∈ vertexBoundary d m
abbrev Site (d : ℕ) : Type := Fin d → ℤ
MathlibExt/Combinatorics/SimpleGraph/Lattice/HypercubicLattice.lean:55
abbrev fvs_transBoxVerts (d m : ℕ) (v : Site d) : Type :=
{y : Site d // y ∈ fvs_transBox d m v}
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteVolumeShift.lean:307
def vertexBoundary (d n : ℕ) : Set (Site d) := box d n \ box d (n - 1)
MathlibExt/Combinatorics/SimpleGraph/Lattice/HypercubicLattice.lean:102
Uses 4 · Used by 18
LemmaTranslation covariance of FK edge marginals on boxes#✓fully proved
The wired and free FK edge marginals on the translated box v + Λ_m are the marginals on the
centered box Λ_m, transported by x ↦ x + v.
lemma fvs_box_translation_edgeMarg (d m : ℕ) (v : Site d) (eb : Sym2 (boxVerts d m))
{p q : ℝ} :
edgeMargProb (wiredFkProb (fvs_transBoxGraph d m v) (fvs_transBoxBoundary d m v) p q)
(Sym2.map (fvs_transEquiv d m v) eb)
= edgeMargProb (wiredFkProb (boxGraph d m) (boxBoundary d m) p q) eb
∧ edgeMargProb (fkProb (fvs_transBoxGraph d m v) p q) (Sym2.map (fvs_transEquiv d m v) eb)
= edgeMargProb (fkProb (boxGraph d m) p q) eb
abbrev Site (d : ℕ) : Type := Fin d → ℤ
MathlibExt/Combinatorics/SimpleGraph/Lattice/HypercubicLattice.lean:55
abbrev boxVerts (d n : ℕ) : Type := {x : Site d // x ∈ box d n}
PhyslibExt/StatisticalMechanics/RandomCluster/InfiniteVolume.lean:131
noncomputable def edgeMargProb (μ : ConfigSpace E → ℝ) (e : E) : ℝ :=
∑ ω : ConfigSpace E, (if ω e then (1 : ℝ) else 0) * μ ω
PhyslibExt/StatisticalMechanics/RandomCluster/EdgeMarginal.lean:59
noncomputable def wiredFkProb (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
wiredFkWeight G bdry p q ω / wiredFkZ G bdry p q
PhyslibExt/StatisticalMechanics/RandomCluster/InfiniteVolume.lean:105
def fvs_transBoxGraph (d m : ℕ) (v : Site d) : SimpleGraph (fvs_transBoxVerts d m v) :=
SimpleGraph.comap Subtype.val (hypercubicLattice d)
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteVolumeShift.lean:334
def fvs_transBoxBoundary (d m : ℕ) (v : Site d) (y : fvs_transBoxVerts d m v) : Prop :=
((y : Site d) - v) ∈ vertexBoundary d m
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteVolumeShift.lean:343
noncomputable def fvs_transEquiv (d m : ℕ) (v : Site d) :
boxVerts d m ≃ fvs_transBoxVerts d m v where
toFun := fun x => ⟨(x : Site d) + v, by
change ((x : Site d) + v - v) ∈ box d m
rw [add_sub_cancel_right]; exact x.2⟩
invFun := fun y => ⟨(y : Site d) - v, y.2⟩
left_inv := by intro x; apply Subtype.ext; simp
right_inv := by intro y; apply Subtype.ext; simp
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteVolumeShift.lean:311
def boxGraph (d n : ℕ) : SimpleGraph (boxVerts d n) :=
SimpleGraph.comap Subtype.val (hypercubicLattice d)
PhyslibExt/StatisticalMechanics/RandomCluster/InfiniteVolume.lean:142
def boxBoundary (d n : ℕ) (x : boxVerts d n) : Prop := (x : Site d) ∈ vertexBoundary d n
PhyslibExt/StatisticalMechanics/RandomCluster/InfiniteVolume.lean:151
noncomputable def fkProb (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
fkWeight G p q ω / fkZ G p q
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:172
Uses 16 · Used by 6
LemmaSome translated box leaves the centered box for \(d \ge 1\)#✓fully proved
For d ≥ 1, some translated box v + Λ_m is not contained in Λ_m, so translation is not a
box symmetry in the sense of BoxSym.
lemma fvs_transBox_ne_box (d m : ℕ) (hd : 0 < d) :
∃ (v y : Site d), y ∈ fvs_transBox d m v ∧ y ∉ box d m
abbrev Site (d : ℕ) : Type := Fin d → ℤ
MathlibExt/Combinatorics/SimpleGraph/Lattice/HypercubicLattice.lean:55
def fvs_transBox (d m : ℕ) (v : Site d) : Set (Site d) := {y | (y - v) ∈ box d m}
PhyslibExt/StatisticalMechanics/RandomCluster/FiniteVolumeShift.lean:304
def box (d n : ℕ) : Set (Site d) := {x | ∀ i, (x i).natAbs ≤ n}
MathlibExt/Combinatorics/SimpleGraph/Lattice/HypercubicLattice.lean:86
Uses 3
LemmaMonotonicity of the open subgraph in the configuration#✓fully proved
The open subgraph is monotone in the configuration. The same statement is
StatMech.Sharpness.openSub_mono in BkCriterion.
lemma openSub_mono {a b : ConfigSpace (Sym2 V)} (hab : a ≤ b) :
openSub G a ≤ openSub G b
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def openSub (ω : ConfigSpace (Sym2 V)) : SimpleGraph V where
Adj x y := G.Adj x y ∧ ω s(x, y) = true
symm := by
refine ⟨fun x y h => ?_⟩
refine ⟨h.1.symm, ?_⟩
rw [Sym2.eq_swap]; exact h.2
loopless := ⟨fun x h => h.1.ne rfl⟩
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:82
Uses 2 · Used by 6
DefinitionEvent that two vertices are joined by open edges#✓fully proved
The event that x and y are joined by a path of open edges of G.
def connEvent (x y : V) : Set (ConfigSpace (Sym2 V)) :=
{ω | (openSub G ω).Reachable x y}
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def openSub (ω : ConfigSpace (Sym2 V)) : SimpleGraph V where
Adj x y := G.Adj x y ∧ ω s(x, y) = true
symm := by
refine ⟨fun x y h => ?_⟩
refine ⟨h.1.symm, ?_⟩
rw [Sym2.eq_swap]; exact h.2
loopless := ⟨fun x h => h.1.ne rfl⟩
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:82
Uses 2 · Used by 11
DefinitionTwo-point function of the free random-cluster measure#✓fully proved
The two-point function of the free random-cluster measure on a finite graph: the probability
φ(x ↔ y) that x and y are connected by open edges.
noncomputable def twoPointFun (p q : ℝ) (x y : V) : ℝ :=
∑ ω, fkProb G p q ω * (connEvent G x y).indicator (fun _ => (1 : ℝ)) ω
noncomputable def fkProb (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
fkWeight G p q ω / fkZ G p q
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:172
def connEvent (x y : V) : Set (ConfigSpace (Sym2 V)) :=
{ω | (openSub G ω).Reachable x y}
PhyslibExt/StatisticalMechanics/RandomCluster/TwoPoint.lean:71
Uses 3 · Used by 2
LemmaFKG inequality for connection events for \(q \ge 1\)#✓fully proved
FKG for connection events: for q ≥ 1, φ(x ↔ y) φ(u ↔ v) ≤ φ(x ↔ y, u ↔ v).
lemma twoPointFun_fkg {p q : ℝ} (hp : 0 < p) (hp1 : p < 1) (hq : 1 ≤ q)
(x y u v : V) :
twoPointFun G p q x y * twoPointFun G p q u v
≤ ∑ ω, fkProb G p q ω *
(connEvent G x y ∩ connEvent G u v).indicator (fun _ => (1 : ℝ)) ω
noncomputable def twoPointFun (p q : ℝ) (x y : V) : ℝ :=
∑ ω, fkProb G p q ω * (connEvent G x y).indicator (fun _ => (1 : ℝ)) ω
PhyslibExt/StatisticalMechanics/RandomCluster/TwoPoint.lean:112
noncomputable def fkProb (p q : ℝ) (ω : ConfigSpace (Sym2 V)) : ℝ :=
fkWeight G p q ω / fkZ G p q
PhyslibExt/StatisticalMechanics/RandomCluster/RandomCluster.lean:172
def connEvent (x y : V) : Set (ConfigSpace (Sym2 V)) :=
{ω | (openSub G ω).Reachable x y}
PhyslibExt/StatisticalMechanics/RandomCluster/TwoPoint.lean:71
Loading dependency explorer…
The dependency explorer needs JavaScript and its graph data.