Restrict the domain of a function to a set #
Main definitions #
Set.restrict f s
: restrict the domain off
to the sets
;Set.codRestrict f s h
: givenh : ∀ x, f x ∈ s
, restrict the codomain off
to the sets
;
Restrict #
Restrict domain of a function f
to a set s
. Same as Subtype.restrict
but this version
takes an argument ↥s
instead of Subtype s
.
Instances For
theorem
Set.restrict_extend_range
{α : Type u_1}
{β : Type u_2}
{γ : Type u_3}
(f : α → β)
(g : α → γ)
(g' : β → γ)
:
@[simp]
theorem
Set.restrict_extend_compl_range
{α : Type u_1}
{β : Type u_2}
{γ : Type u_3}
(f : α → β)
(g : α → γ)
(g' : β → γ)
:
def
Set.restrict₂
{α : Type u_1}
{π : α → Type u_6}
{s t : Set α}
(hst : s ⊆ t)
(f : (a : ↑t) → π ↑a)
(a : ↑s)
:
π ↑a
If a function f
is restricted to a set t
, and s ⊆ t
, this is the restriction to s
.
Equations
- Set.restrict₂ hst f x = f ⟨↑x, ⋯⟩
Instances For
theorem
Set.range_extend
{α : Type u_1}
{β : Type u_2}
{γ : Type u_3}
{f : α → β}
(hf : Function.Injective f)
(g : α → γ)
(g' : β → γ)
:
def
Set.codRestrict
{α : Type u_1}
{ι : Sort u_5}
(f : ι → α)
(s : Set α)
(h : ∀ (x : ι), f x ∈ s)
:
ι → ↑s
Restrict codomain of a function f
to a set s
. Same as Subtype.coind
but this version
has codomain ↥s
instead of Subtype s
.
Equations
- Set.codRestrict f s h x = ⟨f x, ⋯⟩
Instances For
@[simp]
theorem
Set.val_codRestrict_apply
{α : Type u_1}
{ι : Sort u_5}
(f : ι → α)
(s : Set α)
(h : ∀ (x : ι), f x ∈ s)
(x : ι)
:
@[simp]
theorem
Set.injective_codRestrict
{α : Type u_1}
{ι : Sort u_5}
{f : ι → α}
{s : Set α}
(h : ∀ (x : ι), f x ∈ s)
:
theorem
Function.Injective.codRestrict
{α : Type u_1}
{ι : Sort u_5}
{f : ι → α}
{s : Set α}
(h : ∀ (x : ι), f x ∈ s)
:
Injective f → Injective (Set.codRestrict f s h)
Alias of the reverse direction of Set.injective_codRestrict
.
theorem
Set.MapsTo.restrict_eq_codRestrict
{α : Type u_1}
{β : Type u_2}
{s : Set α}
{t : Set β}
{f : α → β}
(h : MapsTo f s t)
:
Reverse of Set.codRestrict_restrict
.
theorem
Set.surjective_mapsTo_image_restrict
{α : Type u_1}
{β : Type u_2}
(f : α → β)
(s : Set α)
:
Function.Surjective (MapsTo.restrict f s (f '' s) ⋯)
Restriction onto preimage #
theorem
Set.image_restrictPreimage
{α : Type u_1}
{β : Type u_2}
(s : Set α)
(t : Set β)
(f : α → β)
:
theorem
Set.image_val_preimage_restrictPreimage
{α : Type u_1}
{β : Type u_2}
(t : Set β)
{f : α → β}
{u : Set ↑t}
:
theorem
Set.preimage_restrictPreimage
{α : Type u_1}
{β : Type u_2}
(t : Set β)
{f : α → β}
{u : Set ↑t}
:
theorem
Set.restrictPreimage_injective
{α : Type u_1}
{β : Type u_2}
(t : Set β)
{f : α → β}
(hf : Function.Injective f)
:
theorem
Set.restrictPreimage_surjective
{α : Type u_1}
{β : Type u_2}
(t : Set β)
{f : α → β}
(hf : Function.Surjective f)
:
theorem
Set.restrictPreimage_bijective
{α : Type u_1}
{β : Type u_2}
(t : Set β)
{f : α → β}
(hf : Function.Bijective f)
:
theorem
Function.Injective.restrictPreimage
{α : Type u_1}
{β : Type u_2}
(t : Set β)
{f : α → β}
(hf : Injective f)
:
Injective (t.restrictPreimage f)
Alias of Set.restrictPreimage_injective
.
theorem
Function.Surjective.restrictPreimage
{α : Type u_1}
{β : Type u_2}
(t : Set β)
{f : α → β}
(hf : Surjective f)
:
Surjective (t.restrictPreimage f)
Alias of Set.restrictPreimage_surjective
.
theorem
Function.Bijective.restrictPreimage
{α : Type u_1}
{β : Type u_2}
(t : Set β)
{f : α → β}
(hf : Bijective f)
:
Bijective (t.restrictPreimage f)
Alias of Set.restrictPreimage_bijective
.
Injectivity on a set #
theorem
Set.InjOn.injective
{α : Type u_1}
{β : Type u_2}
{s : Set α}
{f : α → β}
:
InjOn f s → Function.Injective (s.restrict f)
Alias of the forward direction of Set.injOn_iff_injective
.