Hi,

Thanks for all the feedback from everybody about symbolic variables,
special functions, etc.  For now (i.e., the very near term), I think
the best thing to do is:
  (1) remove all predefined *symbolic* variables except x,
      leave in e, pi, and I:
           -- everybody basically wants this.
  (2) don't make any changes to how special functions behave.
           -- doesn't seem necessary.
  (3) don't make any changes to how floating point literals behave.
           -- basically put making any changes here on hold, since
              substantial discussion still hasn't revealed a
              sufficiently good solution.

If one wants purely C-library float special functions,
doing, e.g.,
    from math import sin, cos, tan
etc., works very well right now.   And using float(2.5) or "2.5r"
works fine now.

I'm intrigued by Marshall's remark about "What I think is bad is
that something like 1.0*sin(1) is not numerical - in mathematica
the sin(1) would be forced into a numerical type."

Here's what Maxima/Mathematica/Maple/Mupad do:

sage: maxima.eval('2.5*sin(1)')
'2.5*sin(1)'
sage: mathematica.eval('2.5*Sin[1]')
        2.10368
sage: maple.eval('2.5*sin(1)')
'2.5*sin(1)'
sage: mupad.eval('2.5*sin(1)')
 2.5 sin(1)


Here's what SAGE does:

sage: 2.5*sin(1)
2.50000000000000*sin(1)

Here's what REDUCE does -- which is totally different
(and nuts, IMHO):

1: 2.5*sin(1);
 5*sin(1)
----------
    2

So Mathematica is in fact the only system that makes sin(1)
symbolic but 2.5*sin(1) numerical.  I.e., Maple, SAGE, Mupad,
and Reduce all tend toward 2.5*sin(1) being as symbolic as
possible for some reason.

>From an implementation point of view, given the SAGE rules,
it makes way more sense for 2.5*sin(1) to remain symbolic,
since:
   (1) this is what the backend simplification system (maxima) does,
and
   (2) 2.5 * sin(1) in SAGE is computed by making "2.5" symbolic,
then doing the multiply formally.

I'm not saying we shouldn't find a way to make 2.5 * sin(1) possibly
be numerical.  I'm just remarking that this is a complicated issue
and it definitely deserves further discussion.

 -- William

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/
-~----------~----~----~----~------~----~------~--~---

Reply via email to