End iso_def.
Coercion RightInv_epic : RIso_law >-> Epic_law.
(* initial *)
Section initial_def.
Variable C : Category.
Definition IsInitial (a : C) (h : forall b : C, a --> b) :=
forall (b : C) (f : a --> b), f =_S h b.
Structure > Initial : Type :=
{Initial_ob : C;
MorI : forall b : C, Initial_ob --> b;
Prf_isInitial :> IsInitial MorI}.
Definition At_most_1mor (a b : C) := forall f g : a --> b, f =_S g.

Lemma Initial_dual :
forall (C : Category) (a : C) (h : forall b : C, a --> b),
IsInitial h -> IsTerminal (C:=Dual C) h.