如何简化 Maxima CAS 中的 log(8)/log(2)?

How to simplify log(8)/log(2) in Maxima CAS?

我想简化log(8)/log(2)

我知道

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

有可能 in Maxima 但对我不起作用:

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

我使用:

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

但我认为这不是最佳解决方案(我使用整数)

问题:

  1. 怎么做?
  2. 为什么它有效 in Maxima doc,但在我的 Maxima 中却无效?

这对我适用于 Maxima 5.43.0:

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

千里马说

 -- 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.

在此上下文中,它对数字 8 进行因式分解,然后将 3 的幂移动到对数之外,从而可以取消 2 的剩余对数:

(%i3) radcan(log(8));
(%o3)                              3 log(2)