化简二重根式 记 `sqrt(u^2-v) = n`, 则 `sqrt(u+-sqrt v) = sqrt((u+n)/2) +- sqrt((u-n)/2)`. 如 `sqrt((3-sqrt 5)/2) = (sqrt 5 - 1)/2`, `sqrt(2+sqrt 3) + sqrt(2-sqrt 3) = sqrt 6`, `sqrt(-1+2"i") + sqrt(-1-2"i") = sqrt(2sqrt5-2)` 等等.
记 `a = u + sqrt v`, `b = u - sqrt v`, 则 `sqrt a +- sqrt b` `= sqrt(a + b +- 2 sqrt(a b))` `= sqrt(2(u +- n))`. 解出 `sqrt a`, `sqrt b` 即得结论.
等号右边可以有超过两项吗? 我们考虑 `(sqrt a + sqrt b + sqrt c)^2` `= a+b+c+2(sqrt(ab) + sqrt(bc) + sqrt(ca))`, 其中 `a b, b c, c a` 至少两个数有相同的非平方因子. 这里的非平方因子是指从一个数中约去最大的平方因子的结果. 不妨设 `a b, b c` 有相同的非平方因子 `d`, 那么 `a b * b c // d^2` 是平方数, 即 `a c` 是平方数. 反设 `a, b, c` 的非平方因子均不相同, 特别 `a, c` 有不同的非平方因子, 那么 `a c` 不可能为平方数. 因此, `a, b, c` 中至少两个数有相同的非平方因子. 换言之等号右边最多只有两项.
熟知一元二次方程 `a x^2 + b x + c = 0`, `a, b, c in RR`, `a != 0`
的求根公式为
`x_(1,2) = (-b +- sqrt(b^2-4 a c))/(2 a)`.
于是, 方程在 `Delta = b^2 - 4 a c gt 0` 时有两个不同实根,
`Delta = 0` 时有一对实二重根, `Delta lt 0` 时有一对共轭复根.
一元二次方程的 Vieta 定理是说,
`x_1 + x_2 = -b/a`, `quad x_1 x_2 = c/a`.
最后, 如果 `c != 0`, 则方程 `a + b y + c y^2 = 0` 的根存在, 且满足
`y_1 = x_2^-1, y_2 = x_1^-1`, 其中
`y_(1,2) = (-b +- sqrt(b^2-4 a c))/(2 c)`
`= (2 a)/(-b ∓ sqrt(b^2-4 a c))`.
也可以由 Vieta 定理得到一元二次方程的求根公式: 设 `a x^2+b x + c = 0` 的两根为 `A+B`, `A-B`, 则 `(A+B) + (A-B) = -b/a`, `quad (A+B)(A-B) = c/a`. 解得 `A = -b/(2a)`, `B = +-sqrt(b^2-4a c)/(2a)`.
一般的一元 `n` 次方程形如 `a_n x^n + a_(n-1) x^(n-1) + cdots + a_1 x + a_0 = 0`, `quad a_n != 0`. 两边同除以 `a_n`, 就可将方程左边化为首一 (最高次项系数为 1) 的多项式: `x^n + b_(n-1) x^(n-1) + cdots + b_1 x + b_0 = 0`. 再作变元替换 `x = y - b_(n-1)/n` (即配 `n` 次方), 可将 `n-1` 次项系数化为零: `y^n + c_(n-2) y^(n-2) + cdots + c_1 y + c_0 = 0`. 下面我们就从首一的, `n-1` 次项系数为零的方程入手, 讨论三次和四次方程的解法.
解三次方程 `x^3 + p x + q = 0`.
(Cardano 公式)
令 `x = u + v`, 代入方程有
`u^3 + v^3 + (3 u v + p)(u+v) + q = 0`.
可见 `x` 是方程的解的一个充分条件是
`{
u^3 + v^3 = -q;
3 u v = -p;
:}`
令 `alpha = u^3`, `beta = v^3`, 则 `alpha`, `beta` 应当满足
`{
alpha + beta = -q;
alpha beta = -p^3/27;
:}`
从而由一元二次方程根与系数的关系 (Vieta 定理), `alpha`, `beta` 是
关于 `z` 的方程
`z^2 + q z -p^3/27 = 0`
的两根, 即
`alpha, beta = -q/2 +- sqrt((q/2)^2 + (p/3)^3)`.
以 `omega = -1/2 + (sqrt 3)/2 "i"` 记三次方程 `x^3 = 1` 的一个根,
又记 `root 3 alpha`, `root 3 beta` 分别为三次方程 `u^3 = alpha`,
`v^3 = beta` 的一个根, 且满足 `root 3 alpha root 3 beta = -p//3`
(在 `p` 为实数时, 将 `root 3 alpha` 和 `root 3 beta` 取为实数,
或一对共轭复数即可).
容易验证, `u^3 = alpha` 的全部根和 `v^3 = beta`
的全部根为 (注意, `n` 次多项式最多只有 `n` 个根)
`u = root 3 alpha, omega root 3 alpha, omega^2 root 3 alpha`,
`v = root 3 beta, omega root 3 beta, omega^2 root 3 beta`.
再利用 `u v = -p//3`, 原方程的三个根为:
`root 3 alpha + root 3 beta`,
`omega root 3 alpha + omega^2 root 3 beta`,
`omega^2 root 3 alpha + omega root 3 beta`.
解方程 `27 x^3 + 54 x^2 - 369 x - 370 = 0`.
最高次项系数化为 1, `x^3 + 2 x^2 - 41/3 x -370/27 = 0`. 令 `x = y - 2/3`, `y^3 - 15 y - 4 = 0`. 故 `q/2 = -2`, `p/3 = -5`, `Delta = (q/2)^2 + (p/3)^3 lt 0`, 有三个不 同实根. 解得 `alpha = 2 + 11"i" = (2+"i")^3`, `quad beta = 2 - 11"i" = (2-"i")^3`. 所以三个实根为 `4, -2-sqrt3, -2+sqrt3`. 而原方程的根为 `10/3, -8/3-sqrt3, -8/3+sqrt3`.
解四次方程 `x^4 + p x^2 + q x + r = 0`.
设方程左侧可以因式分解为
`x^4 + p x^2 + q x + r = (x^2 - a x + b)(x^2 + a x + c)`
注意我们已将两个二次因式中的一次项系数设为相反数,
这是因为它们相乘的结果的三次项系数为零. 比较各次项系数有:
`{
b + c -a^2 = p;
a(b-c) = q;
b c = r;
:}`
由前两式得
`2a b = a(a^2 + p) + q`,
`2a c = a(a^2 + p) - q`.
代入第三式,
`4a^2 r = a^2 (a^2 + p)^2 - q^2`,
即
`a^6 + 2p a^4 + (p^2 - 4r)a^2 - q^2 = 0`.
上式看作关于 `a^2` 的一元三次方程, 取它的任一根 (比如实根),
就可得到 `b, c` 的值, 进而解两个一元二次方程
`x^2 - a x + b = 0`, `quad x^2 + a x + c = 0`
得到原方程的根.
[来自 bilibili@千梓猫鹿]
一个类似三次方程 Cardano 公式的解法. 设 `x = u + v + w` 是方程的解, 则
`x^2 = sum u^2 + 2 sum u v`,
`x^4 = (sum u^2)^2 + 4(sum u^2)(sum u v)`
`+ 4 sum u^2 v^2 + 8 u v w sum u`,
代入原方程得
`(sum u^2)^2 + 4 sum u^2 v^2`
`+ (8 u v w + q) sum u
+ (4 sum u^2 + 2 p) sum u v`
`+ p sum u^2 + r = 0`.
因此 `x` 是方程的解的充分条件为
`{
(sum u^2)^2 + 4 sum u^2 v^2 + p sum u^2 + r = 0;
8 u v w + q = 0;
4 sum u^2 + 2 p = 0;
:}`
化简得到 `u^2, v^2, w^2` 满足的方程组:
`{
sum u^2 = -p // 2;
u^2 v^2 w^2 = (q//8)^2;
sum u^2 v^2 = (p//4)^2 - r//4;
:}`
利用 Vieta 定理, 它们是三次方程
`z^3 + p/2 z^2 + [(p/4)^2 - r/4] z - (q/8)^2 = 0`
的三根. 至此问题化为求解三次方程.
策略1: 两根和等于另外两根和 解方程 `x^4+6x^3+11x^2+6x-1 = 0`.
[来自群友 Gzz] 注意到左边可以写成 `(x^2+3x+1)^2-2`. 我注意不到😭
策略2: 尝试在 `ZZ` 上分解 解方程 `x^4 + 5 x^3 + 2 x^2 + 20 x + 16 = 0`.
假设左边可以分解为 `(x^2 + a x + c)(x^2 + b x + d)`, 则 `a + b = 5`, `quad a b + c + d = 2`, `quad a d + b c = 20`, `quad c d = 16`. 假设 `c, d` 均为整数, 列举 16 的因子, 发现当 `c = d = 4` 时, 上述方程组有解: `a + b = 5`, `a b = -6`. 于是 `a, b` 是方程 `y^2 - 5 y - 6 = 0` 的两根, `{a, b} = {6, -1}`. 后面的处理是容易的.
[题源网络] 郭小弟有四個女朋友,恰好一個比一個大兩歲,且他們年齡的乘積是 3465,請問最大的女孩年齡是多少?
设她们年龄的平均值是 `x`, 则 `(x+1)(x-1)(x+3)(x-3) = 3465`, 上式可轻松化为 `x^2` 的二次方程, 这就避免了四次方程. 解得 `x = 8`, 于是四个女朋友的年龄分别是 5, 7, 9, 11 😅.
即使你不小心设了 `x` 是最小的那个年龄, 得到了下面这样的四次方程: `x^4 + 12x^3 + 44x^2 + 48x - 3465 = 0`, 没有关系! 由题意知道方程有两根和等于另外两根和, 故可以换元 `y = x(x+a)`, 方程化为 `y^2 + b y - 3465 = 0`. 解方程组 `2a = 12`, `quad a b = 48`, `a^2 + b = 44`, 得到 `a = 6`, `b = 8`. 先解 `y^2 + 8 y - 3465 = 0` 得 `y = 55, -63`; 再解 `x(x+6) = y` 得 `x = -3+-sqrt(9+y)`, 其中只有 `x=5` 符合题意.
若一个 `n` 元代数式 `f(x_1, x_2, cdots, x_n)` 对任意实数 `t` 满足 `f(t x_1, t x_2, cdots, t x_n) = t f(x_1, x_2, cdots, x_n)`, 就称它为 `n` 元齐次式. 齐次的 `n` 元多项式称为 `n` 元齐次多项式. 容易知道, 一个多项式是齐次的当且仅当它的各项次数都相等, 如 `x^3 - 2x^2 y` 就是一个齐次多项式.
初等对称多项式 (基本对称多项式, elementary symmetric polynomial) 关于 `n` 个变元 `x_1, cdots, x_n` 的初等对称多项式定义为 `sigma_i(x_1, cdots, x_n) = sum_(C sube N, |C| = i) prod_(j in C) x_j`, `quad i = 0, 1, cdots, n`. 其中 `N = {1, 2, cdots, n}`. 上式也可以写成 `sigma_0 = 1`, `quad sigma_1 = sum_i x_i`, `quad sigma_2 = sum_(i lt j) x_i x_j`, `quad sigma_3 = sum_(i lt j lt k) x_i x_j x_k`, `quad cdots`, `quad sigma_n = x_1 x_2 cdots x_n`. 初等对称多项式是每个变元最高次数为 1 的齐次对称多项式, 其中 `sigma_i` 的次数为 `i`, 它等于 `x_1` 到 `x_n` 中任取 `i` 个变量相乘的所有情况之和.
Vieta 定理 `n` 次多项式 `f(x) = sum_(i=0)^n a_i x^i` 的全部 `n` 个根记为 `x_i`, `i = 1, 2, cdots, n`. 我们有根与系数的关系: `sigma_i(x_1, cdots, x_n) = (-1)^i a_(n-i)/a_n`, `quad i = 0, 1, cdots, n`.
初等对称多项式的生成函数 观察下式: `(1+x_1)(1+x_2) cdots (1+x_n)` `= 1 + sigma_1 + sigma_2 + cdots + sigma_n`. 如果将每个 `x_i` 都乘以 `t`, 就得到 `prod_(i=1)^n (1 + x_i t)` `= sum_(i=0)^n sigma_i t^i`, 这是一个多项式, `i` 次项系数恰为 `sigma_i`, 因此它是生成函数.
对称多项式基本定理 任一 `n` 元对称多项式 `f(x_1, x_2, cdots, x_n)` 可以唯一表示为初等对称多项式 `sigma_i^((n)) := sigma_i(x_1, x_2, cdots, x_n)`, `i = 1, 2, cdots, n` 的多项式.
首先注意, 令 `x_n = 0`, 就能将任一 `n` 元对称多项式降为 `n-1` 元对称多项式. 特别在 `sigma_i^((n))` 中令 `x_n = 0`, 就得到 `sigma_i^((n-1))`: `sigma_i(x_1, cdots, x_(n-1), 0) = sigma_i(x_1, cdots, x_(n-1))`. 对 `n` 进行归纳证明. `n = 1` 时显然成立. 设 `n gt 1`, 且结论对 `n-1` 成立. 由归纳假设, `f|_(x_n=0) := f(x_1, cdots, x_(n-1), 0)` 是 `n-1` 元对称多项式, 它能表示为 `f|_(x_n=0)` `= p(sigma_1^((n-1)), cdots, sigma_(n-1)^((n-1)))`, 其中 `p` 是一个多项式. 令 `g(x_1, cdots, x_n)` `= p(sigma_1^((n)), cdots, sigma_(n-1)^((n)))`, 则 `{:g|_(x_n=0) = {:f|_(x_n=0)`. 令 `h = f - g`, 有 `h|_(x_n=0) = 0`, 这说明 `x_n | h`. 由对称性, `sigma_n^((n)) = x_1 x_2 cdots x_n | h`. 如果 `h` 的次数不小于 `n`, 就令 `f_1 = h//sigma_n`, 代替原来的 `f` 进行操作, 直到得到的 `h` 次数小于 `n`. 这时由 `sigma_n^((n)) | h` 知 `h -= 0`. 零多项式当然是初等对称多项式的多项式, 证毕.
`n` 元对称多项式的标准化
[来自 bilibili@凡人忆拾]
设 `n` 元 `m` 次对称多项式的变元为 `x_1, cdots, x_n`.
用记号 `[k_s, cdots, k_1, k_0]` 表示一个对称求和, 其中有 `k_0`
个变元为 `0` 次, `k_1` 个变元为 `1` 次, `cdots`, `k_s` 个变元为 `s` 次,
满足
`k_0 + k_1 + cdots + k_s = n`,
`0 * k_0 + 1 * k_1 + cdots + s * k_s = m`.
比如
`[1, 1, 0, 2] = sum_"sym" x_1^3 x_2^2 x_3^0 x_4^0`,
其中 3 次和 2 次的变元各有一个, 0 次的变元有两个.
又比如, `n` 元初等对称多项式 `sigma_k = [k, n-k]`.
化简 4 元对称式 `-[1, 1, 0, 2] - 2[1, 3, 0] + [2, 1, 1]`.
关于乘法法则: 用 `sigma_k` 乘以一个对称式, 效果是给该对称式中的 `k` 个变元升阶.
升阶后所得的对称式前乘一个系数 `(a_s;b_s)cdots(a_0;b_0)`, 该系数和升阶的变元可能的选择数有关:
其中 `(a_i;b_i)` 表示结果第 `i` 阶的 `a_i` 个变元中, 有 `b_i` 个是升阶得到的.
`[1, 1, 0, 2]`
`= sigma_1[2, 0, 2] - (color(red)2;0)(color(red)1;1)(color(red)1;0)[2, 1, 1]`
`= sigma_1[2, 0, 2] - [2, 1, 1]`,
`[2, 1, 1] = sigma_2[3, 1] - (color(red)1;1;)(color(red)3;1)(color(red)0;0)[1, 3, 0]`
`= sigma_2 sigma_3 - 3[1, 3, 0]`,
`[2, 0, 2]`
`= sigma_2[2, 2] - (color(red)1;1)(color(red)2;1)(color(red)1;0)[1, 2, 1] - (color(red)4;2)(color(red)0;0)[4,0]`
`= sigma_2^2 - 2[1, 2, 1] - 6 sigma_4`,
`[1, 3, 0] = sigma_1[4, 0] = sigma_1 sigma_4`,
`[1, 2, 1] = sigma_1[3, 1] - (color(red)4;1)(color(red)0;0)[4, 0] = sigma_1 sigma_3
- 4 sigma_4`,
将上面材料代入化简得
`-[1, 1, 0, 2] - 2[1, 3, 0] + [2, 1, 1]`
`= -sigma_1 sigma_2^2 - 10 sigma_1 sigma_4 + 2 sigma_2^2 sigma_3`.
Newton-Girard 公式 设 `S_i` 是 `n` 元 `i` 次对称多项式: `S_i = sum_(j=1)^n x_j^i`, `quad i = 0, 1, 2, cdots`. `sigma_i` 是 `n` 元 `i` 次初等对称多项式, 则 `S_i = { sum_(j=1)^n (-1)^(j-1) sigma_j S_(i-j), if i ge n; sum_(j=1)^(i-1) (-1)^(j-1) sigma_j S_(i-j) + (-1)^(i-1) sigma_i * i, if i lt n; :}` 需要注意, 一般来说 `i lt n` 时 `S_0` 被认为是未定义的, 因此最后一项被单独提出.
当变元数 `n = 3` 时, Newton-Girard 公式写为 `{ S_1 = sigma_1; S_2 = sigma_1 S_1 - 2 sigma_2; S_3 = sigma_1 S_2 - sigma_2 S_1 + 3 sigma_3; :}`
当变元数 `n = 3` 时, `a = b = c` 当且仅当 `S_2 = sigma_2`, 即 `a^2+b^2+c^2 = a b+b c+c a`. 这是因为配方得: `a^2+b^2+c^2-(a b+b c+c a)` `= (a-b)^2/2 + (b-c)^2/2 + (c-a)^2/2`.
设 `f(x) = (x-1)(x-2)(x-3)` `= x^3 - 6x^2 + 11x - 6`. 分别求 `sigma_i` 和 `S_i`, `i in {1, 2, 3, -1, -2, -3}`.
多项式的三个根记为 `a, b, c`, 于是
`a+b+c = sigma_1 = 6`,
`ab+bc+ca = sigma_2 = 11`,
`abc = sigma_3 = 6`,
`1/a+1/b+1/c = sigma_(-1) = sigma_2//sigma_3 = 11/6`,
`1/(ab) + 1/(bc) + 1/(ca) = sigma_(-2) = sigma_1//sigma_3
= 1`,
`1/(abc) = sigma_(-3) = 1//sigma_3 = 1/6`.
用 Newton-Girard 公式计算:
`a+b+c = S_1 = sigma_1 = 6`,
`a^2+b^2+c^2 = S_2 = sigma_1 S_1 - 2 sigma_2 = 14`,
`a^3+b^3+c^3 = S_3 = sigma_1 S_2 - sigma_2 S_1 + 3 sigma_3 = 36`,
`1/a+1/b+1/c = S_(-1) = sigma_(-1) = 11/6`,
`1/a^2+1/b^2+1/c^2 = S_(-2) = sigma_(-1) S_(-1) - 2 sigma_(-2)
= 49/36`,
`1/a^3+1/b^3+1/c^3 = S_(-3) = sigma_(-1) S_(-2) - sigma_(-2)
S_(-1) + 3 sigma_(-3) = 251/216`.
`(a x_1+b)(a x_2+b) = a^2 sigma_2 + a b sigma_1 + b^2`,
`(a x_1+b)(a x_2+b)(a x_3+b) = a^3 sigma_3 + a^2 b sigma_2 + a b^2
sigma_1 + b^3`.
[题源 学而思] 解方程组 `{ x - y + z - w = 2; x^2 - y^2 + z^2 - w^2 = 6; x^3 - y^3 + z^3 - w^3 = 20; x^4 - y^4 + z^4 - w^4 = 66; :}`
注意到方程组的对称性, 故使用对称多项式进行换元: 令
`m = x + z`, `quad n = x z`,
`u = y + w`, `quad v = y w`,
于是
`m^2 = x^2 + z^2 + 2n`,
`m^3 = x^3 + z^3 + 3m n`,
`m^4 = x^4 + z^4 + 4m^2 n - 2n^2`.
关于 `u^2, u^3, u^4` 也有类似的公式; 代入原方程组得到
`{
m = u + 2, (1);
m^2 - 2n = u^2 - 2v + 6, (2);
m^3 - 3m n = u^3 - 3u v + 20, (3);
m^4 - 4m^2 n + 2n^2 = u^4 - 4u^2 v + 2v^2 + 66, (4);
:}`
将 (1) 代入 (2) 得
`n = 2u + v - 1`. `quad (5)`
将 (1) (5) 代入 (3) 得
`u = 2(v+1)`. `quad (6)`
再联系 (5),
`n = 5v + 3`. `quad (7)`
将 (1) (6) (7) 代入 (4) 得
`v = 0`, `u = 2`, `n = 3`, `m = 4`.
最终得
`{x, z} = {1, 3}`, `{y, w} = {0, 2}`.
`n` | `x_n` | `w_n` |
`0` | `2` | `0` |
`1` | `x` | `1` |
`2` | `x^2-2` | `x` |
`3` | `x^3-3x` | `x^2-1` |
`4` | `x^4-4x^2+2` | `x^3-2x` |
`5` | `x^5-5x^3+5x` | `x^4-3x^2+1` |
[来自 Hilbert@知乎]
预解式
设 `f(x_1, cdots, x_n)` 是一个 `n` 元多项式,
`sigma, tau in S_n` 是 `1` 到 `n` 的排列. 如果
`f(x_(sigma(1)), cdots, x_(sigma(n))) = f(x_(tau(1)), cdots, x_(tau(n)))`,
则称 `sigma` 与 `tau` 是等价的, 显见 `S_n` 商掉这个等价关系后为一群 `G := { f_1, cdots, f_m }`.
当 `f` 为对称多项式时, `m = 1`; `f` 为交代式时, `m = 2`.
构造一个关于 `y` 的一元多项式
`g(y) = prod_(i=1)^m (y - f_i)`.
由韦达定理知道, `g(y)` 的系数是 `f_i` 的初等对称多项式, 从而是 `x_1, cdots, x_n` 的对称多项式.
现在设 `x_1, cdots, x_n` 是 `n` 次方程的 `n` 个根, 则 `f(x_1, cdots, x_n)`
称为原方程的一个预解式, `g(y) = 0` 称为原方程的一个预解方程.
Lagrange 预解式 设 `zeta` 是 `n` 次本原单位根, 则下面的 `n` 个多项式称为 Lagrange 预解式: `L_i(x_1, cdots, x_n)` `:= sum_(j=0)^(n-1) zeta^(i j) x_(j+1)`, `quad i = 0, cdots, n-1`. 假如知道 `L_0, cdots, L_(n-1)` 的值, 通过解线性方程组就可以得到 `x_1, cdots, x_n` 的值: `x_(j+1) = 1/n sum_(i=1)^(n-1) zeta^(-i j) L_i` `quad j = 0, cdots, n-1`.
验证矩阵互逆: `sum_(k=0)^(n-1) zeta^(i k) zeta^(-k j)` `= sum_(k=0)^(n-1) zeta^(k (i-j))` `= {n, if i = j; (zeta^(n(i-j)) - 1)//(zeta^(i-j) - 1) = 0, otherwise :}`
Lagrange 预解式的主要应用是推导二到四次方程的求根公式; 因其计算过程繁琐, 可以参见本节开头的链接, 这里从略.
设 `a^n in bbb F`, 即 `a` 是 `bbb F` 中某个元素的 `n` 次方根. 把 `a` 加到 `bbb F` 中生成的域 `bbb F(a)` 称为 `bbb F` 的一个单根式扩域. 若存在单根式扩张的链条 `bbb F sube bbb F_1 sube bbb F_2 sube cdots sube bbb K`, 则 `bbb K` 称为 `bbb F` 的一个根式扩域.
设 `f` 是 `bbb F` 上的 `n` 次多项式, 且在 `bbb F` 的扩域 `bbb K` 上能被完全因式分解: `f(x) = a(x-k_1)cdots(x-k_n)`, `quad k_1, cdots, k_n in bbb K`, 满足上式的最小域 `bbb K` 称为 `bbb F` 的分裂域.
于是, `f in bbb F[x]` 根式可解定义为: `f` 的分裂域 `bbb K` 是 `bbb F` 的一个根式扩域. 换言之, 存在 `bbb F` 的一个根式扩域包含 `f` 的所有根.
一个群是 `G` 可解的, 是指存在正规子群的链条 `{e} normal H_1 normal H_2 normal cdots normal G`, 且相邻两个群之商 `H_(i+1) // H_i` 都是 Abel 群.
设 `bbb K` 是 `bbb F` 的扩域, 则 `bbb K` 上全体保持 `bbb F` 中元素不变的自同构组成一个群, 称为 `bbb K` 在 `bbb F` 上的 Galois 群 `Gal(bbb K, bbb F)`.
为理解 Galois 群, 任取 `f in bbb F[x]`, `k in bbb K` 和 `varphi in Gal(bbb K, bbb F)`, 由于 `varphi` 保持 `bbb F` 中元素不变, 所以它保持 `f` 的系数不变, `varphi(f(k)) = f(varphi(k))`. 特别取 `k = x_i` (`x_i` 是 `f` 的根) 时, 有 `f(varphi(x_i)) = varphi(f(x_i)) = 0`. 这推出 `varphi(x_i)` 亦是 `f` 的根. 因此 Galois 群实际就是对 `f` 的根的置换, 是 `S_n` 的一个子群.
Galois 定理 `f in bbb F[x]` 根式可解当且仅当其分裂域 `bbb K` 在 `bbb F` 上的 Galois 群可解.
由于一般的五次多项式的 Galois 群不可解, 故一般五次方程无根式解.
五次方程的 Bring-Jerrard 标准形 `x^5 +- x + k = 0`. 一般地, `n` 次方程可以化简消去 `n-1`, `n-2`, `n-3` 次项. [来自 stackexchange]
Collect[Resultant[x^5+ax^4+bx^3+cx^2+dx+e, y-(x^2+mx+n), x],y]就得到 `y^5 + c_1 y^4 + c_2 y^3 + c_3 y^2 + c_4 y + c_5 = 0`. 其中 `c_1 = -a^2 + 2 b + a m - 5 n`,
设 `f` 是复数域上的多项式 `f(z) = sum_(k=0)^n a_k z^k`, `quad a_n != 0`. 令 `A = max_(0 le k lt n) |a_k|`, `r = A/|a_n| + 1`, 则 `|z| gt r` 时, 首项的模大于其余各项的模之和: `|a_n z^n| gt sum_(k=0)^(n-1) |a_k z^k|`. 这一结论可以类比于盖尔圆盘定理.
`sum_(0 le k lt n) |a_k z^k|` `le A sum_(0 le k lt n) |z|^k` `= A (|z|^n-1)/(|z|-1)` `lt A |z|^n/(r-1)` `= |a_n z^n|`.
设 `z^n + a_(n-1) z^(n-1) + cdots + a_1 z + a_0 = 0`, `A = max_(0 le k lt n) |a_k|`, 则 `|z| le max{1, n A}`.
不妨设 `|z| gt 1`, 下证 `|z| le n A`. 移项并取模 `|z|^n = |a_(n-1) z^(n-1) + cdots + a_1 z + a_0|` `le A |z^(n-1) + cdots + z + 1|` `le n A |z|^(n-1)`. 两边同除以 `|z|^(n-1)` 即得证.
代数学基本定理 `n` 次复系数多项式 (`n ge 1`) `f(z) = sum_(k=0)^n a_k z^k`, `quad a_n != 0` 在复数域内有零点.
[来自知乎@三维欧氏心]
判断两个多项式是否互素, 一种方法是用辗转相除法求出最大公因式, 再判断其是否为常数. 不过, 这种方法要求多项式至少是 Euclid Domain 上的, 方能进行辗转相除. 结式给出了判断多项式是否互素的另一种方法.
没有另行说明的情况下, 本节始终假定 `f, g in R[x]`, `deg f, deg g ge 1`, 且 `f(x) = sum_(k=0)^m a_k x^k`, `quad g(x) = sum_(k=0)^n b_k x^k`, `quad a_m, b_n != 0`.
`f, g` 不互素的充要条件是存在 `u, v in R[x]`, `deg u lt deg g`, `deg v lt degf`, 使得 `u(x) f(x) = v(x) g(x)`.
`f, g` 的 Sylvester 行列式或结式 (Resultant) 定义为 `"Res"(f, g) = | a_m, a_(m-1), a_(m-2), cdots, a_0; , a_m, a_(m-1), cdots, a_1, a_0; , , ddots, ddots, , ddots, ddots; , , , a_m, a_(m-1), cdots, a_1, a_0; b_n, b_(n-1), b_(n-2), cdots, b_0; , b_n, b_(n-1), cdots, b_1, b_0; , , ddots, ddots, , ddots, ddots; , , , b_n, b_(n-1), cdots, b_1, b_0; | {: {:; ; ; ;} n 行; {:; ; ; ;} m 行 :}` 这个行列式的阶数为 `m+n`, 前 `n` 行由 `f` 的系数组成, 后 `m` 行由 `g` 的系数组成. 行列式的主对角线由 `n` 个 `a_m` 和 `m` 个 `b_0` 组成.
由 Sylvester 行列式立即得到, 对于非零常数 `a, b` 有 `"Res"(a f, b g) = a^n b^m "Res"(f, g)`.
`f, g` 不互素 `iff "Res"(f, g) = 0`.
由引理, `f, g` 不互素当且仅当存在系数不全为零的 `u(x) = sum_(k=0)^(n-1) u_k x^k` 和 `v(x) = - sum_(k=0)^(m-1) v_k x^k` 使得 `f(x) u(x) = g(x) v(x)`, 比较等号两边系数得到 `{ a_m u_(n-1) = - b_n v_(m-1); a_(m-1) u_(n-1) + a_m u_(n-2) = - b_(n-1) v_(m-1) - b_n v_(m-2); cdots; a_0 u_1 + a_1 u_0 = - b_0 v_1 - b_1 v_0; a_0 u_0 = - b_0 v_0; :}` 这个方程组含有 `m+n` 个变元 `u_0, cdots, u_(n-1), v_0, cdots, v_(m-1)` 和 `m+n` 个方程. 该方程组存在非零解, 因此系数行列式等于零.
设 `f(x) = 2x^3 - 3x^2 + lambda x + 3`, `g(x) = x^3 + lambda x + 1`, 若 `f, g` 不互素, 求 `lambda` 可能的值.
令 `"Res"(f, g) = | 2, -3, lambda, 3; , 2, -3, lambda, 3; , , 2, -3, lambda, 3; 1, 0, lambda, 1; , 1, 0, lambda, 1; , , 1, 0, lambda, 1; |` `= -(2+lambda)(2 lambda^2 + 14 lambda - 13)` `= 0`, 解得 `lambda = 2` 或 `lambda = -(7 +- 5 sqrt 3)/2`.
结式的等价定义 `"Res"(f, g) = a_m^n b_n^m prod_(i,j) (x_i - y_j)`, 其中 `x_i`, `y_j` 分别是 `f, g` 的根.
将 `f(y_j) = a_m prod_i (x_i - y_j)` 代入结式的乘积表达式中得到 `"Res"(f, g) = b_n^m prod_j f(y_j)` `= a_m^n prod_i g(x_i)`.
`"Res"(f - g h, g) = b_n^(delta - m) "Res"(f, g)`, 其中 `delta = deg(f - g h)`.
`"Res"(f - g h, g) = b_n^delta prod_j (f - g h)(y_j)` `= b_n^delta prod_j f(y_j)` `= b_n^(delta - m) "Res"(f, g)`.
判别式 多项式 `f(x)` 的判别式定义为
`Delta(f) := (-1)^s/a_m "Res"(f, f')`
`= a_m^(2m-2) prod_(i lt j) (x_i - x_j)^2`.
其中 `s = m(m-1)//2`, 最高次项系数 `a_m != 0`, `f'` 是 `f` 的求导, `x_i` 是 `f(x)` 的根.
因此
`f` 有重根 `iff f` 与 `f'` 不互素 `iff Delta(f) = 0`.
特别地,
`Delta(a x^2 + b x + c) = b^2 - 4 a c`,
`Delta(a x^3 + b x^2 + c x + d)`
`= -27 a^2 d^2 + 18 a b c d - 4 a c^3 - 4 b^3 d + b^2 c^2`.
from sympy import * from sympy.abc import a, b, c, x expand(resultant(a*x**3 + b*x**2 + c*x + d, 3*a*x**2 + 2*b*x + c, x)/(-a))
二元高次方程组 考虑 `{F(x, y) = 0; G(x, y) = 0:}`, 先把 `y` 看作常数, 从而得到一元多项式 `f(x) := F(x, y)` 和 `g(x) := G(x, y)`. 方程组有解时, `f, g` 不互素, 即 `"Res"(f, g) = 0`, 问题化为 `y` 的一元高次方程. 解出 `y` 后代入原方程组求解 `x`.
解方程组 `{ 5x^2 - 6xy + 5y^2 - 16 = 0; 2x^2 - (1+y) x + y^2 - y - 4 = 0 :}`