Smith标准形存在性

算法1. a 11 ≠ 0 a_{11} \neq 0 a11=0, 且 A ( λ ) \mathbf{A}(\lambda) A(λ) 的第1行或第1列中存在元素无法被 a 11 a_{11} a11 整除, 通过有限次初等变换使第一行第一列中所有元素都能被 a 11 a_{11} a11 整除, 且 ( 1 , 1 ) (1,1) (1,1) 位置的元素次数变低.

Step 1. 从 a 21 a_{21} a21 向下检查第1列, 若遇到 a i 1 a_{i1} ai1 不能被 a 11 a_{11} a11 整除, 设 a i 1 a_{i1} ai1 可以唯一地表示为

a i 1 = a 11 p + r a_{i1}=a_{11}p+r ai1=a11p+r

其中 deg ⁡ ( r ) < deg ⁡ ( a i 1 ) \deg(r)\lt \deg (a_{i1}) deg(r)<deg(ai1).

将第1行乘以 p p p 加到第 i i i 行, 并交换第 i i i 行和第 1 1 1 行, 此时 ( 1 , 1 ) (1,1) (1,1) 位置的元素是 r r r.

Step 2. 重复 Step 1, 直至第 1 1 1 行第 1 1 1 列的元素可以整除第一列元素退出. 这个步骤的执行次数至多是有限的, 因为每次执行完后 ( 1 , 1 ) (1,1) (1,1) 位置的元素次数都比上次降低至少 1 1 1, 若无限进行下去, r r r 的次数将会是负数, 矛盾.

Step 3. 此时再对矩阵进行转置, 重复 Step 1~2.

Step 4. 将矩阵再次进行转置, 输出, 此时第1行和第1列的元素都可以被 ( 1 , 1 ) (1,1) (1,1) 位置的元素整除, 且 ( 1 , 1 ) (1,1) (1,1) 位置的元素次数变低.

算法2. 若 a 11 ≠ 0 a_{11} \neq 0 a11=0, 且 A ( λ ) \mathbf{A}(\lambda) A(λ) 中存在元素无法被 a 11 a_{11} a11 整除, 通过有限次初等变换将其变换为 A ′ ( λ ) \mathbf{A}'(\lambda) A(λ), 其中 a 11 ′ ≠ 0 a_{11}' \neq 0 a11=0, d e g ( a 11 ) < d e g ( a 11 ) \mathrm{deg}(a_{11})<\mathrm{deg}(a_{11}) deg(a11)<deg(a11) a 11 ′ a_{11}' a11 整除 A ′ ( λ ) \mathbf{A}'(\lambda) A(λ)所有元素.

Step 1. 如果第1行或第1列中有元素不能被 a 11 a_{11} a11 位置的元素整除, 则采用算法1对矩阵进行处理.

Step 2. 若仍有 a i j a_{ij} aij 不能被 a 11 a_{11} a11 整除, 设可以唯一地表示为 a i 1 = a 11 p a_{i1}=a_{11}p ai1=a11p, 则将第1行乘以-p加到第i行,(i,1)位置为0, (i,j)位置为 a i j − p a 1 j a_{ij}-pa_{1j} aijpa1j, 将第i行加到第1行, 此时(1,1)位置仍未a_{1,1}, (1,j)位置变为 a 1 j ( 1 − p ) + a i j a_{1j}(1-p)+a_{ij} a1j(1p)+aij, 不能被a_{11}整除, 调用算法1对矩阵进行处理.

Step 3. 重复调用步骤2, 必然在有限步内得到满足要求的矩阵. 显然每次处理完后(1,1)位置元素的次数都降低至少1, 因此若无限进行下去, 次数将为负, 矛盾.

算法3. 矩阵 A \mathbf{A} A 经过有限次初等变换化为Smith标准形.

Step 1. 若 a_{11} 不能整除所有元素, 则调用算法2对矩阵进行处理.

Step 2. 消去第1行第1列除(1,1)位置外的所有元素.

Step 3. 对于除去第1行第1列的子矩阵, 重复Step 1 ~ 2的处理流程. 对于除去第1 ~ 2行第 1 ~ 2 列的子矩阵, 重复Step 1 ~ 2的处理流程… 最终将会得到一个对角阵 d i a g { d 11 , . . . , d n n } \mathrm{diag}\{d_{11},..., d_{nn}\} diag{d11,...,dnn}, 由构造过程可知, 这个对角阵的对角元素满足 d i i ∣ d i + 1 , i + 1 d_{ii}|d_{i+1,i+1} diidi+1,i+1, i = 1 , 2 , . . . , n − 1 i=1,2,...,n-1 i=1,2,...,n1, 最后再对对角阵的每个对角元素乘以常数, 使其最高次项系数为1, 显然这个对角阵就是一个Smith标准形.

你可能感兴趣的:(矩阵论,算法)