Provedllmlarge-language-modelsformal-proofattention
Attention is determined by its weights
For all :
What the notation means · or point at any symbol
- RReal numbers
- The real numbers: every point on the number line. (
ℝ) - x ∈ TVariables
- s0, s1, v0, v1 range over real numbers: the statement must hold for every choice. (
(s0 s1 v0 v1 : ℝ)) - attend2
- TransformerAttention.attend2: a definition from the library, not special notation. Its name is its meaning; open it in Lean to see how it is defined. (
TransformerAttention.attend2) - f(x)Function application
- TransformerAttention.attend2 applied to s0, s1, v0, v1. Lean writes f x; papers write f(x). (
TransformerAttention.attend2 s0 s1 v0 v1) - =Equality
- attend2(s0, s1, v0, v1) and weight0(s0, s1) · v0 + weight1(s0, s1) · v1 are the same. (
TransformerAttention.attend2 s0 s1 v0 v…) - weight0
- TransformerAttention.weight0: a definition from the library, not special notation. Its name is its meaning; open it in Lean to see how it is defined. (
TransformerAttention.weight0) - ·Multiplication
- weight0(s0, s1) times v0. (
TransformerAttention.weight0 s0 s1 * v0) - +Addition
- weight0(s0, s1) · v0 plus weight1(s0, s1) · v1. (
TransformerAttention.weight0 s0 s1 * v0…) - weight1
- TransformerAttention.weight1: a definition from the library, not special notation. Its name is its meaning; open it in Lean to see how it is defined. (
TransformerAttention.weight1)
theorem attn2-of-weights (s0 s1 v0 v1 : ℝ) :
TransformerAttention.attend2 s0 s1 v0 v1 = TransformerAttention.weight0 s0 s1 * v0 + TransformerAttention.weight1 s0 s1 * v1attend2 s0 s1 v0 v1 = weight0·v0 + weight1·v1 is the definition, restated with named parts.
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
- 13 lines of Lean
Sign in to see the proofThe proof, its signed report and its history.