#11068: Basic implementation of one- and twosided ideals of non-commutative 
rings,
and quotients by twosided ideals
----------------------------------------------------------------+-----------
   Reporter:  SimonKing                                         |       Owner:  
AlexGhitza                                 
       Type:  enhancement                                       |      Status:  
needs_work                                 
   Priority:  major                                             |   Milestone:  
sage-4.7                                   
  Component:  algebra                                           |    Keywords:  
onesided twosided ideal noncommutative ring
     Author:                                                    |    Upstream:  
N/A                                        
   Reviewer:                                                    |      Merged:  
                                           
Work_issues:  Add examples; move code from ring.py to rings.py  |  
----------------------------------------------------------------+-----------

Comment(by nthiery):

 Replying to [comment:7 SimonKing]:
 > I guess, a quotient ring of a ring R should belong to the category
 `R.category().Quotients()`.

 +1

 > Doing, so, there are further problems, since some crucial methods
 > such as `lift` have a completely different meaning in
 > sage.rings.quotient_rings and sage.categories.quotients.

 That's precisely the issue that stopped me starting the refactoring of
 quotient, because there was a design discussion to be run first on
 sage-devel to see which syntax should be prefered:

  - that currently used in the category framework for sub quotients:

      P.lift     either a plain Python method, or better the lift
                 function as a morphism
      P.lift(x)  lifts x to the ambient space of P

  - or that used in sage.rings.quotient_rings:

      P.lift()(x) lifts x to the ambient space of P
      P.lift()    the lifting morphism

 I personally prefer the former, first from a syntactical point of
 view, and because it make it easy in practice to implement lift.

 Note: at first sight, it seems easy to make the change in this
 direction while retaining backward compatibility by just patching
 sage.ring.quotient_rings so that P.lift(x) delegates the work to
 P.lift()(x).

 Do you mind running this dicussion on sage-devel?

 Cheers,
                         Nicolas

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11068#comment:9>
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