[GiNaC-list] A bad idea: GiNaC as the symbolic manipulation engine in Sage
Jens Vollinga
jensv at nikhef.nl
Mon Aug 11 16:50:54 CEST 2008
Hi,
Alexei Sheplyakov schrieb:
> GiNaC is a special purpose symbolic manipulation library. The purpose of
> GiNaC is to do "simple" manipulations with "large" expressions using a common
> programming language (as opposed to ill designed, unstable ones as offered
well, I don't quite agree but maybe I am misinterpreting the quotation
marks ;-). If you want to handle large expression, then use FORM. And
what a simple manipulation is depends on whom you ask. Maybe for a
mathematician symbolic integration for example is a very simple
manipulation ...
GiNaC's raison d'etre is to help doing physics calculations. And it
might be that even some not so simple symbolic manipulation are needed
for that end.
> by most of CASes). So, I don't think GiNaC is a good choice for Sage
> (which attempts to be a general purpose _interactive_ CAS).
They would use ginac via a python wrapper, so I don't see any problems here.
> The order of expressions (in particular, symbols) is not stable. This is
> a price for a fast comparison of expressions.
Additional nitpicking: that is not quite true. There is a difference
between a stable order and a human-friendly order. I mentioned the
reasons for non-stability in my last email. It has nothing to do with
speed. Speed of comparison has only an effect on the human-friendliness.
In a GUI system with mostly short expressions an additional reordering
for the output is feasible and could be done outside ginac by the python
code.
Regards,
Jens
More information about the GiNaC-list
mailing list