Paper XI · Lean source
CyclicNormalization113.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 (1)
PaperXI/CyclicNormalization113.lean386 lines
Original source path
formalization/PaperXI/CyclicNormalization113.leanSkip declarations and read code
1 import PaperXI.GlobalHeisenbergBridge112
2 import Mathlib.Data.Int.GCD
3 import Mathlib.GroupTheory.SpecificGroups.Cyclic
4
5 /-! Same-carrier existence and uniqueness of determinant-one cyclic
6 implementers. The full automorphism and prescribed central character are
7 retained. No arithmetic realization or identification of the original kappa
8 is asserted. -/
9 set_option autoImplicit false
10 noncomputable section
11 namespace PaperXI.CyclicNormalization113
12 open Representation GlobalHeisenbergBridge112
13
14 section ScalarCorrection
15 variable {V : Type*} [AddCommGroup V] [Module ℂ V]
16
17 /-- Scalar correction of an actual implementer on its original carrier. -/
18 def scale (c : ℂˣ) (A : V ≃ₗ[ℂ] V) : V ≃ₗ[ℂ] V :=
19 A.trans (LinearEquiv.smulOfUnit c)
20
21 @[simp] theorem scale_apply (c : ℂˣ) (A : V ≃ₗ[ℂ] V) (v : V) :
22 scale c A v = (c : ℂ) • A v := rfl
23
24 @[simp] theorem scale_pow_apply (c : ℂˣ) (A : V ≃ₗ[ℂ] V) (m : ℕ) (v : V) :
25 (scale c A ^ m) v = ((c ^ m : ℂˣ) : ℂ) • (A ^ m) v := by
26 induction m generalizing v with
27 | zero => simp
28 | succ m ih =>
29 rw [pow_succ, LinearEquiv.mul_apply, ih, scale_apply, map_smul]
30 simp only [pow_succ, Units.val_mul, smul_smul, LinearEquiv.mul_apply]
31
32 /-- Bézout gives the unique d-th root among n-torsion scalars. -/
33 theorem scalar_correction_exists (u : ℂˣ) (n d : ℕ)
34 (hcop : Nat.Coprime n d) (hu : u ^ n = 1) :
35 ∃ c : ℂˣ, c ^ n = 1 ∧ c ^ d = u := by
36 refine ⟨u ^ Nat.gcdB n d, ?_, ?_⟩
37 · rw [← zpow_natCast, ← zpow_mul, mul_comm, zpow_mul, zpow_natCast, hu, one_zpow]
38 · have he : (1 : ℤ) = (n : ℤ) * Nat.gcdA n d + (d : ℤ) * Nat.gcdB n d := by
39 simpa only [hcop, Nat.cast_one] using Nat.gcd_eq_gcd_ab n d
40 have hu' : u ^ (n : ℤ) = 1 := by simpa using hu
41 have h := congrArg (fun a : ℤ => u ^ a) he
42 rw [zpow_one, zpow_add, zpow_mul, zpow_mul, hu', one_zpow, one_mul] at h
43 rw [← zpow_natCast, ← zpow_mul, mul_comm, zpow_mul]
44 exact h.symm
45
46 variable [FiniteDimensional ℂ V]
47
48 @[simp] theorem det_scale (c : ℂˣ) (A : V ≃ₗ[ℂ] V) :
49 LinearEquiv.det (scale c A) = c ^ Module.finrank ℂ V * LinearEquiv.det A := by
50 apply Units.ext
51 rw [LinearEquiv.coe_det]
52 have he : (scale c A).toLinearMap = (c : ℂ) • A.toLinearMap := by ext v; rfl
53 rw [he, LinearMap.det_smul]
54 simp only [Units.val_mul, Units.val_pow_eq_pow_val, LinearEquiv.coe_det]
55
56 /-- Every honest cyclic operator has a determinant-one scalar correction
57 when its order is coprime to the dimension. Both operators act on V. -/
58 theorem normalize_honest (A : V ≃ₗ[ℂ] V) (n : ℕ) (hAn : A ^ n = 1)
59 (hcop : Nat.Coprime n (Module.finrank ℂ V)) :
60 ∃ c : ℂˣ, c ^ n = 1 ∧ (scale c A) ^ n = 1 ∧
61 LinearEquiv.det (scale c A) = 1 := by
62 have hd : (LinearEquiv.det A) ^ n = 1 := by
63 rw [← map_pow, hAn, map_one]
64 obtain ⟨c, hcn, hcd⟩ := scalar_correction_exists (LinearEquiv.det A)⁻¹ n
65 (Module.finrank ℂ V) hcop (by rw [inv_pow, hd, inv_one])
66 refine ⟨c, hcn, ?_, ?_⟩
67 · ext v
68 simp only [scale_pow_apply, hcn, Units.val_one, one_smul, hAn]
69 · rw [det_scale, hcd, inv_mul_cancel]
70
71 end ScalarCorrection
72
73 section Implementers
74 variable {P V : Type*} [Group P] [AddCommGroup V] [Module ℂ V]
75
76 /-- The implementer identity propagates to actual powers of the full
77 lifted automorphism, not merely its action on an associated graded space. -/
78 theorem implements_pow (ρ : Representation ℂ P V) (α : MulAut P)
79 (A : V ≃ₗ[ℂ] V)
80 (hA : ∀ p v, A (ρ p v) = ρ (α p) (A v)) (m : ℕ) :
81 ∀ p v, (A ^ m) (ρ p v) = ρ ((α ^ m) p) ((A ^ m) v) := by
82 induction m with
83 | zero => intro p v; rfl
84 | succ m ih =>
85 intro p v
86 change (A ^ m) (A (ρ p v)) = ρ ((α ^ m) (α p)) ((A ^ m) (A v))
87 rw [hA, ih]
88
89 /-- Scalar correction preserves the exact same automorphism identity. -/
90 theorem scale_implements (ρ : Representation ℂ P V) (α : MulAut P)
91 (A : V ≃ₗ[ℂ] V) (c : ℂˣ)
92 (hA : ∀ p v, A (ρ p v) = ρ (α p) (A v)) :
93 ∀ p v, scale c A (ρ p v) = ρ (α p) (scale c A v) := by
94 intro p v
95 simp only [scale_apply, hA, map_smul]
96
97 variable [FiniteDimensional ℂ V]
98
99 /-- The n-th power of an arbitrary invertible implementer is scalar,
100 by Schur. The operator need not initially define an honest cyclic action. -/
101 theorem implementer_power_scalar (ρ : Representation ℂ P V) [IsIrreducible ρ]
102 (α : MulAut P) (A : V ≃ₗ[ℂ] V)
103 (hA : ∀ p v, A (ρ p v) = ρ (α p) (A v))
104 (n : ℕ) (hα : α ^ n = 1) :
105 ∃ z : ℂˣ, ∀ v, (A ^ n) v = (z : ℂ) • v := by
106 apply SchurScalar.commuting_unit ρ (A ^ n)
107 intro p v
108 simpa only [hα, MulAut.one_apply] using implements_pow ρ α A hA n p v
109
110 /-- Nonzero complex scalars admit unit-valued n-th roots. -/
111 theorem unit_nth_root (z : ℂˣ) (n : ℕ) (hn : 0 < n) :
112 ∃ c : ℂˣ, c ^ n = z := by
113 obtain ⟨w, hw⟩ := IsAlgClosed.exists_pow_nat_eq (z : ℂ) hn
114 have hw0 : w ≠ 0 := by
115 intro h
116 rw [h, zero_pow (Nat.ne_of_gt hn)] at hw
117 exact z.ne_zero hw.symm
118 refine ⟨Units.mk0 w hw0, ?_⟩
119 apply Units.ext
120 exact hw
121
122 /-- An arbitrary intertwining operator can be corrected on the same carrier
123 to an honest cyclic action. Only existence uses a complex root. -/
124 theorem normalize_order (ρ : Representation ℂ P V) [IsIrreducible ρ]
125 (α : MulAut P) (A : V ≃ₗ[ℂ] V)
126 (hA : ∀ p v, A (ρ p v) = ρ (α p) (A v))
127 (n : ℕ) (hn : 0 < n) (hα : α ^ n = 1) :
128 ∃ c : ℂˣ, (scale c A) ^ n = 1 ∧
129 ∀ p v, scale c A (ρ p v) = ρ (α p) (scale c A v) := by
130 obtain ⟨z, hz⟩ := implementer_power_scalar ρ α A hA n hα
131 obtain ⟨c, hc⟩ := unit_nth_root z⁻¹ n hn
132 refine ⟨c, ?_, scale_implements ρ α A c hA⟩
133 ext v
134 simp only [scale_pow_apply, hc, hz, smul_smul, ← Units.val_mul,
135 inv_mul_cancel, Units.val_one, one_smul, LinearEquiv.coe_one, id_eq]
136
137 /-- Existence of the canonical normalized generator, obtained from an
138 arbitrary implementer by order correction followed by Bézout determinant
139 correction. The output is still an operator on the original V. -/
140 theorem normalized_generator_exists (ρ : Representation ℂ P V) [IsIrreducible ρ]
141 (α : MulAut P) (A : V ≃ₗ[ℂ] V)
142 (hA : ∀ p v, A (ρ p v) = ρ (α p) (A v))
143 (n : ℕ) (hn : 0 < n) (hα : α ^ n = 1)
144 (hcop : Nat.Coprime n (Module.finrank ℂ V)) :
145 ∃ B : V ≃ₗ[ℂ] V, B ^ n = 1 ∧ LinearEquiv.det B = 1 ∧
146 ∀ p v, B (ρ p v) = ρ (α p) (B v) := by
147 obtain ⟨c, hcn, hcA⟩ := normalize_order ρ α A hA n hn hα
148 obtain ⟨d, _, hdn, hd⟩ := normalize_honest (scale c A) n hcn hcop
149 exact ⟨scale d (scale c A), hdn, hd, scale_implements ρ α (scale c A) d hcA⟩
150
151 /-- Two normalized implementers for the same full automorphism are equal.
152 The scalar ambiguity is killed by the coprime order and determinant powers. -/
153 theorem normalized_generator_unique (ρ : Representation ℂ P V) [IsIrreducible ρ]
154 (α : MulAut P) (A B : V ≃ₗ[ℂ] V)
155 (hA : ∀ p v, A (ρ p v) = ρ (α p) (A v))
156 (hB : ∀ p v, B (ρ p v) = ρ (α p) (B v))
157 (n : ℕ) (hAn : A ^ n = 1) (hBn : B ^ n = 1)
158 (hdetA : LinearEquiv.det A = 1) (hdetB : LinearEquiv.det B = 1)
159 (hcop : Nat.Coprime n (Module.finrank ℂ V)) : A = B := by
160 have he := generator_equivariant_of_det_coprime ρ ρ (LinearEquiv.refl ℂ V)
161 (fun _ _ => rfl) α A B hA hB n hAn hBn (hdetA.trans hdetB.symm) hcop
162 ext v
163 exact he v
164
165 /-- Existence and uniqueness on the original carrier from an arbitrary
166 initial implementer. This proves independence of every root choice. -/
167 theorem normalized_generator_existsUnique (ρ : Representation ℂ P V) [IsIrreducible ρ]
168 (α : MulAut P) (A : V ≃ₗ[ℂ] V)
169 (hA : ∀ p v, A (ρ p v) = ρ (α p) (A v))
170 (n : ℕ) (hn : 0 < n) (hα : α ^ n = 1)
171 (hcop : Nat.Coprime n (Module.finrank ℂ V)) :
172 ∃! B : V ≃ₗ[ℂ] V, B ^ n = 1 ∧ LinearEquiv.det B = 1 ∧
173 ∀ p v, B (ρ p v) = ρ (α p) (B v) := by
174 obtain ⟨B, hBn, hdB, hB⟩ := normalized_generator_exists ρ α A hA n hn hα hcop
175 refine ⟨B, ⟨hBn, hdB, hB⟩, ?_⟩
176 intro C hC
177 exact normalized_generator_unique ρ α C B hC.2.2 hB n hC.1 hBn hC.2.1 hdB hcop
178
179 end Implementers
180
181 section ActualCharacter
182 variable {P V : Type*} [Group P] [Finite P]
183 [AddCommGroup V] [Module ℂ V]
184
185 /-- An automorphism that acts through an actual automorphism of H and
186 preserves its prescribed central character supplies an implementer. Its
187 existence follows from the literal common trace profile, not from a chosen
188 cyclic extension or a presumed target equivalence. -/
189 theorem implementer_of_actual_profile
190 (H : Subgroup P) (θ : H →* ℂˣ)
191 (ρ : Representation ℂ P V) [IsIrreducible ρ]
192 (hρ : ∀ h : H, ρ h = (θ h : ℂ) • LinearMap.id)
193 (hz : ∀ p : P, p ∉ H → Representation.character ρ p = 0)
194 (α : MulAut P) (ζ : MulAut H)
195 (hαH : ∀ h : H, α (h : P) = (ζ h : P))
196 (hθ : ∀ h : H, θ (ζ h) = θ h) :
197 ∃ A : V ≃ₗ[ℂ] V, ∀ p v, A (ρ p v) = ρ (α p) (A v) := by
198 let σ := ρ.comp α.toMonoidHom
199 let : IsIrreducible σ :=
200 (QuotientRepresentation.irreducible_comp_iff α.toMonoidHom α.surjective ρ).mpr
201 inferInstance
202 have hσ : ∀ h : H, σ h = (θ h : ℂ) • LinearMap.id := by
203 intro h
204 change ρ (α (h : P)) = _
205 rw [hαH, hρ, hθ]
206 have hzσ : ∀ p : P, p ∉ H → Representation.character σ p = 0 := by
207 intro p hp
208 change Representation.character ρ (α p) = 0
209 apply hz
210 intro ha
211 obtain ⟨h, hh⟩ := ζ.surjective ⟨α p, ha⟩
212 have he : α (h : P) = α p := (hαH h).trans (congrArg Subtype.val hh)
213 exact hp ((α.injective he) ▸ h.property)
214 obtain ⟨U⟩ := equiv_of_common_profile H θ ρ σ hρ hσ hz hzσ
215 exact ⟨U.toLinearEquiv, U.toIntertwiningMap.isIntertwining⟩
216
217 /-- Exact cyclic canonical-generator existence from actual finite
218 central-character and trace data. Finite dimensionality is derived. -/
219 theorem canonical_generator_of_actual_profile
220 (H : Subgroup P) (θ : H →* ℂˣ)
221 (ρ : Representation ℂ P V) [IsIrreducible ρ]
222 (hρ : ∀ h : H, ρ h = (θ h : ℂ) • LinearMap.id)
223 (hz : ∀ p : P, p ∉ H → Representation.character ρ p = 0)
224 (α : MulAut P) (ζ : MulAut H)
225 (hαH : ∀ h : H, α (h : P) = (ζ h : P))
226 (hθ : ∀ h : H, θ (ζ h) = θ h)
227 (n : ℕ) (hn : 0 < n) (hα : α ^ n = 1)
228 (hcop : Nat.Coprime n (Module.finrank ℂ V)) :
229 ∃! A : V ≃ₗ[ℂ] V, A ^ n = 1 ∧ LinearEquiv.det A = 1 ∧
230 ∀ p v, A (ρ p v) = ρ (α p) (A v) := by
231 let : FiniteDimensional ℂ V := FiniteRepresentation.finiteDimensional ρ
232 obtain ⟨A, hA⟩ := implementer_of_actual_profile H θ ρ hρ hz α ζ hαH hθ
233 exact normalized_generator_existsUnique ρ α A hA n hn hα hcop
234
235 variable {k X : Type*} [Field k] [AddCommGroup X] [Module k X]
236
237 /-- The trace condition itself follows from the original nondegenerate
238 commutator form. No implementer or action normalization is assumed. -/
239 theorem canonical_generator_of_actual_form
240 (H : Subgroup P) [H.Normal] (θ : H →* ℂˣ)
241 (τ : (P ⧸ H) ≃* Multiplicative X)
242 (B : X →ₗ[k] X →ₗ[k] k) (ψ : AddChar k ℂˣ) (hψ : ψ ≠ 1)
243 (hnd : ∀ v : X, (∀ u : X, B u v = 0) → v = 0)
244 (hform : ∀ p q : P, ψ (B (HeisenbergCharacterProfile111.coordinate H τ p)
245 (HeisenbergCharacterProfile111.coordinate H τ q)) =
246 HeisenbergCharacterProfile111.characterCommutator H τ θ p q)
247 (ρ : Representation ℂ P V) [IsIrreducible ρ]
248 (hρ : ∀ h : H, ρ h = (θ h : ℂ) • LinearMap.id)
249 (α : MulAut P) (ζ : MulAut H)
250 (hαH : ∀ h : H, α (h : P) = (ζ h : P))
251 (hθ : ∀ h : H, θ (ζ h) = θ h)
252 (n : ℕ) (hn : 0 < n) (hα : α ^ n = 1)
253 (hcop : Nat.Coprime n (Module.finrank ℂ V)) :
254 ∃! A : V ≃ₗ[ℂ] V, A ^ n = 1 ∧ LinearEquiv.det A = 1 ∧
255 ∀ p v, A (ρ p v) = ρ (α p) (A v) :=
256 canonical_generator_of_actual_profile H θ ρ hρ
257 (HeisenbergCharacterProfile111.trace_support_of_nondegenerate_form
258 H τ θ B ψ hψ hnd hform ρ hρ) α ζ hαH hθ n hn hα hcop
259
260 end ActualCharacter
261
262 section CyclicActions
263 variable {C P V : Type*} [Group C] [Group P]
264 [AddCommGroup V] [Module ℂ V]
265
266 /-- The corrected generator defines an honest action of the original cyclic
267 group C. Its relation is checked against the actual order of c. -/
268 def cyclicAction (c : C) (hgen : ∀ g : C, ∃ m : ℕ, g = c ^ m)
269 (A : V ≃ₗ[ℂ] V) (hA : A ^ orderOf c = 1) : C →* (V ≃ₗ[ℂ] V) :=
270 monoidHomOfForallMemZpowers
271 (fun g => by
272 obtain ⟨m, hm⟩ := hgen g
273 exact Subgroup.mem_zpowers_iff.mpr ⟨(m : ℤ), by simpa using hm.symm⟩)
274 (orderOf_dvd_of_pow_eq_one hA)
275
276 @[simp] theorem cyclicAction_generator (c : C)
277 (hgen : ∀ g : C, ∃ m : ℕ, g = c ^ m)
278 (A : V ≃ₗ[ℂ] V) (hA : A ^ orderOf c = 1) :
279 cyclicAction c hgen A hA c = A := by
280 exact monoidHomOfForallMemZpowers_apply_gen _ _
281
282 variable [FiniteDimensional ℂ V]
283
284 /-- The cyclic canonical extension exists as a homomorphism on the original
285 group C, rather than only as a relation for one generator. -/
286 theorem canonical_action_of_implementer
287 (ρ : Representation ℂ P V) [IsIrreducible ρ]
288 (Ω : C →* MulAut P) (c : C) (hgen : ∀ g : C, ∃ m : ℕ, g = c ^ m)
289 (hn : 0 < orderOf c) (hcop : Nat.Coprime (orderOf c) (Module.finrank ℂ V))
290 (A : V ≃ₗ[ℂ] V) (hA : ∀ p v, A (ρ p v) = ρ (Ω c p) (A v)) :
291 ∃! Λ : C →* (V ≃ₗ[ℂ] V),
292 (∀ g, LinearEquiv.det (Λ g) = 1) ∧
293 (∀ g p v, Λ g (ρ p v) = ρ (Ω g p) (Λ g v)) := by
294 have hΩ : (Ω c) ^ orderOf c = 1 := by rw [← map_pow, pow_orderOf_eq_one, map_one]
295 obtain ⟨B, hBn, hdB, hB⟩ := normalized_generator_exists ρ (Ω c) A hA
296 (orderOf c) hn hΩ hcop
297 let Λ := cyclicAction c hgen B hBn
298 have hΛc : Λ c = B := cyclicAction_generator c hgen B hBn
299 have hdet : ∀ g, LinearEquiv.det (Λ g) = 1 := by
300 intro g
301 obtain ⟨m, rfl⟩ := hgen g
302 rw [map_pow, map_pow, hΛc, hdB, one_pow]
303 have himp : ∀ g p v, Λ g (ρ p v) = ρ (Ω g p) (Λ g v) := by
304 intro g p v
305 obtain ⟨m, rfl⟩ := hgen g
306 rw [map_pow, map_pow, hΛc]
307 exact implements_pow ρ (Ω c) B hB m p v
308 refine ⟨Λ, ⟨hdet, himp⟩, ?_⟩
309 intro Λ' hΛ'
310 have hΛ'n : Λ' c ^ orderOf c = 1 := by rw [← map_pow, pow_orderOf_eq_one, map_one]
311 have he : Λ' c = Λ c := (normalized_generator_unique ρ (Ω c) (Λ' c) B
312 (hΛ'.2 c) hB (orderOf c) hΛ'n hBn (hΛ'.1 c) hdB hcop).trans hΛc.symm
313 ext g
314 obtain ⟨m, rfl⟩ := hgen g
315 rw [map_pow, map_pow, he]
316
317 end CyclicActions
318
319 section CanonicalActualAction
320 variable {C P V : Type*} [Group C] [Group P] [Finite P]
321 [AddCommGroup V] [Module ℂ V]
322
323 /-- A theta-preserving actual cyclic action on the finite group supplies
324 its unique determinant-one action on the original representation carrier. -/
325 theorem canonical_action_of_actual_profile
326 (H : Subgroup P) (θ : H →* ℂˣ)
327 (ρ : Representation ℂ P V) [IsIrreducible ρ]
328 (hρ : ∀ h : H, ρ h = (θ h : ℂ) • LinearMap.id)
329 (hz : ∀ p : P, p ∉ H → Representation.character ρ p = 0)
330 (Ω : C →* MulAut P) (c : C) (hgen : ∀ g : C, ∃ m : ℕ, g = c ^ m)
331 (ζ : MulAut H) (hΩH : ∀ h : H, Ω c (h : P) = (ζ h : P))
332 (hθ : ∀ h : H, θ (ζ h) = θ h)
333 (hn : 0 < orderOf c) (hcop : Nat.Coprime (orderOf c) (Module.finrank ℂ V)) :
334 ∃! Λ : C →* (V ≃ₗ[ℂ] V),
335 (∀ g, LinearEquiv.det (Λ g) = 1) ∧
336 (∀ g p v, Λ g (ρ p v) = ρ (Ω g p) (Λ g v)) := by
337 let : FiniteDimensional ℂ V := FiniteRepresentation.finiteDimensional ρ
338 obtain ⟨A, hA⟩ := implementer_of_actual_profile H θ ρ hρ hz (Ω c) ζ hΩH hθ
339 exact canonical_action_of_implementer ρ Ω c hgen hn hcop A hA
340
341 variable {W : Type*} [AddCommGroup W] [Module ℂ W]
342
343 /-- The original common-profile bridge becomes cyclic equivariant for the
344 newly constructed canonical actions. Neither action nor a target bridge is
345 an input. This is a finite comparison, not an identification with an
346 arithmetic beta-extension whose normalization has not been checked. -/
347 theorem canonical_equivariant_bridge_of_actual_profile
348 (H : Subgroup P) (θ : H →* ℂˣ)
349 (ρ : Representation ℂ P V) (σ : Representation ℂ P W)
350 [IsIrreducible ρ] [IsIrreducible σ]
351 (hρ : ∀ h : H, ρ h = (θ h : ℂ) • LinearMap.id)
352 (hσ : ∀ h : H, σ h = (θ h : ℂ) • LinearMap.id)
353 (hzρ : ∀ p : P, p ∉ H → Representation.character ρ p = 0)
354 (hzσ : ∀ p : P, p ∉ H → Representation.character σ p = 0)
355 (Ω : C →* MulAut P) (c : C) (hgen : ∀ g : C, ∃ m : ℕ, g = c ^ m)
356 (ζ : MulAut H) (hΩH : ∀ h : H, Ω c (h : P) = (ζ h : P))
357 (hθ : ∀ h : H, θ (ζ h) = θ h)
358 (hn : 0 < orderOf c) (hcop : Nat.Coprime (orderOf c) (Module.finrank ℂ V)) :
359 ∃ (Λρ : C →* (V ≃ₗ[ℂ] V)) (Λσ : C →* (W ≃ₗ[ℂ] W))
360 (U : Representation.Equiv ρ σ),
361 (∀ g, LinearEquiv.det (Λρ g) = 1) ∧
362 (∀ g, LinearEquiv.det (Λσ g) = 1) ∧
363 (∀ g p v, Λρ g (ρ p v) = ρ (Ω g p) (Λρ g v)) ∧
364 (∀ g p w, Λσ g (σ p w) = σ (Ω g p) (Λσ g w)) ∧
365 (∀ g v, U (Λρ g v) = Λσ g (U v)) := by
366 let : FiniteDimensional ℂ V := FiniteRepresentation.finiteDimensional ρ
367 let : FiniteDimensional ℂ W := FiniteRepresentation.finiteDimensional σ
368 obtain ⟨U⟩ := equiv_of_common_profile H θ ρ σ hρ hσ hzρ hzσ
369 have hdim : Module.finrank ℂ V = Module.finrank ℂ W := U.toLinearEquiv.finrank_eq
370 obtain ⟨Λρ, hΛρ, _⟩ := canonical_action_of_actual_profile H θ ρ hρ hzρ Ω c hgen ζ hΩH
371 hθ hn hcop
372 obtain ⟨Λσ, hΛσ, _⟩ := canonical_action_of_actual_profile H θ σ hσ hzσ Ω c hgen ζ hΩH
373 hθ hn (hdim ▸ hcop)
374 refine ⟨Λρ, Λσ, U, hΛρ.1, hΛσ.1, hΛρ.2, hΛσ.2, ?_⟩
375 apply cyclic_equivariant_of_generator Λρ Λσ c hgen U.toLinearEquiv
376 apply generator_equivariant_of_det_coprime ρ σ U.toLinearEquiv
377 U.toIntertwiningMap.isIntertwining (Ω c) (Λρ c) (Λσ c) (hΛρ.2 c) (hΛσ.2 c)
378 (orderOf c)
379 · rw [← map_pow, pow_orderOf_eq_one, map_one]
380 · rw [← map_pow, pow_orderOf_eq_one, map_one]
381 · exact (hΛρ.1 c).trans (hΛσ.1 c).symm
382 · exact hcop
383
384 end CanonicalActualAction
385
386 end PaperXI.CyclicNormalization113
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: 607587d94a544d2c4e014d81b21e4c9241d852feddfaa826df57f9715d396ce7
Back to Paper XI: Packets, Arithmetic Realization, and Conditional Comparison