topology.sets.closeds
⟷
Mathlib.Topology.Sets.Closeds
The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(last sync)
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -302,7 +302,7 @@ theorem Closeds.isAtom_iff [T1Space α] {s : Closeds α} : IsAtom s ↔ ∃ x, s
refine' closeds.gi.is_atom_iff' rfl (fun t ht => _) s
obtain ⟨x, rfl⟩ := t.is_atom_iff.mp ht
exact closure_singleton
- simpa only [← this, (s : Set α).isAtom_iff, SetLike.ext_iff, Set.ext_iff]
+ simpa only [← this, (s : Set α).isAtom_iff_le_of_ge, SetLike.ext_iff, Set.ext_iff]
#align topological_space.closeds.is_atom_iff TopologicalSpace.Closeds.isAtom_iff
-/
@@ -315,7 +315,7 @@ theorem Opens.isCoatom_iff [T1Space α] {s : Opens α} :
by
rw [← s.compl_compl, ← isAtom_dual_iff_isCoatom]
change IsAtom (closeds.compl_order_iso α s.compl) ↔ _
- rw [(closeds.compl_order_iso α).isAtom_iff, closeds.is_atom_iff]
+ rw [(closeds.compl_order_iso α).isAtom_iff_le_of_ge, closeds.is_atom_iff]
trace
"./././Mathport/Syntax/Translate/Tactic/Builtin.lean:73:14: unsupported tactic `congrm #[[expr «expr∃ , »((x), _)]]"
exact closeds.compl_bijective.injective.eq_iff.symm
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -339,17 +339,17 @@ instance : SetLike (Clopens α) α where
coe s := s.carrier
coe_injective' s t h := by cases s; cases t; congr
-#print TopologicalSpace.Clopens.clopen /-
-theorem clopen (s : Clopens α) : IsClopen (s : Set α) :=
+#print TopologicalSpace.Clopens.isClopen /-
+theorem isClopen (s : Clopens α) : IsClopen (s : Set α) :=
s.clopen'
-#align topological_space.clopens.clopen TopologicalSpace.Clopens.clopen
+#align topological_space.clopens.clopen TopologicalSpace.Clopens.isClopen
-/
#print TopologicalSpace.Clopens.toOpens /-
/-- Reinterpret a compact open as an open. -/
@[simps]
def toOpens (s : Clopens α) : Opens α :=
- ⟨s, s.clopen.IsOpen⟩
+ ⟨s, s.isClopen.IsOpen⟩
#align topological_space.clopens.to_opens TopologicalSpace.Clopens.toOpens
-/
@@ -368,10 +368,10 @@ theorem coe_mk (s : Set α) (h) : (mk s h : Set α) = s :=
-/
instance : Sup (Clopens α) :=
- ⟨fun s t => ⟨s ∪ t, s.clopen.union t.clopen⟩⟩
+ ⟨fun s t => ⟨s ∪ t, s.isClopen.union t.isClopen⟩⟩
instance : Inf (Clopens α) :=
- ⟨fun s t => ⟨s ∩ t, s.clopen.inter t.clopen⟩⟩
+ ⟨fun s t => ⟨s ∩ t, s.isClopen.inter t.isClopen⟩⟩
instance : Top (Clopens α) :=
⟨⟨⊤, isClopen_univ⟩⟩
@@ -380,10 +380,10 @@ instance : Bot (Clopens α) :=
⟨⟨⊥, isClopen_empty⟩⟩
instance : SDiff (Clopens α) :=
- ⟨fun s t => ⟨s \ t, s.clopen.diffₓ t.clopen⟩⟩
+ ⟨fun s t => ⟨s \ t, s.isClopen.diffₓ t.isClopen⟩⟩
instance : HasCompl (Clopens α) :=
- ⟨fun s => ⟨sᶜ, s.clopen.compl⟩⟩
+ ⟨fun s => ⟨sᶜ, s.isClopen.compl⟩⟩
instance : BooleanAlgebra (Clopens α) :=
SetLike.coe_injective.BooleanAlgebra _ (fun _ _ => rfl) (fun _ _ => rfl) rfl rfl (fun _ => rfl)
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,7 +3,7 @@ Copyright (c) 2020 Floris van Doorn. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Floris van Doorn, Yaël Dillies
-/
-import Mathbin.Topology.Sets.Opens
+import Topology.Sets.Opens
#align_import topology.sets.closeds from "leanprover-community/mathlib"@"34ee86e6a59d911a8e4f89b68793ee7577ae79c7"
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,14 +2,11 @@
Copyright (c) 2020 Floris van Doorn. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Floris van Doorn, Yaël Dillies
-
-! This file was ported from Lean 3 source module topology.sets.closeds
-! leanprover-community/mathlib commit 34ee86e6a59d911a8e4f89b68793ee7577ae79c7
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.Topology.Sets.Opens
+#align_import topology.sets.closeds from "leanprover-community/mathlib"@"34ee86e6a59d911a8e4f89b68793ee7577ae79c7"
+
/-!
# Closed sets
mathlib commit https://github.com/leanprover-community/mathlib/commit/9fb8964792b4237dac6200193a0d533f1b3f7423
@@ -78,10 +78,13 @@ protected def closure (s : Set α) : Closeds α :=
#align topological_space.closeds.closure TopologicalSpace.Closeds.closure
-/
+#print TopologicalSpace.Closeds.gc /-
theorem gc : GaloisConnection Closeds.closure (coe : Closeds α → Set α) := fun s U =>
⟨subset_closure.trans, fun h => closure_minimal h U.closed⟩
#align topological_space.closeds.gc TopologicalSpace.Closeds.gc
+-/
+#print TopologicalSpace.Closeds.gi /-
/-- The galois coinsertion between sets and opens. -/
def gi : GaloisInsertion (@Closeds.closure α _) coe
where
@@ -90,6 +93,7 @@ def gi : GaloisInsertion (@Closeds.closure α _) coe
le_l_u _ := subset_closure
choice_eq s hs := SetLike.coe_injective <| subset_closure.antisymm hs
#align topological_space.closeds.gi TopologicalSpace.Closeds.gi
+-/
instance : CompleteLattice (Closeds α) :=
CompleteLattice.copy
@@ -116,67 +120,91 @@ instance : CompleteLattice (Closeds α) :=
instance : Inhabited (Closeds α) :=
⟨⊥⟩
+#print TopologicalSpace.Closeds.coe_sup /-
@[simp, norm_cast]
theorem coe_sup (s t : Closeds α) : (↑(s ⊔ t) : Set α) = s ∪ t :=
rfl
#align topological_space.closeds.coe_sup TopologicalSpace.Closeds.coe_sup
+-/
+#print TopologicalSpace.Closeds.coe_inf /-
@[simp, norm_cast]
theorem coe_inf (s t : Closeds α) : (↑(s ⊓ t) : Set α) = s ∩ t :=
rfl
#align topological_space.closeds.coe_inf TopologicalSpace.Closeds.coe_inf
+-/
+#print TopologicalSpace.Closeds.coe_top /-
@[simp, norm_cast]
theorem coe_top : (↑(⊤ : Closeds α) : Set α) = univ :=
rfl
#align topological_space.closeds.coe_top TopologicalSpace.Closeds.coe_top
+-/
+#print TopologicalSpace.Closeds.coe_bot /-
@[simp, norm_cast]
theorem coe_bot : (↑(⊥ : Closeds α) : Set α) = ∅ :=
rfl
#align topological_space.closeds.coe_bot TopologicalSpace.Closeds.coe_bot
+-/
+#print TopologicalSpace.Closeds.coe_sInf /-
@[simp, norm_cast]
theorem coe_sInf {S : Set (Closeds α)} : (↑(sInf S) : Set α) = ⋂ i ∈ S, ↑i :=
rfl
#align topological_space.closeds.coe_Inf TopologicalSpace.Closeds.coe_sInf
+-/
+#print TopologicalSpace.Closeds.coe_finset_sup /-
@[simp, norm_cast]
theorem coe_finset_sup (f : ι → Closeds α) (s : Finset ι) :
(↑(s.sup f) : Set α) = s.sup (coe ∘ f) :=
map_finset_sup (⟨⟨coe, coe_sup⟩, coe_bot⟩ : SupBotHom (Closeds α) (Set α)) _ _
#align topological_space.closeds.coe_finset_sup TopologicalSpace.Closeds.coe_finset_sup
+-/
+#print TopologicalSpace.Closeds.coe_finset_inf /-
@[simp, norm_cast]
theorem coe_finset_inf (f : ι → Closeds α) (s : Finset ι) :
(↑(s.inf f) : Set α) = s.inf (coe ∘ f) :=
map_finset_inf (⟨⟨coe, coe_inf⟩, coe_top⟩ : InfTopHom (Closeds α) (Set α)) _ _
#align topological_space.closeds.coe_finset_inf TopologicalSpace.Closeds.coe_finset_inf
+-/
+#print TopologicalSpace.Closeds.iInf_def /-
theorem iInf_def {ι} (s : ι → Closeds α) :
(⨅ i, s i) = ⟨⋂ i, s i, isClosed_iInter fun i => (s i).2⟩ := by ext;
simp only [iInf, coe_Inf, bInter_range]; rfl
#align topological_space.closeds.infi_def TopologicalSpace.Closeds.iInf_def
+-/
+#print TopologicalSpace.Closeds.iInf_mk /-
@[simp]
theorem iInf_mk {ι} (s : ι → Set α) (h : ∀ i, IsClosed (s i)) :
(⨅ i, ⟨s i, h i⟩ : Closeds α) = ⟨⋂ i, s i, isClosed_iInter h⟩ := by simp [infi_def]
#align topological_space.closeds.infi_mk TopologicalSpace.Closeds.iInf_mk
+-/
+#print TopologicalSpace.Closeds.coe_iInf /-
@[simp, norm_cast]
theorem coe_iInf {ι} (s : ι → Closeds α) : ((⨅ i, s i : Closeds α) : Set α) = ⋂ i, s i := by
simp [infi_def]
#align topological_space.closeds.coe_infi TopologicalSpace.Closeds.coe_iInf
+-/
+#print TopologicalSpace.Closeds.mem_iInf /-
@[simp]
theorem mem_iInf {ι} {x : α} {s : ι → Closeds α} : x ∈ iInf s ↔ ∀ i, x ∈ s i := by
simp [← SetLike.mem_coe]
#align topological_space.closeds.mem_infi TopologicalSpace.Closeds.mem_iInf
+-/
+#print TopologicalSpace.Closeds.mem_sInf /-
@[simp]
theorem mem_sInf {S : Set (Closeds α)} {x : α} : x ∈ sInf S ↔ ∀ s ∈ S, x ∈ s := by
simp_rw [sInf_eq_iInf, mem_infi]
#align topological_space.closeds.mem_Inf TopologicalSpace.Closeds.mem_sInf
+-/
instance : Coframe (Closeds α) :=
{ Closeds.completeLattice with
@@ -236,6 +264,7 @@ theorem Opens.compl_bijective : Function.Bijective (@Opens.compl α _) :=
variable (α)
+#print TopologicalSpace.Closeds.complOrderIso /-
/-- `closeds.compl` as an `order_iso` to the order dual of `opens α`. -/
@[simps]
def Closeds.complOrderIso : Closeds α ≃o (Opens α)ᵒᵈ
@@ -248,7 +277,9 @@ def Closeds.complOrderIso : Closeds α ≃o (Opens α)ᵒᵈ
simpa only [Equiv.coe_fn_mk, Function.comp_apply, OrderDual.toDual_le_toDual] using
compl_subset_compl
#align topological_space.closeds.compl_order_iso TopologicalSpace.Closeds.complOrderIso
+-/
+#print TopologicalSpace.Opens.complOrderIso /-
/-- `opens.compl` as an `order_iso` to the order dual of `closeds α`. -/
@[simps]
def Opens.complOrderIso : Opens α ≃o (Closeds α)ᵒᵈ
@@ -261,9 +292,11 @@ def Opens.complOrderIso : Opens α ≃o (Closeds α)ᵒᵈ
simpa only [Equiv.coe_fn_mk, Function.comp_apply, OrderDual.toDual_le_toDual] using
compl_subset_compl
#align topological_space.opens.compl_order_iso TopologicalSpace.Opens.complOrderIso
+-/
variable {α}
+#print TopologicalSpace.Closeds.isAtom_iff /-
/-- in a `t1_space`, atoms of `closeds α` are precisely the `closeds.singleton`s. -/
theorem Closeds.isAtom_iff [T1Space α] {s : Closeds α} : IsAtom s ↔ ∃ x, s = Closeds.singleton x :=
by
@@ -274,8 +307,10 @@ theorem Closeds.isAtom_iff [T1Space α] {s : Closeds α} : IsAtom s ↔ ∃ x, s
exact closure_singleton
simpa only [← this, (s : Set α).isAtom_iff, SetLike.ext_iff, Set.ext_iff]
#align topological_space.closeds.is_atom_iff TopologicalSpace.Closeds.isAtom_iff
+-/
/- ./././Mathport/Syntax/Translate/Tactic/Builtin.lean:73:14: unsupported tactic `congrm #[[expr «expr∃ , »((x), _)]] -/
+#print TopologicalSpace.Opens.isCoatom_iff /-
/-- in a `t1_space`, coatoms of `opens α` are precisely complements of singletons:
`(closeds.singleton x).compl`. -/
theorem Opens.isCoatom_iff [T1Space α] {s : Opens α} :
@@ -288,6 +323,7 @@ theorem Opens.isCoatom_iff [T1Space α] {s : Opens α} :
"./././Mathport/Syntax/Translate/Tactic/Builtin.lean:73:14: unsupported tactic `congrm #[[expr «expr∃ , »((x), _)]]"
exact closeds.compl_bijective.injective.eq_iff.symm
#align topological_space.opens.is_coatom_iff TopologicalSpace.Opens.isCoatom_iff
+-/
/-! ### Clopen sets -/
@@ -356,35 +392,47 @@ instance : BooleanAlgebra (Clopens α) :=
SetLike.coe_injective.BooleanAlgebra _ (fun _ _ => rfl) (fun _ _ => rfl) rfl rfl (fun _ => rfl)
fun _ _ => rfl
+#print TopologicalSpace.Clopens.coe_sup /-
@[simp]
theorem coe_sup (s t : Clopens α) : (↑(s ⊔ t) : Set α) = s ∪ t :=
rfl
#align topological_space.clopens.coe_sup TopologicalSpace.Clopens.coe_sup
+-/
+#print TopologicalSpace.Clopens.coe_inf /-
@[simp]
theorem coe_inf (s t : Clopens α) : (↑(s ⊓ t) : Set α) = s ∩ t :=
rfl
#align topological_space.clopens.coe_inf TopologicalSpace.Clopens.coe_inf
+-/
+#print TopologicalSpace.Clopens.coe_top /-
@[simp]
theorem coe_top : (↑(⊤ : Clopens α) : Set α) = univ :=
rfl
#align topological_space.clopens.coe_top TopologicalSpace.Clopens.coe_top
+-/
+#print TopologicalSpace.Clopens.coe_bot /-
@[simp]
theorem coe_bot : (↑(⊥ : Clopens α) : Set α) = ∅ :=
rfl
#align topological_space.clopens.coe_bot TopologicalSpace.Clopens.coe_bot
+-/
+#print TopologicalSpace.Clopens.coe_sdiff /-
@[simp]
theorem coe_sdiff (s t : Clopens α) : (↑(s \ t) : Set α) = s \ t :=
rfl
#align topological_space.clopens.coe_sdiff TopologicalSpace.Clopens.coe_sdiff
+-/
+#print TopologicalSpace.Clopens.coe_compl /-
@[simp]
theorem coe_compl (s : Clopens α) : (↑(sᶜ) : Set α) = sᶜ :=
rfl
#align topological_space.clopens.coe_compl TopologicalSpace.Clopens.coe_compl
+-/
instance : Inhabited (Clopens α) :=
⟨⊥⟩
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -78,22 +78,10 @@ protected def closure (s : Set α) : Closeds α :=
#align topological_space.closeds.closure TopologicalSpace.Closeds.closure
-/
-/- warning: topological_space.closeds.gc -> TopologicalSpace.Closeds.gc is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α], GaloisConnection.{u1, u1} (Set.{u1} α) (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (Set.{u1} α) (CompleteSemilatticeInf.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.completeBooleanAlgebra.{u1} α))))))) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1))) (TopologicalSpace.Closeds.closure.{u1} α _inst_1) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α], GaloisConnection.{u1, u1} (Set.{u1} α) (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (Set.{u1} α) (CompleteSemilatticeInf.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α))))))) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.instPartialOrder.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1))) (TopologicalSpace.Closeds.closure.{u1} α _inst_1) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.gc TopologicalSpace.Closeds.gcₓ'. -/
theorem gc : GaloisConnection Closeds.closure (coe : Closeds α → Set α) := fun s U =>
⟨subset_closure.trans, fun h => closure_minimal h U.closed⟩
#align topological_space.closeds.gc TopologicalSpace.Closeds.gc
-/- warning: topological_space.closeds.gi -> TopologicalSpace.Closeds.gi is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α], GaloisInsertion.{u1, u1} (Set.{u1} α) (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (Set.{u1} α) (CompleteSemilatticeInf.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.completeBooleanAlgebra.{u1} α))))))) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1))) (TopologicalSpace.Closeds.closure.{u1} α _inst_1) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α], GaloisInsertion.{u1, u1} (Set.{u1} α) (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (Set.{u1} α) (CompleteSemilatticeInf.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.instCompleteBooleanAlgebraSet.{u1} α))))))) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.instPartialOrder.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1))) (TopologicalSpace.Closeds.closure.{u1} α _inst_1) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.gi TopologicalSpace.Closeds.giₓ'. -/
/-- The galois coinsertion between sets and opens. -/
def gi : GaloisInsertion (@Closeds.closure α _) coe
where
@@ -128,135 +116,63 @@ instance : CompleteLattice (Closeds α) :=
instance : Inhabited (Closeds α) :=
⟨⊥⟩
-/- warning: topological_space.closeds.coe_sup -> TopologicalSpace.Closeds.coe_sup is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Closeds.{u1} α _inst_1) (t : TopologicalSpace.Closeds.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (Sup.sup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SemilatticeSup.toHasSup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Lattice.toSemilatticeSup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))))) s t)) (Union.union.{u1} (Set.{u1} α) (Set.hasUnion.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) s) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) t))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Closeds.{u1} α _inst_1) (t : TopologicalSpace.Closeds.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (Sup.sup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SemilatticeSup.toSup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Lattice.toSemilatticeSup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))))) s t)) (Union.union.{u1} (Set.{u1} α) (Set.instUnionSet.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) s) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) t))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.coe_sup TopologicalSpace.Closeds.coe_supₓ'. -/
@[simp, norm_cast]
theorem coe_sup (s t : Closeds α) : (↑(s ⊔ t) : Set α) = s ∪ t :=
rfl
#align topological_space.closeds.coe_sup TopologicalSpace.Closeds.coe_sup
-/- warning: topological_space.closeds.coe_inf -> TopologicalSpace.Closeds.coe_inf is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Closeds.{u1} α _inst_1) (t : TopologicalSpace.Closeds.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (Inf.inf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SemilatticeInf.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Lattice.toSemilatticeInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))))) s t)) (Inter.inter.{u1} (Set.{u1} α) (Set.hasInter.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) s) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) t))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Closeds.{u1} α _inst_1) (t : TopologicalSpace.Closeds.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (Inf.inf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Lattice.toInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1)))) s t)) (Inter.inter.{u1} (Set.{u1} α) (Set.instInterSet.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) s) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) t))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.coe_inf TopologicalSpace.Closeds.coe_infₓ'. -/
@[simp, norm_cast]
theorem coe_inf (s t : Closeds α) : (↑(s ⊓ t) : Set α) = s ∩ t :=
rfl
#align topological_space.closeds.coe_inf TopologicalSpace.Closeds.coe_inf
-/- warning: topological_space.closeds.coe_top -> TopologicalSpace.Closeds.coe_top is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α], Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (Top.top.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toHasTop.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1)))) (Set.univ.{u1} α)
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α], Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (Top.top.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toTop.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1)))) (Set.univ.{u1} α)
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.coe_top TopologicalSpace.Closeds.coe_topₓ'. -/
@[simp, norm_cast]
theorem coe_top : (↑(⊤ : Closeds α) : Set α) = univ :=
rfl
#align topological_space.closeds.coe_top TopologicalSpace.Closeds.coe_top
-/- warning: topological_space.closeds.coe_bot -> TopologicalSpace.Closeds.coe_bot is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α], Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (Bot.bot.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toHasBot.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1)))) (EmptyCollection.emptyCollection.{u1} (Set.{u1} α) (Set.hasEmptyc.{u1} α))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α], Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (Bot.bot.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toBot.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1)))) (EmptyCollection.emptyCollection.{u1} (Set.{u1} α) (Set.instEmptyCollectionSet.{u1} α))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.coe_bot TopologicalSpace.Closeds.coe_botₓ'. -/
@[simp, norm_cast]
theorem coe_bot : (↑(⊥ : Closeds α) : Set α) = ∅ :=
rfl
#align topological_space.closeds.coe_bot TopologicalSpace.Closeds.coe_bot
-/- warning: topological_space.closeds.coe_Inf -> TopologicalSpace.Closeds.coe_sInf is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {S : Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)}, Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (InfSet.sInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) S)) (Set.iInter.{u1, succ u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (fun (i : TopologicalSpace.Closeds.{u1} α _inst_1) => Set.iInter.{u1, 0} α (Membership.Mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.hasMem.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) i S) (fun (H : Membership.Mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.hasMem.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) i S) => (fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) i)))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {S : Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)}, Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (InfSet.sInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) S)) (Set.iInter.{u1, succ u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (fun (i : TopologicalSpace.Closeds.{u1} α _inst_1) => Set.iInter.{u1, 0} α (Membership.mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.instMembershipSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) i S) (fun (H : Membership.mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.instMembershipSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) i S) => SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) i)))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.coe_Inf TopologicalSpace.Closeds.coe_sInfₓ'. -/
@[simp, norm_cast]
theorem coe_sInf {S : Set (Closeds α)} : (↑(sInf S) : Set α) = ⋂ i ∈ S, ↑i :=
rfl
#align topological_space.closeds.coe_Inf TopologicalSpace.Closeds.coe_sInf
-/- warning: topological_space.closeds.coe_finset_sup -> TopologicalSpace.Closeds.coe_finset_sup is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : TopologicalSpace.{u2} α] (f : ι -> (TopologicalSpace.Closeds.{u2} α _inst_1)) (s : Finset.{u1} ι), Eq.{succ u2} (Set.{u2} α) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (HasLiftT.mk.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (CoeTCₓ.coe.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (SetLike.Set.hasCoeT.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u2} α _inst_1)))) (Finset.sup.{u2, u1} (TopologicalSpace.Closeds.{u2} α _inst_1) ι (Lattice.toSemilatticeSup.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1)))) (BoundedOrder.toOrderBot.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Preorder.toHasLe.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (PartialOrder.toPreorder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (SemilatticeSup.toPartialOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Lattice.toSemilatticeSup.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1))))))) (CompleteLattice.toBoundedOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1))) s f)) (Finset.sup.{u2, u1} (Set.{u2} α) ι (Lattice.toSemilatticeSup.{u2} (Set.{u2} α) (ConditionallyCompleteLattice.toLattice.{u2} (Set.{u2} α) (CompleteLattice.toConditionallyCompleteLattice.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.completeBooleanAlgebra.{u2} α))))))) (GeneralizedBooleanAlgebra.toOrderBot.{u2} (Set.{u2} α) (BooleanAlgebra.toGeneralizedBooleanAlgebra.{u2} (Set.{u2} α) (Set.booleanAlgebra.{u2} α))) s (Function.comp.{succ u1, succ u2, succ u2} ι (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (HasLiftT.mk.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (CoeTCₓ.coe.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (SetLike.Set.hasCoeT.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u2} α _inst_1))))) f))
-but is expected to have type
- forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : TopologicalSpace.{u2} α] (f : ι -> (TopologicalSpace.Closeds.{u2} α _inst_1)) (s : Finset.{u1} ι), Eq.{succ u2} (Set.{u2} α) (SetLike.coe.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u2} α _inst_1) (Finset.sup.{u2, u1} (TopologicalSpace.Closeds.{u2} α _inst_1) ι (Lattice.toSemilatticeSup.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u2} α _inst_1)))) (BoundedOrder.toOrderBot.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Preorder.toLE.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (PartialOrder.toPreorder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (SemilatticeSup.toPartialOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Lattice.toSemilatticeSup.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u2} α _inst_1))))))) (CompleteLattice.toBoundedOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u2} α _inst_1))) s f)) (Finset.sup.{u2, u1} (Set.{u2} α) ι (Lattice.toSemilatticeSup.{u2} (Set.{u2} α) (ConditionallyCompleteLattice.toLattice.{u2} (Set.{u2} α) (CompleteLattice.toConditionallyCompleteLattice.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α))))))) (BoundedOrder.toOrderBot.{u2} (Set.{u2} α) (Preorder.toLE.{u2} (Set.{u2} α) (PartialOrder.toPreorder.{u2} (Set.{u2} α) (SemilatticeSup.toPartialOrder.{u2} (Set.{u2} α) (Lattice.toSemilatticeSup.{u2} (Set.{u2} α) (ConditionallyCompleteLattice.toLattice.{u2} (Set.{u2} α) (CompleteLattice.toConditionallyCompleteLattice.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α)))))))))) (CompleteLattice.toBoundedOrder.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α)))))) s (Function.comp.{succ u1, succ u2, succ u2} ι (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (SetLike.coe.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u2} α _inst_1)) f))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.coe_finset_sup TopologicalSpace.Closeds.coe_finset_supₓ'. -/
@[simp, norm_cast]
theorem coe_finset_sup (f : ι → Closeds α) (s : Finset ι) :
(↑(s.sup f) : Set α) = s.sup (coe ∘ f) :=
map_finset_sup (⟨⟨coe, coe_sup⟩, coe_bot⟩ : SupBotHom (Closeds α) (Set α)) _ _
#align topological_space.closeds.coe_finset_sup TopologicalSpace.Closeds.coe_finset_sup
-/- warning: topological_space.closeds.coe_finset_inf -> TopologicalSpace.Closeds.coe_finset_inf is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : TopologicalSpace.{u2} α] (f : ι -> (TopologicalSpace.Closeds.{u2} α _inst_1)) (s : Finset.{u1} ι), Eq.{succ u2} (Set.{u2} α) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (HasLiftT.mk.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (CoeTCₓ.coe.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (SetLike.Set.hasCoeT.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u2} α _inst_1)))) (Finset.inf.{u2, u1} (TopologicalSpace.Closeds.{u2} α _inst_1) ι (Lattice.toSemilatticeInf.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1)))) (BoundedOrder.toOrderTop.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Preorder.toHasLe.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (PartialOrder.toPreorder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (SemilatticeInf.toPartialOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Lattice.toSemilatticeInf.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1))))))) (CompleteLattice.toBoundedOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1))) s f)) (Finset.inf.{u2, u1} (Set.{u2} α) ι (Lattice.toSemilatticeInf.{u2} (Set.{u2} α) (ConditionallyCompleteLattice.toLattice.{u2} (Set.{u2} α) (CompleteLattice.toConditionallyCompleteLattice.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.completeBooleanAlgebra.{u2} α))))))) (Set.orderTop.{u2} α) s (Function.comp.{succ u1, succ u2, succ u2} ι (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (HasLiftT.mk.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (CoeTCₓ.coe.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (SetLike.Set.hasCoeT.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u2} α _inst_1))))) f))
-but is expected to have type
- forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : TopologicalSpace.{u2} α] (f : ι -> (TopologicalSpace.Closeds.{u2} α _inst_1)) (s : Finset.{u1} ι), Eq.{succ u2} (Set.{u2} α) (SetLike.coe.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u2} α _inst_1) (Finset.inf.{u2, u1} (TopologicalSpace.Closeds.{u2} α _inst_1) ι (Lattice.toSemilatticeInf.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u2} α _inst_1)))) (BoundedOrder.toOrderTop.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Preorder.toLE.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (PartialOrder.toPreorder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (SemilatticeInf.toPartialOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Lattice.toSemilatticeInf.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u2} α _inst_1))))))) (CompleteLattice.toBoundedOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u2} α _inst_1))) s f)) (Finset.inf.{u2, u1} (Set.{u2} α) ι (Lattice.toSemilatticeInf.{u2} (Set.{u2} α) (ConditionallyCompleteLattice.toLattice.{u2} (Set.{u2} α) (CompleteLattice.toConditionallyCompleteLattice.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α))))))) (Set.instOrderTopSetInstLESet.{u2} α) s (Function.comp.{succ u1, succ u2, succ u2} ι (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (SetLike.coe.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u2} α _inst_1)) f))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.coe_finset_inf TopologicalSpace.Closeds.coe_finset_infₓ'. -/
@[simp, norm_cast]
theorem coe_finset_inf (f : ι → Closeds α) (s : Finset ι) :
(↑(s.inf f) : Set α) = s.inf (coe ∘ f) :=
map_finset_inf (⟨⟨coe, coe_inf⟩, coe_top⟩ : InfTopHom (Closeds α) (Set α)) _ _
#align topological_space.closeds.coe_finset_inf TopologicalSpace.Closeds.coe_finset_inf
-/- warning: topological_space.closeds.infi_def -> TopologicalSpace.Closeds.iInf_def is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)), Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (iInf.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) ι (fun (i : ι) => s i)) (TopologicalSpace.Closeds.mk.{u1} α _inst_1 (Set.iInter.{u1, u2} α ι (fun (i : ι) => (fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (s i))) (isClosed_iInter.{u1, u2} α ι _inst_1 (fun (i : ι) => (fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (s i)) (fun (i : ι) => TopologicalSpace.Closeds.closed'.{u1} α _inst_1 (s i))))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)), Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (iInf.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) ι (fun (i : ι) => s i)) (TopologicalSpace.Closeds.mk.{u1} α _inst_1 (Set.iInter.{u1, u2} α ι (fun (i : ι) => SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (s i))) (isClosed_iInter.{u1, u2} α ι _inst_1 (fun (i : ι) => SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (s i)) (fun (i : ι) => TopologicalSpace.Closeds.closed'.{u1} α _inst_1 (s i))))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.infi_def TopologicalSpace.Closeds.iInf_defₓ'. -/
theorem iInf_def {ι} (s : ι → Closeds α) :
(⨅ i, s i) = ⟨⋂ i, s i, isClosed_iInter fun i => (s i).2⟩ := by ext;
simp only [iInf, coe_Inf, bInter_range]; rfl
#align topological_space.closeds.infi_def TopologicalSpace.Closeds.iInf_def
-/- warning: topological_space.closeds.infi_mk -> TopologicalSpace.Closeds.iInf_mk is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (Set.{u1} α)) (h : forall (i : ι), IsClosed.{u1} α _inst_1 (s i)), Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (iInf.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) ι (fun (i : ι) => TopologicalSpace.Closeds.mk.{u1} α _inst_1 (s i) (h i))) (TopologicalSpace.Closeds.mk.{u1} α _inst_1 (Set.iInter.{u1, u2} α ι (fun (i : ι) => s i)) (isClosed_iInter.{u1, u2} α ι _inst_1 (fun (i : ι) => s i) h))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (Set.{u1} α)) (h : forall (i : ι), IsClosed.{u1} α _inst_1 (s i)), Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (iInf.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) ι (fun (i : ι) => TopologicalSpace.Closeds.mk.{u1} α _inst_1 (s i) (h i))) (TopologicalSpace.Closeds.mk.{u1} α _inst_1 (Set.iInter.{u1, u2} α ι (fun (i : ι) => s i)) (isClosed_iInter.{u1, u2} α ι _inst_1 (fun (i : ι) => s i) h))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.infi_mk TopologicalSpace.Closeds.iInf_mkₓ'. -/
@[simp]
theorem iInf_mk {ι} (s : ι → Set α) (h : ∀ i, IsClosed (s i)) :
(⨅ i, ⟨s i, h i⟩ : Closeds α) = ⟨⋂ i, s i, isClosed_iInter h⟩ := by simp [infi_def]
#align topological_space.closeds.infi_mk TopologicalSpace.Closeds.iInf_mk
-/- warning: topological_space.closeds.coe_infi -> TopologicalSpace.Closeds.coe_iInf is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)), Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (iInf.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) ι (fun (i : ι) => s i))) (Set.iInter.{u1, u2} α ι (fun (i : ι) => (fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (s i)))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)), Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (iInf.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) ι (fun (i : ι) => s i))) (Set.iInter.{u1, u2} α ι (fun (i : ι) => SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (s i)))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.coe_infi TopologicalSpace.Closeds.coe_iInfₓ'. -/
@[simp, norm_cast]
theorem coe_iInf {ι} (s : ι → Closeds α) : ((⨅ i, s i : Closeds α) : Set α) = ⋂ i, s i := by
simp [infi_def]
#align topological_space.closeds.coe_infi TopologicalSpace.Closeds.coe_iInf
-/- warning: topological_space.closeds.mem_infi -> TopologicalSpace.Closeds.mem_iInf is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} {x : α} {s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)}, Iff (Membership.Mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.hasMem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)) x (iInf.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) ι s)) (forall (i : ι), Membership.Mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.hasMem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)) x (s i))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} {x : α} {s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)}, Iff (Membership.mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.instMembership.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1)) x (iInf.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) ι s)) (forall (i : ι), Membership.mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.instMembership.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1)) x (s i))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.mem_infi TopologicalSpace.Closeds.mem_iInfₓ'. -/
@[simp]
theorem mem_iInf {ι} {x : α} {s : ι → Closeds α} : x ∈ iInf s ↔ ∀ i, x ∈ s i := by
simp [← SetLike.mem_coe]
#align topological_space.closeds.mem_infi TopologicalSpace.Closeds.mem_iInf
-/- warning: topological_space.closeds.mem_Inf -> TopologicalSpace.Closeds.mem_sInf is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {S : Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)} {x : α}, Iff (Membership.Mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.hasMem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)) x (InfSet.sInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) S)) (forall (s : TopologicalSpace.Closeds.{u1} α _inst_1), (Membership.Mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.hasMem.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) s S) -> (Membership.Mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.hasMem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)) x s))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {S : Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)} {x : α}, Iff (Membership.mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.instMembership.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1)) x (InfSet.sInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) S)) (forall (s : TopologicalSpace.Closeds.{u1} α _inst_1), (Membership.mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.instMembershipSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) s S) -> (Membership.mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.instMembership.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1)) x s))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.mem_Inf TopologicalSpace.Closeds.mem_sInfₓ'. -/
@[simp]
theorem mem_sInf {S : Set (Closeds α)} {x : α} : x ∈ sInf S ↔ ∀ s ∈ S, x ∈ s := by
simp_rw [sInf_eq_iInf, mem_infi]
@@ -320,12 +236,6 @@ theorem Opens.compl_bijective : Function.Bijective (@Opens.compl α _) :=
variable (α)
-/- warning: topological_space.closeds.compl_order_iso -> TopologicalSpace.Closeds.complOrderIso is a dubious translation:
-lean 3 declaration is
- forall (α : Type.{u1}) [_inst_1 : TopologicalSpace.{u1} α], OrderIso.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (OrderDual.{u1} (TopologicalSpace.Opens.{u1} α _inst_1)) (Preorder.toHasLe.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (OrderDual.hasLe.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (Preorder.toHasLe.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Opens.{u1} α _inst_1) α (TopologicalSpace.Opens.setLike.{u1} α _inst_1)))))
-but is expected to have type
- forall (α : Type.{u1}) [_inst_1 : TopologicalSpace.{u1} α], OrderIso.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (OrderDual.{u1} (TopologicalSpace.Opens.{u1} α _inst_1)) (Preorder.toLE.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))))) (OrderDual.instLEOrderDual.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (Preorder.toLE.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (TopologicalSpace.Opens.instCompleteLatticeOpens.{u1} α _inst_1))))))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.compl_order_iso TopologicalSpace.Closeds.complOrderIsoₓ'. -/
/-- `closeds.compl` as an `order_iso` to the order dual of `opens α`. -/
@[simps]
def Closeds.complOrderIso : Closeds α ≃o (Opens α)ᵒᵈ
@@ -339,12 +249,6 @@ def Closeds.complOrderIso : Closeds α ≃o (Opens α)ᵒᵈ
compl_subset_compl
#align topological_space.closeds.compl_order_iso TopologicalSpace.Closeds.complOrderIso
-/- warning: topological_space.opens.compl_order_iso -> TopologicalSpace.Opens.complOrderIso is a dubious translation:
-lean 3 declaration is
- forall (α : Type.{u1}) [_inst_1 : TopologicalSpace.{u1} α], OrderIso.{u1, u1} (TopologicalSpace.Opens.{u1} α _inst_1) (OrderDual.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Preorder.toHasLe.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Opens.{u1} α _inst_1) α (TopologicalSpace.Opens.setLike.{u1} α _inst_1)))) (OrderDual.hasLe.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Preorder.toHasLe.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))))
-but is expected to have type
- forall (α : Type.{u1}) [_inst_1 : TopologicalSpace.{u1} α], OrderIso.{u1, u1} (TopologicalSpace.Opens.{u1} α _inst_1) (OrderDual.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Preorder.toLE.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (TopologicalSpace.Opens.instCompleteLatticeOpens.{u1} α _inst_1))))) (OrderDual.instLEOrderDual.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Preorder.toLE.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))))))
-Case conversion may be inaccurate. Consider using '#align topological_space.opens.compl_order_iso TopologicalSpace.Opens.complOrderIsoₓ'. -/
/-- `opens.compl` as an `order_iso` to the order dual of `closeds α`. -/
@[simps]
def Opens.complOrderIso : Opens α ≃o (Closeds α)ᵒᵈ
@@ -360,12 +264,6 @@ def Opens.complOrderIso : Opens α ≃o (Closeds α)ᵒᵈ
variable {α}
-/- warning: topological_space.closeds.is_atom_iff -> TopologicalSpace.Closeds.isAtom_iff is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] [_inst_3 : T1Space.{u1} α _inst_1] {s : TopologicalSpace.Closeds.{u1} α _inst_1}, Iff (IsAtom.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1))) (BoundedOrder.toOrderBot.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Preorder.toHasLe.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (CompleteLattice.toBoundedOrder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) s) (Exists.{succ u1} α (fun (x : α) => Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) s (TopologicalSpace.Closeds.singleton.{u1} α _inst_1 _inst_3 x)))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] [_inst_3 : T1Space.{u1} α _inst_1] {s : TopologicalSpace.Closeds.{u1} α _inst_1}, Iff (IsAtom.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1)))) (BoundedOrder.toOrderBot.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Preorder.toLE.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))))) (CompleteLattice.toBoundedOrder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) s) (Exists.{succ u1} α (fun (x : α) => Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) s (TopologicalSpace.Closeds.singleton.{u1} α _inst_1 _inst_3 x)))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.is_atom_iff TopologicalSpace.Closeds.isAtom_iffₓ'. -/
/-- in a `t1_space`, atoms of `closeds α` are precisely the `closeds.singleton`s. -/
theorem Closeds.isAtom_iff [T1Space α] {s : Closeds α} : IsAtom s ↔ ∃ x, s = Closeds.singleton x :=
by
@@ -377,12 +275,6 @@ theorem Closeds.isAtom_iff [T1Space α] {s : Closeds α} : IsAtom s ↔ ∃ x, s
simpa only [← this, (s : Set α).isAtom_iff, SetLike.ext_iff, Set.ext_iff]
#align topological_space.closeds.is_atom_iff TopologicalSpace.Closeds.isAtom_iff
-/- warning: topological_space.opens.is_coatom_iff -> TopologicalSpace.Opens.isCoatom_iff is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] [_inst_3 : T1Space.{u1} α _inst_1] {s : TopologicalSpace.Opens.{u1} α _inst_1}, Iff (IsCoatom.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Opens.{u1} α _inst_1) α (TopologicalSpace.Opens.setLike.{u1} α _inst_1))) (BoundedOrder.toOrderTop.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (Preorder.toHasLe.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Opens.{u1} α _inst_1) α (TopologicalSpace.Opens.setLike.{u1} α _inst_1)))) (CompleteLattice.toBoundedOrder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (TopologicalSpace.Opens.completeLattice.{u1} α _inst_1))) s) (Exists.{succ u1} α (fun (x : α) => Eq.{succ u1} (TopologicalSpace.Opens.{u1} α _inst_1) s (TopologicalSpace.Closeds.compl.{u1} α _inst_1 (TopologicalSpace.Closeds.singleton.{u1} α _inst_1 _inst_3 x))))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] [_inst_3 : T1Space.{u1} α _inst_1] {s : TopologicalSpace.Opens.{u1} α _inst_1}, Iff (IsCoatom.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (TopologicalSpace.Opens.instCompleteLatticeOpens.{u1} α _inst_1)))) (BoundedOrder.toOrderTop.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (Preorder.toLE.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (TopologicalSpace.Opens.instCompleteLatticeOpens.{u1} α _inst_1))))) (CompleteLattice.toBoundedOrder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (TopologicalSpace.Opens.instCompleteLatticeOpens.{u1} α _inst_1))) s) (Exists.{succ u1} α (fun (x : α) => Eq.{succ u1} (TopologicalSpace.Opens.{u1} α _inst_1) s (TopologicalSpace.Closeds.compl.{u1} α _inst_1 (TopologicalSpace.Closeds.singleton.{u1} α _inst_1 _inst_3 x))))
-Case conversion may be inaccurate. Consider using '#align topological_space.opens.is_coatom_iff TopologicalSpace.Opens.isCoatom_iffₓ'. -/
/- ./././Mathport/Syntax/Translate/Tactic/Builtin.lean:73:14: unsupported tactic `congrm #[[expr «expr∃ , »((x), _)]] -/
/-- in a `t1_space`, coatoms of `opens α` are precisely complements of singletons:
`(closeds.singleton x).compl`. -/
@@ -464,67 +356,31 @@ instance : BooleanAlgebra (Clopens α) :=
SetLike.coe_injective.BooleanAlgebra _ (fun _ _ => rfl) (fun _ _ => rfl) rfl rfl (fun _ => rfl)
fun _ _ => rfl
-/- warning: topological_space.clopens.coe_sup -> TopologicalSpace.Clopens.coe_sup is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Clopens.{u1} α _inst_1) (t : TopologicalSpace.Clopens.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) (Sup.sup.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.hasSup.{u1} α _inst_1) s t)) (Union.union.{u1} (Set.{u1} α) (Set.hasUnion.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) s) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) t))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Clopens.{u1} α _inst_1) (t : TopologicalSpace.Clopens.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) (Sup.sup.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.instSupClopens.{u1} α _inst_1) s t)) (Union.union.{u1} (Set.{u1} α) (Set.instUnionSet.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) s) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) t))
-Case conversion may be inaccurate. Consider using '#align topological_space.clopens.coe_sup TopologicalSpace.Clopens.coe_supₓ'. -/
@[simp]
theorem coe_sup (s t : Clopens α) : (↑(s ⊔ t) : Set α) = s ∪ t :=
rfl
#align topological_space.clopens.coe_sup TopologicalSpace.Clopens.coe_sup
-/- warning: topological_space.clopens.coe_inf -> TopologicalSpace.Clopens.coe_inf is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Clopens.{u1} α _inst_1) (t : TopologicalSpace.Clopens.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) (Inf.inf.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.hasInf.{u1} α _inst_1) s t)) (Inter.inter.{u1} (Set.{u1} α) (Set.hasInter.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) s) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) t))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Clopens.{u1} α _inst_1) (t : TopologicalSpace.Clopens.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) (Inf.inf.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.instInfClopens.{u1} α _inst_1) s t)) (Inter.inter.{u1} (Set.{u1} α) (Set.instInterSet.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) s) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) t))
-Case conversion may be inaccurate. Consider using '#align topological_space.clopens.coe_inf TopologicalSpace.Clopens.coe_infₓ'. -/
@[simp]
theorem coe_inf (s t : Clopens α) : (↑(s ⊓ t) : Set α) = s ∩ t :=
rfl
#align topological_space.clopens.coe_inf TopologicalSpace.Clopens.coe_inf
-/- warning: topological_space.clopens.coe_top -> TopologicalSpace.Clopens.coe_top is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α], Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) (Top.top.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.hasTop.{u1} α _inst_1))) (Set.univ.{u1} α)
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α], Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) (Top.top.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.instTopClopens.{u1} α _inst_1))) (Set.univ.{u1} α)
-Case conversion may be inaccurate. Consider using '#align topological_space.clopens.coe_top TopologicalSpace.Clopens.coe_topₓ'. -/
@[simp]
theorem coe_top : (↑(⊤ : Clopens α) : Set α) = univ :=
rfl
#align topological_space.clopens.coe_top TopologicalSpace.Clopens.coe_top
-/- warning: topological_space.clopens.coe_bot -> TopologicalSpace.Clopens.coe_bot is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α], Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) (Bot.bot.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.hasBot.{u1} α _inst_1))) (EmptyCollection.emptyCollection.{u1} (Set.{u1} α) (Set.hasEmptyc.{u1} α))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α], Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) (Bot.bot.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.instBotClopens.{u1} α _inst_1))) (EmptyCollection.emptyCollection.{u1} (Set.{u1} α) (Set.instEmptyCollectionSet.{u1} α))
-Case conversion may be inaccurate. Consider using '#align topological_space.clopens.coe_bot TopologicalSpace.Clopens.coe_botₓ'. -/
@[simp]
theorem coe_bot : (↑(⊥ : Clopens α) : Set α) = ∅ :=
rfl
#align topological_space.clopens.coe_bot TopologicalSpace.Clopens.coe_bot
-/- warning: topological_space.clopens.coe_sdiff -> TopologicalSpace.Clopens.coe_sdiff is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Clopens.{u1} α _inst_1) (t : TopologicalSpace.Clopens.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) (SDiff.sdiff.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.hasSdiff.{u1} α _inst_1) s t)) (SDiff.sdiff.{u1} (Set.{u1} α) (BooleanAlgebra.toHasSdiff.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) s) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) t))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Clopens.{u1} α _inst_1) (t : TopologicalSpace.Clopens.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) (SDiff.sdiff.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.instSDiffClopens.{u1} α _inst_1) s t)) (SDiff.sdiff.{u1} (Set.{u1} α) (Set.instSDiffSet.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) s) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) t))
-Case conversion may be inaccurate. Consider using '#align topological_space.clopens.coe_sdiff TopologicalSpace.Clopens.coe_sdiffₓ'. -/
@[simp]
theorem coe_sdiff (s t : Clopens α) : (↑(s \ t) : Set α) = s \ t :=
rfl
#align topological_space.clopens.coe_sdiff TopologicalSpace.Clopens.coe_sdiff
-/- warning: topological_space.clopens.coe_compl -> TopologicalSpace.Clopens.coe_compl is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Clopens.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) (HasCompl.compl.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.hasCompl.{u1} α _inst_1) s)) (HasCompl.compl.{u1} (Set.{u1} α) (BooleanAlgebra.toHasCompl.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) s))
-but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Clopens.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) (HasCompl.compl.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.instHasComplClopens.{u1} α _inst_1) s)) (HasCompl.compl.{u1} (Set.{u1} α) (BooleanAlgebra.toHasCompl.{u1} (Set.{u1} α) (Set.instBooleanAlgebraSet.{u1} α)) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) s))
-Case conversion may be inaccurate. Consider using '#align topological_space.clopens.coe_compl TopologicalSpace.Clopens.coe_complₓ'. -/
@[simp]
theorem coe_compl (s : Clopens α) : (↑(sᶜ) : Set α) = sᶜ :=
rfl
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -49,10 +49,7 @@ variable {α}
instance : SetLike (Closeds α) α where
coe := Closeds.carrier
- coe_injective' s t h := by
- cases s
- cases t
- congr
+ coe_injective' s t h := by cases s; cases t; congr
#print TopologicalSpace.Closeds.closed /-
theorem closed (s : Closeds α) : IsClosed (s : Set α) :=
@@ -217,11 +214,8 @@ but is expected to have type
forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)), Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (iInf.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) ι (fun (i : ι) => s i)) (TopologicalSpace.Closeds.mk.{u1} α _inst_1 (Set.iInter.{u1, u2} α ι (fun (i : ι) => SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (s i))) (isClosed_iInter.{u1, u2} α ι _inst_1 (fun (i : ι) => SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (s i)) (fun (i : ι) => TopologicalSpace.Closeds.closed'.{u1} α _inst_1 (s i))))
Case conversion may be inaccurate. Consider using '#align topological_space.closeds.infi_def TopologicalSpace.Closeds.iInf_defₓ'. -/
theorem iInf_def {ι} (s : ι → Closeds α) :
- (⨅ i, s i) = ⟨⋂ i, s i, isClosed_iInter fun i => (s i).2⟩ :=
- by
- ext
- simp only [iInf, coe_Inf, bInter_range]
- rfl
+ (⨅ i, s i) = ⟨⋂ i, s i, isClosed_iInter fun i => (s i).2⟩ := by ext;
+ simp only [iInf, coe_Inf, bInter_range]; rfl
#align topological_space.closeds.infi_def TopologicalSpace.Closeds.iInf_def
/- warning: topological_space.closeds.infi_mk -> TopologicalSpace.Closeds.iInf_mk is a dubious translation:
@@ -418,10 +412,7 @@ namespace Clopens
instance : SetLike (Clopens α) α where
coe s := s.carrier
- coe_injective' s t h := by
- cases s
- cases t
- congr
+ coe_injective' s t h := by cases s; cases t; congr
#print TopologicalSpace.Clopens.clopen /-
theorem clopen (s : Clopens α) : IsClopen (s : Set α) :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/0b9eaaa7686280fad8cce467f5c3c57ee6ce77f8
@@ -188,7 +188,7 @@ theorem coe_sInf {S : Set (Closeds α)} : (↑(sInf S) : Set α) = ⋂ i ∈ S,
/- warning: topological_space.closeds.coe_finset_sup -> TopologicalSpace.Closeds.coe_finset_sup is a dubious translation:
lean 3 declaration is
- forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : TopologicalSpace.{u2} α] (f : ι -> (TopologicalSpace.Closeds.{u2} α _inst_1)) (s : Finset.{u1} ι), Eq.{succ u2} (Set.{u2} α) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (HasLiftT.mk.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (CoeTCₓ.coe.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (SetLike.Set.hasCoeT.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u2} α _inst_1)))) (Finset.sup.{u2, u1} (TopologicalSpace.Closeds.{u2} α _inst_1) ι (Lattice.toSemilatticeSup.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1)))) (BoundedOrder.toOrderBot.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Preorder.toLE.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (PartialOrder.toPreorder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (SemilatticeSup.toPartialOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Lattice.toSemilatticeSup.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1))))))) (CompleteLattice.toBoundedOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1))) s f)) (Finset.sup.{u2, u1} (Set.{u2} α) ι (Lattice.toSemilatticeSup.{u2} (Set.{u2} α) (ConditionallyCompleteLattice.toLattice.{u2} (Set.{u2} α) (CompleteLattice.toConditionallyCompleteLattice.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.completeBooleanAlgebra.{u2} α))))))) (GeneralizedBooleanAlgebra.toOrderBot.{u2} (Set.{u2} α) (BooleanAlgebra.toGeneralizedBooleanAlgebra.{u2} (Set.{u2} α) (Set.booleanAlgebra.{u2} α))) s (Function.comp.{succ u1, succ u2, succ u2} ι (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (HasLiftT.mk.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (CoeTCₓ.coe.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (SetLike.Set.hasCoeT.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u2} α _inst_1))))) f))
+ forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : TopologicalSpace.{u2} α] (f : ι -> (TopologicalSpace.Closeds.{u2} α _inst_1)) (s : Finset.{u1} ι), Eq.{succ u2} (Set.{u2} α) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (HasLiftT.mk.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (CoeTCₓ.coe.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (SetLike.Set.hasCoeT.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u2} α _inst_1)))) (Finset.sup.{u2, u1} (TopologicalSpace.Closeds.{u2} α _inst_1) ι (Lattice.toSemilatticeSup.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1)))) (BoundedOrder.toOrderBot.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Preorder.toHasLe.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (PartialOrder.toPreorder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (SemilatticeSup.toPartialOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Lattice.toSemilatticeSup.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1))))))) (CompleteLattice.toBoundedOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1))) s f)) (Finset.sup.{u2, u1} (Set.{u2} α) ι (Lattice.toSemilatticeSup.{u2} (Set.{u2} α) (ConditionallyCompleteLattice.toLattice.{u2} (Set.{u2} α) (CompleteLattice.toConditionallyCompleteLattice.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.completeBooleanAlgebra.{u2} α))))))) (GeneralizedBooleanAlgebra.toOrderBot.{u2} (Set.{u2} α) (BooleanAlgebra.toGeneralizedBooleanAlgebra.{u2} (Set.{u2} α) (Set.booleanAlgebra.{u2} α))) s (Function.comp.{succ u1, succ u2, succ u2} ι (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (HasLiftT.mk.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (CoeTCₓ.coe.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (SetLike.Set.hasCoeT.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u2} α _inst_1))))) f))
but is expected to have type
forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : TopologicalSpace.{u2} α] (f : ι -> (TopologicalSpace.Closeds.{u2} α _inst_1)) (s : Finset.{u1} ι), Eq.{succ u2} (Set.{u2} α) (SetLike.coe.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u2} α _inst_1) (Finset.sup.{u2, u1} (TopologicalSpace.Closeds.{u2} α _inst_1) ι (Lattice.toSemilatticeSup.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u2} α _inst_1)))) (BoundedOrder.toOrderBot.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Preorder.toLE.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (PartialOrder.toPreorder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (SemilatticeSup.toPartialOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Lattice.toSemilatticeSup.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u2} α _inst_1))))))) (CompleteLattice.toBoundedOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u2} α _inst_1))) s f)) (Finset.sup.{u2, u1} (Set.{u2} α) ι (Lattice.toSemilatticeSup.{u2} (Set.{u2} α) (ConditionallyCompleteLattice.toLattice.{u2} (Set.{u2} α) (CompleteLattice.toConditionallyCompleteLattice.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α))))))) (BoundedOrder.toOrderBot.{u2} (Set.{u2} α) (Preorder.toLE.{u2} (Set.{u2} α) (PartialOrder.toPreorder.{u2} (Set.{u2} α) (SemilatticeSup.toPartialOrder.{u2} (Set.{u2} α) (Lattice.toSemilatticeSup.{u2} (Set.{u2} α) (ConditionallyCompleteLattice.toLattice.{u2} (Set.{u2} α) (CompleteLattice.toConditionallyCompleteLattice.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α)))))))))) (CompleteLattice.toBoundedOrder.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α)))))) s (Function.comp.{succ u1, succ u2, succ u2} ι (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (SetLike.coe.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u2} α _inst_1)) f))
Case conversion may be inaccurate. Consider using '#align topological_space.closeds.coe_finset_sup TopologicalSpace.Closeds.coe_finset_supₓ'. -/
@@ -200,7 +200,7 @@ theorem coe_finset_sup (f : ι → Closeds α) (s : Finset ι) :
/- warning: topological_space.closeds.coe_finset_inf -> TopologicalSpace.Closeds.coe_finset_inf is a dubious translation:
lean 3 declaration is
- forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : TopologicalSpace.{u2} α] (f : ι -> (TopologicalSpace.Closeds.{u2} α _inst_1)) (s : Finset.{u1} ι), Eq.{succ u2} (Set.{u2} α) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (HasLiftT.mk.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (CoeTCₓ.coe.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (SetLike.Set.hasCoeT.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u2} α _inst_1)))) (Finset.inf.{u2, u1} (TopologicalSpace.Closeds.{u2} α _inst_1) ι (Lattice.toSemilatticeInf.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1)))) (BoundedOrder.toOrderTop.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Preorder.toLE.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (PartialOrder.toPreorder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (SemilatticeInf.toPartialOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Lattice.toSemilatticeInf.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1))))))) (CompleteLattice.toBoundedOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1))) s f)) (Finset.inf.{u2, u1} (Set.{u2} α) ι (Lattice.toSemilatticeInf.{u2} (Set.{u2} α) (ConditionallyCompleteLattice.toLattice.{u2} (Set.{u2} α) (CompleteLattice.toConditionallyCompleteLattice.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.completeBooleanAlgebra.{u2} α))))))) (Set.orderTop.{u2} α) s (Function.comp.{succ u1, succ u2, succ u2} ι (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (HasLiftT.mk.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (CoeTCₓ.coe.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (SetLike.Set.hasCoeT.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u2} α _inst_1))))) f))
+ forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : TopologicalSpace.{u2} α] (f : ι -> (TopologicalSpace.Closeds.{u2} α _inst_1)) (s : Finset.{u1} ι), Eq.{succ u2} (Set.{u2} α) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (HasLiftT.mk.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (CoeTCₓ.coe.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (SetLike.Set.hasCoeT.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u2} α _inst_1)))) (Finset.inf.{u2, u1} (TopologicalSpace.Closeds.{u2} α _inst_1) ι (Lattice.toSemilatticeInf.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1)))) (BoundedOrder.toOrderTop.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Preorder.toHasLe.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (PartialOrder.toPreorder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (SemilatticeInf.toPartialOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Lattice.toSemilatticeInf.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1))))))) (CompleteLattice.toBoundedOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u2} α _inst_1))) s f)) (Finset.inf.{u2, u1} (Set.{u2} α) ι (Lattice.toSemilatticeInf.{u2} (Set.{u2} α) (ConditionallyCompleteLattice.toLattice.{u2} (Set.{u2} α) (CompleteLattice.toConditionallyCompleteLattice.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.completeBooleanAlgebra.{u2} α))))))) (Set.orderTop.{u2} α) s (Function.comp.{succ u1, succ u2, succ u2} ι (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (HasLiftT.mk.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (CoeTCₓ.coe.{succ u2, succ u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (SetLike.Set.hasCoeT.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u2} α _inst_1))))) f))
but is expected to have type
forall {ι : Type.{u1}} {α : Type.{u2}} [_inst_1 : TopologicalSpace.{u2} α] (f : ι -> (TopologicalSpace.Closeds.{u2} α _inst_1)) (s : Finset.{u1} ι), Eq.{succ u2} (Set.{u2} α) (SetLike.coe.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u2} α _inst_1) (Finset.inf.{u2, u1} (TopologicalSpace.Closeds.{u2} α _inst_1) ι (Lattice.toSemilatticeInf.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u2} α _inst_1)))) (BoundedOrder.toOrderTop.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Preorder.toLE.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (PartialOrder.toPreorder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (SemilatticeInf.toPartialOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (Lattice.toSemilatticeInf.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u2} α _inst_1))))))) (CompleteLattice.toBoundedOrder.{u2} (TopologicalSpace.Closeds.{u2} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u2} α _inst_1))) s f)) (Finset.inf.{u2, u1} (Set.{u2} α) ι (Lattice.toSemilatticeInf.{u2} (Set.{u2} α) (ConditionallyCompleteLattice.toLattice.{u2} (Set.{u2} α) (CompleteLattice.toConditionallyCompleteLattice.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α))))))) (Set.instOrderTopSetInstLESet.{u2} α) s (Function.comp.{succ u1, succ u2, succ u2} ι (TopologicalSpace.Closeds.{u2} α _inst_1) (Set.{u2} α) (SetLike.coe.{u2, u2} (TopologicalSpace.Closeds.{u2} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u2} α _inst_1)) f))
Case conversion may be inaccurate. Consider using '#align topological_space.closeds.coe_finset_inf TopologicalSpace.Closeds.coe_finset_infₓ'. -/
@@ -328,7 +328,7 @@ variable (α)
/- warning: topological_space.closeds.compl_order_iso -> TopologicalSpace.Closeds.complOrderIso is a dubious translation:
lean 3 declaration is
- forall (α : Type.{u1}) [_inst_1 : TopologicalSpace.{u1} α], OrderIso.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (OrderDual.{u1} (TopologicalSpace.Opens.{u1} α _inst_1)) (Preorder.toLE.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (OrderDual.hasLe.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (Preorder.toLE.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Opens.{u1} α _inst_1) α (TopologicalSpace.Opens.setLike.{u1} α _inst_1)))))
+ forall (α : Type.{u1}) [_inst_1 : TopologicalSpace.{u1} α], OrderIso.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (OrderDual.{u1} (TopologicalSpace.Opens.{u1} α _inst_1)) (Preorder.toHasLe.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (OrderDual.hasLe.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (Preorder.toHasLe.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Opens.{u1} α _inst_1) α (TopologicalSpace.Opens.setLike.{u1} α _inst_1)))))
but is expected to have type
forall (α : Type.{u1}) [_inst_1 : TopologicalSpace.{u1} α], OrderIso.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (OrderDual.{u1} (TopologicalSpace.Opens.{u1} α _inst_1)) (Preorder.toLE.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))))) (OrderDual.instLEOrderDual.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (Preorder.toLE.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (TopologicalSpace.Opens.instCompleteLatticeOpens.{u1} α _inst_1))))))
Case conversion may be inaccurate. Consider using '#align topological_space.closeds.compl_order_iso TopologicalSpace.Closeds.complOrderIsoₓ'. -/
@@ -347,7 +347,7 @@ def Closeds.complOrderIso : Closeds α ≃o (Opens α)ᵒᵈ
/- warning: topological_space.opens.compl_order_iso -> TopologicalSpace.Opens.complOrderIso is a dubious translation:
lean 3 declaration is
- forall (α : Type.{u1}) [_inst_1 : TopologicalSpace.{u1} α], OrderIso.{u1, u1} (TopologicalSpace.Opens.{u1} α _inst_1) (OrderDual.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Preorder.toLE.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Opens.{u1} α _inst_1) α (TopologicalSpace.Opens.setLike.{u1} α _inst_1)))) (OrderDual.hasLe.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Preorder.toLE.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))))
+ forall (α : Type.{u1}) [_inst_1 : TopologicalSpace.{u1} α], OrderIso.{u1, u1} (TopologicalSpace.Opens.{u1} α _inst_1) (OrderDual.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Preorder.toHasLe.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Opens.{u1} α _inst_1) α (TopologicalSpace.Opens.setLike.{u1} α _inst_1)))) (OrderDual.hasLe.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Preorder.toHasLe.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))))
but is expected to have type
forall (α : Type.{u1}) [_inst_1 : TopologicalSpace.{u1} α], OrderIso.{u1, u1} (TopologicalSpace.Opens.{u1} α _inst_1) (OrderDual.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Preorder.toLE.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (TopologicalSpace.Opens.instCompleteLatticeOpens.{u1} α _inst_1))))) (OrderDual.instLEOrderDual.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Preorder.toLE.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))))))
Case conversion may be inaccurate. Consider using '#align topological_space.opens.compl_order_iso TopologicalSpace.Opens.complOrderIsoₓ'. -/
@@ -368,7 +368,7 @@ variable {α}
/- warning: topological_space.closeds.is_atom_iff -> TopologicalSpace.Closeds.isAtom_iff is a dubious translation:
lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] [_inst_3 : T1Space.{u1} α _inst_1] {s : TopologicalSpace.Closeds.{u1} α _inst_1}, Iff (IsAtom.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1))) (BoundedOrder.toOrderBot.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Preorder.toLE.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (CompleteLattice.toBoundedOrder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) s) (Exists.{succ u1} α (fun (x : α) => Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) s (TopologicalSpace.Closeds.singleton.{u1} α _inst_1 _inst_3 x)))
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] [_inst_3 : T1Space.{u1} α _inst_1] {s : TopologicalSpace.Closeds.{u1} α _inst_1}, Iff (IsAtom.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1))) (BoundedOrder.toOrderBot.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Preorder.toHasLe.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (CompleteLattice.toBoundedOrder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) s) (Exists.{succ u1} α (fun (x : α) => Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) s (TopologicalSpace.Closeds.singleton.{u1} α _inst_1 _inst_3 x)))
but is expected to have type
forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] [_inst_3 : T1Space.{u1} α _inst_1] {s : TopologicalSpace.Closeds.{u1} α _inst_1}, Iff (IsAtom.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1)))) (BoundedOrder.toOrderBot.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Preorder.toLE.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))))) (CompleteLattice.toBoundedOrder.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) s) (Exists.{succ u1} α (fun (x : α) => Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) s (TopologicalSpace.Closeds.singleton.{u1} α _inst_1 _inst_3 x)))
Case conversion may be inaccurate. Consider using '#align topological_space.closeds.is_atom_iff TopologicalSpace.Closeds.isAtom_iffₓ'. -/
@@ -385,7 +385,7 @@ theorem Closeds.isAtom_iff [T1Space α] {s : Closeds α} : IsAtom s ↔ ∃ x, s
/- warning: topological_space.opens.is_coatom_iff -> TopologicalSpace.Opens.isCoatom_iff is a dubious translation:
lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] [_inst_3 : T1Space.{u1} α _inst_1] {s : TopologicalSpace.Opens.{u1} α _inst_1}, Iff (IsCoatom.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Opens.{u1} α _inst_1) α (TopologicalSpace.Opens.setLike.{u1} α _inst_1))) (BoundedOrder.toOrderTop.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (Preorder.toLE.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Opens.{u1} α _inst_1) α (TopologicalSpace.Opens.setLike.{u1} α _inst_1)))) (CompleteLattice.toBoundedOrder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (TopologicalSpace.Opens.completeLattice.{u1} α _inst_1))) s) (Exists.{succ u1} α (fun (x : α) => Eq.{succ u1} (TopologicalSpace.Opens.{u1} α _inst_1) s (TopologicalSpace.Closeds.compl.{u1} α _inst_1 (TopologicalSpace.Closeds.singleton.{u1} α _inst_1 _inst_3 x))))
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] [_inst_3 : T1Space.{u1} α _inst_1] {s : TopologicalSpace.Opens.{u1} α _inst_1}, Iff (IsCoatom.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Opens.{u1} α _inst_1) α (TopologicalSpace.Opens.setLike.{u1} α _inst_1))) (BoundedOrder.toOrderTop.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (Preorder.toHasLe.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (SetLike.partialOrder.{u1, u1} (TopologicalSpace.Opens.{u1} α _inst_1) α (TopologicalSpace.Opens.setLike.{u1} α _inst_1)))) (CompleteLattice.toBoundedOrder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (TopologicalSpace.Opens.completeLattice.{u1} α _inst_1))) s) (Exists.{succ u1} α (fun (x : α) => Eq.{succ u1} (TopologicalSpace.Opens.{u1} α _inst_1) s (TopologicalSpace.Closeds.compl.{u1} α _inst_1 (TopologicalSpace.Closeds.singleton.{u1} α _inst_1 _inst_3 x))))
but is expected to have type
forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] [_inst_3 : T1Space.{u1} α _inst_1] {s : TopologicalSpace.Opens.{u1} α _inst_1}, Iff (IsCoatom.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (TopologicalSpace.Opens.instCompleteLatticeOpens.{u1} α _inst_1)))) (BoundedOrder.toOrderTop.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (Preorder.toLE.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (TopologicalSpace.Opens.instCompleteLatticeOpens.{u1} α _inst_1))))) (CompleteLattice.toBoundedOrder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (TopologicalSpace.Opens.instCompleteLatticeOpens.{u1} α _inst_1))) s) (Exists.{succ u1} α (fun (x : α) => Eq.{succ u1} (TopologicalSpace.Opens.{u1} α _inst_1) s (TopologicalSpace.Closeds.compl.{u1} α _inst_1 (TopologicalSpace.Closeds.singleton.{u1} α _inst_1 _inst_3 x))))
Case conversion may be inaccurate. Consider using '#align topological_space.opens.is_coatom_iff TopologicalSpace.Opens.isCoatom_iffₓ'. -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/e3fb84046afd187b710170887195d50bada934ee
@@ -124,8 +124,8 @@ instance : CompleteLattice (Closeds α) :=
_
rfl
(-- Inf
- fun S => ⟨⋂ s ∈ S, ↑s, isClosed_binterᵢ fun s _ => s.2⟩)
- (funext fun S => SetLike.coe_injective infₛ_image.symm)
+ fun S => ⟨⋂ s ∈ S, ↑s, isClosed_biInter fun s _ => s.2⟩)
+ (funext fun S => SetLike.coe_injective sInf_image.symm)
/-- The type of closed sets is inhabited, with default element the empty set. -/
instance : Inhabited (Closeds α) :=
@@ -175,16 +175,16 @@ theorem coe_bot : (↑(⊥ : Closeds α) : Set α) = ∅ :=
rfl
#align topological_space.closeds.coe_bot TopologicalSpace.Closeds.coe_bot
-/- warning: topological_space.closeds.coe_Inf -> TopologicalSpace.Closeds.coe_infₛ is a dubious translation:
+/- warning: topological_space.closeds.coe_Inf -> TopologicalSpace.Closeds.coe_sInf is a dubious translation:
lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {S : Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)}, Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (InfSet.infₛ.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) S)) (Set.interᵢ.{u1, succ u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (fun (i : TopologicalSpace.Closeds.{u1} α _inst_1) => Set.interᵢ.{u1, 0} α (Membership.Mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.hasMem.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) i S) (fun (H : Membership.Mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.hasMem.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) i S) => (fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) i)))
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {S : Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)}, Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (InfSet.sInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) S)) (Set.iInter.{u1, succ u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (fun (i : TopologicalSpace.Closeds.{u1} α _inst_1) => Set.iInter.{u1, 0} α (Membership.Mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.hasMem.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) i S) (fun (H : Membership.Mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.hasMem.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) i S) => (fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) i)))
but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {S : Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)}, Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (InfSet.infₛ.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) S)) (Set.interᵢ.{u1, succ u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (fun (i : TopologicalSpace.Closeds.{u1} α _inst_1) => Set.interᵢ.{u1, 0} α (Membership.mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.instMembershipSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) i S) (fun (H : Membership.mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.instMembershipSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) i S) => SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) i)))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.coe_Inf TopologicalSpace.Closeds.coe_infₛₓ'. -/
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {S : Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)}, Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (InfSet.sInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) S)) (Set.iInter.{u1, succ u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (fun (i : TopologicalSpace.Closeds.{u1} α _inst_1) => Set.iInter.{u1, 0} α (Membership.mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.instMembershipSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) i S) (fun (H : Membership.mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.instMembershipSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) i S) => SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) i)))
+Case conversion may be inaccurate. Consider using '#align topological_space.closeds.coe_Inf TopologicalSpace.Closeds.coe_sInfₓ'. -/
@[simp, norm_cast]
-theorem coe_infₛ {S : Set (Closeds α)} : (↑(infₛ S) : Set α) = ⋂ i ∈ S, ↑i :=
+theorem coe_sInf {S : Set (Closeds α)} : (↑(sInf S) : Set α) = ⋂ i ∈ S, ↑i :=
rfl
-#align topological_space.closeds.coe_Inf TopologicalSpace.Closeds.coe_infₛ
+#align topological_space.closeds.coe_Inf TopologicalSpace.Closeds.coe_sInf
/- warning: topological_space.closeds.coe_finset_sup -> TopologicalSpace.Closeds.coe_finset_sup is a dubious translation:
lean 3 declaration is
@@ -210,69 +210,69 @@ theorem coe_finset_inf (f : ι → Closeds α) (s : Finset ι) :
map_finset_inf (⟨⟨coe, coe_inf⟩, coe_top⟩ : InfTopHom (Closeds α) (Set α)) _ _
#align topological_space.closeds.coe_finset_inf TopologicalSpace.Closeds.coe_finset_inf
-/- warning: topological_space.closeds.infi_def -> TopologicalSpace.Closeds.infᵢ_def is a dubious translation:
+/- warning: topological_space.closeds.infi_def -> TopologicalSpace.Closeds.iInf_def is a dubious translation:
lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)), Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (infᵢ.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) ι (fun (i : ι) => s i)) (TopologicalSpace.Closeds.mk.{u1} α _inst_1 (Set.interᵢ.{u1, u2} α ι (fun (i : ι) => (fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (s i))) (isClosed_interᵢ.{u1, u2} α ι _inst_1 (fun (i : ι) => (fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (s i)) (fun (i : ι) => TopologicalSpace.Closeds.closed'.{u1} α _inst_1 (s i))))
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)), Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (iInf.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) ι (fun (i : ι) => s i)) (TopologicalSpace.Closeds.mk.{u1} α _inst_1 (Set.iInter.{u1, u2} α ι (fun (i : ι) => (fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (s i))) (isClosed_iInter.{u1, u2} α ι _inst_1 (fun (i : ι) => (fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (s i)) (fun (i : ι) => TopologicalSpace.Closeds.closed'.{u1} α _inst_1 (s i))))
but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)), Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (infᵢ.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) ι (fun (i : ι) => s i)) (TopologicalSpace.Closeds.mk.{u1} α _inst_1 (Set.interᵢ.{u1, u2} α ι (fun (i : ι) => SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (s i))) (isClosed_interᵢ.{u1, u2} α ι _inst_1 (fun (i : ι) => SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (s i)) (fun (i : ι) => TopologicalSpace.Closeds.closed'.{u1} α _inst_1 (s i))))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.infi_def TopologicalSpace.Closeds.infᵢ_defₓ'. -/
-theorem infᵢ_def {ι} (s : ι → Closeds α) :
- (⨅ i, s i) = ⟨⋂ i, s i, isClosed_interᵢ fun i => (s i).2⟩ :=
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)), Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (iInf.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) ι (fun (i : ι) => s i)) (TopologicalSpace.Closeds.mk.{u1} α _inst_1 (Set.iInter.{u1, u2} α ι (fun (i : ι) => SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (s i))) (isClosed_iInter.{u1, u2} α ι _inst_1 (fun (i : ι) => SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (s i)) (fun (i : ι) => TopologicalSpace.Closeds.closed'.{u1} α _inst_1 (s i))))
+Case conversion may be inaccurate. Consider using '#align topological_space.closeds.infi_def TopologicalSpace.Closeds.iInf_defₓ'. -/
+theorem iInf_def {ι} (s : ι → Closeds α) :
+ (⨅ i, s i) = ⟨⋂ i, s i, isClosed_iInter fun i => (s i).2⟩ :=
by
ext
- simp only [infᵢ, coe_Inf, bInter_range]
+ simp only [iInf, coe_Inf, bInter_range]
rfl
-#align topological_space.closeds.infi_def TopologicalSpace.Closeds.infᵢ_def
+#align topological_space.closeds.infi_def TopologicalSpace.Closeds.iInf_def
-/- warning: topological_space.closeds.infi_mk -> TopologicalSpace.Closeds.infᵢ_mk is a dubious translation:
+/- warning: topological_space.closeds.infi_mk -> TopologicalSpace.Closeds.iInf_mk is a dubious translation:
lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (Set.{u1} α)) (h : forall (i : ι), IsClosed.{u1} α _inst_1 (s i)), Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (infᵢ.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) ι (fun (i : ι) => TopologicalSpace.Closeds.mk.{u1} α _inst_1 (s i) (h i))) (TopologicalSpace.Closeds.mk.{u1} α _inst_1 (Set.interᵢ.{u1, u2} α ι (fun (i : ι) => s i)) (isClosed_interᵢ.{u1, u2} α ι _inst_1 (fun (i : ι) => s i) h))
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (Set.{u1} α)) (h : forall (i : ι), IsClosed.{u1} α _inst_1 (s i)), Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (iInf.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) ι (fun (i : ι) => TopologicalSpace.Closeds.mk.{u1} α _inst_1 (s i) (h i))) (TopologicalSpace.Closeds.mk.{u1} α _inst_1 (Set.iInter.{u1, u2} α ι (fun (i : ι) => s i)) (isClosed_iInter.{u1, u2} α ι _inst_1 (fun (i : ι) => s i) h))
but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (Set.{u1} α)) (h : forall (i : ι), IsClosed.{u1} α _inst_1 (s i)), Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (infᵢ.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) ι (fun (i : ι) => TopologicalSpace.Closeds.mk.{u1} α _inst_1 (s i) (h i))) (TopologicalSpace.Closeds.mk.{u1} α _inst_1 (Set.interᵢ.{u1, u2} α ι (fun (i : ι) => s i)) (isClosed_interᵢ.{u1, u2} α ι _inst_1 (fun (i : ι) => s i) h))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.infi_mk TopologicalSpace.Closeds.infᵢ_mkₓ'. -/
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (Set.{u1} α)) (h : forall (i : ι), IsClosed.{u1} α _inst_1 (s i)), Eq.{succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (iInf.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) ι (fun (i : ι) => TopologicalSpace.Closeds.mk.{u1} α _inst_1 (s i) (h i))) (TopologicalSpace.Closeds.mk.{u1} α _inst_1 (Set.iInter.{u1, u2} α ι (fun (i : ι) => s i)) (isClosed_iInter.{u1, u2} α ι _inst_1 (fun (i : ι) => s i) h))
+Case conversion may be inaccurate. Consider using '#align topological_space.closeds.infi_mk TopologicalSpace.Closeds.iInf_mkₓ'. -/
@[simp]
-theorem infᵢ_mk {ι} (s : ι → Set α) (h : ∀ i, IsClosed (s i)) :
- (⨅ i, ⟨s i, h i⟩ : Closeds α) = ⟨⋂ i, s i, isClosed_interᵢ h⟩ := by simp [infi_def]
-#align topological_space.closeds.infi_mk TopologicalSpace.Closeds.infᵢ_mk
+theorem iInf_mk {ι} (s : ι → Set α) (h : ∀ i, IsClosed (s i)) :
+ (⨅ i, ⟨s i, h i⟩ : Closeds α) = ⟨⋂ i, s i, isClosed_iInter h⟩ := by simp [infi_def]
+#align topological_space.closeds.infi_mk TopologicalSpace.Closeds.iInf_mk
-/- warning: topological_space.closeds.coe_infi -> TopologicalSpace.Closeds.coe_infᵢ is a dubious translation:
+/- warning: topological_space.closeds.coe_infi -> TopologicalSpace.Closeds.coe_iInf is a dubious translation:
lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)), Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (infᵢ.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) ι (fun (i : ι) => s i))) (Set.interᵢ.{u1, u2} α ι (fun (i : ι) => (fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (s i)))
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)), Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (iInf.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) ι (fun (i : ι) => s i))) (Set.iInter.{u1, u2} α ι (fun (i : ι) => (fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (s i)))
but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)), Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (infᵢ.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) ι (fun (i : ι) => s i))) (Set.interᵢ.{u1, u2} α ι (fun (i : ι) => SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (s i)))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.coe_infi TopologicalSpace.Closeds.coe_infᵢₓ'. -/
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} (s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)), Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (iInf.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) ι (fun (i : ι) => s i))) (Set.iInter.{u1, u2} α ι (fun (i : ι) => SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (s i)))
+Case conversion may be inaccurate. Consider using '#align topological_space.closeds.coe_infi TopologicalSpace.Closeds.coe_iInfₓ'. -/
@[simp, norm_cast]
-theorem coe_infᵢ {ι} (s : ι → Closeds α) : ((⨅ i, s i : Closeds α) : Set α) = ⋂ i, s i := by
+theorem coe_iInf {ι} (s : ι → Closeds α) : ((⨅ i, s i : Closeds α) : Set α) = ⋂ i, s i := by
simp [infi_def]
-#align topological_space.closeds.coe_infi TopologicalSpace.Closeds.coe_infᵢ
+#align topological_space.closeds.coe_infi TopologicalSpace.Closeds.coe_iInf
-/- warning: topological_space.closeds.mem_infi -> TopologicalSpace.Closeds.mem_infᵢ is a dubious translation:
+/- warning: topological_space.closeds.mem_infi -> TopologicalSpace.Closeds.mem_iInf is a dubious translation:
lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} {x : α} {s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)}, Iff (Membership.Mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.hasMem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)) x (infᵢ.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) ι s)) (forall (i : ι), Membership.Mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.hasMem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)) x (s i))
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} {x : α} {s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)}, Iff (Membership.Mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.hasMem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)) x (iInf.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) ι s)) (forall (i : ι), Membership.Mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.hasMem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)) x (s i))
but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} {x : α} {s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)}, Iff (Membership.mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.instMembership.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1)) x (infᵢ.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) ι s)) (forall (i : ι), Membership.mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.instMembership.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1)) x (s i))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.mem_infi TopologicalSpace.Closeds.mem_infᵢₓ'. -/
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {ι : Sort.{u2}} {x : α} {s : ι -> (TopologicalSpace.Closeds.{u1} α _inst_1)}, Iff (Membership.mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.instMembership.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1)) x (iInf.{u1, u2} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) ι s)) (forall (i : ι), Membership.mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.instMembership.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1)) x (s i))
+Case conversion may be inaccurate. Consider using '#align topological_space.closeds.mem_infi TopologicalSpace.Closeds.mem_iInfₓ'. -/
@[simp]
-theorem mem_infᵢ {ι} {x : α} {s : ι → Closeds α} : x ∈ infᵢ s ↔ ∀ i, x ∈ s i := by
+theorem mem_iInf {ι} {x : α} {s : ι → Closeds α} : x ∈ iInf s ↔ ∀ i, x ∈ s i := by
simp [← SetLike.mem_coe]
-#align topological_space.closeds.mem_infi TopologicalSpace.Closeds.mem_infᵢ
+#align topological_space.closeds.mem_infi TopologicalSpace.Closeds.mem_iInf
-/- warning: topological_space.closeds.mem_Inf -> TopologicalSpace.Closeds.mem_infₛ is a dubious translation:
+/- warning: topological_space.closeds.mem_Inf -> TopologicalSpace.Closeds.mem_sInf is a dubious translation:
lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {S : Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)} {x : α}, Iff (Membership.Mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.hasMem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)) x (InfSet.infₛ.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) S)) (forall (s : TopologicalSpace.Closeds.{u1} α _inst_1), (Membership.Mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.hasMem.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) s S) -> (Membership.Mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.hasMem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)) x s))
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {S : Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)} {x : α}, Iff (Membership.Mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.hasMem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)) x (InfSet.sInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))) S)) (forall (s : TopologicalSpace.Closeds.{u1} α _inst_1), (Membership.Mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.hasMem.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) s S) -> (Membership.Mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.hasMem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)) x s))
but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {S : Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)} {x : α}, Iff (Membership.mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.instMembership.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1)) x (InfSet.infₛ.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) S)) (forall (s : TopologicalSpace.Closeds.{u1} α _inst_1), (Membership.mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.instMembershipSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) s S) -> (Membership.mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.instMembership.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1)) x s))
-Case conversion may be inaccurate. Consider using '#align topological_space.closeds.mem_Inf TopologicalSpace.Closeds.mem_infₛₓ'. -/
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] {S : Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)} {x : α}, Iff (Membership.mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.instMembership.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1)) x (InfSet.sInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toInfSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))) S)) (forall (s : TopologicalSpace.Closeds.{u1} α _inst_1), (Membership.mem.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) (Set.instMembershipSet.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1)) s S) -> (Membership.mem.{u1, u1} α (TopologicalSpace.Closeds.{u1} α _inst_1) (SetLike.instMembership.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1)) x s))
+Case conversion may be inaccurate. Consider using '#align topological_space.closeds.mem_Inf TopologicalSpace.Closeds.mem_sInfₓ'. -/
@[simp]
-theorem mem_infₛ {S : Set (Closeds α)} {x : α} : x ∈ infₛ S ↔ ∀ s ∈ S, x ∈ s := by
- simp_rw [infₛ_eq_infᵢ, mem_infi]
-#align topological_space.closeds.mem_Inf TopologicalSpace.Closeds.mem_infₛ
+theorem mem_sInf {S : Set (Closeds α)} {x : α} : x ∈ sInf S ↔ ∀ s ∈ S, x ∈ s := by
+ simp_rw [sInf_eq_iInf, mem_infi]
+#align topological_space.closeds.mem_Inf TopologicalSpace.Closeds.mem_sInf
instance : Coframe (Closeds α) :=
{ Closeds.completeLattice with
- infₛ := infₛ
- infᵢ_sup_le_sup_inf := fun a s =>
- (SetLike.coe_injective <| by simp only [coe_sup, coe_infi, coe_Inf, Set.union_interᵢ₂]).le }
+ sInf := sInf
+ iInf_sup_le_sup_inf := fun a s =>
+ (SetLike.coe_injective <| by simp only [coe_sup, coe_infi, coe_Inf, Set.union_iInter₂]).le }
#print TopologicalSpace.Closeds.singleton /-
/-- The term of `closeds α` corresponding to a singleton. -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/4c586d291f189eecb9d00581aeb3dd998ac34442
@@ -389,7 +389,7 @@ lean 3 declaration is
but is expected to have type
forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] [_inst_3 : T1Space.{u1} α _inst_1] {s : TopologicalSpace.Opens.{u1} α _inst_1}, Iff (IsCoatom.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (TopologicalSpace.Opens.instCompleteLatticeOpens.{u1} α _inst_1)))) (BoundedOrder.toOrderTop.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (Preorder.toLE.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (PartialOrder.toPreorder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteSemilatticeInf.toPartialOrder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (CompleteLattice.toCompleteSemilatticeInf.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (TopologicalSpace.Opens.instCompleteLatticeOpens.{u1} α _inst_1))))) (CompleteLattice.toBoundedOrder.{u1} (TopologicalSpace.Opens.{u1} α _inst_1) (TopologicalSpace.Opens.instCompleteLatticeOpens.{u1} α _inst_1))) s) (Exists.{succ u1} α (fun (x : α) => Eq.{succ u1} (TopologicalSpace.Opens.{u1} α _inst_1) s (TopologicalSpace.Closeds.compl.{u1} α _inst_1 (TopologicalSpace.Closeds.singleton.{u1} α _inst_1 _inst_3 x))))
Case conversion may be inaccurate. Consider using '#align topological_space.opens.is_coatom_iff TopologicalSpace.Opens.isCoatom_iffₓ'. -/
-/- ./././Mathport/Syntax/Translate/Tactic/Builtin.lean:76:14: unsupported tactic `congrm #[[expr «expr∃ , »((x), _)]] -/
+/- ./././Mathport/Syntax/Translate/Tactic/Builtin.lean:73:14: unsupported tactic `congrm #[[expr «expr∃ , »((x), _)]] -/
/-- in a `t1_space`, coatoms of `opens α` are precisely complements of singletons:
`(closeds.singleton x).compl`. -/
theorem Opens.isCoatom_iff [T1Space α] {s : Opens α} :
@@ -399,7 +399,7 @@ theorem Opens.isCoatom_iff [T1Space α] {s : Opens α} :
change IsAtom (closeds.compl_order_iso α s.compl) ↔ _
rw [(closeds.compl_order_iso α).isAtom_iff, closeds.is_atom_iff]
trace
- "./././Mathport/Syntax/Translate/Tactic/Builtin.lean:76:14: unsupported tactic `congrm #[[expr «expr∃ , »((x), _)]]"
+ "./././Mathport/Syntax/Translate/Tactic/Builtin.lean:73:14: unsupported tactic `congrm #[[expr «expr∃ , »((x), _)]]"
exact closeds.compl_bijective.injective.eq_iff.symm
#align topological_space.opens.is_coatom_iff TopologicalSpace.Opens.isCoatom_iff
mathlib commit https://github.com/leanprover-community/mathlib/commit/9da1b3534b65d9661eb8f42443598a92bbb49211
@@ -133,9 +133,9 @@ instance : Inhabited (Closeds α) :=
/- warning: topological_space.closeds.coe_sup -> TopologicalSpace.Closeds.coe_sup is a dubious translation:
lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Closeds.{u1} α _inst_1) (t : TopologicalSpace.Closeds.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (HasSup.sup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SemilatticeSup.toHasSup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Lattice.toSemilatticeSup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))))) s t)) (Union.union.{u1} (Set.{u1} α) (Set.hasUnion.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) s) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) t))
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Closeds.{u1} α _inst_1) (t : TopologicalSpace.Closeds.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (Sup.sup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SemilatticeSup.toHasSup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Lattice.toSemilatticeSup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))))) s t)) (Union.union.{u1} (Set.{u1} α) (Set.hasUnion.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) s) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) t))
but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Closeds.{u1} α _inst_1) (t : TopologicalSpace.Closeds.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (HasSup.sup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SemilatticeSup.toHasSup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Lattice.toSemilatticeSup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))))) s t)) (Union.union.{u1} (Set.{u1} α) (Set.instUnionSet.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) s) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) t))
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Closeds.{u1} α _inst_1) (t : TopologicalSpace.Closeds.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (Sup.sup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SemilatticeSup.toSup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Lattice.toSemilatticeSup.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1))))) s t)) (Union.union.{u1} (Set.{u1} α) (Set.instUnionSet.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) s) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) t))
Case conversion may be inaccurate. Consider using '#align topological_space.closeds.coe_sup TopologicalSpace.Closeds.coe_supₓ'. -/
@[simp, norm_cast]
theorem coe_sup (s t : Closeds α) : (↑(s ⊔ t) : Set α) = s ∪ t :=
@@ -144,9 +144,9 @@ theorem coe_sup (s t : Closeds α) : (↑(s ⊔ t) : Set α) = s ∪ t :=
/- warning: topological_space.closeds.coe_inf -> TopologicalSpace.Closeds.coe_inf is a dubious translation:
lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Closeds.{u1} α _inst_1) (t : TopologicalSpace.Closeds.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (HasInf.inf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SemilatticeInf.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Lattice.toSemilatticeInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))))) s t)) (Inter.inter.{u1} (Set.{u1} α) (Set.hasInter.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) s) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) t))
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Closeds.{u1} α _inst_1) (t : TopologicalSpace.Closeds.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) (Inf.inf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (SemilatticeInf.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Lattice.toSemilatticeInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.completeLattice.{u1} α _inst_1))))) s t)) (Inter.inter.{u1} (Set.{u1} α) (Set.hasInter.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) s) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.setLike.{u1} α _inst_1)))) t))
but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Closeds.{u1} α _inst_1) (t : TopologicalSpace.Closeds.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (HasInf.inf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Lattice.toHasInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1)))) s t)) (Inter.inter.{u1} (Set.{u1} α) (Set.instInterSet.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) s) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) t))
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Closeds.{u1} α _inst_1) (t : TopologicalSpace.Closeds.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) (Inf.inf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (Lattice.toInf.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (ConditionallyCompleteLattice.toLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (CompleteLattice.toConditionallyCompleteLattice.{u1} (TopologicalSpace.Closeds.{u1} α _inst_1) (TopologicalSpace.Closeds.instCompleteLatticeCloseds.{u1} α _inst_1)))) s t)) (Inter.inter.{u1} (Set.{u1} α) (Set.instInterSet.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) s) (SetLike.coe.{u1, u1} (TopologicalSpace.Closeds.{u1} α _inst_1) α (TopologicalSpace.Closeds.instSetLikeCloseds.{u1} α _inst_1) t))
Case conversion may be inaccurate. Consider using '#align topological_space.closeds.coe_inf TopologicalSpace.Closeds.coe_infₓ'. -/
@[simp, norm_cast]
theorem coe_inf (s t : Closeds α) : (↑(s ⊓ t) : Set α) = s ∩ t :=
@@ -451,10 +451,10 @@ theorem coe_mk (s : Set α) (h) : (mk s h : Set α) = s :=
#align topological_space.clopens.coe_mk TopologicalSpace.Clopens.coe_mk
-/
-instance : HasSup (Clopens α) :=
+instance : Sup (Clopens α) :=
⟨fun s t => ⟨s ∪ t, s.clopen.union t.clopen⟩⟩
-instance : HasInf (Clopens α) :=
+instance : Inf (Clopens α) :=
⟨fun s t => ⟨s ∩ t, s.clopen.inter t.clopen⟩⟩
instance : Top (Clopens α) :=
@@ -475,9 +475,9 @@ instance : BooleanAlgebra (Clopens α) :=
/- warning: topological_space.clopens.coe_sup -> TopologicalSpace.Clopens.coe_sup is a dubious translation:
lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Clopens.{u1} α _inst_1) (t : TopologicalSpace.Clopens.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) (HasSup.sup.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.hasSup.{u1} α _inst_1) s t)) (Union.union.{u1} (Set.{u1} α) (Set.hasUnion.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) s) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) t))
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Clopens.{u1} α _inst_1) (t : TopologicalSpace.Clopens.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) (Sup.sup.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.hasSup.{u1} α _inst_1) s t)) (Union.union.{u1} (Set.{u1} α) (Set.hasUnion.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) s) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) t))
but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Clopens.{u1} α _inst_1) (t : TopologicalSpace.Clopens.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) (HasSup.sup.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.instHasSupClopens.{u1} α _inst_1) s t)) (Union.union.{u1} (Set.{u1} α) (Set.instUnionSet.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) s) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) t))
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Clopens.{u1} α _inst_1) (t : TopologicalSpace.Clopens.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) (Sup.sup.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.instSupClopens.{u1} α _inst_1) s t)) (Union.union.{u1} (Set.{u1} α) (Set.instUnionSet.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) s) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) t))
Case conversion may be inaccurate. Consider using '#align topological_space.clopens.coe_sup TopologicalSpace.Clopens.coe_supₓ'. -/
@[simp]
theorem coe_sup (s t : Clopens α) : (↑(s ⊔ t) : Set α) = s ∪ t :=
@@ -486,9 +486,9 @@ theorem coe_sup (s t : Clopens α) : (↑(s ⊔ t) : Set α) = s ∪ t :=
/- warning: topological_space.clopens.coe_inf -> TopologicalSpace.Clopens.coe_inf is a dubious translation:
lean 3 declaration is
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Clopens.{u1} α _inst_1) (t : TopologicalSpace.Clopens.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) (HasInf.inf.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.hasInf.{u1} α _inst_1) s t)) (Inter.inter.{u1} (Set.{u1} α) (Set.hasInter.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) s) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) t))
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Clopens.{u1} α _inst_1) (t : TopologicalSpace.Clopens.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) (Inf.inf.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.hasInf.{u1} α _inst_1) s t)) (Inter.inter.{u1} (Set.{u1} α) (Set.hasInter.{u1} α) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) s) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (HasLiftT.mk.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (CoeTCₓ.coe.{succ u1, succ u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (Set.{u1} α) (SetLike.Set.hasCoeT.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.setLike.{u1} α _inst_1)))) t))
but is expected to have type
- forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Clopens.{u1} α _inst_1) (t : TopologicalSpace.Clopens.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) (HasInf.inf.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.instHasInfClopens.{u1} α _inst_1) s t)) (Inter.inter.{u1} (Set.{u1} α) (Set.instInterSet.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) s) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) t))
+ forall {α : Type.{u1}} [_inst_1 : TopologicalSpace.{u1} α] (s : TopologicalSpace.Clopens.{u1} α _inst_1) (t : TopologicalSpace.Clopens.{u1} α _inst_1), Eq.{succ u1} (Set.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) (Inf.inf.{u1} (TopologicalSpace.Clopens.{u1} α _inst_1) (TopologicalSpace.Clopens.instInfClopens.{u1} α _inst_1) s t)) (Inter.inter.{u1} (Set.{u1} α) (Set.instInterSet.{u1} α) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) s) (SetLike.coe.{u1, u1} (TopologicalSpace.Clopens.{u1} α _inst_1) α (TopologicalSpace.Clopens.instSetLikeClopens.{u1} α _inst_1) t))
Case conversion may be inaccurate. Consider using '#align topological_space.clopens.coe_inf TopologicalSpace.Clopens.coe_infₓ'. -/
@[simp]
theorem coe_inf (s t : Clopens α) : (↑(s ⊓ t) : Set α) = s ∩ t :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
@@ -120,7 +120,7 @@ theorem coe_top : (↑(⊤ : Closeds α) : Set α) = univ :=
rfl
#align topological_space.closeds.coe_top TopologicalSpace.Closeds.coe_top
-@[simp, norm_cast] -- Porting note: new
+@[simp, norm_cast] -- Porting note (#10756): new theorem
theorem coe_eq_univ {s : Closeds α} : (s : Set α) = univ ↔ s = ⊤ :=
SetLike.coe_injective.eq_iff' rfl
@@ -129,7 +129,7 @@ theorem coe_bot : (↑(⊥ : Closeds α) : Set α) = ∅ :=
rfl
#align topological_space.closeds.coe_bot TopologicalSpace.Closeds.coe_bot
-@[simp, norm_cast] -- Porting note: new
+@[simp, norm_cast] -- Porting note (#10756): new theorem
theorem coe_eq_empty {s : Closeds α} : (s : Set α) = ∅ ↔ s = ⊥ :=
SetLike.coe_injective.eq_iff' rfl
Homogenises porting notes via capitalisation and addition of whitespace.
It makes the following changes:
@@ -120,7 +120,7 @@ theorem coe_top : (↑(⊤ : Closeds α) : Set α) = univ :=
rfl
#align topological_space.closeds.coe_top TopologicalSpace.Closeds.coe_top
-@[simp, norm_cast] -- porting note: new
+@[simp, norm_cast] -- Porting note: new
theorem coe_eq_univ {s : Closeds α} : (s : Set α) = univ ↔ s = ⊤ :=
SetLike.coe_injective.eq_iff' rfl
@@ -129,7 +129,7 @@ theorem coe_bot : (↑(⊥ : Closeds α) : Set α) = ∅ :=
rfl
#align topological_space.closeds.coe_bot TopologicalSpace.Closeds.coe_bot
-@[simp, norm_cast] -- porting note: new
+@[simp, norm_cast] -- Porting note: new
theorem coe_eq_empty {s : Closeds α} : (s : Set α) = ∅ ↔ s = ⊥ :=
SetLike.coe_injective.eq_iff' rfl
@@ -157,7 +157,7 @@ theorem coe_finset_inf (f : ι → Closeds α) (s : Finset ι) :
map_finset_inf (⟨⟨(↑), coe_inf⟩, coe_top⟩ : InfTopHom (Closeds α) (Set α)) _ _
#align topological_space.closeds.coe_finset_inf TopologicalSpace.Closeds.coe_finset_inf
--- porting note: Lean 3 proofs didn't work as expected, so I reordered lemmas to fix&golf the proofs
+-- Porting note: Lean 3 proofs didn't work as expected, so I reordered lemmas to fix&golf the proofs
@[simp]
theorem mem_sInf {S : Set (Closeds α)} {x : α} : x ∈ sInf S ↔ ∀ s ∈ S, x ∈ s := mem_iInter₂
Int.units_ne_neg_self -> units_ne_neg_self
Int.neg_units_ne_self -> neg_units_ne_self
simps
config for Closeds
gcongr
-lemmas (currently is a bit picky about the exact statement of lemmas tagged with gcongr
, so I had to add some variants that I could tag).@@ -51,7 +51,7 @@ theorem closed (s : Closeds α) : IsClosed (s : Set α) :=
/-- See Note [custom simps projection]. -/
def Simps.coe (s : Closeds α) : Set α := s
-initialize_simps_projections Closeds (carrier → coe)
+initialize_simps_projections Closeds (carrier → coe, as_prefix coe)
@[ext]
protected theorem ext {s t : Closeds α} (h : (s : Set α) = t) : s = t :=
@@ -64,6 +64,7 @@ theorem coe_mk (s : Set α) (h) : (mk s h : Set α) = s :=
#align topological_space.closeds.coe_mk TopologicalSpace.Closeds.coe_mk
/-- The closure of a set, as an element of `TopologicalSpace.Closeds`. -/
+@[simps]
protected def closure (s : Set α) : Closeds α :=
⟨closure s, isClosed_closure⟩
#align topological_space.closeds.closure TopologicalSpace.Closeds.closure
@@ -80,7 +81,7 @@ def gi : GaloisInsertion (@Closeds.closure α _) (↑) where
choice_eq _s hs := SetLike.coe_injective <| subset_closure.antisymm hs
#align topological_space.closeds.gi TopologicalSpace.Closeds.gi
-instance : CompleteLattice (Closeds α) :=
+instance completeLattice : CompleteLattice (Closeds α) :=
CompleteLattice.copy
(GaloisInsertion.liftCompleteLattice gi)
-- le
@@ -105,7 +106,7 @@ instance : Inhabited (Closeds α) :=
⟨⊥⟩
@[simp, norm_cast]
-theorem coe_sup (s t : Closeds α) : (↑(s ⊔ t) : Set α) = ↑s ∪ ↑t :=
+theorem coe_sup (s t : Closeds α) : (↑(s ⊔ t) : Set α) = ↑s ∪ ↑t := by
rfl
#align topological_space.closeds.coe_sup TopologicalSpace.Closeds.coe_sup
@@ -140,6 +141,10 @@ theorem coe_sInf {S : Set (Closeds α)} : (↑(sInf S) : Set α) = ⋂ i ∈ S,
rfl
#align topological_space.closeds.coe_Inf TopologicalSpace.Closeds.coe_sInf
+@[simp]
+lemma coe_sSup {S : Set (Closeds α)} : ((sSup S : Closeds α) : Set α) =
+ closure (⋃₀ ((↑) '' S)) := by rfl
+
@[simp, norm_cast]
theorem coe_finset_sup (f : ι → Closeds α) (s : Finset ι) :
(↑(s.sup f) : Set α) = s.sup ((↑) ∘ f) :=
$
with <|
(#9319)
See Zulip thread for the discussion.
@@ -251,7 +251,7 @@ lemma Closeds.coe_eq_singleton_of_isAtom [T0Space α] {s : Closeds α} (hs : IsA
∃ a, (s : Set α) = {a} := by
refine minimal_nonempty_closed_eq_singleton s.2 (coe_nonempty.2 hs.1) fun t hts ht ht' ↦ ?_
lift t to Closeds α using ht'
- exact SetLike.coe_injective.eq_iff.2 $ (hs.le_iff_eq $ coe_nonempty.1 ht).1 hts
+ exact SetLike.coe_injective.eq_iff.2 <| (hs.le_iff_eq <| coe_nonempty.1 ht).1 hts
@[simp, norm_cast] lemma Closeds.isAtom_coe [T1Space α] {s : Closeds α} :
IsAtom (s : Set α) ↔ IsAtom s :=
@@ -315,6 +315,8 @@ theorem coe_mk (s : Set α) (h) : (mk s h : Set α) = s :=
rfl
#align topological_space.clopens.coe_mk TopologicalSpace.Clopens.coe_mk
+@[simp] lemma mem_mk {s : Set α} {x h} : x ∈ mk s h ↔ x ∈ s := .rfl
+
instance : Sup (Clopens α) := ⟨fun s t => ⟨s ∪ t, s.isClopen.union t.isClopen⟩⟩
instance : Inf (Clopens α) := ⟨fun s t => ⟨s ∩ t, s.isClopen.inter t.isClopen⟩⟩
instance : Top (Clopens α) := ⟨⟨⊤, isClopen_univ⟩⟩
@@ -346,6 +348,15 @@ instance : BooleanAlgebra (Clopens α) :=
instance : Inhabited (Clopens α) := ⟨⊥⟩
+variable [TopologicalSpace β]
+
+instance : SProd (Clopens α) (Clopens β) (Clopens (α × β)) where
+ sprod s t := ⟨s ×ˢ t, s.2.prod t.2⟩
+
+@[simp]
+protected lemma mem_prod {s : Clopens α} {t : Clopens β} {x : α × β} :
+ x ∈ s ×ˢ t ↔ x.1 ∈ s ∧ x.2 ∈ t := .rfl
+
end Clopens
end TopologicalSpace
Characterise IsAtom
, IsCoatom
, Covby
in Set α
, Multiset α
, Finset α
and deduce that Multiset α
, Finset α
are graded orders.
Note I am moving some existing characterisations to here because it makes sense thematically, but I could be convinced otherwise.
@@ -189,6 +189,8 @@ def singleton [T1Space α] (x : α) : Closeds α :=
⟨{x}, isClosed_singleton⟩
#align topological_space.closeds.singleton TopologicalSpace.Closeds.singleton
+@[simp] lemma mem_singleton [T1Space α] {a b : α} : a ∈ singleton b ↔ a = b := Iff.rfl
+
end Closeds
/-- The complement of a closed set as an open set. -/
@@ -245,18 +247,22 @@ def Opens.complOrderIso : Opens α ≃o (Closeds α)ᵒᵈ where
variable {α}
-/-- in a `T1Space`, atoms of `TopologicalSpace.Closeds α` are precisely the
-`TopologicalSpace.Closeds.singleton`s.
+lemma Closeds.coe_eq_singleton_of_isAtom [T0Space α] {s : Closeds α} (hs : IsAtom s) :
+ ∃ a, (s : Set α) = {a} := by
+ refine minimal_nonempty_closed_eq_singleton s.2 (coe_nonempty.2 hs.1) fun t hts ht ht' ↦ ?_
+ lift t to Closeds α using ht'
+ exact SetLike.coe_injective.eq_iff.2 $ (hs.le_iff_eq $ coe_nonempty.1 ht).1 hts
-TODO: use `minimal_nonempty_closed_eq_singleton` to show that an atom in `TopologicalSpace.Closeds`
-in a T₀ space is a singleton. -/
+@[simp, norm_cast] lemma Closeds.isAtom_coe [T1Space α] {s : Closeds α} :
+ IsAtom (s : Set α) ↔ IsAtom s :=
+ Closeds.gi.isAtom_iff' rfl
+ (fun t ht ↦ by obtain ⟨x, rfl⟩ := Set.isAtom_iff.1 ht; exact closure_singleton) s
+
+/-- in a `T1Space`, atoms of `TopologicalSpace.Closeds α` are precisely the
+`TopologicalSpace.Closeds.singleton`s. -/
theorem Closeds.isAtom_iff [T1Space α] {s : Closeds α} :
IsAtom s ↔ ∃ x, s = Closeds.singleton x := by
- have : IsAtom (s : Set α) ↔ IsAtom s := by
- refine' Closeds.gi.isAtom_iff' rfl (fun t ht => _) s
- obtain ⟨x, rfl⟩ := t.isAtom_iff.mp ht
- exact closure_singleton
- simp only [← this, (s : Set α).isAtom_iff, SetLike.ext'_iff, Closeds.singleton_coe]
+ simp [← Closeds.isAtom_coe, Set.isAtom_iff, SetLike.ext_iff, Set.ext_iff]
#align topological_space.closeds.is_atom_iff TopologicalSpace.Closeds.isAtom_iff
/-- in a `T1Space`, coatoms of `TopologicalSpace.Opens α` are precisely complements of singletons:
This PR renames the field Clopens.clopen' -> Clopens.isClopen', and the lemmas
as well as: ClopenUpperSet.clopen -> ClopenUpperSet.isClopen connectedComponent_eq_iInter_clopen -> connectedComponent_eq_iInter_isClopen connectedComponent_subset_iInter_clopen -> connectedComponent_subset_iInter_isClopen continuous_boolIndicator_iff_clopen -> continuous_boolIndicator_iff_isClopen continuousOn_boolIndicator_iff_clopen -> continuousOn_boolIndicator_iff_isClopen DiscreteQuotient.ofClopen -> DiscreteQuotient.ofIsClopen disjoint_or_subset_of_clopen -> disjoint_or_subset_of_isClopen exists_clopen_{lower,upper}of_not_le -> exists_isClopen{lower,upper}_of_not_le exists_clopen_of_cofiltered -> exists_isClopen_of_cofiltered exists_clopen_of_totally_separated -> exists_isClopen_of_totally_separated exists_clopen_upper_or_lower_of_ne -> exists_isClopen_upper_or_lower_of_ne IsPreconnected.subset_clopen -> IsPreconnected.subset_isClopen isTotallyDisconnected_of_clopen_set -> isTotallyDisconnected_of_isClopen_set LocallyConstant.ofClopen_fiber_one -> LocallyConstant.ofIsClopen_fiber_one LocallyConstant.ofClopen_fiber_zero -> LocallyConstant.ofIsClopen_fiber_zero LocallyConstant.ofClopen -> LocallyConstant.ofIsClopen preimage_clopen_of_clopen -> preimage_isClopen_of_isClopen TopologicalSpace.Clopens.clopen -> TopologicalSpace.Clopens.isClopen
@@ -275,7 +275,7 @@ theorem Opens.isCoatom_iff [T1Space α] {s : Opens α} :
/-- The type of clopen sets of a topological space. -/
structure Clopens (α : Type*) [TopologicalSpace α] where
carrier : Set α
- clopen' : IsClopen carrier
+ isClopen' : IsClopen carrier
#align topological_space.clopens TopologicalSpace.Clopens
namespace Clopens
@@ -284,9 +284,9 @@ instance : SetLike (Clopens α) α where
coe s := s.carrier
coe_injective' s t h := by cases s; cases t; congr
-theorem clopen (s : Clopens α) : IsClopen (s : Set α) :=
- s.clopen'
-#align topological_space.clopens.clopen TopologicalSpace.Clopens.clopen
+theorem isClopen (s : Clopens α) : IsClopen (s : Set α) :=
+ s.isClopen'
+#align topological_space.clopens.clopen TopologicalSpace.Clopens.isClopen
/-- See Note [custom simps projection]. -/
def Simps.coe (s : Clopens α) : Set α := s
@@ -296,7 +296,7 @@ initialize_simps_projections Clopens (carrier → coe)
/-- Reinterpret a clopen as an open. -/
@[simps]
def toOpens (s : Clopens α) : Opens α :=
- ⟨s, s.clopen.isOpen⟩
+ ⟨s, s.isClopen.isOpen⟩
#align topological_space.clopens.to_opens TopologicalSpace.Clopens.toOpens
@[ext]
@@ -309,12 +309,12 @@ theorem coe_mk (s : Set α) (h) : (mk s h : Set α) = s :=
rfl
#align topological_space.clopens.coe_mk TopologicalSpace.Clopens.coe_mk
-instance : Sup (Clopens α) := ⟨fun s t => ⟨s ∪ t, s.clopen.union t.clopen⟩⟩
-instance : Inf (Clopens α) := ⟨fun s t => ⟨s ∩ t, s.clopen.inter t.clopen⟩⟩
+instance : Sup (Clopens α) := ⟨fun s t => ⟨s ∪ t, s.isClopen.union t.isClopen⟩⟩
+instance : Inf (Clopens α) := ⟨fun s t => ⟨s ∩ t, s.isClopen.inter t.isClopen⟩⟩
instance : Top (Clopens α) := ⟨⟨⊤, isClopen_univ⟩⟩
instance : Bot (Clopens α) := ⟨⟨⊥, isClopen_empty⟩⟩
-instance : SDiff (Clopens α) := ⟨fun s t => ⟨s \ t, s.clopen.diff t.clopen⟩⟩
-instance : HasCompl (Clopens α) := ⟨fun s => ⟨sᶜ, s.clopen.compl⟩⟩
+instance : SDiff (Clopens α) := ⟨fun s t => ⟨s \ t, s.isClopen.diff t.isClopen⟩⟩
+instance : HasCompl (Clopens α) := ⟨fun s => ⟨sᶜ, s.isClopen.compl⟩⟩
instance : BooleanAlgebra (Clopens α) :=
SetLike.coe_injective.booleanAlgebra _ (fun _ _ => rfl) (fun _ _ => rfl) rfl rfl (fun _ => rfl)
Type _
and Sort _
(#6499)
We remove all possible occurences of Type _
and Sort _
in favor of Type*
and Sort*
.
This has nice performance benefits.
@@ -22,7 +22,7 @@ For a topological space `α`,
open Order OrderDual Set
-variable {ι α β : Type _} [TopologicalSpace α] [TopologicalSpace β]
+variable {ι α β : Type*} [TopologicalSpace α] [TopologicalSpace β]
namespace TopologicalSpace
@@ -30,7 +30,7 @@ namespace TopologicalSpace
/-- The type of closed subsets of a topological space. -/
-structure Closeds (α : Type _) [TopologicalSpace α] where
+structure Closeds (α : Type*) [TopologicalSpace α] where
carrier : Set α
closed' : IsClosed carrier
#align topological_space.closeds TopologicalSpace.Closeds
@@ -273,7 +273,7 @@ theorem Opens.isCoatom_iff [T1Space α] {s : Opens α} :
/-- The type of clopen sets of a topological space. -/
-structure Clopens (α : Type _) [TopologicalSpace α] where
+structure Clopens (α : Type*) [TopologicalSpace α] where
carrier : Set α
clopen' : IsClopen carrier
#align topological_space.clopens TopologicalSpace.Clopens
@@ -2,14 +2,11 @@
Copyright (c) 2020 Floris van Doorn. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Floris van Doorn, Yaël Dillies
-
-! This file was ported from Lean 3 source module topology.sets.closeds
-! leanprover-community/mathlib commit dc6c365e751e34d100e80fe6e314c3c3e0fd2988
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.Topology.Sets.Opens
+#align_import topology.sets.closeds from "leanprover-community/mathlib"@"dc6c365e751e34d100e80fe6e314c3c3e0fd2988"
+
/-!
# Closed sets
@@ -171,7 +171,7 @@ theorem coe_iInf {ι} (s : ι → Closeds α) : ((⨅ i, s i : Closeds α) : Set
#align topological_space.closeds.coe_infi TopologicalSpace.Closeds.coe_iInf
theorem iInf_def {ι} (s : ι → Closeds α) :
- (⨅ i, s i) = ⟨⋂ i, s i, isClosed_iInter fun i => (s i).2⟩ := by ext1; simp
+ ⨅ i, s i = ⟨⋂ i, s i, isClosed_iInter fun i => (s i).2⟩ := by ext1; simp
#align topological_space.closeds.infi_def TopologicalSpace.Closeds.iInf_def
@[simp]
@@ -338,7 +338,7 @@ instance : BooleanAlgebra (Clopens α) :=
@[simp] theorem coe_sdiff (s t : Clopens α) : (↑(s \ t) : Set α) = ↑s \ ↑t := rfl
#align topological_space.clopens.coe_sdiff TopologicalSpace.Clopens.coe_sdiff
-@[simp] theorem coe_compl (s : Clopens α) : (↑(sᶜ) : Set α) = ↑sᶜ := rfl
+@[simp] theorem coe_compl (s : Clopens α) : (↑sᶜ : Set α) = (↑s)ᶜ := rfl
#align topological_space.clopens.coe_compl TopologicalSpace.Clopens.coe_compl
instance : Inhabited (Clopens α) := ⟨⊥⟩
sSup
/iSup
(#3938)
As discussed on Zulip
supₛ
→ sSup
infₛ
→ sInf
supᵢ
→ iSup
infᵢ
→ iInf
bsupₛ
→ bsSup
binfₛ
→ bsInf
bsupᵢ
→ biSup
binfᵢ
→ biInf
csupₛ
→ csSup
cinfₛ
→ csInf
csupᵢ
→ ciSup
cinfᵢ
→ ciInf
unionₛ
→ sUnion
interₛ
→ sInter
unionᵢ
→ iUnion
interᵢ
→ iInter
bunionₛ
→ bsUnion
binterₛ
→ bsInter
bunionᵢ
→ biUnion
binterᵢ
→ biInter
Co-authored-by: Parcly Taxel <reddeloostw@gmail.com>
@@ -97,11 +97,11 @@ instance : CompleteLattice (Closeds α) :=
(funext fun s => funext fun t => SetLike.coe_injective (s.2.union t.2).closure_eq.symm)
-- inf
(fun s t => ⟨s ∩ t, s.2.inter t.2⟩) rfl
- -- supₛ
+ -- sSup
_ rfl
- -- infₛ
- (fun S => ⟨⋂ s ∈ S, ↑s, isClosed_binterᵢ fun s _ => s.2⟩)
- (funext fun _ => SetLike.coe_injective infₛ_image.symm)
+ -- sInf
+ (fun S => ⟨⋂ s ∈ S, ↑s, isClosed_biInter fun s _ => s.2⟩)
+ (funext fun _ => SetLike.coe_injective sInf_image.symm)
/-- The type of closed sets is inhabited, with default element the empty set. -/
instance : Inhabited (Closeds α) :=
@@ -139,9 +139,9 @@ theorem coe_nonempty {s : Closeds α} : (s : Set α).Nonempty ↔ s ≠ ⊥ :=
nonempty_iff_ne_empty.trans coe_eq_empty.not
@[simp, norm_cast]
-theorem coe_infₛ {S : Set (Closeds α)} : (↑(infₛ S) : Set α) = ⋂ i ∈ S, ↑i :=
+theorem coe_sInf {S : Set (Closeds α)} : (↑(sInf S) : Set α) = ⋂ i ∈ S, ↑i :=
rfl
-#align topological_space.closeds.coe_Inf TopologicalSpace.Closeds.coe_infₛ
+#align topological_space.closeds.coe_Inf TopologicalSpace.Closeds.coe_sInf
@[simp, norm_cast]
theorem coe_finset_sup (f : ι → Closeds α) (s : Finset ι) :
@@ -158,33 +158,33 @@ theorem coe_finset_inf (f : ι → Closeds α) (s : Finset ι) :
-- porting note: Lean 3 proofs didn't work as expected, so I reordered lemmas to fix&golf the proofs
@[simp]
-theorem mem_infₛ {S : Set (Closeds α)} {x : α} : x ∈ infₛ S ↔ ∀ s ∈ S, x ∈ s := mem_interᵢ₂
-#align topological_space.closeds.mem_Inf TopologicalSpace.Closeds.mem_infₛ
+theorem mem_sInf {S : Set (Closeds α)} {x : α} : x ∈ sInf S ↔ ∀ s ∈ S, x ∈ s := mem_iInter₂
+#align topological_space.closeds.mem_Inf TopologicalSpace.Closeds.mem_sInf
@[simp]
-theorem mem_infᵢ {ι} {x : α} {s : ι → Closeds α} : x ∈ infᵢ s ↔ ∀ i, x ∈ s i := by simp [infᵢ]
-#align topological_space.closeds.mem_infi TopologicalSpace.Closeds.mem_infᵢ
+theorem mem_iInf {ι} {x : α} {s : ι → Closeds α} : x ∈ iInf s ↔ ∀ i, x ∈ s i := by simp [iInf]
+#align topological_space.closeds.mem_infi TopologicalSpace.Closeds.mem_iInf
@[simp, norm_cast]
-theorem coe_infᵢ {ι} (s : ι → Closeds α) : ((⨅ i, s i : Closeds α) : Set α) = ⋂ i, s i := by
+theorem coe_iInf {ι} (s : ι → Closeds α) : ((⨅ i, s i : Closeds α) : Set α) = ⋂ i, s i := by
ext; simp
-#align topological_space.closeds.coe_infi TopologicalSpace.Closeds.coe_infᵢ
+#align topological_space.closeds.coe_infi TopologicalSpace.Closeds.coe_iInf
-theorem infᵢ_def {ι} (s : ι → Closeds α) :
- (⨅ i, s i) = ⟨⋂ i, s i, isClosed_interᵢ fun i => (s i).2⟩ := by ext1; simp
-#align topological_space.closeds.infi_def TopologicalSpace.Closeds.infᵢ_def
+theorem iInf_def {ι} (s : ι → Closeds α) :
+ (⨅ i, s i) = ⟨⋂ i, s i, isClosed_iInter fun i => (s i).2⟩ := by ext1; simp
+#align topological_space.closeds.infi_def TopologicalSpace.Closeds.iInf_def
@[simp]
-theorem infᵢ_mk {ι} (s : ι → Set α) (h : ∀ i, IsClosed (s i)) :
- (⨅ i, ⟨s i, h i⟩ : Closeds α) = ⟨⋂ i, s i, isClosed_interᵢ h⟩ :=
- infᵢ_def _
-#align topological_space.closeds.infi_mk TopologicalSpace.Closeds.infᵢ_mk
+theorem iInf_mk {ι} (s : ι → Set α) (h : ∀ i, IsClosed (s i)) :
+ (⨅ i, ⟨s i, h i⟩ : Closeds α) = ⟨⋂ i, s i, isClosed_iInter h⟩ :=
+ iInf_def _
+#align topological_space.closeds.infi_mk TopologicalSpace.Closeds.iInf_mk
instance : Coframe (Closeds α) :=
{ inferInstanceAs (CompleteLattice (Closeds α)) with
- infₛ := infₛ
- infᵢ_sup_le_sup_infₛ := fun a s =>
- (SetLike.coe_injective <| by simp only [coe_sup, coe_infᵢ, coe_infₛ, Set.union_interᵢ₂]).le }
+ sInf := sInf
+ iInf_sup_le_sup_sInf := fun a s =>
+ (SetLike.coe_injective <| by simp only [coe_sup, coe_iInf, coe_sInf, Set.union_iInter₂]).le }
/-- The term of `TopologicalSpace.Closeds α` corresponding to a singleton. -/
@[simps]
@@ -312,8 +312,8 @@ theorem coe_mk (s : Set α) (h) : (mk s h : Set α) = s :=
rfl
#align topological_space.clopens.coe_mk TopologicalSpace.Clopens.coe_mk
-instance : HasSup (Clopens α) := ⟨fun s t => ⟨s ∪ t, s.clopen.union t.clopen⟩⟩
-instance : HasInf (Clopens α) := ⟨fun s t => ⟨s ∩ t, s.clopen.inter t.clopen⟩⟩
+instance : Sup (Clopens α) := ⟨fun s t => ⟨s ∪ t, s.clopen.union t.clopen⟩⟩
+instance : Inf (Clopens α) := ⟨fun s t => ⟨s ∩ t, s.clopen.inter t.clopen⟩⟩
instance : Top (Clopens α) := ⟨⟨⊤, isClopen_univ⟩⟩
instance : Bot (Clopens α) := ⟨⟨⊥, isClopen_empty⟩⟩
instance : SDiff (Clopens α) := ⟨fun s t => ⟨s \ t, s.clopen.diff t.clopen⟩⟩
@@ -97,9 +97,9 @@ instance : CompleteLattice (Closeds α) :=
(funext fun s => funext fun t => SetLike.coe_injective (s.2.union t.2).closure_eq.symm)
-- inf
(fun s t => ⟨s ∩ t, s.2.inter t.2⟩) rfl
- -- Sup
+ -- supₛ
_ rfl
- -- Inf
+ -- infₛ
(fun S => ⟨⋂ s ∈ S, ↑s, isClosed_binterᵢ fun s _ => s.2⟩)
(funext fun _ => SetLike.coe_injective infₛ_image.symm)
@@ -44,6 +44,9 @@ instance : SetLike (Closeds α) α where
coe := Closeds.carrier
coe_injective' s t h := by cases s; cases t; congr
+instance : CanLift (Set α) (Closeds α) (↑) IsClosed where
+ prf s hs := ⟨⟨s, hs⟩, rfl⟩
+
theorem closed (s : Closeds α) : IsClosed (s : Set α) :=
s.closed'
#align topological_space.closeds.closed TopologicalSpace.Closeds.closed
The unported dependencies are