Dear Dimitri, I think that finding useful necessary and sufficient conditions in general is a very hard problem. But here is something that might be useful in specific cases. There will exist some faithful functor G:C-->D sending alpha to a colimit cocone if and only if the universal functor G:C-->D sending alpha to a colimit cocone is faithful. This universal functor can be constructed as follows (this forms part of the general theory of sketches). Let M be the full subcategory of [C^op,Set] consisting of those functors F which send alpha to a limit cone. Then M is reflective in [C^op,Set], via a left adjoint L, and the composite LY:C-->M does indeed send alpha to a colimit cocone. The universal G is obtained by factorizing LY as a bijective on objects functor G:C-->D followed by a fully faithful J:D-->M. Clearly G will be faithful if and only if LY is, and this can be determined once one has calculated L on representables. Calculating L explicitly is in general still a hard problem, but in specific cases you may be able to do it sufficiently explicitly to solve your problem. The connection with sketches is that you can think of your cocone as giving a limit sketch on C^op, then the category M defined above is the category of models of the sketch. Regards, Steve Lack. On 4/08/09 2:37 AM, "Dimitri Ara" <dimitri.ara@gmail.com> wrote:
Dear List,
Has the following elementary problem been already studied?
Let C be a category, I a small category, F : I -> C a functor and alpha : F => c a cocone (c is an object of C). When does there exist a category D and a faithful functor G : C -> D taking alpha to a universal cocone?
For example, if I is the empty category, the question becomes "when can you make c an initial object in a faithful way?". If I is the final category, then the cocone alpha amounts to a morphism f : F(*) -> c and the question becomes "when can you make f an isomorphism in a faithful way?".
There are two obvious necessary conditions. 1) Let f,g : c -> d be two morphisms of C. If f alpha_i = g alpha_i for every i in I, then we should have f = g. 2) Let f : a -> F(i) and g : a -> F(j) be two morphisms of C such that alpha_i f = alpha_j g. Then for every cocone beta : F => d, we should have beta_i f = beta_j g.
In the case of the empty category, the first condition means that for every object d there is at most one arrow c -> d and the second condition is void. In the case of the final category, the first condition means that f is an epi and the second that f is a mono. It is not hard to prove that in both cases, theses conditions are sufficient.
Question: are they sufficient in the general case?
Regards, -- Dimitri
[For admin and other information see: http://www.mta.ca/~cat-dist/ ]
[For admin and other information see: http://www.mta.ca/~cat-dist/ ]