fact: Definition equiv_sig_coind `(A : X -> Type) (P : forall x, A x -> Type) : { f : forall x, A x & forall x, P x (f x) } <~> (forall x, sig (P x)) := Build_Equiv _ _ (sig_coind_uncurried P) _.
imports: HoTT.Basics Types.Arrow Types.Paths