Waldek Hebisch <hebi...@math.uni.wroc.pl> writes: | Gabriel Dos Reis wrote: | > | > For has-tests cases, the complexity can be bad in practice. There is | > one constructor in the AXIOM algebra that takes a looong time, more time | > to compile that others; most of the time is spent in simplifying | > conditionals while building the predicate vector and generating codes to | > set up the 'right' functions to call. Yet, definition of the | > constructor is very simple (in apparance.) | | IIRC compilation of ExponentialExpansion used to spend a lot | of time in simplifying conditionals.
Indeed. | In FriCAS this is no longer a problem: | | - results of knownInfo are cached, which cuts number of | tests On several occasions I considered caching results of category instantiations; each time, I decided to back out because when I have SomeCategory(X,Y,Z), the expressions X, Y, Z (usually symbols) may have properties depending on the environments, so I would have to cache each argument with its known set of properties... That is probably not too bad in practice but that wasn't appealing at the time. | - JoinInner and few other routnes involved in "atomic" tests | are much faster than before | - there was misguided optimization in knownInfo, introduced | in 2003. I do not know if it made sense then, but now | it helped a little (if any) on average, but lead to very | bad worst case behaviour. which optimization do you have in mind? | Of course, more "interesting" conditions (and such tend | to pop up when writing generic code) are likely to find | weak spot in current FriCAS version. -- Gaby ------------------------------------------------------------------------------ RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 _______________________________________________ open-axiom-devel mailing list open-axiom-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/open-axiom-devel