Skip to content

Commit b9a9e08

Browse files
committed
tidy up right module topology
1 parent f0a135b commit b9a9e08

File tree

1 file changed

+22
-5
lines changed

1 file changed

+22
-5
lines changed

FLT/HIMExperiments/right_module_topology.lean

+22-5
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,9 @@ functions from `M` (now considered only as an index set, so with no topology) to
3535
3636
-/
3737

38+
section noncommutative
3839
-- Let A be a ring, with a compatible topology.
39-
variable (A : Type*) [CommRing A] [TopologicalSpace A] [TopologicalRing A]
40+
variable (A : Type*) [Ring A] [TopologicalSpace A] [TopologicalRing A]
4041

4142

4243
/-- The "right topology" on a module `M` over a topological ring `A`. It's defined as
@@ -73,14 +74,18 @@ def Module.homeomorphism_equiv (e : M ≃ₗ[A] N) :
7374
continuous_invFun := sorry
7475
}
7576

76-
-- Claim: topology on A doesn't change
77-
example : (inferInstance : TopologicalSpace A) = Module.rtopology A A := by
78-
sorry
7977

8078
-- claim: topology on the 1-point set is the canonical one
8179
example : (inferInstance : TopologicalSpace Unit) = Module.rtopology A Unit := by
8280
sorry
8381

82+
-- Anything from this point on *might* need commutative.
83+
-- Just move it to the commutative section and prove it there.
84+
85+
-- Claim: topology on A doesn't change
86+
example : (inferInstance : TopologicalSpace A) = Module.rtopology A A := by
87+
sorry
88+
8489
example :
8590
let _τM : TopologicalSpace M := Module.rtopology A M
8691
let _τN : TopologicalSpace N := Module.rtopology A N
@@ -95,14 +100,24 @@ example (ι : Type*) :
95100
let _τM : TopologicalSpace M := Module.rtopology A M
96101
(inferInstance : TopologicalSpace (ι → M)) = Module.rtopology A (ι → M) := by sorry
97102

103+
end noncommutative
104+
105+
section commutative
106+
107+
-- Let A be a commutative ring, with a compatible topology.
108+
variable (A : Type*) [CommRing A] [TopologicalSpace A] [TopologicalRing A]
109+
-- let `M` and `N` be `A`-modules
110+
variable (M : Type*) [AddCommGroup M] [Module A M]
111+
variable {N : Type*} [AddCommGroup N] [Module A N]
112+
98113
open scoped TensorProduct
99114
lemma Module.continuous_bilinear :
100115
let _τM : TopologicalSpace M := Module.rtopology A _
101116
let _τN : TopologicalSpace N := Module.rtopology A _
102117
let _τMN : TopologicalSpace (M ⊗[A] N) := Module.rtopology A _
103118
Continuous (fun (mn : M × N) ↦ mn.1 ⊗ₜ mn.2 : M × N → M ⊗[A] N) := by sorry
104119

105-
-- Now say we have a non-commutative `A`-algebra `D` which is free of finite type.
120+
-- Now say we have a (not necessarily commutative) `A`-algebra `D` which is free of finite type.
106121

107122
-- are all these assumptions needed?
108123
variable (D : Type*) [Ring D] [Algebra A D] [Module.Finite A D] [Module.Free A D]
@@ -116,3 +131,5 @@ instance Module.topologicalRing : @TopologicalRing D (Module.rtopology A D) _ :=
116131
sorry
117132
continuous_neg := by
118133
sorry }
134+
135+
end commutative

0 commit comments

Comments
 (0)