Skip to content
This repository was archived by the owner on Jul 24, 2024. It is now read-only.

Commit ed005a8

Browse files
committed
feat(topology/order/basic): replace partial_order by preorder (#18064)
It turns out nearly all `partial_order` hypotheses can be generalized to `preorder` in this file.
1 parent 8f9b933 commit ed005a8

File tree

1 file changed

+26
-26
lines changed

1 file changed

+26
-26
lines changed

src/topology/order/basic.lean

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ set of points `(x, y)` with `x ≤ y` is closed in the product space. We introdu
8787
This property is satisfied for the order topology on a linear order, but it can be satisfied more
8888
generally, and suffices to derive many interesting properties relating order and topology. -/
8989
class order_closed_topology (α : Type*) [topological_space α] [preorder α] : Prop :=
90-
(is_closed_le' : is_closed {p:α×α | p.1 ≤ p.2})
90+
(is_closed_le' : is_closed {p : α × α | p.1 ≤ p.2})
9191

9292
instance [topological_space α] [h : first_countable_topology α] : first_countable_topology αᵒᵈ := h
9393

@@ -718,7 +718,7 @@ it on a preorder, but it is mostly interesting in linear orders, where it is als
718718
We define it as a mixin. If you want to introduce the order topology on a preorder, use
719719
`preorder.topology`. -/
720720
class order_topology (α : Type*) [t : topological_space α] [preorder α] : Prop :=
721-
(topology_eq_generate_intervals : t = generate_from {s | ∃a, s = Ioi a ∨ s = Iio a})
721+
(topology_eq_generate_intervals : t = generate_from {s | ∃ a, s = Ioi a ∨ s = Iio a})
722722

723723
/-- (Order) topology on a partial order `α` generated by the subbase of open intervals
724724
`(a, ∞) = { x ∣ a < x }, (-∞ , b) = {x ∣ x < b}` for all `a, b` in `α`. We do not register it as an
@@ -729,23 +729,23 @@ generate_from {s : set α | ∃ (a : α), s = {b : α | a < b} ∨ s = {b : α |
729729

730730
section order_topology
731731

732-
instance {α : Type*} [topological_space α] [partial_order α] [order_topology α] :
733-
order_topology αᵒᵈ :=
734-
by convert @order_topology.topology_eq_generate_intervals α _ _ _;
735-
conv in (_ ∨ _) { rw or.comm }; refl⟩
732+
section preorder
736733

737-
section partial_order
738-
variables [topological_space α] [partial_order α] [t : order_topology α]
734+
variables [topological_space α] [preorder α] [t : order_topology α]
739735
include t
740736

737+
instance : order_topology αᵒᵈ :=
738+
by convert @order_topology.topology_eq_generate_intervals α _ _ _;
739+
conv in (_ ∨ _) { rw or.comm }; refl⟩
740+
741741
lemma is_open_iff_generate_intervals {s : set α} :
742-
is_open s ↔ generate_open {s | ∃a, s = Ioi a ∨ s = Iio a} s :=
742+
is_open s ↔ generate_open {s | ∃ a, s = Ioi a ∨ s = Iio a} s :=
743743
by rw [t.topology_eq_generate_intervals]; refl
744744

745-
lemma is_open_lt' (a : α) : is_open {b:α | a < b} :=
745+
lemma is_open_lt' (a : α) : is_open {b : α | a < b} :=
746746
by rw [@is_open_iff_generate_intervals α _ _ t]; exact generate_open.basic _ ⟨a, or.inl rfl⟩
747747

748-
lemma is_open_gt' (a : α) : is_open {b:α | b < a} :=
748+
lemma is_open_gt' (a : α) : is_open {b : α | b < a} :=
749749
by rw [@is_open_iff_generate_intervals α _ _ t]; exact generate_open.basic _ ⟨a, or.inr rfl⟩
750750

751751
lemma lt_mem_nhds {a b : α} (h : a < b) : ∀ᶠ x in 𝓝 b, a < x :=
@@ -761,7 +761,7 @@ lemma ge_mem_nhds {a b : α} (h : a < b) : ∀ᶠ x in 𝓝 a, x ≤ b :=
761761
(𝓝 a).sets_of_superset (gt_mem_nhds h) $ assume b hb, le_of_lt hb
762762

763763
lemma nhds_eq_order (a : α) :
764-
𝓝 a = (⨅b ∈ Iio a, 𝓟 (Ioi b)) ⊓ (⨅b ∈ Ioi a, 𝓟 (Iio b)) :=
764+
𝓝 a = (⨅ b ∈ Iio a, 𝓟 (Ioi b)) ⊓ (⨅ b ∈ Ioi a, 𝓟 (Iio b)) :=
765765
by rw [t.topology_eq_generate_intervals, nhds_generate_from];
766766
from le_antisymm
767767
(le_inf
@@ -823,7 +823,7 @@ by rw [nhds_order_unbounded hu hl];
823823
from (tendsto_infi.2 $ assume l, tendsto_infi.2 $ assume hl,
824824
tendsto_infi.2 $ assume u, tendsto_infi.2 $ assume hu, tendsto_principal.2 $ h l u hl hu)
825825

826-
end partial_order
826+
end preorder
827827

828828
instance tendsto_Ixx_nhds_within {α : Type*} [preorder α] [topological_space α]
829829
(a : α) {s t : set α} {Ixx}
@@ -832,7 +832,7 @@ instance tendsto_Ixx_nhds_within {α : Type*} [preorder α] [topological_space
832832
filter.tendsto_Ixx_class_inf
833833

834834
instance tendsto_Icc_class_nhds_pi {ι : Type*} {α : ι → Type*}
835-
[Π i, partial_order (α i)] [Π i, topological_space (α i)] [∀ i, order_topology (α i)]
835+
[Π i, preorder (α i)] [Π i, topological_space (α i)] [∀ i, order_topology (α i)]
836836
(f : Π i, α i) :
837837
tendsto_Ixx_class Icc (𝓝 f) (𝓝 f) :=
838838
begin
@@ -846,7 +846,7 @@ begin
846846
end
847847

848848
theorem induced_order_topology' {α : Type u} {β : Type v}
849-
[partial_order α] [ta : topological_space β] [partial_order β] [order_topology β]
849+
[preorder α] [ta : topological_space β] [preorder β] [order_topology β]
850850
(f : α → β) (hf : ∀ {x y}, f x < f y ↔ x < y)
851851
(H₁ : ∀ {a x}, x < f a → ∃ b < a, x ≤ f b)
852852
(H₂ : ∀ {a x}, f a < x → ∃ b > a, f b ≤ x) :
@@ -875,7 +875,7 @@ begin
875875
end
876876

877877
theorem induced_order_topology {α : Type u} {β : Type v}
878-
[partial_order α] [ta : topological_space β] [partial_order β] [order_topology β]
878+
[preorder α] [ta : topological_space β] [preorder β] [order_topology β]
879879
(f : α → β) (hf : ∀ {x y}, f x < f y ↔ x < y)
880880
(H : ∀ {x y}, x < y → ∃ a, x < f a ∧ f a < y) :
881881
@order_topology _ (induced f ta) _ :=
@@ -932,24 +932,24 @@ begin
932932
exact λ hx, ht.out a.2 y.2 ⟨le_of_lt h, le_of_not_gt hx⟩ } }
933933
end
934934

935-
lemma nhds_within_Ici_eq'' [topological_space α] [partial_order α] [order_topology α] (a : α) :
935+
lemma nhds_within_Ici_eq'' [topological_space α] [preorder α] [order_topology α] (a : α) :
936936
𝓝[≥] a = (⨅ u (hu : a < u), 𝓟 (Iio u)) ⊓ 𝓟 (Ici a) :=
937937
begin
938938
rw [nhds_within, nhds_eq_order],
939939
refine le_antisymm (inf_le_inf_right _ inf_le_right) (le_inf (le_inf _ inf_le_left) inf_le_right),
940940
exact inf_le_right.trans (le_infi₂ $ λ l hl, principal_mono.2 $ Ici_subset_Ioi.2 hl)
941941
end
942942

943-
lemma nhds_within_Iic_eq'' [topological_space α] [partial_order α] [order_topology α] (a : α) :
943+
lemma nhds_within_Iic_eq'' [topological_space α] [preorder α] [order_topology α] (a : α) :
944944
𝓝[≤] a = (⨅ l < a, 𝓟 (Ioi l)) ⊓ 𝓟 (Iic a) :=
945945
nhds_within_Ici_eq'' (to_dual a)
946946

947-
lemma nhds_within_Ici_eq' [topological_space α] [partial_order α] [order_topology α] {a : α}
947+
lemma nhds_within_Ici_eq' [topological_space α] [preorder α] [order_topology α] {a : α}
948948
(ha : ∃ u, a < u) :
949949
𝓝[≥] a = ⨅ u (hu : a < u), 𝓟 (Ico a u) :=
950950
by simp only [nhds_within_Ici_eq'', binfi_inf ha, inf_principal, Iio_inter_Ici]
951951

952-
lemma nhds_within_Iic_eq' [topological_space α] [partial_order α] [order_topology α] {a : α}
952+
lemma nhds_within_Iic_eq' [topological_space α] [preorder α] [order_topology α] {a : α}
953953
(ha : ∃ l, l < a) :
954954
𝓝[≤] a = ⨅ l < a, 𝓟 (Ioc l a) :=
955955
by simp only [nhds_within_Iic_eq'', binfi_inf ha, inf_principal, Ioi_inter_Iic]
@@ -973,11 +973,11 @@ lemma nhds_within_Iic_basis [topological_space α] [linear_order α] [order_topo
973973
[no_min_order α] (a : α) : (𝓝[≤] a).has_basis (λ l, l < a) (λ l, Ioc l a) :=
974974
nhds_within_Iic_basis' (exists_lt a)
975975

976-
lemma nhds_top_order [topological_space α] [partial_order α] [order_top α] [order_topology α] :
976+
lemma nhds_top_order [topological_space α] [preorder α] [order_top α] [order_topology α] :
977977
𝓝 (⊤:α) = (⨅l (h₂ : l < ⊤), 𝓟 (Ioi l)) :=
978978
by simp [nhds_eq_order (⊤:α)]
979979

980-
lemma nhds_bot_order [topological_space α] [partial_order α] [order_bot α] [order_topology α] :
980+
lemma nhds_bot_order [topological_space α] [preorder α] [order_bot α] [order_topology α] :
981981
𝓝 (⊥:α) = (⨅l (h₂ : ⊥ < l), 𝓟 (Iio l)) :=
982982
by simp [nhds_eq_order (⊥:α)]
983983

@@ -1004,7 +1004,7 @@ lemma nhds_bot_basis_Iic [topological_space α] [linear_order α] [order_bot α]
10041004
(𝓝 ⊥).has_basis (λ a : α, ⊥ < a) Iic :=
10051005
@nhds_top_basis_Ici αᵒᵈ _ _ _ _ _ _
10061006

1007-
lemma tendsto_nhds_top_mono [topological_space β] [partial_order β] [order_top β] [order_topology β]
1007+
lemma tendsto_nhds_top_mono [topological_space β] [preorder β] [order_top β] [order_topology β]
10081008
{l : filter α} {f g : α → β} (hf : tendsto f l (𝓝 ⊤)) (hg : f ≤ᶠ[l] g) :
10091009
tendsto g l (𝓝 ⊤) :=
10101010
begin
@@ -1013,17 +1013,17 @@ begin
10131013
filter_upwards [hf x hx, hg] with _ using lt_of_lt_of_le,
10141014
end
10151015

1016-
lemma tendsto_nhds_bot_mono [topological_space β] [partial_order β] [order_bot β] [order_topology β]
1016+
lemma tendsto_nhds_bot_mono [topological_space β] [preorder β] [order_bot β] [order_topology β]
10171017
{l : filter α} {f g : α → β} (hf : tendsto f l (𝓝 ⊥)) (hg : g ≤ᶠ[l] f) :
10181018
tendsto g l (𝓝 ⊥) :=
10191019
@tendsto_nhds_top_mono α βᵒᵈ _ _ _ _ _ _ _ hf hg
10201020

1021-
lemma tendsto_nhds_top_mono' [topological_space β] [partial_order β] [order_top β]
1021+
lemma tendsto_nhds_top_mono' [topological_space β] [preorder β] [order_top β]
10221022
[order_topology β] {l : filter α} {f g : α → β} (hf : tendsto f l (𝓝 ⊤)) (hg : f ≤ g) :
10231023
tendsto g l (𝓝 ⊤) :=
10241024
tendsto_nhds_top_mono hf (eventually_of_forall hg)
10251025

1026-
lemma tendsto_nhds_bot_mono' [topological_space β] [partial_order β] [order_bot β]
1026+
lemma tendsto_nhds_bot_mono' [topological_space β] [preorder β] [order_bot β]
10271027
[order_topology β] {l : filter α} {f g : α → β} (hf : tendsto f l (𝓝 ⊥)) (hg : g ≤ f) :
10281028
tendsto g l (𝓝 ⊥) :=
10291029
tendsto_nhds_bot_mono hf (eventually_of_forall hg)

0 commit comments

Comments
 (0)