如何确定变量是否为最大值的指数?
How to determine if a variable is exponential in maxima?
我想在表达式中确定 2^n
或 n^2
或 2*n
变量 $n$ 是否为指数。所以在那些情况下,只有第一个会 return true
.
有什么想法吗?
简单的答案是使用 freeof
:
(%i1) exponentp(e,n):=not mapatom(e) and
op(e) = "^" and not freeof(n,second(args(e)))$
然后:
(%i2) map(exponentp,[2*n,n^2,2^n,(n+1)^(a+b), (a+b)^(n+c),2^(3/n+1)],[n,n,n,n,n,n]);
(%o2) [false,false,true,false,true,true]
我相信这是想要的答案。
我想在表达式中确定 2^n
或 n^2
或 2*n
变量 $n$ 是否为指数。所以在那些情况下,只有第一个会 return true
.
有什么想法吗?
简单的答案是使用 freeof
:
(%i1) exponentp(e,n):=not mapatom(e) and
op(e) = "^" and not freeof(n,second(args(e)))$
然后:
(%i2) map(exponentp,[2*n,n^2,2^n,(n+1)^(a+b), (a+b)^(n+c),2^(3/n+1)],[n,n,n,n,n,n]);
(%o2) [false,false,true,false,true,true]
我相信这是想要的答案。