Using `minors' to Find an Equivalent Strongly Diagonal Matrix

In the proof of the theorem of Section 3, the focus is on the greatest common divisor of the kxk minors of a matrix. The greatest common divisor of the 3x3 minors of A can be found using the command quicke(minors(A,3)), because the diagonal entry of the strongly diagonal matrix equivalent to a matrix with one row is the greatest common divisor of the entries of the input matrix (provided there is more than one column). The same command with 3 changed to k gives the greatest common divisor of the kxk minors.

The proof of the theorem in Section 3 depends on the observation that the product of the first k diagonal entries of the strongly diagonal matrix equivalent to A is the greatest common divisor of the kxk minors of A. Since quicke(minors(A,k)) gives these numbers for k = 1, 2, 3, . . ., the diagonal entries of the strongly diagonal matrix equivalent to A can be found in this way.

For example, for the 3x4 matrix A on page 54, the greatest common divisors of the kxk minors can be found in this way to be 1, 2, 12 for k = 1, 2, 3 respectively. Therefore, the diagonal entries of the equivalent strongly diagonal matrix must be 1, 2, 6.

(Strictly speaking, quicke(minors(A,k)) does not always give the greatest common divisor, the exceptions occuring when A is a kxk matrix. However, when A is a kxk matrix the product of the k diagonal entries of the equivalent strongly diagonal matrix is the determinant of A, not its absolute value, so quicke(minors(A,k)) gives exactly the number det(A) that is needed.)

Try picking a matrix A and finding the equivalent diagonal matrix first by using the method just described and then by using `quicke'. Of course the first method, unlike the second, does not give unimodular matrices M and N that establish the equivalence between A and D.

Return to Chapter 5.