{R : Type u} →
  {S : Type v} →
    [inst : CommRing R] →
      [inst_1 : CommRing S] →
        [inst_2 : Algebra R S] →
          {P : Algebra.Extension R S} →
            {R' : Type u_1} →
              {S' : Type u_2} →
                [inst_3 : CommRing R'] →
                  [inst_4 : CommRing S'] →
                    [inst_5 : Algebra R' S'] →
                      {P' : Algebra.Extension R' S'} →
                        [inst_6 : Algebra R R'] →
                          [inst_7 : Algebra S S'] →
                            (toRingHom : P.Ring →+* P'.Ring) →
                              (∀ (x : R),
                                  toRingHom ((algebraMap R P.Ring) x) = (algebraMap R' P'.Ring) ((algebraMap R R') x)) →
                                (∀ (x : P.Ring),
                                    (algebraMap P'.Ring S') (toRingHom x) =
                                      (algebraMap S S') ((algebraMap P.Ring S) x)) →
                                  P.Hom P'