#8881: Functorial constructions in categories
---------------------------------+------------------------------------------
   Reporter:  hivert             |       Owner:  nthiery                 
       Type:  enhancement        |      Status:  needs_review            
   Priority:  critical           |   Milestone:  sage-4.4.3              
  Component:  categories         |    Keywords:  Functorial constructions
     Author:  Nicolas M. ThiƩry  |    Upstream:  N/A                     
   Reviewer:  Florent Hivert     |      Merged:                          
Work_issues:                     |  
---------------------------------+------------------------------------------
Changes (by hivert):

  * status:  needs_work => needs_review


Old description:

> This patch refactors completely the framework for (covariant)
> functorial constructions, improves the existing ones, and adds new ones.
>
> Improved constructions:
>  - Cartesian products: generalization to non modules_with_basis,
>    monoid operations, ...
>
> New constructions:
>  - Subquotients, Quotients, Subobjects, IsomorphicObjects
>  - DualObjects, Algebras
>
> Miscellaneous category fixes and improvements:
>  - is_subcategory now handles properly join categories
>    (courtesy of Florent Hivert)
>  - For a field K, Modules(K) returns VectorSpaces(K)
>  - As a temporary workaround, Parent._an_element_ calls the
>    _an_element_ method provided by the categories, if available
>  - Adds a method Category.or_subcategory
>  - Cleans up _repr_ by extracting a _repr_object_names method
>  - Cleans up _latex_ by extracting a _short_name method

New description:

 This patch refactors completely the framework for (covariant)
 functorial constructions, improves the existing ones, and adds new ones.

 Improved constructions:
  - Cartesian products: generalization to non modules_with_basis,
    monoid operations, ...

 New constructions:
  - Subquotients, Quotients, Subobjects, IsomorphicObjects
  - DualObjects, Algebras

 Miscellaneous category fixes and improvements:
  - is_subcategory now handles properly join categories
    (courtesy of Florent Hivert)
  - For a field K, Modules(K) returns VectorSpaces(K)
  - As a temporary workaround, Parent._an_element_ calls the
    _an_element_ method provided by the categories, if available
  - Adds a method Category.or_subcategory
  - Cleans up _repr_ by extracting a _repr_object_names method
  - Cleans up _latex_ by extracting a _short_name method

 Depend on #9104

--

Comment:

 Replying to [comment:7 was]:
 > This causes doctest failures, including the following.
 {{{
 >
 > sage -t  sage/categories/sets_cat.py
 > **********************************************************************
 > File
 "/mnt/usb1/scratch/wstein/build/release/4.4.3/sage-4.4.3.alpha2/devel
 /sage-main/sage/categories/sets_cat.py", line 624:
 >     sage: A = Monoids().example().algebra(QQ); A
 > Exception raised:
 . [...]
 >     AttributeError: 'CombinatorialFreeModule_with_category' object has
 no attribute '_name'
 > **********************************************************************
 > File
 "/mnt/usb1/scratch/wstein/build/release/4.4.3/sage-4.4.3.alpha2/devel
 /sage-main/sage/categories/sets_cat.py", line 626:
 >     sage: A.category()
 > Expected:
 >     Category of monoid algebras over Rational Field
 > Got:
 >     Category of set algebras over Rational Field
 > **********************************************************************
 }}}

 This bug is fixed in #9104 but it does appear on 4.4.2 so I didn't think
 about a dependency. Sorry for this.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/8881#comment:8>
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 post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to