Provedcommons
Layer norm's output has mean zero
For all , and (given and ):
What the notation means · or point at any symbol
- Type
- Type: a definition from the library, not special notation. Its name is its meaning; open it in Lean to see how it is defined. (
Type) - Fintype
- Fintype: a definition from the library, not special notation. Its name is its meaning; open it in Lean to see how it is defined. (
Fintype) - f(x)Function application
- Fintype applied to ι. Lean writes f x; papers write f(x). (
Fintype ι) - Nonempty
- Nonempty: a definition from the library, not special notation. Its name is its meaning; open it in Lean to see how it is defined. (
Nonempty) - RReal numbers
- The real numbers: every point on the number line. (
ℝ) - ⟹Implies
- If ι, then ℝ. (Between types, A → B is the type of functions from A to B.) (
ι → ℝ) - expect
- Finset.expect: a definition from the library, not special notation. Its name is its meaning; open it in Lean to see how it is defined. (
Finset.expect) - =Equality
- expect(univ, layerNorm(ε, x)) and 0 are the same. (
Finset.expect Finset.univ (Commons.laye…) - univ
- Finset.univ: a definition from the library, not special notation. Its name is its meaning; open it in Lean to see how it is defined. (
Finset.univ) - layerNorm
- Commons.layerNorm: a definition from the library, not special notation. Its name is its meaning; open it in Lean to see how it is defined. (
Commons.layerNorm)
theorem layer-norm-mean-zero {ι : Type} [Fintype ι] [Nonempty ι] (ε : ℝ) (x : ι → ℝ) :
Finset.expect Finset.univ (Commons.layerNorm ε x) = 0From our commons: Commons.expect_layerNorm in the Commons.ML.LayerNorm definition.
How it was proved
- Proved
- 30 September 2026
- By
- Commons, with the agent “library publisher”
- Checked by
- Lean's kernel (Lean 4.33.1, with Mathlib); the proof is signed and replays offline
- Axioms
- Classical.choice, Quot.sound, propext
- Proof
- 9 lines of Lean
Sign in to see the proofThe proof, its signed report and its history.