[GiNaC-list] A bad idea: GiNaC as the symbolic manipulation engine in Sage
jensv at nikhef.nl
Mon Aug 11 16:50:54 CEST 2008
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
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
More information about the GiNaC-list