#2562: [with patch, needs review] minor symbolic doc things
-------------------------+--------------------------------------------------
 Reporter:  zimmerma     |       Owner:  was       
     Type:  enhancement  |      Status:  new       
 Priority:  minor        |   Milestone:  sage-4.1.2
Component:  calculus     |    Keywords:            
 Reviewer:               |      Author:            
   Merged:               |  
-------------------------+--------------------------------------------------

Comment(by burcin):

 The use of the word `inexact` in Sage is misleading in general, and there
 are further problems when talking about elements of the `Symbolic Ring`.
 AFAIK, Sage regards any element of RR, CC, etc. as inexact. Since `1.9393`
 is by default in RR, we say that it's inexact. E.g.,

 {{{
 sage: t = 1.9393
 sage: t.parent()
 Real Field with 53 bits of precision
 sage: RR
 Real Field with 53 bits of precision
 sage: t.parent() is RR
 True
 }}}

 Being `inexact` is a property of a ring, which you test with the
 `.is_exact()` function. The new `Symbolic Ring` can have arbitrary python
 objects as elements, so it could in theory have exact members too.
 However, to cover all cases, it reports that it is inexact:

 {{{
 sage: SR.is_exact()
 False
 }}}

 Maybe in the future we'll move this exactness check to the element level,
 at least for polynomials, matrices etc. over `SR`, since in many cases it
 prevents using more efficient algorithms.

 The problem reported on line 582 of the old `calculus.py` has moved to
 line 403 of `sage/symbolic/ring.pyx`. Paul, do you have any suggestions on
 how to improve the documentation (especially around the place you
 mentioned) with regards to this issue?

 ----

 Most of the problems pointed out by this ticket don't exist in the new
 symbolics code, so I would be ok with addressing the two issues in
 attachment:trac_2562-minor-symb-docs.patch) and closing this ticket.

 Though, I am still not comfortable with the wording here:

 {{{
        Return True if this symbolic expression does not evaluate to
        (symbolic) zero.
 }}}

 I suggest something like

 {{{
         Return True unless this symbolic expression can be shown to be
 zero.

         Note that deciding if an expression is zero is undecidable in
 general.
 }}}

 It would be better to write more on how the function tests for zero, and
 explain that there could be cases where it returns `True` for an
 expression equal to zero (though I couldn't think of an example right
 now), but I'm willing to give this a positive review with the minor
 improvement I suggest above.

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