简化鼠尾草

时间:2019-03-04 22:07:06

标签: symbolic-math sage simplify

我对诸如此类的表达式感兴趣

w=2*cos(3/7*pi) - 2*cos(2/7*pi) + 2*cos(1/7*pi) - 1
w正好是0,可以很容易地通过将每个余弦表示为-1的第7个根的幂来验证。 Sage可以通过将w评估为真实来大致验证这一点。

我试图将所有简化方法应用于w,但无济于事。全部返回相同的表达式。我是否达到了Sage的限制,或者有某种方法可以使其处理这种表达?

我正在使用8.2版。

1 个答案:

答案 0 :(得分:0)

知道表达式是否为零的一种方法是询问。

键入w == 0将返回一个符号方程式,但使用bool 可以将其评估为布尔值。

sage: w = 2*cos(3/7*pi) - 2*cos(2/7*pi) + 2*cos(1/7*pi) - 1
sage: w == 0
2*cos(3/7*pi) - 2*cos(2/7*pi) + 2*cos(1/7*pi) - 1 == 0
sage: bool(w == 0)
True

另一种方法是将w转换为代数数字字段QQbar

sage: ww = QQbar(w)
sage: ww
0

注意:有人问过类似的问题,并回答为