Dear William, dear David, Dear Javier,

Yippee, there remains essentially only eight categories left to review!


On Sat, Oct 24, 2009 at 12:04:45AM +0200, Nicolas Thiéry wrote:
> On Fri, Oct 23, 2009 at 05:23:15PM +0200, David R. Kohel wrote:
> > I put of positive review of most of the assigned category files.
> I am now having a look at your comments on the wiki.

David: I let you edit the wiki for those categories for which you are
satisfied with the answers belows.

> About _call_ in NumberFields: What is the meaning of this coercion?:
>
>     def _call_(self, x):
>         r"""
>         Constructs an object in this category from the data in ``x``,
>         or throws a TypeError.
>
>         EXAMPLES::
>
>             sage: C = NumberFields()
>
>             sage: C(QQ)
>             Rational Field
>
>             sage: C(NumberField(x^2+1,'a'))
>             Number Field in a with defining polynomial x^2 + 1
>
>             sage: C(UnitGroup(NumberField(x^2+1,'a')))        # indirect 
> doctest
>             Number Field in a with defining polynomial x^2 + 1
>
>             sage: C(ZZ)
>             Traceback (most recent call last):
>             ...
>             TypeError: unable to canonically associate a number field to 
> Integer Ring
>         """
>         try:
>             return x.number_field()
>         except AttributeError:
>             raise  TypeError, "unable to canonically associate a number field 
> to %s"%x
>
> Note: A unit group is not a number field (nor a field).  It should coerce into
> a category of groups.
>
> By this logic one might associate to the integers ZZ the number
> field QQ, but I don't see why C(X) should try to find some functor
> which is not a canonical identity on objects.

That's the original implementation of NumberFields._call_. The
category patches just adds a couple examples to the documentation to
show the consequences of this logic. Now it's up to you guys to decide
whether this logic is desirable or not. I vote for leaving it as is
right now since it does not change the logic, and then up to you to
update it to whatever you want once the category code is in Sage.


> pointed_sets: the __call__ function is commented out -- should this
> be a not-implemented error?

Not needed: with the default implementation of __call__
PointedSets()(P) returns P if P is readily in this category, and
raises a not-implemented error otherwise.

> sets_with_partial_maps: the call function is commented out -- same
> comment as above; does this call function fall through to the call
> function on Sets()?

I am not sure I see exactly what you mean. Is there an inconvenient to
the default implementation mentioned above?


> rings - David K: Can the TODO be implemented Rings() == Algebras(ZZ)?

Not with the current infrastructure, but as stated on the linked page
in the wiki, that should be doable in the future with some more
lazyness.

> hecke_modules (positive review: this should probably be revisited --
> notes a hecke algebra or ring category to be useful; this is
> probably not currently used.)
>
> modular_abelian_varieties (positive review): ask William Stein to
> confirm: why there is no abelian varieties category and is that a
> desirable subcategory
>
> schemes (positive review): note that someone might want to revisit
> this in the future and come up with reasonable subcategories
> (abelian varieties, etc)

William: please have a look at some point, and add relevant TODO's in
http://sagetrac.org/sage_trac/wiki/CategoriesRoadMap for later
evolutions of categories.

Cheers,
                                Nicolas
--
Nicolas M. Thiéry "Isil" <nthi...@users.sf.net>
http://Nicolas.Thiery.name/

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sage-combinat-devel" group.
To post to this group, send email to sage-combinat-devel@googlegroups.com
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to