∀ {C : Type u} [inst : CategoryTheory.Category.{v, u} C] {P : CategoryTheory.ObjectProperty C} {α : Type t}
  {J : α → Type u'} [inst_1 : (a : α) → CategoryTheory.Category.{v', u'} (J a)] {X : C} {a : α}
  (pres : CategoryTheory.Limits.LimitPresentation (J a) X),
  (∀ (j : J a), P.limitsClosure J (pres.diag.obj j)) → P.limitsClosure J X