Для чего нужен определитель матрицы
От действий над матрицами к пониманию их сути…
Очень уважаю людей, которые имеют смелость заявить, что они что-то не понимают. Сам такой. То, что не понимаю, — обязательно должен изучить, осмыслить, понять. Статья «Математика на пальцах», и особенно матричная запись формул, заставили меня поделиться своим небольшим, но, кажется, немаловажным опытом работы с матрицами.
Лет эдак 20 назад довелось мне изучать высшую математику в вузе, и начинали мы с матриц (пожалуй, как и все студенты того времени). Почему-то считается, что матрицы — самая лёгкая тема в курсе высшей математики. Возможно — потому, что все действия с матрицами сводятся к знанию способов расчёта определителя и нескольких формул, построенных — опять же, на определителе. Казалось бы, всё просто. Но… Попробуйте ответить на элементарный вопрос — что такое определитель, что означает число, которое вы получаете при его расчёте? (подсказка: вариант типа «определитель — это число, которое находится по определённым правилам» не является правильным ответом, поскольку говорит о методе получения, а не о самой сути определителя). Сдаётесь? — тогда читаем дальше.
Сразу хочу сказать, что я не математик ни по образованию, ни по должности. Разве что мне интересна суть вещей, и я порой пытаюсь до них «докопаться». Так же было и с определителем: нужно было разобраться со множественной регрессией, а в этом разделе эконометрики практически всё делается через… матрицы, будь они неладны. Вот и пришлось мне самому провести небольшое исследование, поскольку ни один из знакомых математиков не дал внятного ответа на поставленный вопрос, изначально звучавший как «что такое определитель». Все утверждали, что определитель — это такое число, которое особым образом посчитано, и если оно равно нулю, то… В общем, как в любом учебнике по линейной алгебре. Спасибо, проходили.
Если какую-то идею придумал один человек, то другой человек должен быть в состоянии её понять (правда, для этого порой приходится вооружаться дополнительными знаниями). Обращение к «великому и могучему» поисковику показало, что «площадь параллелограмма равна модулю определителя матрицы, образованной векторами — сторонами параллелограмма». Говоря простым языком, если матрица — это способ записи системы уравнений, то каждое уравнение в отдельности описывает вектор. Построив из точки начала координат векторы, заданные в матрице, мы таким образом зададим в пространстве некоторую фигуру. Если наше пространство одномерное, то фигура — это отрезок; если двумерное — то фигура — параллелограмм, и так далее.
Получается, что для одномерного пространства определитель — это длина отрезка, для плоскости — площадь фигуры, для трёхмерной фигуры — её объём… дальше идут n-мерные пространства, вообразить которые нам не дано. Если объём фигуры (то есть определитель для матрицы 3*3) равен нулю, то это означает, что сама фигура не является трёхмерной (она может быть при этом двухмерной, одномерной или вообще представлять собой точку). Ранг матрицы — это истинная (максимальная) размерность пространства, для которого определитель не равен нулю.
Так, с определителем почти всё понятно: он определяет «объёмность» фигуры, образованной описанными системой уравнений векторами (хотя непонятно, почему его значение не зависит от того, имеем мы дело с исходной матрицей, или с транспонированной — возможно, транспонирование — это вид аффинного преобразования?). Теперь нужно разобраться с действиями над матрицами…
Если матрица — это система уравнений (а иначе зачем нам таблица каких-то цифр, не имеющих к реальности никакого отношения?), то мы можем с ней делать разные вещи. Например, можем сложить две строки одной и той же матрицы, или умножить строку на число (то есть каждый коэффициент строки умножаем на одно и то же число). Если у нас есть две матрицы с одинаковыми размерностями, то мы их можем сложить (главное, чтобы при этом мы не сложили бульдога с носорогом — но разве математики, разрабатывая теорию матриц, думали о таком варианте развития событий?). Интуитивно понятно, тем более что в линейной алгебре иллюстрациями подобных операций являются системы уравнений.
Однако в чём смысл умножения матриц? Как я могу умножить одну систему уравнений на другую? Какой смысл будет иметь то, что я получу в этом случае? Почему для умножения матриц неприменимо переместительное правило (то есть произведение матриц В*А не то что не равно произведению А*В, но и не всегда осуществимо)? Почему, если мы перемножим матрицу на вектор-столбец, то получим вектор-столбец, а если перемножим вектор-строку на матрицу, то получим вектор-строку?
Ну, тут уж не то что Википедия, — тут даже современные учебники по линейной алгебре бессильны дать какое-либо внятное объяснение. Поскольку изучение чего-либо по принципу «вы сначала поверьте — а поймёте потом» — не для меня, копаю в глубь веков (точнее — читаю учебники первой половины XX века) и нахожу интересную фразу…
Если совокупность обычных векторов, т.е. направленных геометрических отрезков, является трёхмерным пространством, то часть этого пространства, состоящая из векторов, параллельных некоторой плоскости, является двумерным пространством, а все векторы, параллельные некоторой прямой, образуют одномерное векторное пространство.
В книгах об этом напрямую не говорится, но получается, что векторам, параллельным некоторой плоскости, необязательно лежать на этой плоскости. То есть они могут находиться в трёхмерном пространстве где угодно, но если они параллельны именно этой плоскости, то они образуют двумерное пространство… Из приходящих мне на ум аналогий — фотография: трёхмерный мир представлен на плоскости, при этом вектору, параллельному матрице (или плёнке) фотоаппарата, будет соответствовать такой же вектор на картинке (при условии соблюдении масштаба 1:1). Отображение трёхмерного мира на плоскости «убирает» одно измерение («глубину» картинки). Если я правильно понял сложные математические концепции, перемножение двух матриц как раз и представляет собой подобное отражение одного пространства в другом. Поэтому, если отражение пространства А в пространстве В возможно, то допустимость отражения пространства В в пространстве А — не гарантируется.
Любая статья заканчивается в тот момент, когда автору надоедает её писать. Поскольку я не ставил перед собой цели объять необъятное, а исключительно хотел понять суть описанных операций над матрицами и то, как именно матрицы связаны с решаемыми мной системами уравнений, я не полез в дальнейшие дебри линейной алгебры, а вернулся к эконометрике и множественной регрессии, но сделал это уже более осознанно. Понимая, что и зачем я делаю и почему только так, а не иначе. То, что у меня получилось в этом материале, можно озаглавить как «глава о сути основных операций линейной алгебры, которую почему-то забыли напечатать в учебниках». Но ведь мы же не читаем учебников, правда? Если честно, когда я учился в университете, мне очень не хватало именно понимания затронутых здесь вопросов, поэтому я надеюсь, что, изложив этот непростой материал по возможности простыми словами, я делаю доброе дело и помогаю кому-то вникнуть в саму суть матричной алгебры, переведя операции над матрицами из раздела «камлание с бубном» в раздел «практические инструменты, применяемые осознанно».
Что такое матрицы, откуда они взялись, и чем они полезны?
Первые упоминания о матрицах или «волшебных квадратах», как их тогда называли, были найдены на территории еще Древнего Китая, однако бум случился намного позже, в середине XVIII века, когда знаменитый математик Габриэль Крамер опубликовал свой труд под названием «Введение в анализ алгебраических кривых», в котором описывался алгоритм решения систем линейных уравнений совершенно новым методом.
Как следствие, в дальнейшем появляются «классический» метод решения Карла Фридриха Гаусса, теорема Гамильтона-Кели, работы Карла Вейерштрасса, Георга Фробениуса и других выдающихся ученых.
Занимательно, что только после всех этих открытий, а именно в 1850 году был непосредственно введен термин матрица, автором которого стал Джеймс Джозеф Сильвестр.
Сегодня термин «матрица» применяется во множестве разных областей: от программирования до кинематографии (здесь должно быть название фильма, о котором вы все подумали).
Матрица в математике – это таблица чисел, состоящая из определенного количества строк (m) и столбцов (n).
Вы встречаетесь с ними каждый день, так как любая числовая информация, занесенная в таблицу, уже в какой-то степени считается матрицей.
Примером могут служить:
● список телефонных номеров;
● различные статистические данные;
● табель успеваемости ученика и многое другое.
Сами матрицы всегда обозначаются прописными латинскими буквами (A, B, C…), а элементы матрицы – строчными (a, b, c…). Индексы обозначают местоположение элемента матрицы в системе, причем первое число – это всегда номер строки, а второе – это всегда номер столбца. Например, а23 находится во второй строке и в третьем столбце, а31 в третьей строке и первом столбце и т.д.
Важно произносить элементы матриц правильно, так а23 будет звучать как «а два три», а не «а двадцать три».
Примеры записи матриц
Для чего нужны матрицы
Теперь выясним, для чего нам так нужны матрицы конкретно в математике?
В качестве примера рассмотрим простейшую систему двух линейных уравнений и решим ее методом сложения, который изучают в школьном курсе.
Оказывается, можно решить эту систему уравнений альтернативным способом, используя матрицы, и называется он метод Крамера.
Вы можете подумать, зачем усложнять решение какими-то матрицами?
В данном случае да, при желании можно эту систему и в уме решить. Но представьте себе систему, состоящую хотя бы из 5 линейных уравнений с пятью неизвестными. А если система состоит из 6, 7 или ещё больше уравнений? Решать её школьным методом, мягко говоря, трудоёмко. Зато применяя тот же метод Крамера, решение будет выглядеть достаточно компактно.
Система с тремя уравнениями
В подтверждение вышесказанного рассмотрим систему уравнений с тремя неизвестными и решим её метод Крамера.
Из этого следует, что матрицы – еще один способ решения систем линейных алгебраических уравнений (СЛАУ).
На основе второго примера убеждаемся в том, что матрицы могут применяться в тех случаях, когда применение школьных методов решения СЛАУ не является рациональным.
На самом деле за прошедшие столетия алгебра матриц изучена более, чем достаточно, и тот факт, что матрицы используются повсеместно однозначно подтверждает необходимость их изучения.
О том, как правильно понимать определитель матрицы
Расшифровывается это дело следующим образом: если у нас есть матрица
над некоторым полем , то определителем этой матрицы называют сумму всевозможных произведений, состоящих из
элементов этой матрицы, взятых по одному из каждой строки и из каждого столбца, причем каждое произведение входит в эту сумму с тем знаком, который имеет соответствующая перестановка индексов этих элементов в этом произведении.
Другой способ введения определителя связан с его характеристическим свойством. Напомним, полилинейной формой называется функция , определенная на декартовом произведении некоторых векторных пространств
(заданных над одним и тем же полем
), принимающая значения в поле
и линейная по каждому аргументу:
. Форма называется кососимметрической, если при инверсии любых двух (не обязательно соседних) аргументов она меняет знак.
Можно конечно всюду далее рассматривать исключительно поля характеристики 2 и пользоваться «слабым» определением кососимметричности, а можно поступить умнее и немного усилить определение кососимметричности специально для полей характеристики 2 так, чтобы обычная кососимметричность следовала из «сильной». Для этого достаточно потребовать 2 вещи: во-первых, форма должна быть полилинейна, а во-вторых она должна принимать значение ноль всегда, когда среди ее аргументов есть равные. Свойство, которое вытекало из «наивной» кососимметричности для полей характеристики
2 само теперь является составной частью определения кососимметричности (правда только для полей характеристики 2).
Из полилинейности и равенства формы нулю на строках с равными аргументами следует, что если к одному вектору прибавить другой, умноженный на число, то значение формы не изменится. При умножении какого-либо вектора на число 0 сама форма умножается на это число (в частности, если обратить знак какого-либо вектора из набора, то знак самой формы тоже поменяется.
Произвести инверсию векторов в наборе аргументов можно с помощью преобразований этих двух типов. И если внимательно проследить цепочку преобразований, то в конце концов окажется, что форма поменяла знак.
Далее под кососимметричностью будем понимать кососимметричность в «сильном» смысле.
Определение
Определитель матриц— это единственная кососимметрическая полилинейная форма строк матрицы, нормированная единицей на единичном наборе векторов.
Надо сказать, это не самое плохое определение. Но и оно не лишено недостатков. Основные вопросы здесь возникают по поводу кососимметричности. В первую очередь непонятно, почему это свойство вообще важно. Ну меняет функция знак при перестановке двух аргументов и пусть меняет, почему мы так стремимся исследовать именно это свойство, а не какое-нибудь другое. Но здесь все еще хуже. Мы хотим, чтобы форма еще и принимала нулевое значение на наборе, содержащем равные вектора. И в некотором смысле для нас это даже важнее самой кососимметричности, раз мы стали подгонять определение последней под выполнение этого свойства. Все эти экзерсизы с характеристиками выглядят довольно искусственно.
В действительности есть очень простой и естественный пусть построения определителя, при котором все эти вопросы отпадают сами собой. И я постараюсь по возможности максимально последовательно описать этот способ.
Начнем с некоторых предварительных замечаний. Основным объектом изучения линейной алгебры являются конечномерные векторные пространства. Неформально говоря, на любое — мерное векторное пространство над полем
можно смотреть как на «координатное» пространство
, состоящее из упорядоченных наборов длины
элементов поля
. Более строго, пусть у нас есть
— мерное векторное пространство
над полем
. Выбор (упорядоченного) базиса
этого пространства индуцирует изоморфизм
, ставящий в соответствие каждому вектору
набор
его координат в базисе
. Таким образом, во всех дальнейших построениях речь пойдет по большей части про вектора координатного пространства.
Очевидно, некоторый набор векторов пространства
является линейно (не)зависимым, тогда и только тогда, когда соответствующий ему набор векторов пространства
будет линейно (не)зависимым.
Свойство линейной зависимости/независимости действительно очень важно. Дело в том, что система из 1″ alt=»n>1″ src=»https://habrastorage.org/getpro/habr/upload_files/4e1/89f/e1d/4e189fe1dc9b6260122146ddfd0031b7.svg»/>векторов пространства будет линейно зависимой тогда и только тогда, когда найдется вектор в этой системе, который можно линейно выразить через остальные.
Довольно естественным выглядит желание иметь некоторую функцию— индикатор линейной зависимости векторов. Учитывая, что любое векторное пространство «оцифровывается» своим координатным пространством, достаточно иметь такую функцию, определенную на декартовом произведении
копий пространства
и принимающую значения в поле
. Таким образом, мы предъявляем к функции
всего лишь 2 очень естественных требования:
Она должна принимать нулевое значение на любой линейно зависимой системе векторов.
На аргументы этой функции удобно смотреть как на строки матрицы
Заметим, на данном этапе мы еще даже не знаем, существует ли такая функция или нет. Но мы можем в предположении ее существования посмотреть на ее поведение.
. Действительно, строка аргументов, содержащая пару равных значений, очевидно, линейно зависима, а значит функция
будет принимать на ней нулевое значение.
кососимметрична (в любом смысле, учитывая полилинейность + п.1). Доказательство абсолютно аналогично тому, которое находится выше под спойлером.
Рассмотрим, чему равнана некотором наборе строк
:
Здесь мы просто выразили векторы через единичные, затем по полилинейности получили сумму по всем упорядоченным наборам соответствующих произведений, выкинули из них те, которые содержат повторяющиеся аргументы (тем самым получив сумму по всем перестановкам), а затем применили обратные перестановки к единичным векторам.
Смотрим на последнюю строчку в получившейся формуле и видим множитель . Чтобы упростить формулу и не таскать лишний множитель, добавим к тем 2 требованиям к функции
третье требование:
.
Таким образом, если интересующая нас функциясуществует, то она имеет вид:
Нарисовалась знакомая нам формула Лейбница. Самое замечательное то, что в ней нет свободных переменных, а это значит, что мы бесплатно получили единственность интересующей нас функции.
Осталось лишь доказать существование. Капитан намекает, что для этого достаточно взять ту функцию, которая у нас получилась.
А дальше дело техники. Проверяем, что получили мы действительно, что хотели и даже больше. Полученную функцию называем определителем и спокойно приступаем к доказательству основных его свойств.