Module docstring
{"# Equiv.Perm.viaEmbedding, a noncomputable analogue of Equiv.Perm.viaFintypeEmbedding.
"}
{"# Equiv.Perm.viaEmbedding, a noncomputable analogue of Equiv.Perm.viaFintypeEmbedding.
"}
Equiv.Perm.viaEmbedding
definition
: Perm β
/-- Noncomputable version of `Equiv.Perm.viaFintypeEmbedding` that does not assume `Fintype` -/
noncomputable def viaEmbedding : Perm β :=
extendDomain e (ofInjective ι.1 ι.2)
Equiv.Perm.viaEmbedding_apply
theorem
(x : α) : e.viaEmbedding ι (ι x) = ι (e x)
theorem viaEmbedding_apply (x : α) : e.viaEmbedding ι (ι x) = ι (e x) :=
extendDomain_apply_image e (ofInjective ι.1 ι.2) x
Equiv.Perm.viaEmbedding_apply_of_not_mem
theorem
(x : β) (hx : x ∉ Set.range ι) : e.viaEmbedding ι x = x
theorem viaEmbedding_apply_of_not_mem (x : β) (hx : x ∉ Set.range ι) : e.viaEmbedding ι x = x :=
extendDomain_apply_not_subtype e (ofInjective ι.1 ι.2) hx
Equiv.Perm.viaEmbeddingHom
definition
: Perm α →* Perm β
/-- `viaEmbedding` as a group homomorphism -/
noncomputable def viaEmbeddingHom : PermPerm α →* Perm β :=
extendDomainHom (ofInjective ι.1 ι.2)
Equiv.Perm.viaEmbeddingHom_apply
theorem
: viaEmbeddingHom ι e = viaEmbedding e ι
theorem viaEmbeddingHom_apply : viaEmbeddingHom ι e = viaEmbedding e ι :=
rfl
Equiv.Perm.viaEmbeddingHom_injective
theorem
: Function.Injective (viaEmbeddingHom ι)
theorem viaEmbeddingHom_injective : Function.Injective (viaEmbeddingHom ι) :=
extendDomainHom_injective (ofInjective ι.1 ι.2)