В линейной алгебре ранг матрицы A — это размерность векторного пространства, порожденного (или охваченного ) ее столбцами. [1] [2] [3] Это соответствует максимальному числу линейно независимых столбцов матрицы A. Это , в свою очередь, идентично размерности векторного пространства, охваченного ее строками. [4] Таким образом, ранг является мерой « невырожденности » системы линейных уравнений и линейного преобразования, закодированных A. Существует несколько эквивалентных определений ранга. Ранг матрицы — одна из ее наиболее фундаментальных характеристик.
Ранг обычно обозначается как rank( A ) или rk( A ) ; [2] иногда скобки не пишутся, как в rank A . [i]
В этом разделе мы даем некоторые определения ранга матрицы. Возможны многие определения; см. Альтернативные определения для некоторых из них.
Ранг столбца матрицы A — это размерность пространства столбцов матрицы A , тогда как ранг строки матрицы A — это размерность пространства строк матрицы A.
Фундаментальный результат линейной алгебры заключается в том, что ранг столбца и ранг строки всегда равны. (Три доказательства этого результата приведены в § Доказательства того, что ранг столбца = рангу строки, ниже.) Это число (т. е. число линейно независимых строк или столбцов) называется просто рангом матрицы A.
Говорят, что матрица имеет полный ранг , если ее ранг равен наибольшему возможному рангу для матрицы тех же размеров, который является меньшим из числа строк и столбцов. Говорят, что матрица имеет дефицит ранга , если она не имеет полного ранга. Дефицит ранга матрицы — это разность между меньшим из числа строк и столбцов и рангом.
Ранг линейной карты или оператора определяется как размерность ее изображения : [5] [6] [7] [8] где — размерность векторного пространства, а — изображение карты.
Матрица имеет ранг 2: первые два столбца линейно независимы , поэтому ранг не менее 2, но поскольку третий столбец является линейной комбинацией первых двух (первый столбец плюс второй), все три столбца линейно зависимы, поэтому ранг должен быть меньше 3.
Матрица имеет ранг 1: есть ненулевые столбцы, поэтому ранг положительный, но любая пара столбцов линейно зависима. Аналогично, транспонированная матрица A имеет ранг 1. Действительно, поскольку векторы-столбцы матрицы A являются векторами-строками транспонированной матрицы A , утверждение о том, что ранг столбца матрицы равен ее рангу строки, эквивалентно утверждению о том, что ранг матрицы равен рангу ее транспонированной матрицы, т. е. rank( A ) = rank( A T ) .
Обычный подход к нахождению ранга матрицы заключается в приведении ее к более простой форме, обычно к форме ступенчатой строки , с помощью элементарных операций над строками . Операции над строками не изменяют пространство строк (следовательно, не изменяют ранг строки) и, будучи обратимыми, отображают пространство столбцов в изоморфное пространство (следовательно, не изменяют ранг столбца). После того, как матрица находится в форме ступенчатой строки, ее ранг, очевидно, одинаков как для ранга строки, так и для ранга столбца и равен числу опорных элементов (или базовых столбцов), а также числу ненулевых строк.
Например, матрицу A, заданную как, можно привести к сокращенной ступенчатой форме, используя следующие элементарные операции над строками: Конечная матрица (в сокращенной ступенчатой форме) имеет две ненулевые строки, и, таким образом, ранг матрицы A равен 2.
При применении к вычислениям с плавающей точкой на компьютерах базовое исключение Гаусса ( LU-разложение ) может быть ненадежным, и вместо него следует использовать ранг-раскрывающее разложение. Эффективной альтернативой является разложение сингулярных значений (SVD), но есть и другие менее вычислительно затратные варианты, такие как QR-разложение с поворотом (так называемая ранг-раскрывающая QR-факторизация ), которые все еще более численно надежны, чем исключение Гаусса. Численное определение ранга требует критерия для принятия решения о том, когда значение, такое как сингулярное значение из SVD, следует рассматривать как ноль, практический выбор, который зависит как от матрицы, так и от приложения.
Тот факт, что ранги столбцов и строк любой матрицы являются равными формами, является фундаментальным в линейной алгебре. Было дано много доказательств. Одно из самых элементарных было набросано в § Ранг из ступенчатых форм строк. Вот вариант этого доказательства:
Легко показать, что ни ранг строки, ни ранг столбца не изменяются элементарной операцией строки . Поскольку исключение Гаусса осуществляется элементарными операциями строки, сокращенная форма строки-эталона матрицы имеет тот же ранг строки и тот же ранг столбца, что и исходная матрица. Дальнейшие элементарные операции столбца позволяют преобразовать матрицу в форму единичной матрицы , возможно, ограниченной строками и столбцами нулей. Опять же, это не изменяет ни ранг строки, ни ранг столбца. Сразу видно, что и ранг строки, и ранг столбца этой результирующей матрицы являются числом ее ненулевых элементов.
Мы представляем два других доказательства этого результата. Первое использует только основные свойства линейных комбинаций векторов и справедливо для любого поля . Доказательство основано на Wardlaw (2005). [9] Второе использует ортогональность и справедливо для матриц над действительными числами ; оно основано на Mackiw (1995). [4] Оба доказательства можно найти в книге Banerjee и Roy (2014). [10]
Пусть A — матрица размером m × n . Пусть ранг столбца матрицы A равен r , и пусть c 1 , ..., c r — любой базис для пространства столбцов матрицы A. Разместим их как столбцы матрицы C размером m × r . Каждый столбец матрицы A можно выразить как линейную комбинацию r столбцов матрицы C. Это означает, что существует матрица R размером r × n, такая что A = CR . R — это матрица, i- й столбец которой образован из коэффициентов, дающих i-й столбец матрицы A как линейную комбинацию r столбцов матрицы C. Другими словами, R — это матрица, которая содержит кратные для баз пространства столбцов матрицы A (которое равно C ), которые затем используются для формирования матрицы A в целом. Теперь каждая строка матрицы A задается линейной комбинацией r строк матрицы R. Следовательно, строки матрицы R образуют охватывающее множество пространства строк матрицы A , и по лемме Штейница об обмене ранг строки матрицы A не может превышать r . Это доказывает, что ранг строки A меньше или равен рангу столбца A. Этот результат можно применить к любой матрице, поэтому применим результат к транспонированной матрице A. Поскольку ранг строки транспонированной матрицы A является рангом столбца A , а ранг столбца транспонированной матрицы A является рангом строки A , это устанавливает обратное неравенство, и мы получаем равенство ранга строки и ранга столбца A. (См. также Факторизация ранга .)
Пусть A — матрица m × n с элементами в действительных числах , ранг строки которых равен r . Следовательно, размерность пространства строк матрицы A равна r . Пусть x 1 , x 2 , …, x r — базис пространства строк матрицы A. Мы утверждаем, что векторы A x 1 , A x 2 , …, A x r линейно независимы . Чтобы понять, почему, рассмотрим линейное однородное отношение, включающее эти векторы со скалярными коэффициентами c 1 , c 2 , …, c r : где v = c 1 x 1 + c 2 x 2 + ⋯ + c r x r . Сделаем два замечания: (a) v — линейная комбинация векторов в пространстве строк матрицы A , что подразумевает, что v принадлежит пространству строк матрицы A , и (b) поскольку A v = 0 , вектор v ортогонален каждому вектору строки матрицы A и, следовательно, ортогонален каждому вектору в пространстве строк матрицы A . Факты (a) и (b) вместе подразумевают, что v ортогонален самому себе, что доказывает, что v = 0 или, по определению v , Но напомним, что x i были выбраны в качестве базиса пространства строк A и поэтому линейно независимы. Это подразумевает, что c 1 = c 2 = ⋯ = c r = 0 . Из этого следует, что A x 1 , A x 2 , …, A x r линейно независимы.
Теперь, каждый A x i, очевидно, является вектором в пространстве столбцов матрицы A . Таким образом, A x 1 , A x 2 , …, A x r представляет собой набор из r линейно независимых векторов в пространстве столбцов матрицы A и, следовательно, размерность пространства столбцов матрицы A (т. е. ранг столбцов матрицы A ) должна быть по крайней мере такой же большой, как r . Это доказывает, что ранг строк матрицы A не больше ранга столбцов матрицы A . Теперь применим этот результат к транспонированию матрицы A , чтобы получить обратное неравенство и сделать вывод, как в предыдущем доказательстве.
Во всех определениях в этом разделе матрица A подразумевается как матрица размера m × n над произвольным полем F.
При наличии матрицы существует связанное линейное отображение, определяемое как Ранг — это размерность изображения . Это определение имеет то преимущество, что его можно применять к любой линейной карте без необходимости в конкретной матрице.
При том же линейном отображении f, что и выше, ранг равен n минус размерность ядра f . Теорема о ранге–нуле утверждает, что это определение эквивалентно предыдущему.
Ранг матрицы A — это максимальное число линейно независимых столбцов матрицы A ; это размерность пространства столбцов матрицы A (пространство столбцов является подпространством F m , порожденным столбцами матрицы A , которое на самом деле является просто образом линейного отображения f , связанного с A ).
Ранг матрицы A — это максимальное число линейно независимых строк матрицы A ; это размерность пространства строк матрицы A.
Ранг A — это наименьшее целое число k, такое, что A можно разложить на множители , где C — матрица m × k , а R — матрица k × n . Фактически, для всех целых чисел k следующие условия эквивалентны:
Действительно, следующие эквивалентности очевидны: . Например, чтобы доказать (3) из (2), возьмите C в качестве матрицы, столбцы которой из (2). Чтобы доказать (2) из (3), возьмите C в качестве столбцов C .
Из эквивалентности следует , что ранг строки равен рангу столбца.
Как и в случае характеристики «размерности образа», это можно обобщить до определения ранга любого линейного отображения: ранг линейного отображения f : V → W — это минимальная размерность k промежуточного пространства X, такая, что f может быть записана как композиция отображения V → X и отображения X → W . К сожалению, это определение не предлагает эффективного способа вычисления ранга (для чего лучше использовать одно из альтернативных определений). Подробности см. в разделе факторизация ранга .
Ранг матрицы A равен числу ненулевых сингулярных значений , что совпадает с числом ненулевых диагональных элементов в Σ в разложении по сингулярным значениям .
Ранг матрицы A — это наибольший порядок любого ненулевого минора в A. (Порядок минора — это длина стороны квадратной подматрицы, определителем которой он является.) Как и характеристика ранга разложения, это не дает эффективного способа вычисления ранга, но теоретически полезно: один ненулевой минор свидетельствует о нижней границе (а именно, о его порядке) для ранга матрицы, что может быть полезно (например) для доказательства того, что определенные операции не понижают ранг матрицы.
Неисчезающий p -минор ( подматрица p × p с ненулевым определителем) показывает, что строки и столбцы этой подматрицы линейно независимы, и, таким образом, эти строки и столбцы полной матрицы линейно независимы (в полной матрице), поэтому ранг строки и столбца по крайней мере такой же большой, как и детерминантный ранг; однако обратное утверждение менее прямолинейно. Эквивалентность детерминантного ранга и ранга столбца является усилением утверждения о том, что если диапазон n векторов имеет размерность p , то p этих векторов охватывают пространство (эквивалентно, что можно выбрать охватывающее множество, которое является подмножеством векторов): эквивалентность подразумевает, что подмножество строк и подмножество столбцов одновременно определяют обратимую подматрицу (эквивалентно, если диапазон n векторов имеет размерность p , то p этих векторов охватывают пространство и существует набор p координат, на которых они линейно независимы).
Ранг матрицы A — это наименьшее число k, такое, что A можно записать в виде суммы k матриц ранга 1, где матрица определяется как имеющая ранг 1 тогда и только тогда, когда ее можно записать в виде ненулевого произведения вектора-столбца c и вектора-строки r . Это понятие ранга называется тензорным рангом ; его можно обобщить в интерпретации сингулярного разложения с помощью разделимых моделей .
Предположим, что A — матрица размера m × n , и мы определяем линейное отображение f как f ( x ) = A x , как указано выше.
Одним из полезных применений вычисления ранга матрицы является вычисление числа решений системы линейных уравнений . Согласно теореме Руше–Капелли , система несовместна, если ранг расширенной матрицы больше ранга матрицы коэффициентов . Если же, с другой стороны, ранги этих двух матриц равны, то система должна иметь по крайней мере одно решение. Решение уникально тогда и только тогда, когда ранг равен числу переменных. В противном случае общее решение имеет k свободных параметров, где k — разность между числом переменных и рангом. В этом случае (и предполагая, что система уравнений находится в действительных или комплексных числах) система уравнений имеет бесконечно много решений.
В теории управления ранг матрицы может использоваться для определения того, является ли линейная система управляемой или наблюдаемой .
В области сложности связи ранг матрицы связи функции задает пределы объема связи, необходимого двум сторонам для вычисления функции.
Существуют различные обобщения концепции ранга на матрицы над произвольными кольцами , где ранг столбца, ранг строки, размерность пространства столбца и размерность пространства строки матрицы могут отличаться от других или могут отсутствовать.
Если рассматривать матрицы как тензоры , то ранг тензора обобщается на произвольные тензоры; для тензоров порядка больше 2 (матрицы являются тензорами порядка 2) ранг очень сложно вычислить, в отличие от матриц.
Для гладких отображений между гладкими многообразиями существует понятие ранга , который равен линейному рангу производной .
Ранг матрицы не следует путать с порядком тензора , который называется рангом тензора. Порядок тензора — это количество индексов, необходимых для записи тензора , и, таким образом, все матрицы имеют порядок тензора 2. Точнее, матрицы — это тензоры типа (1,1), имеющие один индекс строки и один индекс столбца, также называемые ковариантным порядком 1 и контравариантным порядком 1; подробности см. в разделе Тензор (внутреннее определение) .
Тензорный ранг матрицы может также означать минимальное число простых тензоров, необходимых для выражения матрицы в виде линейной комбинации, и это определение согласуется с рангом матрицы, как здесь обсуждается.