Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

The Leopoldt defect DL(K)\mathcal{D}_L(\mathbb{K})DL​(K) of a number field at ppp

Definition
LeopoldtDefect

by kbuzzard · Sep 9, 2026 · Mathlib 0df444a (Lean v4.33.1)

iwasawa-theorynumber-theoryp-adicunits

This file sets up the objects that the statement of Leopoldt's conjecture refers to, following Section 1.1 of the source.

Let ppp be a prime and let K\mathbb{K}K be a number field with ring of integers O(K)\mathcal{O}(\mathbb{K})O(K) and unit group E=O(K)×E = \mathcal{O}(\mathbb{K})^\timesE=O(K)×. Four objects are defined.

  1. The primes above ppp. P={℘⊂O(K):(p)⊂℘}P = \{\wp \subset \mathcal{O}(\mathbb{K}) : (p) \subset \wp\}P={℘⊂O(K):(p)⊂℘}, the set of non-zero prime ideals of O(K)\mathcal{O}(\mathbb{K})O(K) containing ppp. This set is finite, and the finiteness is recorded so that it can be used as an instance.

  2. The semilocal units. For ℘∈P\wp \in P℘∈P let K℘\mathbb{K}_\wpK℘​ be the completion of K\mathbb{K}K at ℘\wp℘ and O℘⊂K℘\mathcal{O}_\wp \subset \mathbb{K}_\wpO℘​⊂K℘​ its valuation ring. The group of semilocal units at ppp is the product of the local unit groups,

U  =  ∏℘∈PO℘×,U \;=\; \prod_{\wp \in P} \mathcal{O}_\wp^{\times},U=℘∈P∏​O℘×​,

a commutative topological group. The diagonal embedding ι:E→U\iota : E \to Uι:E→U sends a global unit to the tuple of its images under the completion maps.

  1. The ppp-adic closure of the global units. With Upn={upn:u∈U}U^{p^n} = \{u^{p^n} : u \in U\}Upn={upn:u∈U}, and writing the product of two subgroups of the abelian group UUU for their join,
Eˉ  =  ⋂n>0ι(E)⋅Upn  ⊆  U.\bar{E} \;=\; \bigcap_{n > 0} \iota(E) \cdot U^{p^n} \;\subseteq\; U .Eˉ=n>0⋂​ι(E)⋅Upn⊆U.
  1. The Leopoldt defect. Writing Z-rk(E)=r1+r2−1\mathbb{Z}\text{-rk}(E) = r_1 + r_2 - 1Z-rk(E)=r1​+r2​−1 for Dirichlet's unit rank and Zp-rk(Eˉ)\mathbb{Z}_p\text{-rk}(\bar{E})Zp​-rk(Eˉ) for the free Zp\mathbb{Z}_pZp​-rank of Eˉ\bar{E}Eˉ,
DL(K)  =  Z-rk(E)  −  Zp-rk(Eˉ).\mathcal{D}_L(\mathbb{K}) \;=\; \mathbb{Z}\text{-rk}(E) \;-\; \mathbb{Z}_p\text{-rk}(\bar{E}).DL​(K)=Z-rk(E)−Zp​-rk(Eˉ).

Leopoldt's conjecture for K\mathbb{K}K at ppp is the assertion DL(K)=0\mathcal{D}_L(\mathbb{K}) = 0DL​(K)=0; the defect is positive exactly when units independent over Z\mathbb{Z}Z become dependent ppp-adically after the diagonal embedding. For CM fields a positive defect is equivalent to the vanishing of the ppp-adic regulator.

These are the objects every statement in this mission is phrased in, so they fix the meaning of the goal theorem. They are also reusable for any ppp-adic question about global units: the semilocal unit group and the diagonal embedding are the standard setting for ppp-adic regulators, ppp-ramified class field theory, and the Zp\mathbb{Z}_pZp​-rank computations of Iwasawa theory.

Formalization Note Four conventions are fixed here. First, Eˉ\bar{E}Eˉ is defined by the displayed intersection rather than as a topological closure; the source gives both descriptions, and the intersection avoids committing to a topology on ∏℘K℘\prod_\wp \mathbb{K}_\wp∏℘​K℘​. The two can differ by a finite subgroup, which does not change the Zp\mathbb{Z}_pZp​-rank.

Second, the free Zp\mathbb{Z}_pZp​-rank of a subgroup HHH is defined as the largest nnn below a cut-off admitting a continuous injective homomorphism Zpn→H\mathbb{Z}_p^n \to HZpn​→H, the cut-off being taken to be [K:Q][\mathbb{K}:\mathbb{Q}][K:Q] when the defect is formed. Continuity is essential, since as abstract groups Zpn\mathbb{Z}_p^nZpn​ embeds into Zp\mathbb{Z}_pZp​ for every nnn; and because Zpn\mathbb{Z}_p^nZpn​ is compact and the ambient group Hausdorff, such an injection is automatically a closed embedding. For a closed subgroup of UUU, isomorphic to a finite group times Zpd\mathbb{Z}_p^dZpd​, such injections exist exactly for n≤dn \le dn≤d. The cut-off is present only so that the supremum ranges over a visibly bounded set of naturals and never returns the junk value of a supremum of an unbounded set; since the Zp\mathbb{Z}_pZp​-rank of UUU itself is [K:Q][\mathbb{K}:\mathbb{Q}][K:Q], it never binds.

Third, the subtraction defining the defect is truncated subtraction of natural numbers; since the Zp\mathbb{Z}_pZp​-rank never exceeds the Z\mathbb{Z}Z-rank this is never triggered, and vanishing of the defect is equivalent to equality of the two ranks.

Fourth, the auxiliary constructions leading up to the defect are stated for an arbitrary natural number ppp, primality being assumed only where it is used, so they also carry (unused) meaning at p=0p = 0p=0 and p=1p = 1p=1.

Definition code
import Mathlib

/-!
# The Leopoldt defect of a number field at a prime `p`

This file formalises the objects of Section 1.1 ("Notations and fundamental facts") of

  Preda Mihăilescu, *On CM `ℤ_p`-extensions and the Leopoldt conjecture for CM fields*,
  arXiv:1105.4544,

which are what the statement of its Theorem 1 refers to.

Following the paper: `E = E(K) = 𝓞(K)ˣ` denotes the units of a number field `K`, and
`P = {℘ ⊂ 𝓞(K) : (p) ⊂ ℘}` the set of primes above `p`.  The paper puts
`K_p = ∏_{℘ ∈ P} K_℘ = K ⊗_ℚ ℚ_p`, lets `ι : K → K_p` be the diagonal embedding and
`U ⊂ K_p^×` be "the group of units, thus the product of local units at the same
completions".  It then defines the `p`-adic closure of the global units as

  `Ē = closure(ι(E)) = ⋂_{n > 0} ι(E) · U^{p^n}`

and the *Leopoldt defect* as

  `𝒟_L(K) = ℤ-rk(E) - ℤ_p-rk(Ē)`.

Leopoldt's conjecture for `K` at `p` is the assertion `𝒟_L(K) = 0`.
-/

namespace Leopoldt

open NumberField IsDedekindDomain

variable (p : ℕ) [Fact p.Prime] (K : Type*) [Field K] [NumberField K]

/-- The set `P = {℘ ⊂ 𝓞(K) : (p) ⊂ ℘}` of primes of `𝓞 K` above `p`. -/
abbrev PrimesOver := {v : HeightOneSpectrum (𝓞 K) // (p : 𝓞 K) ∈ v.asIdeal}

instance : Finite (PrimesOver p K) := by
  have hpne : (p : 𝓞 K) ≠ 0 := Nat.cast_ne_zero.2 (Fact.out (p := p.Prime)).ne_zero
  have hp0 : Ideal.span {(p : 𝓞 K)} ≠ 0 := by
    simpa [Ideal.span_singleton_eq_bot] using hpne
  apply Set.Finite.to_subtype
  refine (Ideal.finite_factors (R := 𝓞 K) hp0).subset ?_
  intro v hv
  exact Ideal.dvd_iff_le.2 ((Ideal.span_singleton_le_iff_mem _).2 hv)

/-- `U`: the group of semilocal units at `p`, that is the product `∏_{℘ | p} 𝓞_℘^×` of the
local units at the primes above `p`. -/
abbrev SemilocalUnits := ∀ v : PrimesOver p K, (v.1.adicCompletionIntegers K)ˣ

/-- `ι : E(K) → U`, the diagonal embedding of the global units into the semilocal units. -/
noncomputable def diagonalUnits : (𝓞 K)ˣ →* SemilocalUnits p K :=
  MonoidHom.pi fun v => Units.map (algebraMap (𝓞 K) (v.1.adicCompletionIntegers K)).toMonoidHom

/-- `Ē = ⋂_{n > 0} ι(E) · U^{p^n}`, the `p`-adic closure of the image of the global units
inside the semilocal units, exactly as the intersection is written in the source. -/
noncomputable def unitClosure : Subgroup (SemilocalUnits p K) :=
  ⨅ n : ℕ, ((diagonalUnits p K).range ⊔ (powMonoidHom (p ^ (n + 1))).range)

/-- The free `ℤ_p`-rank of a subgroup `H` of a commutative topological group, computed as the
largest `n ≤ bound` for which `ℤ_p^n` admits a continuous injective homomorphism into `H`.

For a closed subgroup of the semilocal units this is the usual free `ℤ_p`-rank: such a subgroup
is isomorphic to `Δ × ℤ_p^d` with `Δ` finite, and continuous injections from `ℤ_p^n` exist
exactly for `n ≤ d`.  Continuity is essential — as abstract groups `ℤ_p^n` embeds into `ℤ_p`
for every `n`; and since `ℤ_p^n` is compact and the target Hausdorff, a continuous injection is
automatically a closed embedding.

The `bound` is carried only so that the supremum is visibly taken over a bounded set and never
falls back on the junk value of `sSup` on an unbounded set of naturals.  Any `bound` at least as
large as the true rank yields the true rank. -/
noncomputable def zpRankBelow {G : Type*} [CommGroup G] [TopologicalSpace G]
    (bound : ℕ) (H : Subgroup G) : ℕ :=
  sSup {n : ℕ | n ≤ bound ∧ ∃ f : Multiplicative (Fin n → ℤ_[p]) →* G,
    Function.Injective f ∧ Continuous f ∧ ∀ x, f x ∈ H}

/-- The **Leopoldt defect** `𝒟_L(K) = ℤ-rk(E) - ℤ_p-rk(Ē)` of `K` at `p`.

`ℤ-rk(E) = r₁ + r₂ - 1` is Dirichlet's unit rank, which Mathlib provides as
`NumberField.Units.rank`.  The `ℤ_p`-rank of `Ē` is bounded by that of the whole semilocal unit
group `U`, which is `[K : ℚ]`, so taking `[K : ℚ]` as the bound never constrains it. -/
noncomputable def defect : ℕ :=
  Units.rank K - zpRankBelow p (Module.finrank ℚ K) (unitClosure p K)

/-- **Leopoldt's conjecture** for `K` at `p`: the Leopoldt defect vanishes. -/
def LeopoldtConjecture : Prop := defect p K = 0

end Leopoldt
Source
Preda Mihailescu, On CM Z_p-extensions and the Leopoldt conjecture for CM fields, https://arxiv.org/abs/1105.4544, Section 1.1 'Notations and fundamental facts' (pp. 2-3): the definitions of E(K), the set P of primes above p, K_p = prod_{wp in P} K_wp = K (x)_Q Q_p, the diagonal embedding iota, the semilocal units U, the p-adic closure Ebar = closure(iota(E)) = intersection_{n>0} iota(E).U^{p^n}, and the Leopoldt defect D_L(K) = Z-rk(E) - Z_p-rk(Ebar).
Read-back

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

PrimesOver

For a natural number ppp carrying the assumption that ppp is prime, and a field KKK carrying the assumption that KKK is a number field (a finite-dimensional field extension of Q\mathbb{Q}Q), PrimesOver(p,K)\mathrm{PrimesOver}(p, K)PrimesOver(p,K) is defined to be the type of pairs consisting of a point vvv of the height-one spectrum of the ring of integers OK\mathcal{O}_KOK​ — that is, a nonzero prime ideal pv⊆OK\mathfrak{p}_v \subseteq \mathcal{O}_Kpv​⊆OK​ (the height-one spectrum of a Dedekind domain packages an ideal together with proofs that it is prime and nonzero) — together with a proof that the image of ppp under the canonical map N→OK\mathbb{N} \to \mathcal{O}_KN→OK​ lies in pv\mathfrak{p}_vpv​. So its elements are exactly the nonzero primes of OK\mathcal{O}_KOK​ containing ppp, i.e. the primes of KKK dividing ppp. It is introduced as a reducible abbreviation, and ppp and KKK are explicit parameters; the primality of ppp enters only through the ambient hypothesis and is not used in the defining condition itself, which is literally just "p∈pvp \in \mathfrak{p}_vp∈pv​".

The finiteness instance for PrimesOver

A typeclass instance is registered asserting that, under the same hypotheses (ppp prime, KKK a number field), the type PrimesOver(p,K)\mathrm{PrimesOver}(p, K)PrimesOver(p,K) of nonzero primes of OK\mathcal{O}_KOK​ containing ppp is a finite type. This is a statement of finiteness only; it provides no cardinality, no lower bound, and no claim that the type is nonempty (although for a prime ppp it is in fact nonempty, nothing here says so).

SemilocalUnits

Under the same hypotheses, SemilocalUnits(p,K)\mathrm{SemilocalUnits}(p, K)SemilocalUnits(p,K) is defined (again as a reducible abbreviation) to be the type of all functions assigning to each v∈PrimesOver(p,K)v \in \mathrm{PrimesOver}(p, K)v∈PrimesOver(p,K) an element of the unit group OKv×\mathcal{O}_{K_v}^{\times}OKv​×​, where OKv\mathcal{O}_{K_v}OKv​​ denotes the ring of integers of the vvv-adic completion of KKK — concretely, the valuation subring {x∈Kv:∣x∣v≤1}\{x \in K_v : |x|_v \le 1\}{x∈Kv​:∣x∣v​≤1} of the completion KvK_vKv​ of KKK at the prime pv\mathfrak{p}_vpv​. Thus

SemilocalUnits(p,K)  =  ∏v∣pOKv×,\mathrm{SemilocalUnits}(p,K) \;=\; \prod_{v \mid p} \mathcal{O}_{K_v}^{\times},SemilocalUnits(p,K)=v∣p∏​OKv​×​,

the full unit group of the semilocal ring, taken as an unrestricted product over the (finitely many) primes above ppp. It is the whole unit group of each local ring of integers: no restriction to principal units, one-units, or any congruence subgroup is imposed. Its group structure is the pointwise one (a commutative group, since each OKv\mathcal{O}_{K_v}OKv​​ is a commutative ring), and its topology is the product of the topologies each OKv×\mathcal{O}_{K_v}^{\times}OKv​×​ inherits from OKv\mathcal{O}_{K_v}OKv​​ via the embedding u↦(u,u−1)u \mapsto (u, u^{-1})u↦(u,u−1).

diagonalUnits

Under the same hypotheses, Δp,K\Delta_{p,K}Δp,K​ is defined to be the monoid homomorphism

Δp,K:OK×⟶∏v∣pOKv×\Delta_{p,K} : \mathcal{O}_K^{\times} \longrightarrow \prod_{v \mid p} \mathcal{O}_{K_v}^{\times}Δp,K​:OK×​⟶v∣p∏​OKv​×​

whose vvv-th component is the map on unit groups induced by the canonical algebra homomorphism OK→OKv\mathcal{O}_K \to \mathcal{O}_{K_v}OK​→OKv​​; that is, a global unit uuu is sent to the family whose vvv-th entry is the image of uuu in OKv\mathcal{O}_{K_v}OKv​​, regarded as a unit there. It is a homomorphism of multiplicative monoids (hence of groups) only; the definition asserts nothing about injectivity, continuity, or the nature of the image.

unitClosure

Under the same hypotheses, E‾p,K\overline{E}_{p,K}Ep,K​ is defined to be the following subgroup of SemilocalUnits(p,K)=∏v∣pOKv×\mathrm{SemilocalUnits}(p,K) = \prod_{v\mid p}\mathcal{O}_{K_v}^{\times}SemilocalUnits(p,K)=∏v∣p​OKv​×​. Write EEE for the image subgroup Δp,K(OK×)\Delta_{p,K}(\mathcal{O}_K^{\times})Δp,K​(OK×​) of global units under the diagonal map just described, and for a natural number mmm write UmU^{m}Um for the image subgroup of the mmm-th power homomorphism x↦xmx \mapsto x^{m}x↦xm on U:=∏v∣pOKv×U := \prod_{v\mid p}\mathcal{O}_{K_v}^{\times}U:=∏v∣p​OKv​×​, i.e. the subgroup of mmm-th powers. Then

E‾p,K  =  ⋂n∈N(E∨Up n+1),\overline{E}_{p,K} \;=\; \bigcap_{n \in \mathbb{N}} \Big( E \vee U^{p^{\,n+1}} \Big),Ep,K​=n∈N⋂​(E∨Upn+1),

where E∨Upn+1E \vee U^{p^{n+1}}E∨Upn+1 denotes the join in the lattice of subgroups, i.e. the subgroup generated by EEE and by all pn+1p^{n+1}pn+1-st powers (since the ambient group is commutative this is the setwise product E⋅Upn+1E \cdot U^{p^{n+1}}E⋅Upn+1). The index nnn ranges over all of N\mathbb{N}N starting at 000, so the exponents occurring are p1,p2,p3,…p^{1}, p^{2}, p^{3}, \dotsp1,p2,p3,… and never p0=1p^{0} = 1p0=1; the intersection is over the complete lattice infimum, i.e. it is the intersection of the underlying sets. No topological notion of closure is used in the definition, and no closedness of the resulting subgroup is asserted.

zpRankBelow

This is a general-purpose definition, stated for an arbitrary type GGG equipped with a commutative group structure and, independently, an arbitrary topology (no compatibility between the group operations and the topology is assumed — in particular no continuity of multiplication or inversion, and no separation axiom), together with a prime ppp (from the ambient hypotheses, needed to speak of Zp\mathbb{Z}_pZp​), a natural number bound\mathrm{bound}bound, and a subgroup H≤GH \le GH≤G. Let AnA_nAn​ denote the group Zp n\mathbb{Z}_p^{\,n}Zpn​ of nnn-tuples of ppp-adic integers under pointwise addition, viewed as a multiplicative group by transport of structure (its topology is likewise transported from the product topology on Zp n\mathbb{Z}_p^{\,n}Zpn​). Define

S  =  {n∈N  :  n≤bound  and  ∃ f:An→G a monoid homomorphism with f injective,f continuous, and f(x)∈H for every x∈An}.S \;=\; \Big\{ n \in \mathbb{N} \;:\; n \le \mathrm{bound} \ \text{ and } \ \exists\, f : A_n \to G \ \text{a monoid homomorphism with } f \text{ injective}, f \text{ continuous, and } f(x) \in H \text{ for every } x \in A_n \Big\}.S={n∈N:n≤bound  and  ∃f:An​→G a monoid homomorphism with f injective,f continuous, and f(x)∈H for every x∈An​}.

Then zpRankBelowp(bound,H)\mathrm{zpRankBelow}_p(\mathrm{bound}, H)zpRankBelowp​(bound,H) is defined to be sup⁡S\sup SsupS, computed as the supremum in N\mathbb{N}N (which by convention returns 000 when the set is empty or unbounded above — here the set is bounded above by bound\mathrm{bound}bound by construction). The map fff is required only to be a homomorphism for the multiplicative structure: it need not be Zp\mathbb{Z}_pZp​-linear, need not be a topological embedding, need not have closed or discrete image, and HHH need not be closed. Note the degenerate member n=0n = 0n=0: A0A_0A0​ is the trivial group, the unique homomorphism out of it is injective and continuous and sends its only element to the identity of GGG, which lies in HHH; hence 0∈S0 \in S0∈S always, SSS is nonempty and bounded, and the supremum is an attained maximum. Thus the value is the largest n≤boundn \le \mathrm{bound}n≤bound for which such an injective continuous multiplicative map Zp n→G\mathbb{Z}_p^{\,n} \to GZpn​→G landing inside HHH exists.

defect

Under the standing hypotheses (ppp prime, KKK a number field), defect(p,K)\mathrm{defect}(p,K)defect(p,K) is defined to be the natural number

defect(p,K)  =  rank(OK×)  −  zpRankBelowp([K:Q],  E‾p,K),\mathrm{defect}(p,K) \;=\; \mathrm{rank}(\mathcal{O}_K^{\times}) \;-\; \mathrm{zpRankBelow}_p\big([K:\mathbb{Q}],\; \overline{E}_{p,K}\big),defect(p,K)=rank(OK×​)−zpRankBelowp​([K:Q],Ep,K​),

where: rank(OK×)\mathrm{rank}(\mathcal{O}_K^{\times})rank(OK×​) is Mathlib's unit rank of KKK, defined as #{infinite places of K}−1\#\{\text{infinite places of } K\} - 1#{infinite places of K}−1 (i.e. r1+r2−1r_1 + r_2 - 1r1​+r2​−1, itself a truncated natural-number subtraction); the bound supplied to zpRankBelow\mathrm{zpRankBelow}zpRankBelow is [K:Q]=dim⁡QK[K:\mathbb{Q}] = \dim_{\mathbb{Q}} K[K:Q]=dimQ​K; and the subgroup supplied is E‾p,K=⋂n(Δp,K(OK×)⋅Upn+1)\overline{E}_{p,K} = \bigcap_{n}\big(\Delta_{p,K}(\mathcal{O}_K^{\times}) \cdot U^{p^{n+1}}\big)Ep,K​=⋂n​(Δp,K​(OK×​)⋅Upn+1) inside U=∏v∣pOKv×U = \prod_{v\mid p}\mathcal{O}_{K_v}^{\times}U=∏v∣p​OKv​×​, as described above, with UUU carrying the product-of-units-topologies mentioned above. The subtraction is truncated subtraction on N\mathbb{N}N: if the second term exceeds the first, the value is 000 rather than a negative number.

LeopoldtConjecture

Under the standing hypotheses (ppp a prime, KKK a number field), LeopoldtConjecture(p,K)\mathrm{LeopoldtConjecture}(p,K)LeopoldtConjecture(p,K) is defined to be the proposition

defect(p,K)=0,\mathrm{defect}(p,K) = 0,defect(p,K)=0,

that is, with all definitions unfolded, the proposition that

r1+r2−1  =  max⁡{ n≤[K:Q]  :  ∃ an injective continuous multiplicative homomorphism Zp n→∏v∣pOKv× whose image lies in ⋂m≥1(Δp,K(OK×)⋅(∏v∣pOKv×)pm) }r_1 + r_2 - 1 \;=\; \max\Big\{\, n \le [K:\mathbb{Q}] \;:\; \exists\ \text{an injective continuous multiplicative homomorphism } \mathbb{Z}_p^{\,n} \to \textstyle\prod_{v\mid p}\mathcal{O}_{K_v}^{\times} \text{ whose image lies in } \bigcap_{m \ge 1}\big(\Delta_{p,K}(\mathcal{O}_K^{\times})\cdot \big(\textstyle\prod_{v\mid p}\mathcal{O}_{K_v}^{\times}\big)^{p^{m}}\big) \,\Big\}r1​+r2​−1=max{n≤[K:Q]:∃ an injective continuous multiplicative homomorphism Zpn​→∏v∣p​OKv​×​ whose image lies in ⋂m≥1​(Δp,K​(OK×​)⋅(∏v∣p​OKv​×​)pm)}

holds after truncated subtraction — i.e., because the subtraction is truncated at 000, the proposition asserts only the inequality

rank(OK×)  ≤  zpRankBelowp([K:Q],E‾p,K),\mathrm{rank}(\mathcal{O}_K^{\times}) \;\le\; \mathrm{zpRankBelow}_p\big([K:\mathbb{Q}], \overline{E}_{p,K}\big),rank(OK×​)≤zpRankBelowp​([K:Q],Ep,K​),

and is satisfied in particular whenever the right-hand quantity is at least the unit rank, including any case where it exceeds it. This is a definition of a proposition, not a theorem: nothing here is proved, and no claim is made that the proposition is true for any particular ppp and KKK.

Human review
  • Endorsed by Shuze Chen · Sep 9, 2026

  • Endorsed by kbuzzard · Sep 9, 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