Hi, I was wondering what the fastest way is to do this benchmark in Sage:
┌────────────────────────────────────────────────────────────────────┐ │ Sage Version 6.4, Release Date: 2014-11-14 │ │ Enhanced for SageMathCloud. │ └────────────────────────────────────────────────────────────────────┘ sage: var('a1 a2 a3 a4 a5 a6 a7') (a1, a2, a3, a4, a5, a6, a7) sage: time f = expand((a1+a2+a3+a4+sqrt(3)*a5)^25) CPU times: user 9.02 s, sys: 281 ms, total: 9.3 s Wall time: 8.91 s sage: len(f.operands()) 23751 I took the "Expanding a Symbolic Expression" from http://www.sagemath.org/tour-benchmarks.html, but made it shorter and added sqrt(3) in there. I tried to use the polynomials way, i.e. R.<a1,a2,a3,a4,a5,a6,a7> = QQ[], but that didn't expand it at all. The above is using SMC. On my slow laptop, using our CSymPy library (https://github.com/sympy/csympy), written in C++, I get: In [4]: time f = ((a1+a2+a3+a4+sqrt(3)*a5)**25).expand() CPU times: user 201 ms, sys: 23.9 ms, total: 225 ms Wall time: 226 ms In [5]: len(f.args) Out[5]: 23751 Which is almost 40x faster. Essentially I am wondering, if there is any software in Sage that can do this faster. In other words, whether this is a good benchmark to test general symbolic manipulation, that cannot be trivially converted to a polynomial manipulation (for which there are great libraries out there, that one should just call). Ondrej -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.