#11126: Fix category of Symbolic Ring
-------------------------------------+-------------------------------------
       Reporter:  duenez             |        Owner:  burcin
           Type:  defect             |       Status:  needs_review
       Priority:  major              |    Milestone:  sage-6.4
      Component:  symbolics          |   Resolution:
       Keywords:  symbolic ring      |    Merged in:
  category                           |    Reviewers:
        Authors:  Peter Bruin        |  Work issues:
Report Upstream:  N/A                |       Commit:
         Branch:                     |  82b9860a3d47ee19f944a3b357b9d0e943226a54
  u/pbruin/11126-SymbolicRing_not_domain|     Stopgaps:
   Dependencies:                     |
-------------------------------------+-------------------------------------
Changes (by {'newvalue': u'Peter Bruin', 'oldvalue': u'duenez'}):

 * status:  needs_info => needs_review
 * commit:   => 82b9860a3d47ee19f944a3b357b9d0e943226a54
 * branch:   => u/pbruin/11126-SymbolicRing_not_domain
 * author:  duenez => Peter Bruin


Old description:

> The symbolic ring (`SR`) in Sage currently considers itself to be a field
> and therefore also an integral domain:
> {{{
> sage: SR.is_field()
> True
> sage: SR.is_integral_domain()
> True
> }}}
> However, it is confused about its category:
> {{{
> sage: SR.category()
> Category of commutative rings
> sage: SR in PrincipalIdealDomains()
> False
> sage: SR in Fields()
> True
> }}}
> The last command causes the category of `SR` to be refined, and running
> the same commands again gives a different output:
> {{{
> sage: SR.category()
> Category of fields
> sage: SR in PrincipalIdealDomains()
> True
> sage: SR in Fields()
> True
> }}}
> We should either make `SR.is_field()` return `False` (which is the only
> mathematically correct option) or put `SR` in `Fields()` from the
> beginning.

New description:

 The symbolic ring (`SR`) in Sage currently considers itself to be a field
 and therefore also an integral domain:
 {{{
 sage: SR.is_field()
 True
 sage: SR.is_integral_domain()
 True
 }}}
 However, it is confused about its category:
 {{{
 sage: SR.category()
 Category of commutative rings
 sage: SR in PrincipalIdealDomains()
 False
 sage: SR in Fields()
 True
 }}}
 The last command causes the category of `SR` to be refined, and running
 the same commands again gives a different output:
 {{{
 sage: SR.category()
 Category of fields
 sage: SR in PrincipalIdealDomains()
 True
 sage: SR in Fields()
 True
 }}}
 This ticket makes `SR.is_field()` and `SR.is_integral_domain()` return
 `False`.

 Because of this, one now has to indicate explicitly in the code when one
 takes the risk of treating the symbolic ring as a field.  This is
 currently only done for a couple of linear algebra methods and for points
 on elliptic curves over the symbolic ring.

 A few constructions (which were mathematically meaningless anyway) are now
 disallowed:
 - quaternion algebras over the symbolic ring
 - converting a symbolic expression into a rational function over the
 symbolic ring
 - minimal polynomials of matrices over the symbolic ring

--

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

Reply via email to