Module docstring
{"# Lemmas about inclusion, the injection of subtypes induced by ⊆ "}
{"# Lemmas about inclusion, the injection of subtypes induced by ⊆ "}
Set.inclusion
abbrev
(h : s ⊆ t) : s → t
/-- `inclusion` is the "identity" function between two subsets `s` and `t`, where `s ⊆ t` -/
abbrev inclusion (h : s ⊆ t) : s → t := fun x : s => (⟨x, h x.2⟩ : t)
Set.inclusion_self
theorem
(x : s) : inclusion Subset.rfl x = x
theorem inclusion_self (x : s) : inclusion Subset.rfl x = x := by
cases x
rfl
Set.inclusion_eq_id
theorem
(h : s ⊆ s) : inclusion h = id
theorem inclusion_eq_id (h : s ⊆ s) : inclusion h = id :=
funext inclusion_self
Set.inclusion_mk
theorem
{h : s ⊆ t} (a : α) (ha : a ∈ s) : inclusion h ⟨a, ha⟩ = ⟨a, h ha⟩
Set.inclusion_right
theorem
(h : s ⊆ t) (x : t) (m : (x : α) ∈ s) : inclusion h ⟨x, m⟩ = x
theorem inclusion_right (h : s ⊆ t) (x : t) (m : (x : α) ∈ s) : inclusion h ⟨x, m⟩ = x := by
cases x
rfl
Set.inclusion_inclusion
theorem
(hst : s ⊆ t) (htu : t ⊆ u) (x : s) : inclusion htu (inclusion hst x) = inclusion (hst.trans htu) x
Set.inclusion_comp_inclusion
theorem
{α} {s t u : Set α} (hst : s ⊆ t) (htu : t ⊆ u) : inclusion htu ∘ inclusion hst = inclusion (hst.trans htu)
@[simp]
theorem inclusion_comp_inclusion {α} {s t u : Set α} (hst : s ⊆ t) (htu : t ⊆ u) :
inclusioninclusion htu ∘ inclusion hst = inclusion (hst.trans htu) :=
funext (inclusion_inclusion hst htu)
Set.coe_inclusion
theorem
(h : s ⊆ t) (x : s) : (inclusion h x : α) = (x : α)
@[simp]
theorem coe_inclusion (h : s ⊆ t) (x : s) : (inclusion h x : α) = (x : α) :=
rfl
Set.val_comp_inclusion
theorem
(h : s ⊆ t) : Subtype.val ∘ inclusion h = Subtype.val
theorem val_comp_inclusion (h : s ⊆ t) : Subtype.valSubtype.val ∘ inclusion h = Subtype.val :=
rfl
Set.inclusion_injective
theorem
(h : s ⊆ t) : Injective (inclusion h)
theorem inclusion_injective (h : s ⊆ t) : Injective (inclusion h)
| ⟨_, _⟩, ⟨_, _⟩ => Subtype.ext_iff_val.2 ∘ Subtype.ext_iff_val.1
Set.inclusion_inj
theorem
(h : s ⊆ t) {x y : s} : inclusion h x = inclusion h y ↔ x = y
theorem inclusion_inj (h : s ⊆ t) {x y : s} : inclusioninclusion h x = inclusion h y ↔ x = y :=
(inclusion_injective h).eq_iff
Set.inclusion_le_inclusion
theorem
[LE α] {s t : Set α} (h : s ⊆ t) {x y : s} : inclusion h x ≤ inclusion h y ↔ x ≤ y
theorem inclusion_le_inclusion [LE α] {s t : Set α} (h : s ⊆ t) {x y : s} :
inclusioninclusion h x ≤ inclusion h y ↔ x ≤ y := Iff.rfl
Set.inclusion_lt_inclusion
theorem
[LT α] {s t : Set α} (h : s ⊆ t) {x y : s} : inclusion h x < inclusion h y ↔ x < y
theorem inclusion_lt_inclusion [LT α] {s t : Set α} (h : s ⊆ t) {x y : s} :
inclusioninclusion h x < inclusion h y ↔ x < y := Iff.rfl