#10963: More functorial constructions
-------------------------+-------------------------------------------------
       Reporter:         |         Owner:  stumpc5
  nthiery                |        Status:  needs_work
           Type:         |     Milestone:
  enhancement            |    Resolution:
       Priority:  major  |     Merged in:
      Component:         |     Reviewers:  Simon King
  categories             |   Work issues:  Reduce startup time by 5%. Avoid
       Keywords:         |  "recursion depth exceeded (ignored)". Trivial
        Authors:         |  doctest fixes.
  Nicolas M. ThiƩry      |  Dependencies:  #11224, #8327, #10193, #12895,
Report Upstream:  N/A    |  #14516, #14722, #13589
         Branch:         |
       Stopgaps:         |
-------------------------+-------------------------------------------------

Comment (by nthiery):

 Replying to [comment:60 SimonKing]:
 > And a more general question we should answer: What is the semantics of
 `super_categories()`?
 >
 > It used to be like this, if I understood correctly:
 `C.super_categories()` should return a list of all categories `S1, S2,
 ...` constructible in Sage such that C is a proper sub-category of `S1,
 S2, ...` and there is no category D '''constructible in Sage''' such that
 C is a proper sub-category of D and D is a proper sub-category of any of
 the `S1, S2, ...`.

 I very much like this definition, and think it's still perfectly up to
 date. Maybe one would use "implemented in Sage" rather than
 "constructible in Sage" to rule out join categories.

 (a short rephrasing is that super_cartegories give the covering
 relations in the poset of implemented categories in Sage).

 The only difference after this ticket is that there is a new syntax to
 implement a category, e.g. {{{Blahs().Finite()}}}, as:
 {{{
     class Blahs(Category):
         class Finite(CategoryWithAxiom):
 }}}

 but that's not really different from what we were already doing for
 e.g. {{{Blahs().CartesianProducts()}}}.

 > The problem with this old meaning of `C.super_categories()` is, of
 > course, that "constructible in Sage" is a moving target, and hence
 > it won't scale.

 Let me rephrase this as: since "constructible in Sage" is a moving
 target, maintaining by hand the information in super_categories()
 often does not scale.  So whenever possible, {{{super_categories}}}
 should be calculated automatically.

 Cheers,
                       Nicolas

--
Ticket URL: <http://trac.sagemath.org/ticket/10963#comment:64>
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/groups/opt_out.


Reply via email to