算法为(1)找出A的元素中的最大公约数 (2)将它调到(1,1)位置上去 (3)使第一行和第一列的所有其他元素都为零 这可用基本行或列来变换: 交换两行(列) 一行(列)减去另一行(列)的整数倍 这样得到矩阵B,置S11=b11,对(m-1)x(n-1)的矩阵[bij]重复以上算法,重复r次就可得到smith标准形. This topic gives a version of the Gauss elimination algorithm for a commutative principal ideal domain which is usually described only for a field.
Let be a -matrix with entries from a commutative principal ideal domain . For denotes the number of prime factors of . Start with and choose to be the smallest column index of with a non-zero entry.
(I) If and , exchange rows 1 and . (II) If there is an entry at position such that , then set and choose such that 6 _ _. W- Z4 E/ r8 w
By left-multiplication with an appropriate matrix it can be achieved that row 1 of the matrix product is the sum of row 1 multiplied by and row multiplied by . Then we get at position , where . Repeating these steps one obtains a matrix having an entry at position that divides all entries in column . (III) Finally, adding appropriate multiples of row , it can be achieved that all entries in column except for that at position are zero. This can be achieved by left-multiplication with an appropriate matrix. Applying the steps described above to the remaining non-zero columns of the resulting matrix (if any), we get an -matrix with column indices where , each of which satisfies the following: the entry at position is non-zero; all entries below and above position as well as entries left of are zero. Furthermore, all rows below the -th row are zero. Now we can re-order the columns of this matrix so that elements on positions for are nonzero and for ; and all columns right of the -th column (if present) are zero. For short set for the element at position . has non-negative integer values; so is equivalent to being a unit of . can either happen if and differ by a unit factor, or if they are relatively prime. In the latter case one can add column to column (which doesn't change and then apply appropriate row manipulations to get . And for and one can apply step (II) after adding column to column . This diminishes the minimum -values for non-zero entries of the matrix, and by reordering columns etc. we end up with a matrix whose diagonal elements satisfy .
Since all row and column manipulations involved in the process are invertible, this shows that there exist invertible and -matrices so that is
This is the Smith normal form of the matrix. The elements are unique up to associates and are called elementary divisors
有没有谁能够根据上述算法,将程序编出来............. 谢谢!!!!!!! 作者: toniby1978 时间: 2008-12-15 17:43 标题: 留个脚印 - L/ W4 N8 F [4 n% V6 X9 q- p' j* K6 d5 P
: Y. Q' @7 a. G( ` y' Q+ J1 o2 R - y" {9 |/ \4 V$ q' i9 B # X% j! s) R2 e' K7 E+ g3 B* z* \6 v( A& \* W
/ O7 U, ?2 A' j
) \$ N4 Q2 S5 g l # Q0 e! v5 I. L# e 5 J4 c8 |, `. P( x* w; e ( }7 B" \ }- p6 H & D! @8 [7 r0 G 3 i3 b) o9 X0 S; l; ^4 c U) e9 G, S* v: u* n2 E7 a6 j4 q
! `" o3 T- Q! s
; G' P! d) p$ d1 m3 ~ R4 ~# r- l' @. B2 g g5 H& z
1 y$ H9 s a2 L0 m" W+ Y. l/ s5 i