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