Ada*_*dam 4 integer logarithm maxima
我想简化 log(8)/log(2)
我知道
log(8)/log(2) = log(2^3)/log(2) = 3*log(2)/log(2) = 3
Run Code Online (Sandbox Code Playgroud)
这在 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
Run Code Online (Sandbox Code Playgroud)
我用:
round(float(log(8)/log(2));
Run Code Online (Sandbox Code Playgroud)
但我认为这不是最好的解决方案(我使用整数)
问题:
这在 Maxima 5.43.0 中适用于我:
(%i1) radcan(log(8)/log(2));
(%o1) 3
(%i2) radcan(log(2^3)/log(2));
(%o2) 3
Run Code Online (Sandbox Code Playgroud)
马克西玛说
-- 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.
Run Code Online (Sandbox Code Playgroud)
在这种情况下,它对数字进行因式分解8
,然后将 3 的幂移出对数,从而消除 2 的剩余对数:
(%i3) radcan(log(8));
(%o3) 3 log(2)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
331 次 |
最近记录: |