Defined.
Coercion UnderlyingFunctor : EFunctor >-> Functor.
-Class EBinoidalCat `(ec:ECategory) :=
-{ ebc_bobj : ec -> ec -> ec
-; ebc_first : forall a:ec, EFunctor ec ec (fun x => ebc_bobj x a)
-; ebc_second : forall a:ec, EFunctor ec ec (fun x => ebc_bobj a x)
+Class EBinoidalCat `(ec:ECategory)(bobj : ec -> ec -> ec) :=
+{ ebc_first : forall a:ec, EFunctor ec ec (fun x => bobj x a)
+; ebc_second : forall a:ec, EFunctor ec ec (fun x => bobj a x)
; ebc_ec := ec (* this isn't a coercion - avoids duplicate paths *)
+; ebc_bobj := bobj
}.
Instance EBinoidalCat_is_binoidal `(ebc:EBinoidalCat(ec:=ec)) : BinoidalCat (Underlying ec) ebc_bobj.