#16340: Infrastructure for modelling full subcategories
-------------------------------------+-------------------------------------
Reporter: nthiery | Owner:
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-6.4
Component: categories | Resolution:
Keywords: full | Merged in:
subcategories, homset | Reviewers: Darij Grinberg,
Authors: Nicolas M. ThiƩry | Travis Scrimshaw
Report Upstream: N/A | Work issues:
Branch: | Commit:
public/categories/full_subcategories-16340|
60aa128d42ee140fb268423a924fd0e80aab7329
Dependencies: | Stopgaps:
-------------------------------------+-------------------------------------
Comment (by nthiery):
Replying to [comment:41 pbruin]:
> What is a functorial construction category?
Coming back to this side discussion ...
That's a good question. The documentation is certainly terse and could
take some love. I haven't spent on it the two weeks of hard work I put
on axioms!
> From the documentation it appears that the idea is that one first
defines a construction in some "abstract" sense, and only then decides in
which category it takes its values, or even to construct a completely new
category for this. I realise that the code doesn't have to follow
mathematical definitions exactly, but this seems to be quite the opposite
of the usual pattern of doing things, where defining a function, functor
or natural transformation presupposes that a domain and codomain have been
fixed. In general this is essential because the function (etc.) that one
defines, and its properties, depend on these choices. I am somewhat
worried that the Sage implementation might rely (maybe just in subtle
ways) on the intuition behind the cases where this advance choice of
domain and codomain doesn't matter so much.
Maybe the doc is misleading. But the starting point is really the
functorial construction, that is the collection `(F_C)_C` of related
functors (e.g. the collection of algebra functors: `groups->group
algebras`, `monoids->monoid algebras`, `finite groups->finite groups
algebras`, ...).
Then, the functorial construction category `C.F()` is meant to model
the codomain of the functor `F_C`, which is well defined.
Of course the model might be incomplete. Categories in Sage are an
approximation of the ideal mathematical categories; not all of them
nor features thereof are implemented in Sage.
One possible source of confusion is that the functors `F_C` might not
actually be modeled as a standalone objects in Sage. But that's just
because we did not really need them at this point. In our example, we
just need it was sufficient for now to have the construction
implemented as `G -> G.algebra(QQ)`. In general, at this point, the
central feature really resides in the categories.
Another source of confusion is that some of the uses of the mechanism
for "functorial construction categories" go beyond functorial
constructions. E.g. for subobjects, quotients, ... there is not
really a collection of functors behind the scene. Still the mechanism
remains valid. It would be nice to come up with a better name and
definition that would cover all cases. That's now #16991.
Cheers,
Nicolas
--
Ticket URL: <http://trac.sagemath.org/ticket/16340#comment:49>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.