(A : AdjunctionUnit G^op F^op) : AdjunctionCounit F G := exist (fun U : NaturalTransformation (F o G) 1 => forall (c : C) (d : D) (g : morphism D (F c) d), Contr {f : morphism C c (G d) | U d o F _1 f = g }) (A.
Require Import Category.Core Functor.Core NaturalTransformation.Core. Require Import Category.Dual Functor.Dual NaturalTransformation.Dual. Require Import Functor.Composition.Core Functor.Identity.