Definition subvs_one := Subvs (memv_algid A).Definition subvs_mul (u v : subvs_of A) := 
  Subvs (subv_trans (memv_mul (subvsP u) (subvsP v)) (asubv _)).Fact subvs_mulA : associative subvs_mul.Fact subvs_mu1l : left_id subvs_one subvs_mul.Fact subvs_mul1 : right_id subvs_one subvs_mul.Definition subvs_ringMixin :=
  RingMixin subvs_mulA subvs_mu1l subvs_mul1 subvs_mulDl subvs_mulDr
            (algid_neq0 _).Canonical subvs_ringType := Eval hnf in RingType (subvs_of A) subvs_ringMixin.Canonical subvs_lalgType := Eval hnf in LalgType K (subvs_of A) subvs_scaleAl.Canonical subvs_algType := Eval hnf in AlgType K (subvs_of A) subvs_scaleAr.Canonical subvs_unitRingType := Eval hnf in FalgUnitRingType (subvs_of A).Implicit Type w : subvs_of A.Canonical ahom_eqType := Eval hnf in EqType ahom ahom_eqMixin.Canonical ahom_choiceType := Eval hnf in ChoiceType ahom ahom_choiceMixin.Canonical linfun_ahom f := AHom (linfun_is_ahom f).Fact ahom_is_lrmorphism (f : ahom aT rT) : lrmorphism f.Canonical ahom_rmorphism f := Eval hnf in AddRMorphism (ahom_is_lrmorphism f).Canonical ahom_lrmorphism f := Eval hnf in AddLRMorphism (ahom_is_lrmorphism f).

(* Specifications: *)
Lemma ahomWin (f : ahom aT rT) U : ahom_in U f.