Prove2Me
Navigate
DiscoverCollectionsFormalpediaGalaxyBlogsUsersMomentumMy Missions+
Prove2Me
Log in
← Formalpedia

The index dim⁡Ker⁡u−dim⁡Coker⁡u\dim\operatorname{Ker}u-\dim\operatorname{Coker}udimKeru−dimCokeru of a Fredholm operator

Definition
FredholmBanach_Setting

by Mazecto · Oct 9, 2026 · Mathlib 0df444a (Lean v4.33.1)

banach-spacescompact-operatorsfredholm-operatorsfunctional-analysisoperator-theory

The index of a Fredholm operator between normed spaces, following N. Bourbaki, Théories spectrales, Chapitre III, § 3, n° 3 (TS III.43).

Let K\mathbb{K}K be R\mathbb{R}R or C\mathbb{C}C, let EEE, FFF be normed spaces over K\mathbb{K}K and let u:E→Fu:E\to Fu:E→F be a bounded linear map. Write Ker⁡u⊂E\operatorname{Ker}u\subset EKeru⊂E for its kernel, Im⁡u⊂F\operatorname{Im}u\subset FImu⊂F for its range and Coker⁡u=F/Im⁡u\operatorname{Coker}u=F/\operatorname{Im}uCokeru=F/Imu for its cokernel (an algebraic quotient). The index of uuu is the integer

ind⁡u=dim⁡Ker⁡u−dim⁡Coker⁡u.\operatorname{ind}u=\dim\operatorname{Ker}u-\dim\operatorname{Coker}u .indu=dimKeru−dimCokeru.

Fredholm operators themselves are not defined here: they are Mathlib's ContinuousLinearMap.IsFredholm (uuu is a strict map, Ker⁡u\operatorname{Ker}uKeru is finite-dimensional and topologically complemented, and Im⁡u\operatorname{Im}uImu is closed and of finite codimension). For a Fredholm operator both dimensions are finite.

Formalization Note index u is Module.finrank 𝕜 u.ker - Module.finrank 𝕜 (F ⧸ u.range) in ℤ. Since Module.finrank is 000 on infinite-dimensional spaces, index u is meaningful only when u.IsFredholm; every theorem about it assumes this. Bourbaki (TS III.43, formula (1)) uses the opposite sign, dim⁡Coker⁡u−dim⁡Ker⁡u\dim\operatorname{Coker}u-\dim\operatorname{Ker}udimCokeru−dimKeru; the sign here is the usual one in analysis and geometry. The scalar field is any RCLike field.

Definition code
import Mathlib.Analysis.Normed.Operator.Fredholm.Basic
import Mathlib.Analysis.Normed.Operator.Compact.Basic
import Mathlib.Analysis.RCLike.Basic

/-!
# The index of a Fredholm operator

N. Bourbaki, *Théories spectrales*, Chapitre III, § 3, n° 2–3 (pp. TS III.40–III.43).

Fredholm operators are Mathlib's `ContinuousLinearMap.IsFredholm`: `u : E →L[𝕜] F` is
Fredholm if it is a strict map with closed range of finite codimension whose kernel is
finite-dimensional and topologically complemented. For Banach spaces over `ℝ` or `ℂ` this
agrees with Bourbaki's Definition 1 (existence of a quasi-inverse modulo finite rank).

The index is `ind u = dim Ker u - dim Coker u`, with `Coker u = F ⧸ Im u`.
Bourbaki (TS III.43, formula (1)) uses the opposite sign, `dim Coker u - dim Ker u`.
-/

namespace FredholmBanach

noncomputable section

/-- The index `dim Ker u - dim (F ⧸ Im u)` of a continuous linear map. `Module.finrank` is `0`
on infinite-dimensional spaces, so the value is meaningful only for Fredholm `u`. -/
def index {𝕜 E F : Type*} [RCLike 𝕜] [NormedAddCommGroup E] [NormedSpace 𝕜 E]
    [NormedAddCommGroup F] [NormedSpace 𝕜 F] (u : E →L[𝕜] F) : ℤ :=
  (Module.finrank 𝕜 u.ker : ℤ) - (Module.finrank 𝕜 (F ⧸ u.range) : ℤ)

end

end FredholmBanach
Source
N. Bourbaki, Théories spectrales, Chapitres III à V, Springer (2023), https://doi.org/10.1007/978-3-031-19505-1, Chapitre III, § 3, n° 2-3, pp. TS III.40-III.43
Read-back

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

Read-back: FredholmBanach_Setting (Definitions/Def_FredholmBanach_Setting.lean)

Imports. Mathlib's Fredholm basics (ContinuousLinearMap.IsFredholm), compact operators (IsCompactOperator) and RCLike. Neither IsFredholm nor IsCompactOperator is used in this file; they are imported only for downstream files.

Setting of the definition. K\mathbb{K}K is R\mathbb{R}R or C\mathbb{C}C (RCLike 𝕜). E,FE, FE,F are normed vector spaces over K\mathbb{K}K (NormedAddCommGroup + NormedSpace). No completeness is assumed here, and no Fredholm hypothesis.

Definition. For a continuous linear map u:E→Fu : E \to Fu:E→F (E →L[𝕜] F),

index⁡(u)  =  finrank⁡K(ker⁡u)  −  finrank⁡K(F/range⁡u)∈Z.\operatorname{index}(u) \;=\; \operatorname{finrank}_{\mathbb{K}}(\ker u) \;-\; \operatorname{finrank}_{\mathbb{K}}\bigl(F / \operatorname{range} u\bigr) \in \mathbb{Z}.index(u)=finrankK​(keru)−finrankK​(F/rangeu)∈Z.
  • u.ker ={x∈E:ux=0}= \{x \in E : u x = 0\}={x∈E:ux=0}, u.range =u(E)= u(E)=u(E), both as K\mathbb{K}K-linear subspaces.
  • F/range⁡uF/\operatorname{range} uF/rangeu is the algebraic quotient vector space (the range is not closed off first; no topology enters finrank).
  • Module.finrank is the dimension when finite and is 000 when the space is infinite-dimensional. Both naturals are cast to Z\mathbb{Z}Z before subtracting.

So the name is FredholmBanach.index, with sign convention dim⁡ker⁡−dim⁡coker⁡\dim\ker - \dim\operatorname{coker}dimker−dimcoker.

Degenerate cases / remarks.

  • E=0E = 0E=0 or F=0F = 0F=0 behave as expected: e.g. u:0→Fu : 0 \to Fu:0→F with FFF finite-dimensional has index −dim⁡F-\dim F−dimF.
  • For non-Fredholm uuu the value is junk: e.g. if ker⁡u\ker ukeru is infinite-dimensional and the cokernel is 000, index =0=0=0; an injective map with infinite-dimensional cokernel also gets index 000. The docstring acknowledges this.
  • Sign convention is opposite to Bourbaki (TS III.43 uses dim⁡coker⁡−dim⁡ker⁡\dim\operatorname{coker} - \dim\kerdimcoker−dimker); the docstring says so explicitly. It agrees with the common analysis convention.
  • The docstring's claim that IsFredholm agrees with Bourbaki's quasi-inverse definition is commentary, not part of the formal content.

Nothing looks mis-formalized; the only caveat is that the definition is meaningful only for Fredholm uuu.

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

    Confirmed by the moderator at approval.

  • Endorsed by Mazecto · Oct 10, 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 paperProve2Me Team
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me