On Tue, Nov 25, 2008 at 10:29 AM, Tim Lahey <[EMAIL PROTECTED]> wrote:
>
> On Nov 25, 2008, at 7:53 AM, mabshoff wrote:
>>
>> Cool. I would suggest we open a ticket so that integration in Sage
>> defaults to any of MMA, Maple, Maxima, Axiom and Sympy. That way
>> running the test suite (at least for performance) would become trivial
>> and I would also think that many users might find that feature useful.
>> Extra points for making this a generic framework and then creating
>> categories for integration, limits and so on so that one could easily
>> make Sage use a default system for those categories.
>
> I really like this idea and it fits with something William said a few
> days ago. However, this could be very challenging.

It is challenging.  All of the things you list below are pretty much on
target.  I'm glad you understand the challenges well; you'll clearly be
contributing a lot to more to Sage soon!

>  I think FriCAS
> currently returns the results in text form so you can't really do much
> with it

Half true -- yes it is in text form, but do not think that means you can't
really do much with it.  When you do

    sage: f.integrate()

in Sage right now, f gets turned into text form, evaluated by Maxima,
integrated, the result gets returned in text form... and we *do* do a lot
to it -- we implement a complete parser that turns Maxima expressions
back into native Sage expressions.   It's a page or 2 of code in
calculus.py.  There's nothing that stops us from doing the same
with FriCAS; in fact, it's inevitable that will happen.

>  and calls to SymPy will convert any powers with ^ to **, but
> not back.

That's just notation that is trivial to fix, e.g., replace('**','^').
Despite not being Perl, in my opinion Python is just as powerful
at manipulating strings.

> Plus, we need to be able to use Maxima's various simplify
> commands with the results (so far, its simplify_full() does the best
> job out of the various things I've tried).

Yep, if we convert either sympy or fricas back into native sage expressions,
we'll be able to do that.

> Oh, and this system would
> need to know about the various integration function signatures (e.g.,
> Maple uses int() to integrate).

Yes, certainly, just like Sage currently knows about the function signatures
for all the corresponding maxima commands.

> The other thing is that this system should support the new symbolics
> as well. Currently, if you choose to use the new symbolics, you can't
> integrate.

Yep.

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://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to