どの数式が等しいかチェックしたいと思います。 私はこれをPythonを使ってやりたいと思います。私はそれをSympyで試しました。Sympyを使ってシンボリックな数式をPythonと比較する
私のアイデアは、同等のペアが同じ表現に縮小されるような表現を減らすためにsimplifyを使用することでした。 次に、2つのforループでそれらをすべて互いに引き離し、結果がゼロに等しいかどうかを確認します。
残念なことに、ゼロになることはありませんが、これは正しいとは思われません。 私はおそらく単純化機能は本当に私が必要としていないと思う。 2つの式が実際に数学的に等しいかどうかをチェックする関数がsympyにありますか?
これは、これまでの私のコードです:関数が等しいかどうかを確認するために
from sympy import *
a = symbols ('a')
b = symbols ('b')
n = symbols ('n')
m = symbols ('m')
x1=simplify(log(a,n**(log(b,a))))
x2=simplify(((a**n)/(b**m))**(1/b))
x3=simplify(b**(n*log(a)))
x4=simplify(log(b,n))
x5=simplify(a**((n-m)/b))
x6=simplify(n*(log(a)+log(b)))
x7=simplify(log((a**n)*(b**n)))
x8=simplify(a**(log(b**n)))
L=[x1,x2,x3,x4,x5,x6,x7,x8]
for i in range (0 , 6):
for k in range (i+1 , 7):
print(L[i]-L[k])
これらの表現はどれも同じですか?私はそれが何かを見ません。 –
さまざまな変換を実行することによって数学的に等しいものが存在するはずです。ベースシフトなど – Piri