@@ -67,6 +67,76 @@ instance Pi.topological_space {β : α → Type v} [t₂ : Πa, topological_spac
6767instance ulift.topological_space [t : topological_space α] : topological_space (ulift.{v u} α) :=
6868t.induced ulift.down
6969
70+ /-!
71+ ### `additive`, `multiplicative`
72+
73+ The topology on those type synonyms is inherited without change.
74+ -/
75+
76+ section
77+ variables [topological_space α]
78+
79+ open additive multiplicative
80+
81+ instance : topological_space (additive α) := ‹topological_space α›
82+ instance : topological_space (multiplicative α) := ‹topological_space α›
83+ instance [discrete_topology α] : discrete_topology (additive α) := ‹discrete_topology α›
84+ instance [discrete_topology α] : discrete_topology (multiplicative α) := ‹discrete_topology α›
85+
86+ lemma continuous_of_mul : continuous (of_mul : α → additive α) := continuous_id
87+ lemma continuous_to_mul : continuous (to_mul : additive α → α) := continuous_id
88+ lemma continuous_of_add : continuous (of_add : α → multiplicative α) := continuous_id
89+ lemma continuous_to_add : continuous (to_add : multiplicative α → α) := continuous_id
90+
91+ lemma is_open_map_of_mul : is_open_map (of_mul : α → additive α) := is_open_map.id
92+ lemma is_open_map_to_mul : is_open_map (to_mul : additive α → α) := is_open_map.id
93+ lemma is_open_map_of_add : is_open_map (of_add : α → multiplicative α) := is_open_map.id
94+ lemma is_open_map_to_add : is_open_map (to_add : multiplicative α → α) := is_open_map.id
95+
96+ lemma is_closed_map_of_mul : is_closed_map (of_mul : α → additive α) := is_closed_map.id
97+ lemma is_closed_map_to_mul : is_closed_map (to_mul : additive α → α) := is_closed_map.id
98+ lemma is_closed_map_of_add : is_closed_map (of_add : α → multiplicative α) := is_closed_map.id
99+ lemma is_closed_map_to_add : is_closed_map (to_add : multiplicative α → α) := is_closed_map.id
100+
101+ local attribute [semireducible] nhds
102+
103+ lemma nhds_of_mul (a : α) : 𝓝 (of_mul a) = map of_mul (𝓝 a) := rfl
104+ lemma nhds_of_add (a : α) : 𝓝 (of_add a) = map of_add (𝓝 a) := rfl
105+ lemma nhds_to_mul (a : additive α) : 𝓝 (to_mul a) = map to_mul (𝓝 a) := rfl
106+ lemma nhds_to_add (a : multiplicative α) : 𝓝 (to_add a) = map to_add (𝓝 a) := rfl
107+
108+ end
109+
110+ /-!
111+ ### Order dual
112+
113+ The topology on this type synonym is inherited without change.
114+ -/
115+
116+ section
117+ variables [topological_space α]
118+
119+ open order_dual
120+
121+ instance : topological_space αᵒᵈ := ‹topological_space α›
122+ instance [discrete_topology α] : discrete_topology (αᵒᵈ) := ‹discrete_topology α›
123+
124+ lemma continuous_to_dual : continuous (to_dual : α → αᵒᵈ) := continuous_id
125+ lemma continuous_of_dual : continuous (of_dual : αᵒᵈ → α) := continuous_id
126+
127+ lemma is_open_map_to_dual : is_open_map (to_dual : α → αᵒᵈ) := is_open_map.id
128+ lemma is_open_map_of_dual : is_open_map (of_dual : αᵒᵈ → α) := is_open_map.id
129+
130+ lemma is_closed_map_to_dual : is_closed_map (to_dual : α → αᵒᵈ) := is_closed_map.id
131+ lemma is_closed_map_of_dual : is_closed_map (of_dual : αᵒᵈ → α) := is_closed_map.id
132+
133+ local attribute [semireducible] nhds
134+
135+ lemma nhds_to_dual (a : α) : 𝓝 (to_dual a) = map to_dual (𝓝 a) := rfl
136+ lemma nhds_of_dual (a : α) : 𝓝 (of_dual a) = map of_dual (𝓝 a) := rfl
137+
138+ end
139+
70140lemma quotient.preimage_mem_nhds [topological_space α] [s : setoid α]
71141 {V : set $ quotient s} {a : α} (hs : V ∈ 𝓝 (quotient.mk a)) : quotient.mk ⁻¹' V ∈ 𝓝 a :=
72142preimage_nhds_coinduced hs
0 commit comments