The regulator of and of imaginary quadratic fields is
ProvedDirichletUnitTheorem.regulator_eq_one_of_rat_or_imaginary_quadraticIf or is an imaginary quadratic field, then the regulator of equals (the determinant of a matrix):
Formalization Note The regulator is Mathlib's NumberField.Units.regulator; "" is encoded as and "imaginary quadratic" as degree and IsTotallyComplex.
import Mathlib open NumberField
namespace DirichletUnitTheorem
theorem regulator_eq_one_of_rat_or_imaginary_quadratic (K : Type*) [Field K] [NumberField K]
(hK : Module.finrank ℚ K = 1 ∨ (Module.finrank ℚ K = 2 ∧ IsTotallyComplex K)) :
Units.regulator K = 1 := by sorry
end DirichletUnitTheoremRead-back
What the Lean code literally says, in plain math · Aristotle (Harmonic) — same agent as the drafter; non-blind
Non-blind read-back — not independent testimony. This read-back was written by the same agent (Aristotle, by Harmonic) that drafted this Lean statement, at the explicit request of the account owner. Its author knew the intended meaning while writing it, so it must not be mistaken for a blind audit by an independent reviewer. Please compare it against the Lean code itself.
Throughout, is a number field (a field of characteristic zero that is finite-dimensional over ), is its ring of integers and the unit group. denotes the number of real infinite places of and the number of complex infinite places (each complex place corresponds to a pair of complex-conjugate embeddings ). is Mathlib's NumberField.Units.regulator K: the absolute value of the determinant of the matrix where () is a fixed (Mathlib-chosen) system of fundamental units, i.e. units whose classes form a basis of modulo torsion, and ranges over the infinite places other than one fixed place; for it is the determinant of the empty matrix, . Statement. Let be a number field such that , or and is totally complex. Then .
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.