結式 resultant
2023年11月30日
#analysis
文章目錄
- 結式 resultant
- 介紹
- Sylvester矩陣
- 應用
- 在消元中的應用
- 傳遞函數的化簡
- 下鏈
介紹
結式用來計算曲線的交點、消元、找參數化曲線的隱含方程。
為了引出定義,思考如下問題:
f ( x ) = x 2 ? 5 x + 6 g ( x ) = x 3 ? x + 6 \begin{align*} f(x)=&x^2-5x+6 \\ \\ g(x)=&x^3-x+6 \end{align*} f(x)=g(x)=?x2?5x+6x3?x+6?
這兩個多項式在復平面上是否有相同的零點?我們該如何知道它們是否有相同的根?直接計算是不太可能的,因為沒有具體的公式去計算高次方程的零點。所以需要其他的方法,比如將根看成是方程的因子。
f ( x ) g ( x ) x ? α = f ( x ) x ? α g ( x ) f(x) \frac{g(x)}{x- \alpha }= \frac{f(x)}{x- \alpha }g(x) f(x)x?αg(x)?=x?αf(x)?g(x)
多項式 f , g {f,g} f,g 有相同的零點,當且僅當存在不等于 0 {0} 0 的多項式 r , s {r,s} r,s ,使得
f ( x ) r ( x ) = s ( x ) g ( x ) f(x)r(x)=s(x)g(x) f(x)r(x)=s(x)g(x)
deg ? r < deg ? g , deg ? s < deg ? f \deg r<\deg g \,\,,\,\, \deg s< \deg f degr<degg,degs<degf
仍以上面兩個多項式為例, r {r} r 的次數最大為 2 {2} 2 ,設
r ( x ) f ( x ) = ( a 2 x 2 + a 1 x + a 0 ) ( 1 x 2 ? 5 x + 6 ) = a 2 ? 1 x 4 + a 2 ? ( ? 5 ) x 3 + a 2 ? 6 x 2 + a 1 ? 1 x 3 + a 1 ? ( ? 5 ) x 2 + a 1 ? 6 x + a 0 ? 1 x 2 + a 0 ? ( ? 5 ) x + a 0 ? 6 = [ a 2 a 1 a 0 ] [ 1 ? 5 6 0 0 0 1 ? 5 6 0 0 0 1 ? 5 6 ] [ x 4 x 3 x 2 x 1 x 0 ] \begin{align*} r(x)f(x)=&(a_2x^2+a_1x+a_0)(1x^2-5x+6) \\ \\ =&a_2 \cdot 1x^4+a_2 \cdot (-5)x^3+a_2 \cdot 6x^2 \\ \\ &+a_1 \cdot 1x^3+a_1 \cdot (-5)x^2+a_1 \cdot 6x \\ \\ &+a_0 \cdot 1x^2+a_0 \cdot (-5)x+a_0 \cdot 6 \\ \\ =&[a_2 \,\,\, a_1 \,\,\, a_0] \begin{bmatrix} 1&-5&6&0&0\\0&1&-5&6&0\\0&0&1&-5&6 \end{bmatrix} \begin{bmatrix} x^4\\x^3\\x^2\\x^1\\x^0 \end{bmatrix} \end{align*} r(x)f(x)===?(a2?x2+a1?x+a0?)(1x2?5x+6)a2??1x4+a2??(?5)x3+a2??6x2+a1??1x3+a1??(?5)x2+a1??6x+a0??1x2+a0??(?5)x+a0??6[a2?a1?a0?] ?100??510?6?51?06?5?006? ? ?x4x3x2x1x0? ??
同理, s {s} s 的最大次數為 1 {1} 1 ,設
s ( x ) g ( x ) = ( b 1 x + b 0 ) ( 1 x 2 ? 1 x + 6 ) = b 1 ? 1 x 4 + 0 x 3 + b 1 ? ( ? 1 ) x 2 + b 1 ? 6 x + b 0 ? 1 x 3 + 0 x 2 + b 0 ? ( ? 1 ) x + b 0 ? 6 = [ b 1 b 0 ] [ 1 0 ? 1 6 0 0 1 0 ? 1 6 ] [ x 4 x 3 x 2 x 1 x 0 ] \begin{align*} s(x)g(x)=&(b_1x+b_0)(1x^2-1x+6) \\ \\ =&b_1 \cdot 1x^4+ 0x^3+ b_1 \cdot (-1)x^2+b_1 \cdot 6x \\ \\ &+b_0 \cdot 1x^3+0x^2+ b_0 \cdot (-1)x + b_0 \cdot 6 \\ \\ =&[b_1 \,\,\, b_0] \begin{bmatrix} 1&0&-1&6&0\\0&1&0&-1&6 \end{bmatrix} \begin{bmatrix} x^4\\x^3\\x^2\\x^1\\x^0 \end{bmatrix} \end{align*} s(x)g(x)===?(b1?x+b0?)(1x2?1x+6)b1??1x4+0x3+b1??(?1)x2+b1??6x+b0??1x3+0x2+b0??(?1)x+b0??6[b1?b0?][10?01??10?6?1?06?] ?x4x3x2x1x0? ??
寫到一起,有
[ a 2 a 1 a 0 ∣ ? b 1 ? b 0 ] [ 1 ? 5 6 0 0 0 1 ? 5 6 0 0 0 1 ? 5 6 1 0 ? 1 6 0 0 1 0 ? 1 6 ] [a_2 \,\,\, a_1 \,\,\, a_0 | \,\,\, -b_1 \,\,\, -b_0] \begin{bmatrix} 1&-5&6&0&0\\0&1&-5&6&0\\0&0&1&-5&6\\1&0&-1&6&0\\0&1&0&-1&6 \end{bmatrix} [a2?a1?a0?∣?b1??b0?] ?10010??51001?6?51?10?06?56?1?00606? ?
實際上, r , s {r,s} r,s 就是 f , g {f,g} f,g 消去了相同零點因式后的多項式, a i , b i {a_i,b_i} ai?,bi? 就是消去了相同零點因式后的多項式的系數。
Sylvester矩陣
f ( x ) = α m x m + α m ? 1 x m ? 1 + ? + α 0 g ( x ) = β n x n + β n ? 1 x n ? 1 + ? + β 0 \begin{align*} f(x)=& \alpha_mx^m+ \alpha_{m-1}x^{m-1}+ \cdots + \alpha_0 \\ \\ g(x)=& \beta_nx^n+ \beta_{n-1}x^{n-1}+ \cdots + \beta_0 \end{align*} f(x)=g(x)=?αm?xm+αm?1?xm?1+?+α0?βn?xn+βn?1?xn?1+?+β0??
西爾韋斯特矩陣為:
S ( f , g , x ) = [ α m α m ? 1 ? α 0 α m α m ? 1 ? α 0 ? ? ? ? ? ? ? β n β n ? 1 ? β 0 β n β n ? 1 ? β 0 ? ] ( m + n ) × ( m + n ) S(f,g,x)= \begin{bmatrix} \alpha_m & \alpha_{m-1} &\cdots &\alpha_0&&\\ & \alpha_m& \alpha_{m-1}& \cdots & \alpha_0&\\ && \cdots \\ -&-&-&-&-&-\\ \beta_n& \beta_{n-1}& \cdots & \beta_0&&\\ & \beta_n& \beta_{n-1}& \cdots & \beta_0&&\\ && \cdots \end{bmatrix}_{(m+n) \times (m+n)} S(f,g,x)= ?αm??βn??αm?1?αm??βn?1?βn???αm?1????βn?1???α0???β0???α0??β0????? ?(m+n)×(m+n)?
西爾韋斯特結式定義為西爾韋斯特矩陣的行列式,記作:
Res ( f , g , x ) : = det ? ( S ( f , g , x ) ) \text{Res}(f,g,x):=\det(S(f,g,x)) Res(f,g,x):=det(S(f,g,x))
f , g {f,g} f,g 有相同的零點,等價于
Res ( f , g , x ) = 0 \text{Res}(f,g,x)=0 Res(f,g,x)=0
應用
在消元中的應用
設有參數方程 C {C} C :
x = t 2 y = t 2 ( t + 1 ) \begin{align*} x=&t^2 \\ \\ y=& t^2(t+1) \end{align*} x=y=?t2t2(t+1)?
( x 0 , y 0 ) ∈ C ? ? t 0 s . t . { x 0 = t 0 2 y 0 = t 0 2 ( t 0 + 1 ) (x_0,y_0)\in C \iff \exists t_0 \,\,\, s.t. \,\,\, \begin{cases} x_0=t_0^2\\ y_0=t_0^2(t_0+1) \end{cases} (x0?,y0?)∈C??t0?s.t.{x0?=t02?y0?=t02?(t0?+1)?
方程組存在相同零點
? Res ( t 2 ? x 0 , t 3 + t 2 ? y 0 , t ) = 0 \iff \text{Res}(t^2-x_0,t^3+t^2-y_0,t)=0 ?Res(t2?x0?,t3+t2?y0?,t)=0
f ( t ) = t 2 + 0 t ? x g ( t ) = t 3 + t 2 + 0 t ? y \begin{align*} f(t)=&t^2+0t-x \\ \\ g(t)=&t^3+t^2+0t-y \end{align*} f(t)=g(t)=?t2+0t?xt3+t2+0t?y?
Res ( f , g , t ) = det ? ( [ 1 0 ? x 1 0 ? x 1 0 ? x 1 1 0 ? y 1 1 0 ? y ] ) = ? x 3 + y 2 ? 2 x y + x 2 \begin{align*} \text{Res}(f,g,t)=& \det( \begin{bmatrix} 1&0&-x \\ &1&0&-x \\ &&1&0&-x\\ 1&1&0&-y\\ &1&1&0&-y \end{bmatrix}) \\ \\ =&-x^3+y^2-2xy+x^2 \end{align*} Res(f,g,t)==?det( ?11?0111??x0101??x0?y0??x?y? ?)?x3+y2?2xy+x2?
傳遞函數的化簡
設傳遞函數分子為 N ( s ) {N(s)} N(s) ,分母為 D ( s ) {D(s)} D(s) ,化簡后的傳遞函數分子為 N  ̄ ( s ) {\overline{ N}(s)} N(s) ,分母為 D  ̄ ( s ) { \overline{D} (s)} D(s) 。
N ( s ) = α m s m + α m ? 1 s m ? 1 + ? + α 0 D ( s ) = β n s n + β n ? 1 s n ? 1 + ? + β 0 \begin{align*} N(s)=& \alpha_ms^m+ \alpha_{m-1}s^{m-1}+ \cdots + \alpha_0 \\ \\ D(s)=& \beta_ns^n+ \beta_{n-1}s^{n-1}+ \cdots + \beta_0 \end{align*} N(s)=D(s)=?αm?sm+αm?1?sm?1+?+α0?βn?sn+βn?1?sn?1+?+β0??
N  ̄ ( s ) = a k s k + a k ? 1 s k ? 1 + ? + a 0 D  ̄ ( s ) = b l s l + b l ? 1 s l ? 1 + ? + b 0 \begin{align*} \overline{N} (s)=& a_ks^k+ a_{k-1}s^{k-1}+ \cdots +a_0 \\ \\ \overline{D}(s)=& b_ls^l+ b_{l-1}s^{l-1}+ \cdots + b_0 \end{align*} N(s)=D(s)=?ak?sk+ak?1?sk?1+?+a0?bl?sl+bl?1?sl?1+?+b0??
由前面的分析,可知
[ a k ? a 0 ∣ b l ? b 0 ] S ( N , D , s ) = 0 [a_k \cdots a_0|b_l \cdots b_0]S(N,D,s)=0 [ak??a0?∣bl??b0?]S(N,D,s)=0
∴ S ( N , D , s ) T [ a k ? a 0 b l ? b 0 ] = 0 \therefore S(N,D,s)^ \mathrm T \begin{bmatrix} a_k \\ \vdots \\ a_0 \\ b_l \\ \vdots \\b_0 \end{bmatrix}=0 ∴S(N,D,s)T ?ak??a0?bl??b0?? ?=0
所以求西爾韋斯特矩陣轉置矩陣的零空間就能得到簡化傳遞函數的系數。