The q-state Potts model on a finite graph
A. Monochromatic edges
DefinitionMonochromatic-edge indicator#✓fully proved
The indicator of a monochromatic edge: 𝟙[σ x = σ y] on the unordered pair s(x, y).
def monoIndicator {q : ℕ} (σ : V → Fin q) : Sym2 V → ℝ :=
Sym2.lift ⟨fun x y => if σ x = σ y then (1 : ℝ) else 0, by
intro a b
dsimp only
by_cases h : σ a = σ b
· rw [ite_eq_left h, ite_eq_left h.symm]
· rw [ite_eq_right h, ite_eq_right (Ne.symm h)]⟩
Used by 13
DefinitionAgreement count of a spin configuration#✓fully proved
The agreement count: the number of edges of G whose endpoints carry the same spin.
def agreement {q : ℕ} (σ : V → Fin q) : ℝ :=
∑ e ∈ G.edgeFinset, monoIndicator σ e
def monoIndicator {q : ℕ} (σ : V → Fin q) : Sym2 V → ℝ :=
Sym2.lift ⟨fun x y => if σ x = σ y then (1 : ℝ) else 0, by
intro a b
dsimp only
by_cases h : σ a = σ b
· rw [ite_eq_left h, ite_eq_left h.symm]
· rw [ite_eq_right h, ite_eq_right (Ne.symm h)]⟩
PhyslibExt/StatisticalMechanics/RandomCluster/Potts.lean:66
Uses 1 · Used by 8
B. Weights and the partition function
DefinitionPotts Boltzmann weight#✓fully proved
The Potts Boltzmann weight exp (β J · agreement G σ).
noncomputable def pottsWeight {q : ℕ} (β J : ℝ) (σ : V → Fin q) : ℝ :=
Real.exp (β * J * agreement G σ)
def agreement {q : ℕ} (σ : V → Fin q) : ℝ :=
∑ e ∈ G.edgeFinset, monoIndicator σ e
PhyslibExt/StatisticalMechanics/RandomCluster/Potts.lean:87
Uses 1 · Used by 12
DefinitionPotts partition function#✓fully proved
The Potts partition function Z = ∑_σ exp (β J · agreement G σ).
noncomputable def pottsZ (q : ℕ) (β J : ℝ) : ℝ :=
∑ σ : V → Fin q, pottsWeight G β J σ
noncomputable def pottsWeight {q : ℕ} (β J : ℝ) (σ : V → Fin q) : ℝ :=
Real.exp (β * J * agreement G σ)
PhyslibExt/StatisticalMechanics/RandomCluster/Potts.lean:101
Uses 1 · Used by 4
C. The Potts Gibbs measure
DefinitionPotts probability of a spin configuration#✓fully proved
The Potts probability of the spin configuration σ.
noncomputable def pottsProb (q : ℕ) (β J : ℝ) (σ : V → Fin q) : ℝ :=
pottsWeight G β J σ / pottsZ G q β J
noncomputable def pottsWeight {q : ℕ} (β J : ℝ) (σ : V → Fin q) : ℝ :=
Real.exp (β * J * agreement G σ)
PhyslibExt/StatisticalMechanics/RandomCluster/Potts.lean:101
noncomputable def pottsZ (q : ℕ) (β J : ℝ) : ℝ :=
∑ σ : V → Fin q, pottsWeight G β J σ
PhyslibExt/StatisticalMechanics/RandomCluster/Potts.lean:113
DefinitionPotts Gibbs measure as a probability mass function#✓fully proved
The Potts Gibbs measure on V → Fin q as a probability mass function.
noncomputable def pottsPMF (q : ℕ) [NeZero q] (β J : ℝ) : PMF (V → Fin q) :=
PMF.ofFintype (fun σ => ENNReal.ofReal (pottsProb G q β J σ)) <| by
rw [← ENNReal.ofReal_sum_of_nonneg fun σ _ => pottsProb_nonneg G q β J σ,
pottsProb_sum_eq_one]
simp
noncomputable def pottsProb (q : ℕ) (β J : ℝ) (σ : V → Fin q) : ℝ :=
pottsWeight G β J σ / pottsZ G q β J
PhyslibExt/StatisticalMechanics/RandomCluster/Potts.lean:129
Loading dependency explorer…
The dependency explorer needs JavaScript and its graph data.