floor(log(4)/log(2)) = 1 ??



On 4/26/08, Oliver Kullmann <O.Kullmann at swansea.ac.uk> wrote:

>  floor(log(4) / log(2));
>  Evaluation took 0.21 seconds (0.24 elapsed) using 3.675 MB.
>  (%o141)                                          1
>
>  I don't find that very impressive.

Yeah. Me neither. This bug has been reported before;
do we know what's going on here? Is someone working on it?

>  Furthermore, I couldn't find any simplification rule which
>  would yield log(4) / log(2) = 2 ??

Looks like radcan can do it.

radcan (log(4) / log(2)); => 2

Sorry that it's not obvious from the documentation.

>  I would assume that some rule does know that.
>  What seems to me absolutely indispensable is
>  a general "simplify"-function, which in some reasonable
>  way applies *all* simplification rules (without fear
>  that it takes a bit longer --- finding out about
>  such errors etc. takes much longer :-().

I think the problem is that there isn't any obvious notion
of progress when applying identities ...

That said, it would be useful to list the flags and functions
which recognize log or any other operator. ? log shows some
info about different flags, which is good, but it doesn't mention
radcan; there are probably other functions which act on logs.

HTH

Robert Dodier