Definition is_colimit_kfinite_subsets : isColimCocone d X kfinite_subsets_cocone. Proof. intros Y cc. use unique_exists. - intro x. exact(coconeIn cc (kfinite_subtype_singleton x) singleton_point). - abstract(intro A; apply funextfun; intro x; set (commutes := coconeInCommutes cc (kfinite_subtype_singleton (pr1 x)) A (singleton_is_in _ x)); apply(eqtohomot (!commutes))). - intro; apply isaprop_is_cocone_mor. - abstract(intros f fmor; apply funextfun; intro x; exact(eqtohomot (fmor (kfinite_subtype_singleton x)) singleton_point)). Defined.
Require Import UniMath.Foundations.All. Require Import UniMath.MoreFoundations.Sets. Require Import UniMath.MoreFoundations.QuotientSet. Require Import UniMath.MoreFoundations.Subtypes. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.Core.Isos. Require Import UniMath.CategoryTheory.Limits.Graphs.Colimits. Require Import UniMath.CategoryTheory.Limits.Filtered. Require Import UniMath.CategoryTheory.Limits.StandardDiagrams. Require Import UniMath.CategoryTheory.Categories.HSET.Core. Require Import UniMath.Combinatorics.FiniteSets. Require Import UniMath.Combinatorics.KFiniteTypes. Require Import UniMath.Combinatorics.KFiniteSubtypes.