{R : Type u} →
  {A : Type v} →
    [inst : CommSemiring R] →
      [inst_1 : Semiring A] →
        [inst_2 : Algebra R A] →
          {motive : Subalgebra R A → Sort u_1} →
            ((toSubsemiring : Subsemiring A) →
                (algebraMap_mem' : ∀ (r : R), (algebraMap R A) r ∈ toSubsemiring.carrier) →
                  motive { toSubsemiring := toSubsemiring, algebraMap_mem' := algebraMap_mem' }) →
              (t : Subalgebra R A) → motive t