{ι : Type u_1} →
  {A : Type u_3} →
    {σ : Type u_4} →
      [inst : DecidableEq ι] →
        [inst_1 : AddMonoid ι] →
          [inst_2 : Semiring A] →
            [inst_3 : SetLike σ A] →
              [inst_4 : AddSubmonoidClass σ A] →
                {𝒜 : ι → σ} →
                  {motive : GradedRing 𝒜 → Sort u} →
                    ([toGradedMonoid : SetLike.GradedMonoid 𝒜] →
                        [toDecomposition : DirectSum.Decomposition 𝒜] →
                          motive { toGradedMonoid := toGradedMonoid, toDecomposition := toDecomposition }) →
                      (t : GradedRing 𝒜) → motive t