Skip to content

Commit 643e3dc

Browse files
committed
topology on an R-module v4: this one might actually work
1 parent cb21f75 commit 643e3dc

File tree

1 file changed

+32
-8
lines changed

1 file changed

+32
-8
lines changed

FLT/HIMExperiments/natural_topology.lean

+32-8
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import Mathlib.Tactic
44
-- next two should be all we need for basic file to compile
55
import Mathlib.Topology.Order
66
import Mathlib.Algebra.Group.Action.Defs
7+
import Mathlib.Algebra.Module.Projective
78

89
/-
910
# An topology for monoid actions.
@@ -87,7 +88,7 @@ protected lemma id : IsActionTopology R R := by
8788
rw [← continuous_iff_coinduced_le]
8889
exact LinearMap.continuous_on_pi φ
8990

90-
lemma pow (n : ℕ) : IsActionTopology R (Fin n → R) := by
91+
instance pow (n : ℕ) : IsActionTopology R (Fin n → R) := by
9192
constructor
9293
apply le_antisymm
9394
· refine le_iSup_of_le n ?_
@@ -137,13 +138,36 @@ section surj
137138
variable {R : Type*} [τR : TopologicalSpace R] [Ring R] [TopologicalRing R]
138139
variable {A : Type*} [AddCommMonoid A] [Module R A] [aA : TopologicalSpace A] [IsActionTopology R A]
139140

140-
lemma surj {n : ℕ} (φ : ((Fin n) → R) →ₗ[R] A) :
141-
TopologicalSpace.coinduced φ inferInstance = actionTopology R A := by
142-
sorry
143-
144-
lemma surj' {n : ℕ} (φ : ((Fin n) → R) →ₗ[R] A) :
145-
TopologicalSpace.induced φ inferInstance = (inferInstance : TopologicalSpace _) := by
146-
sorry
141+
lemma surj {n : ℕ} (φ : ((Fin n) → R) →ₗ[R] A) (hφ : Function.Surjective φ) :
142+
TopologicalSpace.coinduced φ Pi.topologicalSpace = actionTopology R A := by
143+
apply le_antisymm
144+
· rw [← continuous_iff_coinduced_le]
145+
rw [← isActionTopology R A]
146+
fun_prop
147+
· rw [iSup_le_iff]
148+
intro m
149+
rw [iSup_le_iff]
150+
intro ψ
151+
obtain ⟨α, rfl⟩ : ∃ α : (Fin m → R) →ₗ[R] (Fin n → R), φ.comp α = ψ :=
152+
Module.projective_lifting_property _ _ hφ
153+
change TopologicalSpace.coinduced (φ ∘ α) _ ≤ _
154+
rw [← coinduced_compose]
155+
apply coinduced_mono
156+
rw [← continuous_iff_coinduced_le]
157+
fun_prop
158+
159+
-- probably not true
160+
-- lemma surj' {n : ℕ} (φ : ((Fin n) → R) →ₗ[R] A) (hφ : Function.Surjective φ) :
161+
-- TopologicalSpace.induced φ inferInstance = (inferInstance : TopologicalSpace _) := by
162+
-- apply le_antisymm
163+
-- · rw [← continuous_id_iff_le]
164+
-- refine (@continuous_pi_iff (Fin n → R) (Fin n) (fun _ ↦ R) (TopologicalSpace.induced (⇑φ) inferInstance) _ _).2 ?_
165+
-- intro i
166+
-- rw [continuous_iff_le_induced]
167+
-- -- don't think this is provable in general
168+
-- sorry
169+
-- · rw [← continuous_iff_le_induced]
170+
-- fun_prop
147171

148172
end surj
149173

0 commit comments

Comments
 (0)