Paper XI · Lean source
MoritaIndex110.lean
Selected results recorded Coverage and evidence
Compiler/replay evidence is reported for a subset or bounded block. No whole-work coverage is implied.
This viewer reads the retained source; it does not run Lean or assign new claim mappings.
Local imports (4)
PaperXI/MoritaIndex110.lean144 lines
Original source path
formalization/PaperXI/MoritaIndex110.leanSkip declarations and read code
1 import PaperXI.MoritaCornerRank110
2 import PaperXI.MoritaQuotient110
3 import PaperXI.FreeLatticeCard110
4 import PaperXI.MoritaUniformizer110
5 import Mathlib.Algebra.Module.Submodule.Pointwise
6 import Mathlib.GroupTheory.Index
7
8 /-! Actual corner power quotients and the diagonal matrix-lattice index. -/
9 set_option autoImplicit false
10 noncomputable section
11 namespace PaperXI.MoritaIndex110
12 open scoped Pointwise
13 open PaperXI.MoritaLattice110 PaperXI.MoritaCornerRank110
14
15 section PowerQuotient
16 variable {R D : Type*} [CommRing R] [Ring D] [Module R D]
17
18 /-- An ambient left-power subgroup restricted to its actual corner module is
19 exactly the internally defined principal-ideal-power submodule. -/
20 theorem leftPower_addSubgroupOf_eq (φ : R →+* D)
21 (hsmul : ∀ (r : R) (x : D), r • x = φ r * x)
22 (Λ : Submodule R D) (π : R) (u : Dˣ) (hπ : (u : D) = φ π) (n : ℕ) :
23 (leftPower Λ.toAddSubgroup u (n : ℤ)).addSubgroupOf Λ.toAddSubgroup =
24 (((Ideal.span {π}) ^ n) • (⊤ : Submodule R Λ)).toAddSubgroup := by
25 ext x
26 change (x : D) ∈ leftPower Λ.toAddSubgroup u (n : ℤ) ↔
27 x ∈ ((Ideal.span {π}) ^ n) • (⊤ : Submodule R Λ)
28 rw [Submodule.mem_smul_top_iff, Ideal.span_singleton_pow,
29 Submodule.ideal_span_singleton_smul, Submodule.mem_smul_pointwise_iff_exists]
30 simp only [leftPower, AddSubgroup.mem_map]
31 have hp : ((u ^ (n : ℤ) : Dˣ) : D) = φ (π ^ n) := by
32 simp [hπ]
33 constructor
34 · rintro ⟨z, hz, hx⟩
35 change ((u ^ (n : ℤ) : Dˣ) : D) * z = (x : D) at hx
36 exact ⟨z, hz, by simpa only [hsmul, hp] using hx⟩
37 · rintro ⟨z, hz, hx⟩
38 refine ⟨z, hz, ?_⟩
39 change ((u ^ (n : ℤ) : Dˣ) : D) * z = (x : D)
40 simpa only [hsmul, hp] using hx
41
42 /-- The literal ambient-power quotient obtains its cardinality from an actual
43 basis and an actual nonzero prime principal ideal. -/
44 theorem card_leftPower_quotient {ι : Type*} [Fintype ι] [DecidableEq ι]
45 [IsDedekindDomain R] (φ : R →+* D)
46 (hsmul : ∀ (r : R) (x : D), r • x = φ r * x)
47 (Λ : Submodule R D) (b : Module.Basis ι R Λ)
48 (π : R) [(Ideal.span {π} : Ideal R).IsPrime]
49 (hI : (Ideal.span {π} : Ideal R) ≠ ⊥)
50 (u : Dˣ) (hπ : (u : D) = φ π) (n : ℕ) :
51 Nat.card (Λ.toAddSubgroup ⧸
52 (leftPower Λ.toAddSubgroup u (n : ℤ)).addSubgroupOf Λ.toAddSubgroup) =
53 Nat.card (R ⧸ (Ideal.span {π} : Ideal R)) ^ (n * Fintype.card ι) := by
54 rw [leftPower_addSubgroupOf_eq φ hsmul Λ π u hπ n]
55 exact PaperXI.FreeLatticeCard110.card_quotient_prime_pow b
56 (Ideal.span {π}) hI n
57
58 end PowerQuotient
59
60 section ActualDiagonalIndex
61 open Module Matrix ValuativeRel
62 variable (F E : Type*) [Field F] [Field E] [Algebra F E]
63 [Module.Finite F E] [ValuativeRel E] [TopologicalSpace E]
64 [IsNonarchimedeanLocalField E]
65 variable {m : Type*} [Fintype m] [DecidableEq m]
66
67 /-- Multiplication by an actual nonzero integer-ring element, as an invertible
68 F-linear endomorphism of E. -/
69 def coefficientUnit (π : 𝒪[E]) (hπ : (π : E) ≠ 0) : (Module.End F E)ˣ :=
70 Units.map (Algebra.lmul F E).toRingHom (Units.mk0 (π : E) hπ)
71
72 omit [Module.Finite F E] [TopologicalSpace E] [IsNonarchimedeanLocalField E] in
73 @[simp] theorem coefficientUnit_coe (π : 𝒪[E]) (hπ : (π : E) ≠ 0) :
74 (coefficientUnit F E π hπ : Module.End F E) = coefficientMap F E π := rfl
75
76 /-- The cardinality of the actual diagonal intersection is derived from matrix
77 units, radical normalization, a finite full corner, and its residue quotients. -/
78 theorem card_diagonal_intersection
79 (L : Submodule 𝒪[E] (Matrix m m (Module.End F E)))
80 (hL : IsMatrixBimodule (coefficientMap F E) L.toAddSubgroup) (p : m)
81 (hfg : L.FG)
82 (hfull : Submodule.span F (L : Set (Matrix m m (Module.End F E))) = ⊤)
83 (π : 𝒪[E]) (hπirr : Irreducible π) (u : (Module.End F E)ˣ)
84 (hπ : (u : Module.End F E) = coefficientMap F E π)
85 (hu : u ∈ normalizingUnits (corner L.toAddSubgroup p)) (a : m → ℤ) :
86 Nat.card (L.toAddSubgroup ⧸
87 (L.toAddSubgroup ⊓ L.toAddSubgroup.map
88 (unitConjugation (diagonalUnit (fun i => u ^ a i))).toAddMonoidHom).addSubgroupOf
89 L.toAddSubgroup) =
90 Nat.card 𝓀[E] ^ (Module.finrank F E * ∑ i, ∑ j, (a i - a j).toNat) := by
91 let Λ := cornerSubmodule F E L hL p
92 obtain ⟨n, b, hn⟩ := exists_corner_basis_degree F E L hL p hfg hfull
93 let I : Ideal 𝒪[E] := Ideal.span {π}
94 have hI : I ≠ ⊥ := PaperXI.MoritaUniformizer110.uniformizerIdeal_ne_bot π hπirr
95 let : I.IsPrime := PaperXI.MoritaUniformizer110.uniformizerIdeal_isPrime π hπirr
96 have hsmul : ∀ (r : 𝒪[E]) (x : Module.End F E),
97 r • x = coefficientMap F E r * x := by intro r x; ext v; rfl
98 have hcoordinate (k : ℕ) :
99 Nat.card (Λ.toAddSubgroup ⧸
100 (leftPower Λ.toAddSubgroup u (k : ℤ)).addSubgroupOf Λ.toAddSubgroup) =
101 Nat.card 𝓀[E] ^ (k * Module.finrank F E) := by
102 rw [card_leftPower_quotient (coefficientMap F E) hsmul Λ b π hI u hπ k]
103 have hq : Nat.card (𝒪[E] ⧸ (Ideal.span {π} : Ideal 𝒪[E])) = Nat.card 𝓀[E] :=
104 PaperXI.MoritaUniformizer110.card_uniformizer_quotient π hπirr
105 rw [hq]
106 simp [hn]
107 have hbase : L.toAddSubgroup = entrywise (fun _ _ => Λ.toAddSubgroup) := by
108 exact eq_matrix_corner (coefficientMap F E) L.toAddSubgroup hL p
109 rw [intersection_eq_nonnegative_entrywise (coefficientMap F E) L.toAddSubgroup
110 hL p π u hπ hu a]
111 change Nat.card (L.toAddSubgroup ⧸
112 (entrywise (fun i j => leftPower Λ.toAddSubgroup u ((a i - a j).toNat : ℤ))).addSubgroupOf
113 L.toAddSubgroup) = _
114 rw [hbase, PaperXI.MoritaQuotient110.card_matrix_quotient]
115 simp_rw [hcoordinate, Finset.prod_pow_eq_pow_sum]
116 congr 1
117 simp_rw [← Finset.sum_mul]
118 exact Nat.mul_comm _ _
119
120 /-- The original scalar radical-commutation equality supplies the corner
121 normalization used above; it is not an additional index premise. -/
122 theorem diagonal_relIndex_of_radical_commutation
123 (L : Submodule 𝒪[E] (Matrix m m (Module.End F E)))
124 (hL : IsMatrixBimodule (coefficientMap F E) L.toAddSubgroup) (p : m)
125 (hfg : L.FG)
126 (hfull : Submodule.span F (L : Set (Matrix m m (Module.End F E))) = ⊤)
127 (π : 𝒪[E]) (hπirr : Irreducible π) (u : (Module.End F E)ˣ)
128 (hπ : (u : Module.End F E) = coefficientMap F E π)
129 (hcomm : L.toAddSubgroup.map
130 (AddMonoidHom.mulLeft ((diagonalUnit (fun _ : m => u) :
131 (Matrix m m (Module.End F E))ˣ) : Matrix m m (Module.End F E))) =
132 L.toAddSubgroup.map
133 (AddMonoidHom.mulRight ((diagonalUnit (fun _ : m => u) :
134 (Matrix m m (Module.End F E))ˣ) : Matrix m m (Module.End F E))))
135 (a : m → ℤ) :
136 (L.toAddSubgroup ⊓ L.toAddSubgroup.map
137 (unitConjugation (diagonalUnit (fun i => u ^ a i))).toAddMonoidHom).relIndex
138 L.toAddSubgroup =
139 Nat.card 𝓀[E] ^ (Module.finrank F E * ∑ i, ∑ j, (a i - a j).toNat) := by
140 exact card_diagonal_intersection F E L hL p hfg hfull π hπirr u hπ
141 (corner_normalizes_of_scalar_commutation L.toAddSubgroup u p hcomm) a
142
143 end ActualDiagonalIndex
144 end PaperXI.MoritaIndex110
Original file and source record
This copy matches the recorded source file. Its publication here does not change the work’s review status.
SHA-256: 30251babfb354b36cc6f28c150e892b0e244e9046f24d606dd8921245105a9d2
Back to Paper XI: Packets, Arithmetic Realization, and Conditional Comparison