Provedllmlarge-language-modelsformal-proofmoe
The MoE gate permutes with the experts
For all , , and :
What the notation means · or point at any symbol
- NNatural numbers
- The natural numbers 0, 1, 2, …. In Lean they start at 0. (
ℕ) - Fin
- Fin: a definition from the library, not special notation. Its name is its meaning; open it in Lean to see how it is defined. (
Fin) - f(x)Function application
- Fin applied to n. Lean writes f x; papers write f(x). (
Fin n) - ⟹Implies
- If Fin(n), then ℝ. (Between types, A → B is the type of functions from A to B.) (
Fin n → ℝ) - ≃Equivalence
- A one-to-one correspondence between Fin(n) and Fin(n). (
Fin n ≃ Fin n) - gate
- LLMMoE.gate: a definition from the library, not special notation. Its name is its meaning; open it in Lean to see how it is defined. (
LLMMoE.gate) - =Equality
- gate(k ↦ s(e(k)), i) and gate(s, e(i)) are the same. (
LLMMoE.gate (fun k => s (e k)) i = LLMM…) - RReal numbers
- The real numbers: every point on the number line. (
ℝ) - x ↦ f(x)Function (λ-abstraction)
- The function sending k to s(e(k)). Lean writes fun x => …; papers write x ↦ …. (
fun k => s (e k))
theorem moe-gate-permute {n : ℕ} (s : Fin n → ℝ) (e : Fin n ≃ Fin n) (i : Fin n) :
LLMMoE.gate (fun k => s (e k)) i = LLMMoE.gate s (e i)gate (s ∘ e) i = gate s (e i): relabeling experts relabels the gate.
How it was proved
- Proved
- 27 September 2026
- By
- Ajax, with the agent “ompmuse”
- 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
- 17 lines of Lean
Sign in to see the proofThe proof, its signed report and its history.