4

I want to simplify log(8)/log(2)

I know that

log(8)/log(2) = log(2^3)/log(2) = 3*log(2)/log(2) = 3

it is possible in Maxima but not works for me:

Maxima 5.41.0 http://maxima.sourceforge.net
using Lisp GNU Common Lisp (GCL) GCL 2.6.12
Distributed under the GNU Public License. See the file COPYING.
Dedicated to the memory of William Schelter.
The function bug_report() provides bug reporting information.
(%i1) log(8)/log(2);
                                    log(8)
(%o1)                               ------
                                    log(2)
(%i2) logexpand;
(%o2)                                true
(%i3) log(2^3)/log(2);
(%o3)                               log(8)
                                    ------
                                    log(2)

(%i4) logexpand;
(%o4)                                true

I use:

round(float(log(8)/log(2));

but I think that it is not the best solution ( I work with integers)

Questions:

  1. How to do it ?
  2. Why it works in Maxima doc, but not in my Maxima ?
Adam
  • 1,254
  • 12
  • 25
  • https://stackoverflow.com/questions/36271504/how-to-evaluate-logarithms-in-maxima – Adam Oct 19 '19 at 09:59
  • Does this answer your question? [How to evaluate logarithms in Maxima?](https://stackoverflow.com/questions/36271504/how-to-evaluate-logarithms-in-maxima) – jacob Nov 12 '19 at 23:15

2 Answers2

5

This works for me in Maxima 5.43.0:

(%i1) radcan(log(8)/log(2));
(%o1)                                  3
(%i2) radcan(log(2^3)/log(2));
(%o2)                                  3

Maxima says that

 -- Function: radcan (<expr>)

     Simplifies <expr>, which can contain logs, exponentials, and
     radicals, by converting it into a form which is canonical over a
     large class of expressions and a given ordering of variables; that
     is, all functionally equivalent forms are mapped into a unique
     form.  For a somewhat larger class of expressions, 'radcan'
     produces a regular form.  Two equivalent expressions in this class
     do not necessarily have the same appearance, but their difference
     can be simplified by 'radcan' to zero.

In this context it factorizes the number 8 and then moves the power 3 outside of the logarithm, enabling cancellation of the remaining log of 2:

(%i3) radcan(log(8));
(%o3)                              3 log(2)
jacob
  • 1,535
  • 1
  • 11
  • 26
0

Another way:

log(8.0)/log(2.0); 3

To exemplify I did the calculation in the command line. This result is shown in the picture below

enter image description here

Time Step
  • 45
  • 4