#16397: Symbolic cmp
-------------------------------------+-------------------------------------
       Reporter:  vbraun             |        Owner:
           Type:  defect             |       Status:  new
       Priority:  critical           |    Milestone:  sage-6.6
      Component:  symbolics          |   Resolution:
       Keywords:                     |    Merged in:
        Authors:                     |    Reviewers:
Report Upstream:  N/A                |  Work issues:
         Branch:                     |       Commit:
  u/rws/symbolic_cmp                 |  af5f800fdc616022d503b5e845ec81ebfef7c25e
   Dependencies:                     |     Stopgaps:
-------------------------------------+-------------------------------------
Description changed by rws:

Old description:

> In the symbolic ring, cmp implements the print comparison which is
> probably not what you envisioned:
> {{{
> sage: cmp(1, sqrt(2))     # mathematically correct, uses rich comparison
> -1
> sage: cmp(SR(1), sqrt(2)) # unexpectedly, you get the print sort order
> 1
> }}}
> Everybody who coerces to same parents internally before comparing trips
> over this, for example the real lazy field:
> {{{
> sage: RLF(1) < RLF(sqrt(2))
> False
> }}}

New description:

 In the symbolic ring, cmp implements the print comparison which is
 probably not what you envisioned:
 {{{
 sage: cmp(1, sqrt(2))     # mathematically correct, uses rich comparison
 -1
 sage: cmp(SR(1), sqrt(2)) # unexpectedly, you get the print sort order
 1
 }}}
 Everybody who coerces to same parents internally before comparing trips
 over this, for example the real lazy field:
 {{{
 sage: RLF(1) < RLF(sqrt(2))
 False
 }}}
 This also makes `RealSet` unusable with symbolics:
 {{{
 sage: RealSet((0, pi),[pi, pi],(pi,4))
 [pi, 4)
 sage: RealSet((0, pi),[0, pi],(pi,4))
 [pi, 4)
 sage: RealSet((0, pi),[0, 3.5],(pi,4))
 (pi, 4)
 }}}

--

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