{u : Lean.Level} →
  {α : Q(Type u)} →
    {sα : Q(CommSemiring «$α»)} →
      {P : Sort u} →
        {rα : Option Q(CommRing «$α»)} →
          {dsα : Option Q(Semifield «$α»)} →
            {czα : Option Q(CharZero «$α»)} →
              {rα' : Option Q(CommRing «$α»)} →
                {dsα' : Option Q(Semifield «$α»)} →
                  {czα' : Option Q(CharZero «$α»)} →
                    { rα := rα, dsα := dsα, czα := czα } = { rα := rα', dsα := dsα', czα := czα' } →
                      (rα = rα' → dsα = dsα' → czα = czα' → P) → P