Top.Mail.Ru
Ответы

Как найти базис пересечения подпространств, описанных линейными оболочками.

Прошу дать мне подробный алгоритм потому что я уже 3 часа ищу, а то что нахожу ни черта не понятно. Условие задачи вот : L1 = ((1 2 1 -2), (2 3 1 0), (1 2 2 -3)), L2 = ((1 1 1 1), (1 0 1 -1), (1 3 0 -4))

По дате
По Рейтингу
Аватар пользователя
Новичок

Векторы в обоих множествах линейно независимы - образуют базисы: L₁ : (u₁,u₂, u₃), L₂: (v₁,v₂,v₃)

Пусть x∈L₁∩L₂

x∈L₁ ⇒ x= αu₁+βu₂+γu₃

x∈L₂ ⇒ x= av₁+bv₂+cv₃ (*)

αu₁+βu₂+γu₃= av₁+bv₂+cv₃, α, β, γ, a, b, c ∈ℝ

αu₁+βu₂+γu₃- av₁-bv₂-cv₃ =0


Решаете эту систему уравнений. Если я не ошиблась, решение зависит от двух параметров (у меня b и c) и а= (3/4)b+(1/2)c

Теперь достаточно записать вектор х в виде линейной комбинации с коэффициентами b и c (смотрим на (*), потому что так будет проще: мы уже выразили 'а' через b и c)


x= bw₁ + cw₂

Векторы w₁ и w₂ образуют базис в L₁∩L₂.

Аватар пользователя
Высший разум

Можно, коенчно, ничего не упрощать, и сразу пойти в лоб... Но можно и упростить.
1) Берете все векторы L1, и стряпаете из них матрицу, как из строк. Затем начинаете играться с этими строками (с помощью линейных преобразований), и приводите матрицу к треугольному виду, или ступенчатому (как при решении СЛАУ). Когда закончите, строки, оставшиеся ненулевыми - это базис в L1. Можете в этой матрице попутно понаделать как можно больше нулей (больше нулей - проще жизнь в дальнейшем). Затем таким же образом поступаете и с векторами L2. После этого вместо исходных векторов можете пользоваться более простыми неулевыми строками полученных матриц (там и нулей дофига, да и строк может оказаться меньше, чем было).
2) Дальше вам надо найти, как будет выглядить произвольный вектор X из пересечения L1 и L2. Он ведь должен принадлежать L1, поэтому его можно записать:
X = C1 x1 + C2 x2 + C3 x3,
где x1, x2, x3 - базис в L1.
С другой стороны, он должен принадлежать и L2, поэтому можно записать его и так:
X = C4 x4 + C5 x5 + C6 x6,
где x4, x5, x6 - базис в L2.
Т. к. это один и тот же вектор, вычитаем его сам из себя, получаем:
C1 x2 + C2 x2 + C3 x3 - C4 x4 - C5 x5 - C6 x6 = 0.
Тут удобно записать векторы x1,..., x6 как столбцы. Получится однородное СЛАУ отн-но C1, C2, C3, C4, C5, C6. Решите ее, и получите в общем виде вектор в виде линейной комбинации некоторых векторов. Эти вектора и будут базисом пересечения L1 и L2.

Аватар пользователя
Мастер

Для нахождения базиса пересечения двух подпространств необходимо выполнить следующие шаги:
Шаг 1: Найти базис каждого подпространства. Для этого нужно решить систему линейных уравнений, соответствующую каждой линейной оболочке.
Шаг 2: Найти общий базис для двух подпространств. Для этого необходимо решить объединенную систему уравнений, состоящую из уравнений для каждой линейной оболочки.
Шаг 3: Найти ранг объединенной системы уравнений. Если ранг равен размерности каждого из подпространств (n), то подпространства имеют общую точку.
Шаг 4: Найти базис пересечения. Для этого нужно взять n линейно независимых решений объединенной системы уравнений и преобразовать их в базис.
Для решения этой задачи можно использовать метод Гаусса или другие методы решения систем линейных уравнений. Обратите внимание, что этот алгоритм может быть довольно сложным и требовать значительных вычислительных ресурсов для больших систем уравнений.