@@ -648,6 +648,35 @@ instance : unique (subalgebra R R) :=
648
648
end
649
649
.. algebra.subalgebra.inhabited }
650
650
651
+ /-- The map `S → T` when `S` is a subalgebra contained in the subalgebra `T`.
652
+
653
+ This is the subalgebra version of `submodule.of_le`, or `subring.inclusion` -/
654
+ def inclusion {S T : subalgebra R A} (h : S ≤ T) : S →ₐ[R] T :=
655
+ { to_fun := set.inclusion h,
656
+ map_one' := rfl,
657
+ map_add' := λ _ _, rfl,
658
+ map_mul' := λ _ _, rfl,
659
+ map_zero' := rfl,
660
+ commutes' := λ _, rfl }
661
+
662
+ lemma inclusion_injective {S T : subalgebra R A} (h : S ≤ T) :
663
+ function.injective (inclusion h) :=
664
+ λ _ _, subtype.ext ∘ subtype.mk.inj
665
+
666
+ @[simp] lemma inclusion_self {S : subalgebra R A}:
667
+ inclusion (le_refl S) = alg_hom.id R S :=
668
+ alg_hom.ext $ λ x, subtype.ext rfl
669
+
670
+ @[simp] lemma inclusion_right {S T : subalgebra R A} (h : S ≤ T) (x : T)
671
+ (m : (x : A) ∈ S) : inclusion h ⟨x, m⟩ = x := subtype.ext rfl
672
+
673
+ @[simp] lemma inclusion_inclusion {S T U : subalgebra R A} (hst : S ≤ T) (htu : T ≤ U)
674
+ (x : S) : inclusion htu (inclusion hst x) = inclusion (le_trans hst htu) x :=
675
+ subtype.ext rfl
676
+
677
+ @[simp] lemma coe_inclusion {S T : subalgebra R A} (h : S ≤ T) (s : S) :
678
+ (inclusion h s : A) = s := rfl
679
+
651
680
/-- Two subalgebras that are equal are also equivalent as algebras.
652
681
653
682
This is the `subalgebra` version of `linear_equiv.of_eq` and `equiv.set.of_eq`. -/
0 commit comments