Пусть требуется вычислить ранг матрицы размеров . Если матрица нулевая, то по определению . В противном случае с помощью перестановки строк и столбцов матрицы добиваемся того, чтобы в левом верхнем углу матрицы стоял ненулевой элемент. Итак, считаем, что .
Первую строку оставляем без изменений. Ко второй строке прибавляем первую, умноженную на число . В результате вторая строка принимает вид
Затем к третьей строке прибавляем первую строку, умноженную на число . В результате третья строка принимает вид
Процесс продолжаем до тех пор, пока не получим нуль на первом месте в последней строке.
Преобразованная матрица имеет вид
Если все строки, начиная со второй, в полученной матрице нулевые, то ее ранг равен 1, так как есть минор первого порядка, отличный от нуля . В противном случае перестановкой строк и столбцов матрицы с номерами, большими единицы, добиваемся, чтобы второй элемент второй строки был отличен от нуля. Итак, считаем, что .
Первую и вторую строки оставляем без изменений. К третьей строке прибавляем вторую, умноженную на число . В результате получим, что второй элемент третьей строки равен нулю. Затем к четвертой строке прибавляем вторую, умноженную на число , и т.д. В результате получаем матрицу
Если все строки, начиная с третьей, нулевые, то , так как минор . В противном случае перестановкой строк и столбцов с номерами, большими двух, добиваемся, чтобы третий элемент третьей строки был отличен от нуля. Далее, добавлением третьей строки, умноженной на соответствующие числа, к строкам с большими номерами получаем нули в третьем столбце, начиная с четвертого элемента, и т.д.
На каком-то этапе мы придем к матрице, у которой все строки, начиная с -ой, равны нулю (или отсутствуют при ), а минор в первых строках и первых столбцах является определителем треугольной матрицы с ненулевыми элементами на диагонали. Ранг такой матрицы равен . Следовательно, .
Замечание 14.15 В предложенном алгоритме нахождения ранга матрицы все вычисления должны производиться без округлений. Сколь угодно малое изменение хотя бы в одном из элементов промежуточных матриц может привести к тому, что полученный ответ будет отличаться от ранга исходной матрицы на несколько единиц.
Замечание 14.16 Если в исходной матрице элементы были целыми числами, то и вычисления удобно производить без использования дробей. Поэтому на каждом этапе целесообразно умножать строки на такие числа, чтобы при вычислениях дроби не возникали.
Пример 14.12 Найдите ранг матрицы .
Решение. Первую строку оставляем без изменений. Чтобы избежать появления дробей, умножим вторую, третью и четвертую строки на 2:
Первую строку умножим на и прибавим ко второй. Получим строку . Первую строку умножим на и прибавим к третьей. Получим строку . Первую строку умножим на и прибавим к четвертой. Получим строку . В итоге имеем матрицу
Вторую строку оставляем без изменений. К третьей строке прибавляем вторую, умноженную на 2. Получим строку . К четвертой строке прибавляем вторую. Получим нулевую строку. Преобразованная матрица имеет вид
Поменяем местами третий и четвертый столбцы:
Базисный минор матрицы стоит в первых трех столбцах и первых трех строках, . Следовательно, .
Замечание 14.17 В приведенном примере вычисления были бы проще, если сначала четвертый столбец сделать первым и четвертую строку сделать первой. Но для того, чтобы догадаться об этом, нужно анализировать вопросы делимости чисел, что достаточно сложно описать в алгоритме, пригодном для всех случаев.