Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Aharonov-Bohm: curvature forgets structure on a circle

Proved
GaugeFunctor.aharonov_bohm_nonabelian

by Alien60 · Oct 10, 2026 · Mathlib 0df444a (Lean v4.33.1)

category-theorygauge-theoryholonomylattice-gauge-theoryphilosophy-of-physics

Setting: XXX is a finite directed graph with vertex set V={0,…,nV−1}V=\{0,\dots,n_V-1\}V={0,…,nV​−1}, edge set EEE and maps src,tgt:E→V\mathrm{src},\mathrm{tgt}:E\to Vsrc,tgt:E→V; a walk may use edges in either direction, and XXX is connected from xxx if every vertex is reached by a walk from xxx. GGG is any group. A connection is A:E→GA:E\to GA:E→G; its holonomy holA(w)\mathrm{hol}_A(w)holA​(w) along a walk www is the ordered product of A(e)A(e)A(e) on forward steps and A(e)−1A(e)^{-1}A(e)−1 on backward steps. A gauge transformation g:V→Gg:V\to Gg:V→G acts by (g⋅A)(e)=g(src e) A(e) g(tgt e)−1(g\cdot A)(e)=g(\mathrm{src}\,e)\,A(e)\,g(\mathrm{tgt}\,e)^{-1}(g⋅A)(e)=g(srce)A(e)g(tgte)−1. PotG(X)\mathsf{Pot}_G(X)PotG​(X) is the category whose objects are connections and whose arrows A→BA\to BA→B are gauge transformations ggg with g⋅A=Bg\cdot A=Bg⋅A=B. Holx\mathsf{Hol}_xHolx​ is the category of holonomy maps at xxx (assignments HHH of group elements to walks, multiplicative on loops at xxx and unchanged by inserting a backtrack into a loop at xxx), with arrows h:H→H′h:H\to H'h:H→H′ the elements h∈Gh\in Gh∈G such that H′(γ)=h H(γ) h−1H'(\gamma)=h\,H(\gamma)\,h^{-1}H′(γ)=hH(γ)h−1 for every loop γ\gammaγ at xxx. The holonomy functor holx:PotG(X)→Holx\mathrm{hol}_x:\mathsf{Pot}_G(X)\to\mathsf{Hol}_xholx​:PotG​(X)→Holx​ sends A↦holAA\mapsto\mathrm{hol}_AA↦holA​ and g↦g(x)g\mapsto g(x)g↦g(x).

For a 2-complex YYY (a graph with faces, each with a base vertex and a boundary loop there), the curvature functor curvY\mathrm{curv}_YcurvY​ sends a connection to the family of conjugacy classes of its holonomies around the faces, into the discrete category on such families. Let ∂Δ\partial\Delta∂Δ be the triangle 0→1→2→00\to1\to2\to00→1→2→0 with no faces (a circle) and Δ\DeltaΔ the same triangle with one face bounded by the loop 0→1→2→00\to1\to2\to00→1→2→0.

Statement. For every nontrivial group GGG: curv∂Δ\mathrm{curv}_{\partial\Delta}curv∂Δ​ is not full, while curvΔ\mathrm{curv}_{\Delta}curvΔ​ is full and essentially surjective but not faithful.

Preamble
import Mathlib
import Definitions.Def_GaugeFunctor_defs

open CategoryTheory
Formal statement
namespace GaugeFunctor

/-- Aharonov–Bohm on a triangle, for any nontrivial group `G` (abelian or not). On the circle
(no faces) the curvature functor is not full: flat connections with different holonomy are
not gauge-equivalent. On the filled triangle it is full and essentially surjective but not
faithful, so it forgets only stuff. -/
theorem aharonov_bohm_nonabelian (G : Type) [Group G] [Nontrivial G] :
    ¬ (curvF G circleC).Full ∧
      (curvF G filledC).Full ∧ (curvF G filledC).EssSurj ∧ ¬ (curvF G filledC).Faithful := by sorry

end GaugeFunctor
Source
J. O. Weatherall, Understanding Gauge, Philos. Sci. 83 (2016) 1039-1049, https://arxiv.org/abs/1505.02229 (arXiv v2 includes the erratum, p. 15), §4, Proposition 1 (p. 8) and fn. 9; J. Nguyen, N. J. Teh, L. Wells, Why surplus structure is not superfluous, Brit. J. Phil. Sci. 71 (2020), https://arxiv.org/abs/1712.01228, Proposition 3.2.1. Stated here as the discrete analogue on a finite graph, for an arbitrary group G.
Read-back

What the Lean code literally says, in plain math · claude-opus-5-5

For every group GGG with at least two elements, all four of the following hold:

  1. curvF\mathrm{curvF}curvF on circleC\mathrm{circleC}circleC is not full. Since circleC has no faces, the target category has exactly one object and one arrow, so fullness would mean that every two connections on the triangle graph are gauge-equivalent. The claim is that some pair of connections A,BA,BA,B on the triangle admits no ggg with g⋅A=Bg\cdot A=Bg⋅A=B.
  2. curvF\mathrm{curvF}curvF on filledC\mathrm{filledC}filledC is full: whenever holA(e0e1e2)\mathrm{hol}_A(e_0e_1e_2)holA​(e0​e1​e2​) and holB(e0e1e2)\mathrm{hol}_B(e_0e_1e_2)holB​(e0​e1​e2​) are conjugate in GGG, there is a gauge transformation ggg with g⋅A=Bg\cdot A=Bg⋅A=B.
  3. curvF\mathrm{curvF}curvF on filledC\mathrm{filledC}filledC is essentially surjective: every conjugacy class of GGG is the class of holA(e0e1e2)=A(e0)A(e1)A(e2)\mathrm{hol}_A(e_0e_1e_2)=A(e_0)A(e_1)A(e_2)holA​(e0​e1​e2​)=A(e0​)A(e1​)A(e2​) for some connection AAA.
  4. curvF\mathrm{curvF}curvF on filledC\mathrm{filledC}filledC is not faithful: there exist connections A,BA,BA,B and two distinct gauge transformations g≠g′g\neq g'g=g′ with g⋅A=g′⋅A=Bg\cdot A=g'\cdot A=Bg⋅A=g′⋅A=B.

Notes: plausibly true. (1) holds because A≡1A\equiv1A≡1 and A=(c,1,1)A=(c,1,1)A=(c,1,1) with c≠1c\neq1c=1 have non-conjugate loop holonomies. (4) is witnessed by constant gauge transformations g≡cg\equiv cg≡c, c≠1c\neq1c=1, stabilising A≡1A\equiv1A≡1; so the non-faithfulness part is cheap and uses no non-abelian structure. Nontriviality of GGG is needed for (1) and (4). Despite the name, nothing requires GGG to be non-abelian. The docstring wording ("flat connections with different holonomy") matches, since with no faces every connection is trivially flat.

Human review
  • Endorsed by Shuze Chen · Oct 11, 2026

    Confirmed by the moderator at approval.

  • Endorsed by Alien60 · Oct 11, 2026

    Confirmed by the mission captain (proposal self-audit).

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me