怎么用Mathematica处理高次方程的韦达定理?
1、考虑第一题,看看Mathematica怎么暴力求出方程的三个解:
解 = Solve[x^3 + 4 x^2 + 5 x - 8 == 0, x] // Values // Flatten
Mathematica确实可以算出方程的解。

2、然而,最后的结果会靠谱吗?
FullSimplify[Times @@ ((x - 2/(# + 2)) & /@ 解)] // Expand
得到的答案是:
5x^3-x^2+4x-4=0
不管结论是否靠谱,但考虑这个过程的数值计算,就是很费时间的。

3、我们再从另一种角度,来解答这个问题。
不要去解方程,注意到所求的新方程的三个解的形式是一样的,因此可以作一个简单的变量代换:

4、还可以套用韦达定理:
Collect[Factor[
Times @@ ((x - 2/(# + 2)) & /@ {α,β,γ})] //
Numerator // Expand, x^3]
这里得到的,是一个用α,β,γ表示的关于x的三次方程,再根据三次方程的韦达定理,可以求出α+β+γ、αβ+βγ+αγ、αβγ的值,代入到上面得到的方程里面,就可以得到答案。

1、第二题,可以把1/α^5+1/β^5+1/γ^5用α+β+γ、αβ+βγ+αγ、αβγ表示出来,当然,这一点手工计算仍旧很难。
但是我目前没找到更好的方法。

2、第二题还有一个更暴力的方法,就是直接解方程:
jie = Solve[4 x^3 + 3 x^2 + 2 x + 1 == 0, x] // Values // Flatten;
1/#^5 & /@ jie // Total // FullSimplify

3、第三题的解法,和第二题差不多,没找到简单解法:
Eliminate[{f == (u - v) (v - w) (w - u), a == u + v + w,
b == u v + u w + v w, c == u v w}, {u, v, w}]

4、第四题,我们可以和第一题进行对比观察:

5、第五题和二、三题的方法相似:
Eliminate[{f == u/v + v/w + w/u, -2 == u + v + w,
3 == u v + u w + v w, -4 == u v w}, {u, v, w}]

6、第六题比较特殊:
Collect[(x^4 + a x^3 + b x^2 + c x +
d /. {x -> 1 + Sqrt[2] + Sqrt[3]} // Expand) /. {Sqrt[2] -> x,
Sqrt[3] -> y, Sqrt[6] -> z}, {x, y, z}] /. {x -> Sqrt[2],
y -> Sqrt[3], z -> Sqrt[6]}
