Not talking about giving wrong answer (as, for example, in A110375 thread), many Maple comands are amazingly inefficient. For example, SearchAll from ListTools pakage,

time(ListTools:-SearchAll(2,['$1..1000'$1000]));

                                33.977

Compare it, say, with the following obvious way of doing that:

mySearchAll:=(n,L)->select(m->L[m]=n,[seq(1..nops(L))])[]:

time(mySearchAll(2,['$1..1000'$1000]));

                                2.589

The answers given are identical,

is([ListTools:-SearchAll(2,['$1..100'$100])]=
                 [mySearchAll(2,['$1..100'$100])]);

                                 true

With growing of the size of lists, the time increases approximately linearly in both procedures,

time(mySearchAll(2,['$1..10000'$1000]));

                                26.442

time(ListTools:-SearchAll(2,['$1..10000'$1000]));

                               302.626

Now, about effectiveness of this site. I posted that on this site about 3 years ago, during Maple 10 period. Nothing has changed - it is the same in Maple 12.

That could be my first contribution in  Maple patch library (independent).

Alec


Please Wait...