The dispatch pyramid and the capstone hilbertSymbol_dyadic' #
This is the assembly of the necessity and sufficiency engines into Serre's dyadic Hilbert-symbol
formula, with a statement matching the public theorem in Foundations/Axioms.lean.
The pyramid.
- Parity —
symbol_zpow_reducesplits2^α = 2^{α%2}·(2^{α/2})²in each slot; square-class invariance (hilbertSymbol_mul_sq_left/right) kills the squares, and(α : 𝔽₂) = (α%2 : 𝔽₂)does the same on the formula side. Four parity families remain. (0,0),(0,1)—dyadic_uu/dyadic_u2v:rcasesover the 4×4 unit residues (toZModPow_unit_mem), each case closed by a B7′-3−1-leaf, a B7′-4+1-witness, or theu ≡ 1freebie, with the formula side evaluated bydecideat the pinned residues.(1,0)—hilbertSymbol_comm+dyadic_u2vwith the slots swapped.(1,1)— the design move:(2u, 2v) = (2u, −(2u·2v)) = (2u, −uv·2²) = (2u, −uv)(hilbertSymbol_neg_mul_right+ square invariance), landing indyadic_u2vat(−uv, u); theε/ωbookkeeping (ε(−uv) = 1+ε(u)+ε(v),ω(−uv) = ω(u)+ω(v),ε² = ε) is a 16-casedecidein𝔽₂.
Foundations/Axioms.lean exposes the capstone hilbertSymbol_dyadic' under the public theorem name
hilbertSymbol_dyadic.
The two residue-dispatch families #
The (0,0) family: unit·unit symbols follow Serre's formula (u, v)₂ = (−1)^{ε(u)ε(v)}.
Dispatch over the sixteen residue pairs: ≡ 1 slots are freebies, {3,5},{5,5},{5,7} (and swaps)
are B7′-4 witnesses, {3,3},{3,7},{7,7} (and the swap) are B7′-3 decide-leaves.
The (0,1) family: (u, 2v)₂ = (−1)^{ε(u)ε(v) + ω(u)}. Dispatch over the sixteen
residue pairs: u ≡ 1 is free, (3,3),(3,7),(7,1),(7,5) are B7′-4 witnesses, the remaining
eight are B7′-3 decide-leaves.
The capstone #
Serre's dyadic Hilbert-symbol formula (A Course in Arithmetic, Ch. III §1.2, Theorem 1,
p = 2; ε, ω the residue characters of Ch. II §3.3): writing a = 2^α u, b = 2^β v with
u, v ∈ ℤ₂ˣ,
(a, b)₂ = (−1)^{ε(u)ε(v) + α ω(v) + β ω(u)}.
The public statement in Foundations/Axioms.lean is
hilbertSymbol_dyadic := hilbertSymbol_dyadic'. This is proved from the definition of
hilbertSymbol by solvability of a X² + b Y² = Z² — 2-adic Hensel + finite decides, std-3.