# Order homomorphisms and sets #

theorem OrderIso.range_eq {α : Type u_2} {β : Type u_3} [LE α] [LE β] (e : α ≃o β) :
= Set.univ
@[simp]
theorem OrderIso.symm_image_image {α : Type u_2} {β : Type u_3} [LE α] [LE β] (e : α ≃o β) (s : Set α) :
e.symm '' (e '' s) = s
@[simp]
theorem OrderIso.image_symm_image {α : Type u_2} {β : Type u_3} [LE α] [LE β] (e : α ≃o β) (s : Set β) :
e '' (e.symm '' s) = s
theorem OrderIso.image_eq_preimage {α : Type u_2} {β : Type u_3} [LE α] [LE β] (e : α ≃o β) (s : Set α) :
e '' s = e.symm ⁻¹' s
@[simp]
theorem OrderIso.preimage_symm_preimage {α : Type u_2} {β : Type u_3} [LE α] [LE β] (e : α ≃o β) (s : Set α) :
e ⁻¹' (e.symm ⁻¹' s) = s
@[simp]
theorem OrderIso.symm_preimage_preimage {α : Type u_2} {β : Type u_3} [LE α] [LE β] (e : α ≃o β) (s : Set β) :
e.symm ⁻¹' (e ⁻¹' s) = s
@[simp]
theorem OrderIso.image_preimage {α : Type u_2} {β : Type u_3} [LE α] [LE β] (e : α ≃o β) (s : Set β) :
e '' (e ⁻¹' s) = s
@[simp]
theorem OrderIso.preimage_image {α : Type u_2} {β : Type u_3} [LE α] [LE β] (e : α ≃o β) (s : Set α) :
e ⁻¹' (e '' s) = s
def OrderIso.setCongr {α : Type u_2} [] (s : Set α) (t : Set α) (h : s = t) :
s ≃o t

Order isomorphism between two equal sets.

Equations
• = { toEquiv := , map_rel_iff' := }
Instances For
def OrderIso.Set.univ {α : Type u_2} [] :
Set.univ ≃o α

Order isomorphism between univ : Set α and α.

Equations
• OrderIso.Set.univ = { toEquiv := , map_rel_iff' := }
Instances For
@[simp]
theorem OrderEmbedding.orderIso_apply {α : Type u_2} {β : Type u_3} [LE α] [LE β] {f : α ↪o β} (a : α) :
OrderEmbedding.orderIso a = f a,
noncomputable def OrderEmbedding.orderIso {α : Type u_2} {β : Type u_3} [LE α] [LE β] {f : α ↪o β} :
α ≃o ()

We can regard an order embedding as an order isomorphism to its range.

Equations
• OrderEmbedding.orderIso = let __src := ; { toEquiv := __src, map_rel_iff' := }
Instances For
noncomputable def StrictMonoOn.orderIso {α : Type u_6} {β : Type u_7} [] [] (f : αβ) (s : Set α) (hf : ) :
s ≃o (f '' s)

If a function f is strictly monotone on a set s, then it defines an order isomorphism between s and its image.

Equations
• = { toEquiv := , map_rel_iff' := }
Instances For
@[simp]
theorem StrictMono.orderIso_apply {α : Type u_2} {β : Type u_3} [] [] (f : αβ) (h_mono : ) (a : α) :
(StrictMono.orderIso f h_mono) a = f a,
noncomputable def StrictMono.orderIso {α : Type u_2} {β : Type u_3} [] [] (f : αβ) (h_mono : ) :
α ≃o ()

A strictly monotone function from a linear order is an order isomorphism between its domain and its range.

Equations
Instances For
noncomputable def StrictMono.orderIsoOfSurjective {α : Type u_2} {β : Type u_3} [] [] (f : αβ) (h_mono : ) (h_surj : ) :
α ≃o β

A strictly monotone surjective function from a linear order is an order isomorphism.

Equations
Instances For
@[simp]
theorem StrictMono.coe_orderIsoOfSurjective {α : Type u_2} {β : Type u_3} [] [] (f : αβ) (h_mono : ) (h_surj : ) :
(StrictMono.orderIsoOfSurjective f h_mono h_surj) = f
@[simp]
theorem StrictMono.orderIsoOfSurjective_symm_apply_self {α : Type u_2} {β : Type u_3} [] [] (f : αβ) (h_mono : ) (h_surj : ) (a : α) :
(StrictMono.orderIsoOfSurjective f h_mono h_surj).symm (f a) = a
theorem StrictMono.orderIsoOfSurjective_self_symm_apply {α : Type u_2} {β : Type u_3} [] [] (f : αβ) (h_mono : ) (h_surj : ) (b : β) :
f ((StrictMono.orderIsoOfSurjective f h_mono h_surj).symm b) = b
@[simp]
theorem OrderIso.compl_apply (α : Type u_2) [] :
∀ (a : α), () a = (OrderDual.toDual compl) a
@[simp]
theorem OrderIso.compl_symm_apply (α : Type u_2) [] :
∀ (a : αᵒᵈ), () a = (compl OrderDual.ofDual) a
def OrderIso.compl (α : Type u_2) [] :

Taking complements as an order isomorphism to the order dual.

Equations
• = { toFun := OrderDual.toDual compl, invFun := compl OrderDual.ofDual, left_inv := , right_inv := , map_rel_iff' := }
Instances For
theorem compl_strictAnti (α : Type u_2) [] :
theorem compl_antitone (α : Type u_2) [] :
Antitone compl