{R : Type u_1} →
  [inst : CommRing R] →
    {motive :
        (M : Type v) →
          [inst_1 : AddCommGroup M] →
            [inst_2 : Module R M] → (rs : List R) → RingTheory.Sequence.IsWeaklyRegular M rs → Sort u_7} →
      ((M : Type v) → [inst_1 : AddCommGroup M] → [inst_2 : Module R M] → motive M [] ⋯) →
        ({M : Type v} →
            [inst_1 : AddCommGroup M] →
              [inst_2 : Module R M] →
                (r : R) →
                  (rs : List R) →
                    (h1 : IsSMulRegular M r) →
                      (h2 : RingTheory.Sequence.IsWeaklyRegular (QuotSMulTop r M) rs) →
                        motive (QuotSMulTop r M) rs h2 → motive M (r :: rs) ⋯) →
          {M : Type v} →
            [inst_1 : AddCommGroup M] →
              [inst_2 : Module R M] → {rs : List R} → (h : RingTheory.Sequence.IsWeaklyRegular M rs) → motive M rs h