Sagemath简化

问题描述 投票:1回答:1

我对像这样的表达感兴趣

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版。

symbolic-math sage simplify
1个回答
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

注意:一个类似的问题被问到并回答为

© www.soinside.com 2019 - 2024. All rights reserved.