@@ -20,7 +20,7 @@ suppress_compilation
20
20
21
21
variable (F : Type *) [Field F] [NumberField F]
22
22
23
- variable (D : Type *) [Ring D] [Algebra F D] [FiniteDimensional F D]
23
+ variable (D : Type *) [Ring D] [Algebra F D]
24
24
25
25
open DedekindDomain
26
26
@@ -56,7 +56,7 @@ end missing_instances
56
56
57
57
instance : TopologicalSpace (D ⊗[F] (FiniteAdeleRing (𝓞 F) F)) := actionTopology (FiniteAdeleRing (𝓞 F) F) _
58
58
instance : IsActionTopology (FiniteAdeleRing (𝓞 F) F) (D ⊗[F] (FiniteAdeleRing (𝓞 F) F)) := ⟨rfl⟩
59
- instance : TopologicalRing (D ⊗[F] (FiniteAdeleRing (𝓞 F) F)) :=
59
+ instance [FiniteDimensional F D] : TopologicalRing (D ⊗[F] (FiniteAdeleRing (𝓞 F) F)) :=
60
60
-- this def would be a dangerous instance
61
61
-- (it can't guess R) but it's just a Prop so we can easily add it here
62
62
ActionTopology.Module.topologicalRing (FiniteAdeleRing (𝓞 F) F) _
@@ -93,16 +93,16 @@ attribute [coe] AutomorphicForm.toFun
93
93
theorem ext (φ ψ : AutomorphicForm F D M) (h : ∀ x, φ x = ψ x) : φ = ψ := by
94
94
cases φ; cases ψ; simp only [mk.injEq]; ext; apply h
95
95
96
- def zero : (AutomorphicForm F D M) where
96
+ def zero [FiniteDimensional F D] : (AutomorphicForm F D M) where
97
97
toFun := 0
98
98
left_invt := by simp
99
99
loc_cst := by use ⊤; simp
100
100
101
- instance : Zero (AutomorphicForm F D M) where
101
+ instance [FiniteDimensional F D] : Zero (AutomorphicForm F D M) where
102
102
zero := zero
103
103
104
104
@[simp]
105
- theorem zero_apply (x : (D ⊗[F] (FiniteAdeleRing (𝓞 F) F))ˣ) :
105
+ theorem zero_apply [FiniteDimensional F D] (x : (D ⊗[F] (FiniteAdeleRing (𝓞 F) F))ˣ) :
106
106
(0 : AutomorphicForm F D M) x = 0 := rfl
107
107
108
108
def neg (φ : AutomorphicForm F D M) : AutomorphicForm F D M where
@@ -147,7 +147,7 @@ instance : Add (AutomorphicForm F D M) where
147
147
theorem add_apply (φ ψ : AutomorphicForm F D M) (x : (D ⊗[F] (FiniteAdeleRing (𝓞 F) F))ˣ) :
148
148
(φ + ψ) x = (φ x) + (ψ x) := rfl
149
149
150
- instance addCommGroup : AddCommGroup (AutomorphicForm F D M) where
150
+ instance addCommGroup [FiniteDimensional F D] : AddCommGroup (AutomorphicForm F D M) where
151
151
add := (· + ·)
152
152
add_assoc := by intros; ext; simp [add_assoc];
153
153
zero := 0
@@ -184,7 +184,7 @@ theorem toConjAct_open {G : Type*} [Group G] [TopologicalSpace G] [TopologicalGr
184
184
group
185
185
exact hu
186
186
187
- instance : SMul (Dfx F D) (AutomorphicForm F D M) where
187
+ instance [FiniteDimensional F D] : SMul (Dfx F D) (AutomorphicForm F D M) where
188
188
smul g φ := { -- (g • f) (x) := f(xg) -- x(gf)=(xg)f
189
189
toFun := fun x => φ (x * g)
190
190
left_invt := by
@@ -204,10 +204,10 @@ instance : SMul (Dfx F D) (AutomorphicForm F D M) where
204
204
}
205
205
206
206
@[simp]
207
- theorem sMul_eval (g : Dfx F D) (f : AutomorphicForm F D M) (x : (D ⊗[F] FiniteAdeleRing (𝓞 F) F)ˣ) :
207
+ theorem sMul_eval [FiniteDimensional F D] (g : Dfx F D) (f : AutomorphicForm F D M) (x : (D ⊗[F] FiniteAdeleRing (𝓞 F) F)ˣ) :
208
208
(g • f) x = f (x * g) := rfl
209
209
210
- instance : MulAction (Dfx F D) (AutomorphicForm F D M) where
210
+ instance [FiniteDimensional F D] : MulAction (Dfx F D) (AutomorphicForm F D M) where
211
211
smul := (· • ·)
212
212
one_smul := by intros; ext; simp only [sMul_eval, mul_one]
213
213
mul_smul := by intros; ext; simp only [sMul_eval, mul_assoc]
0 commit comments