(B : Type) `{IsHSet B} : (A / R -> B) <~> {f : A -> B & forall a b, R a b -> f a = f b}. Proof. srapply equiv_adjointify. + intro f. exists (compose f (class_of R)). intros; f_ap. by apply qglue. + intros [f H']. apply (Quotient_rec _ _ _ H'). + intros [f Hf]. by apply equiv_path_sigma_hprop. + intros f. apply path_forall. srapply Quotient_ind_hprop. reflexivity. Defined.
Require Import Basics. Require Import Types. Require Import HSet. Require Import TruncType. Require Import Colimits.GraphQuotient. Require Import Truncations.Core.