2

我发现了一个我无法理解的关于 Sympy 的问题。

为什么这会返回错误...

factor(81*q + 90) == 9*(9*q + 10)

...虽然这返回true?

factor(q**2-64) == (q+8)*(q-8)

当我输入

factor(81*q + 90)

输出正是这个表达式

9*(9*q + 10)

那么,为什么 Sympy 不认为我的第一个比较是真的呢?

4

2 回答 2

1

SymPy自动分发number*addition. 使用一个技巧来防止这种自动简化(基本上,)。9*(9*q + 10)81*q + 90factorMul(9, 9*q + 10, evaluate=False)

删除此自动简化存在一个未解决的问题,但尚未实施。

于 2016-02-15T20:37:00.703 回答
0

来自文档

您可以执行以下操作:

factor(81*q + 90).equals(9*(9*q + 10))
于 2020-06-29T14:32:18.617 回答