{e : Q(ℕ)} →
  {P : Sort u} →
    {k e' : Q(ℕ)} →
      {ve' : Mathlib.Tactic.Ring.Common.ExProdNat e'} →
        {p : Q(«$e» = «$e'» * «$k»)} →
          {k' e'' : Q(ℕ)} →
            {ve'' : Mathlib.Tactic.Ring.Common.ExProdNat e''} →
              {p' : Q(«$e» = «$e''» * «$k'»)} →
                { k := k, e' := e', ve' := ve', p := p } = { k := k', e' := e'', ve' := ve'', p := p' } →
                  (k = k' → e' = e'' → ve' ≍ ve'' → p = p' → P) → P