congr
p : ℕ+
K : Type u_1
inst✝⁷ : Field K
inst✝⁶ : NumberField K
inst✝⁵ : IsCyclotomicExtension {p} ℚ K
k : Type u_2
inst✝⁴ : Field k
inst✝³ : NumberField k
hp : (↑p).Prime
G : Type u_3
H : Type u_4
inst✝² : AddCommGroup G
r : ℕ
inst✝¹ : Module.Free ℤ G
hf : finrank ℤ G = r * (↑p - 1)
inst✝ : Module (CyclotomicIntegers ↑p) G
R : ℕ
f : Fin R → G
this : Fact (↑p).Prime := { out := hp }
⊢ Submodule.span ℤ (Set.range fun p_1 => (CyclotomicIntegers.powerBasis ↑p).basis p_1.1 • f p_1.2) =
    Submodule.span ℤ (Set.range fun e => zeta ↑p ^ ↑e.2 • f e.1)
case e_s
p : ℕ+
K : Type u_1
inst✝⁷ : Field K
inst✝⁶ : NumberField K
inst✝⁵ : IsCyclotomicExtension {p} ℚ K
k : Type u_2
inst✝⁴ : Field k
inst✝³ : NumberField k
hp : (↑p).Prime
G : Type u_3
H : Type u_4
inst✝² : AddCommGroup G
r : ℕ
inst✝¹ : Module.Free ℤ G
hf : finrank ℤ G = r * (↑p - 1)
inst✝ : Module (CyclotomicIntegers ↑p) G
R : ℕ
f : Fin R → G
this : Fact (↑p).Prime := { out := hp }
⊢ (Set.range fun p_1 => (CyclotomicIntegers.powerBasis ↑p).basis p_1.1 • f p_1.2) =
    Set.range fun e => zeta ↑p ^ ↑e.2 • f e.1