File: Mathlib/Order/Hom/Set.lean

full_name: OrderIso.range_eq
code: theorem range_eq (e : α ≃o β) : Set.range e = Set.univ 
goal: Set.range ⇑e = Set.univ

full_name: OrderIso.symm_image_image
code: @[simp]
theorem symm_image_image (e : α ≃o β) (s : Set α) : e.symm '' (e '' s) = s 
goal: ⇑e.symm '' (⇑e '' s) = s

full_name: OrderIso.image_symm_image
code: @[simp]
theorem image_symm_image (e : α ≃o β) (s : Set β) : e '' (e.symm '' s) = s 
goal: ⇑e '' (⇑e.symm '' s) = s

full_name: OrderIso.image_eq_preimage
code: theorem image_eq_preimage (e : α ≃o β) (s : Set α) : e '' s = e.symm ⁻¹' s 
goal: ⇑e '' s = ⇑e.symm ⁻¹' s

full_name: OrderIso.preimage_symm_preimage
code: @[simp]
theorem preimage_symm_preimage (e : α ≃o β) (s : Set α) : e ⁻¹' (e.symm ⁻¹' s) = s 
goal: ⇑e ⁻¹' (⇑e.symm ⁻¹' s) = s

full_name: OrderIso.symm_preimage_preimage
code: @[simp]
theorem symm_preimage_preimage (e : α ≃o β) (s : Set β) : e.symm ⁻¹' (e ⁻¹' s) = s 
goal: ⇑e.symm ⁻¹' (⇑e ⁻¹' s) = s

full_name: OrderIso.image_preimage
code: @[simp]
theorem image_preimage (e : α ≃o β) (s : Set β) : e '' (e ⁻¹' s) = s 
goal: ⇑e '' (⇑e ⁻¹' s) = s

full_name: OrderIso.preimage_image
code: @[simp]
theorem preimage_image (e : α ≃o β) (s : Set α) : e ⁻¹' (e '' s) = s 
goal: ⇑e ⁻¹' (⇑e '' s) = s

full_name: OrderIso.setCongr
code: /-- Order isomorphism between two equal sets. -/
def setCongr (s t : Set α) (h : s = t) :
    s ≃o t 
goal: ↑s ≃o ↑t

full_name: OrderIso.Set.univ
code: /-- Order isomorphism between `univ : Set α` and `α`. -/
def Set.univ : (Set.univ : Set α) ≃o α 
goal: ↑Set.univ ≃o α

full_name: OrderEmbedding.orderIso_apply
code: /-- We can regard an order embedding as an order isomorphism to its range. -/
@[simps! apply]
noncomputable def OrderEmbedding.orderIso [LE α] [LE β] {f : α ↪o β} :
    α ≃o Set.range f 
goal: OrderEmbedding.orderIso a = ⟨f a, ⋯⟩

full_name: OrderEmbedding.orderIso
code: /-- We can regard an order embedding as an order isomorphism to its range. -/
@[simps! apply]
noncomputable def OrderEmbedding.orderIso [LE α] [LE β] {f : α ↪o β} :
    α ≃o Set.range f 
goal: α ≃o ↑(Set.range ⇑f)

full_name: StrictMonoOn.orderIso
code: /-- If a function `f` is strictly monotone on a set `s`, then it defines an order isomorphism
between `s` and its image. -/
protected noncomputable def StrictMonoOn.orderIso {α β} [LinearOrder α] [Preorder β] (f : α → β)
    (s : Set α) (hf : StrictMonoOn f s) :
    s ≃o f '' s 
goal: ↑s ≃o ↑(f '' s)

full_name: StrictMono.orderIso
code: /-- A strictly monotone function from a linear order is an order isomorphism between its domain and
its range. -/
@[simps! apply]
protected noncomputable def orderIso :
    α ≃o Set.range f 
goal: α ≃o ↑(Set.range f)

full_name: StrictMono.orderIso_apply
code: /-- A strictly monotone function from a linear order is an order isomorphism between its domain and
its range. -/
@[simps! apply]
protected noncomputable def orderIso :
    α ≃o Set.range f 
goal: (StrictMono.orderIso f h_mono) a = ⟨f a, ⋯⟩

full_name: StrictMono.orderIsoOfSurjective
code: /-- A strictly monotone surjective function from a linear order is an order isomorphism. -/
noncomputable def orderIsoOfSurjective : α ≃o β 
goal: α ≃o β

full_name: StrictMono.coe_orderIsoOfSurjective
code: @[simp]
theorem coe_orderIsoOfSurjective : (orderIsoOfSurjective f h_mono h_surj : α → β) = f 
goal: ⇑(StrictMono.orderIsoOfSurjective f h_mono h_surj) = f

full_name: StrictMono.orderIsoOfSurjective_symm_apply_self
code: @[simp]
theorem orderIsoOfSurjective_symm_apply_self (a : α) :
    (orderIsoOfSurjective f h_mono h_surj).symm (f a) = a 
goal: (StrictMono.orderIsoOfSurjective f h_mono h_surj).symm (f a) = a

full_name: StrictMono.orderIsoOfSurjective_self_symm_apply
code: theorem orderIsoOfSurjective_self_symm_apply (b : β) :
    f ((orderIsoOfSurjective f h_mono h_surj).symm b) = b 
goal: f ((StrictMono.orderIsoOfSurjective f h_mono h_surj).symm b) = b

full_name: OrderIso.compl
code: /-- Taking complements as an order isomorphism to the order dual. -/
@[simps!]
def OrderIso.compl : α ≃o αᵒᵈ 
goal: α ≃o αᵒᵈ

full_name: OrderIso.compl_apply
code: /-- Taking complements as an order isomorphism to the order dual. -/
@[simps!]
def OrderIso.compl : α ≃o αᵒᵈ 
goal: ∀ (a : α), (OrderIso.compl α) a = (OrderDual.toDual a)ᶜ

full_name: OrderIso.compl_symm_apply
code: /-- Taking complements as an order isomorphism to the order dual. -/
@[simps!]
def OrderIso.compl : α ≃o αᵒᵈ 
goal: ∀ (a : αᵒᵈ), (RelIso.symm (OrderIso.compl α)) a = (OrderDual.ofDual a)ᶜ

full_name: compl_strictAnti
code: theorem compl_strictAnti : StrictAnti (compl : α → α) 
goal: StrictAnti compl

full_name: compl_antitone
code: theorem compl_antitone : Antitone (compl : α → α) 
goal: Antitone compl