Interactions between embeddings and sets. #
Embedding into WithTop α
.
Equations
- Function.Embedding.coeWithTop = { toFun := WithTop.some, inj' := ⋯ }
Instances For
@[simp]
def
Function.Embedding.optionElim
{α : Type u_1}
{β : Type u_2}
(f : α ↪ β)
(x : β)
(h : x ∉ Set.range ⇑f)
:
Given an embedding f : α ↪ β
and a point outside of Set.range f
, construct an embedding
Option α ↪ β
.
Equations
- f.optionElim x h = { toFun := Option.elim' x ⇑f, inj' := ⋯ }
Instances For
@[simp]
theorem
Function.Embedding.optionEmbeddingEquiv_apply_snd_coe
(α : Type u_1)
(β : Type u_2)
(f : Option α ↪ β)
:
@[simp]
theorem
Function.Embedding.optionEmbeddingEquiv_apply_fst
(α : Type u_1)
(β : Type u_2)
(f : Option α ↪ β)
:
def
Function.Embedding.codRestrict
{α : Sort u_1}
{β : Type u_2}
(p : Set β)
(f : α ↪ β)
(H : ∀ (a : α), f a ∈ p)
:
Restrict the codomain of an embedding.
Equations
- Function.Embedding.codRestrict p f H = { toFun := fun (a : α) => ⟨f a, ⋯⟩, inj' := ⋯ }
Instances For
The injection map is an embedding between subsets.
Equations
- s.embeddingOfSubset t h = { toFun := fun (x : ↑s) => ⟨↑x, ⋯⟩, inj' := ⋯ }
Instances For
@[simp]
A subtype {x // p x ∨ q x}
over a disjunction of p q : α → Prop
is equivalent to a sum of
subtypes {x // p x} ⊕ {x // q x}
such that ¬ p x
is sent to the right, when
Disjoint p q
.
See also Equiv.sumCompl
, for when IsCompl p q
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]
theorem
subtypeOrEquiv_apply
{α : Type u_1}
(p q : α → Prop)
[DecidablePred p]
(h : Disjoint p q)
(a : { x : α // p x ∨ q x })
:
@[simp]
theorem
subtypeOrEquiv_symm_inl
{α : Type u_1}
(p q : α → Prop)
[DecidablePred p]
(h : Disjoint p q)
(x : { x : α // p x })
:
@[simp]
theorem
subtypeOrEquiv_symm_inr
{α : Type u_1}
(p q : α → Prop)
[DecidablePred p]
(h : Disjoint p q)
(x : { x : α // q x })
:
For disjoint s t : Set α
, the natural injection from ↑s ⊕ ↑t
to α
.
Equations
- Function.Embedding.sumSet h = { toFun := Sum.elim Subtype.val Subtype.val, inj' := ⋯ }
Instances For
@[simp]
theorem
Function.Embedding.sumSet_apply
{α : Type u_1}
{s t : Set α}
(h : Disjoint s t)
(a✝ : ↑s ⊕ ↑t)
:
def
Function.Embedding.sigmaSet
{α : Type u_1}
{ι : Type u_2}
{s : ι → Set α}
(h : Pairwise (onFun Disjoint s))
:
For an indexed family s : ι → Set α
of disjoint sets,
the natural injection from the sigma-type (i : ι) × ↑(s i)
to α
.
Equations
- Function.Embedding.sigmaSet h = { toFun := fun (x : (i : ι) × ↑(s i)) => ↑x.snd, inj' := ⋯ }