Решение систем линейных уравнений
ТеорияПолученные выше результаты можно распространить на системы линейных уравнений вида

где все элементы aij, 1 ≤ i ≤ n, 1 ≤ j ≤ n, и bi, 1 ≤ i ≤ n, суть элементы некоторого замкнутого полукольца, и речь идет о решении системы (3.16) в этом полукольце.
Для этого введем в рассмотрение множество Mm×n(S) прямоугольных матриц типа тхпс элементами из произвольного идемпотентного полукольца S = (S,+,⋅,0,1). Множество всех квадратных матриц порядка п с элементами из полукольца S обозначим Mn(S). Через Matr(S) обозначим множество всех матриц любого типа с элементами из S.
Операции сложения и умножения матриц определяют точно так же, как и в числовом случае [III], — с учетом того, что сложение и умножение элементов матриц понимаются в смысле данного идемпотентного полукольца S, а именно:
1) суммой матриц А = (аij) и В = (bij) типа m×n называют матрицу С = (cij) того же типа с элементами сij = aij + bij, i = 1, m, j = 1,n, и используют обозначение С = А + В;
2) произведением АВ матриц А = (аij) типа m×n и B = (bij) типа n×p называют матрицу С = (cij) типа m×p с элементами

На множестве Mn(S) всех квадратных матриц фиксированного порядка n можно определить алгебру
Mn(S) = (Mn(S) , +, ⋅, O, E).
Теорема 3.8. Алгебра Mn(S) есть идемпотентное полукольцо. Если полукольцо S замкнуто, то полукольцо Mn(S) тоже замкнуто.
Операции суммы и произведения матриц определены таким образом, что все свойства операций сложения и умножения в полукольце сохраняются и для соответствующих операций над матрицами. Поэтому для суммы и произведения матриц из Mn(S) выполнены аксиомы полукольца, и, кроме того, опера- операция сложения матриц идемпотентна. Следовательно, Mn(S) — идемпотентное полукольцо.
Выясним смысл отношения порядка в этом идемпотентном полукольце. В силу определения естественного порядка идемпотентного полукольца неравенство А ≤ В для матриц А и В означает, что А + В = B, или для всех i, j справедливо aij + bij = bij. Следовательно, А ≤ В тогда и только тогда, когда для всех i, j справедливо aij ≤ bij.
Пусть S — замкнутое полукольцо. Докажем замкнутость идемпотентного полукольца Mn(S) и существование точной верхней грани у любой последовательности матриц в Mn(S).
Пусть {Аm}m∈ℕ — произвольная последовательность
квадратных матриц Аm = (аmij) порядка n. Рассмотрим матрицу .
Каждый элемент
этой матрицы есть
точная верхняя грань последовательности элементов аmij. Эти
точные верхние грани существуют, поскольку аmij — элементы
замкнутого полукольца S. Так как сложение матриц и отноше-
отношение порядка в полукольце матриц определяются поэлементно,
то матрица В и будет точной верхней гранью последователь-
последовательности матриц Аm.
Докажем теперь непрерывность умножения в Mn(S), т.е. что для любой последовательности {Аm}m∈ℕ матриц и произвольной матрицы В имеет место
B ∑ Am = ∑ (B Am ).
Матрица С = (сij) = ∑ Am есть точная верхняя грань последовательности {Аm}m∈ℕ. Тогда имеем

Элемент сkj есть точная верхняя грань последовательности {аmkj}m∈ℕ элементов матриц Аm, т.е.

Используя непрерывность умножения в исходном полукольце S, получаем

Следовательно,

Используя непрерывность сложения, получаем

Аналогично доказывается, что (∑ Am) B = ∑ (AmB).▶
Полукольцо Мn(S) будем называть полукольцом матриц над полукольцом S. Доказанная теорема позволяет нам применять к замкнутым полукольцам матриц над некоторым замкнутым полукольцом S теорему 3.7 и решать произвольные уравнения вида
Х = АХ + В (3.17)
или
Х = ХА + В (3.18)
относительно неизвестной матрицы X.
Наименьшие решения этих уравнений есть
X = А* В (3.19)
и
Х = ВА* (3.20)
соответственно, где А* — итерация матрицы А в Mn(S). Итерация А* матрицы А играет в теории линейных уравнений в замкнутых полукольцах такую же роль, как обратная матрица в классической линейной алгебре.
Основную роль при решении задач теории ориентированных графов и теории формальных языков играют праволиней- ные уравнения вида (3.17), поэтому мы будем, как правило, рассматривать только их. Леволинейное уравнение (3.18) может быть проанализировано аналогично.
Мы доказали существование решений матричных уравнений в матричном полукольце над замкнутым полукольцом. Теперь нам необходимо разработать технику поиска их решений и применить ее к решению систем вида (3.16).
Полагая, что ξj — j-й столбец матрицы X, a βj — j-й столбец матрицы В, уравнение (3.17) можно переписать как систему уравнений относительно неизвестных столбцов матрицы X:
ξj = Aξj + βj, 0 ≤ j ≤ n. (3.21)
Каждая система вида (3.21) есть матричная форма записи указанной выше системы (3.16). Поэтому наименьшее решение этой системы, как следует из (3.19), есть
ξj = А* βj. (3.22)
Для поиска решения системы вида (3.21) можно воспользоваться методом последовательного исключения неизвестных, аналогичным классическому методу Гаусса.
Поскольку система уравнений вида (3.16) имеет решение, мы можем подставить его в систему и работать с уравнениями как с тождествами.
Рассмотрим процедуру решения системы уравнений (3.16). Запишем первое уравнение системы так:
х1 = a11x1 + (a12x2 + ... + a1nxn + b1).
Из первого уравнения системы выразим х1 через остальные неизвестные, воспользовавшись формулой (3.14):
х1 = a*11 (a12x2 + ... + a1nxn + b1). (3.23)
В формуле (3.23) выражение в скобках не содержит неизвестного х1. Подставляя (3.23) вместо х1 в остальные уравнения, получаем систему из n - 1 уравнений, которая уже не содержит х1:
Приводя подобные члены в каждом уравнении системы, получаем:
Первое уравнение этой системы перепишем так:
x2 = (a21a*11a12 + a22) x2 + γ2,
где
γ2 = a21a*11 (a13x3 + ... + a1nxn +b1) + a23x3 + a23x3 + ... + a2nxn + b2.
Заметим, что γ2 не содержит x1 и x2. Воспользовавшись соотношением (3.14), будем иметь
x2 = α*2 γ2, (3.26)
где α2 = a21a*11 a12 + a22 не содержит неизвестных. Используя полученное выражение, исключаем x2 из остальных уравнений.
Действуя подобным образом, на i-м шаге (1 ≤ i ≤ n) получаем
xi = α*i γi, (3.27)
где выражение α*i не содержит неизвестных, а выражение γi может содержать только неизвестные, начиная с (i + 1)-го, т.е. xi+1, ..., xn.
При i = n имеем
xn = α*i γn, (3.28)
где выражения α*i и γn не содержат неизвестных. Таким образом, исходная система (3.16) преобразована к "треугольному" виду: правая часть уравнения (3.28) не содержит неизвестных, уравнение (3.27) при i = n - 1 в правой части содержит только одно неизвестное xn-1 и каждое следующее уравнение при просмотре „снизу вверх" на одно неизвестное больше, чем предыдущее. Первое уравнение системы — уравнение (3.23) — в правой части содержит все неизвестные от x2 до хn. На этом завершается первый этап алгоритма, который называют прямым ходом метода Гаусса.
Второй этап алгоритма, называемый обратным ходом метода Гаусса, состоит в последовательном нахождении значения всех неизвестных х1, ..., xn-1 начиная с xn-1. Подставив в выражение для хn-1 вместо xn правую часть (3.28), найдем xn-1. Затем определим xn-2, подставив полученные значения xn и xn-1 в правую часть выражения (3.27) при i = n - 2, и так далее до тех пор, пока не найдем x1.
Замечание 3.2. Положив В = Е в уравнении (3.17), получим X = А*Е = А*. Таким образом, чтобы вычислить итерацию матрицы А, достаточно решить матричное уравнение (3.21) для всех j = 1, n при βj, равном j-му столбцу единичной матрицы Е.
Пример 3.6. Проиллюстрируем приведенную схему решения системы из двух линейных уравнений. Имеем
Из первого уравнения выразим x1:
x1 = a*11 (a12x2 + b1).
Подставляя это выражение во второе уравнение, получаем
x2 = (a21a*11 a12 + a22)*(a21a*11 b1 + b2).
Подставляя этот результат в написанное выше выражение для x1, находим окончательное решение:
x1 = a*11 (a12(a21a*11 a12 + a22)*(a21a*11 b1 + b2) + b1).
Особенно просто решение выглядит в случае тривиальной итерации, т.е. тогда, когда в полукольце итерация любого элемента равна единице полукольца (как в полукольцах В, R+, Sa, S[a,b]). В этом случае для системы из двух уравнений решение равно
x1 = a12 (a21b1 + b2) + b1,
x2 = a21ba1 + b2.
Пример 3.7. Рассмотрим в полукольце S[0,1](см. пример З.З.г) систему линейных уравнений
Решим эту систему уравнений, следуя общему алгоритму. Из первого уравнения получаем
х1 = 0,5* (0,4x2 + 0,2) = 1(0,4x2 + 0,2) = 0,4х2 + 0,2.
Далее,
х2 = 0,3(0,4x2 + 0,2) + 0,9x2 + 0,6 = 0,Зх2 + 0,2 + 0,9х2 + 0,6.
Отсюда х2 = (0,3 + 0,9)х2 + 0,6 = 0,9х2 + 0,6 = 0,9*0,6 = 0,6.
Подётавляя x2 = 0,6 в полученное вьражение для х1, находим, что
х1 = 0,4 ⋅ 0,6 + 0,2 = 0,4 + 0,2 = 0,4. #
Не всякое бесконечное идемпотентное полукольцо является замкнутым. Однако можно заметить, что при решении линейных уравнений и систем требовалось вычисление точной верх- верхней грани последовательностей специального вида, а именно нахождение итерации элементов. Поэтому помимо замкнутых полуколец интерес для приложений представляют так называемые полукольца с итерацией.
Под полукольцом с итерацией в данном контексте мы будем понимать идемпотентное полукольцо, которое является полукольцом* некоторого замкнутого полукольца и вместе с каждым элементом содержит его итерацию. Важнейшим примером такого полукольца является полукольцо регулярных языков.
Рассматривая в полукольце с итерацией произвольное линейное уравнение, т.е. уравнение вида (3.12) или (3.13), получаем следующие результаты. Во-первых, это уравнение имеет наименьшее решение, так как полукольцо с итерацией содержится в некотором замкнутом полукольце в качестве кольца. Во-вторых, это наименьшее решение снова окажется в этом же полукольце, поскольку носитель полукольца с итерацией замкнут относительно итерации. Таким образом, носитель полукольца S с итерацией замкнут относительно операции нахождения наименьшей неподвижной точки любого линейного отображения ах + b (или ха + b), где а и b — элементы S.
Не составляет труда распространить этот результат на произвольные матричные уравнения. Можно доказать следующее утверждение.
* Полукольцо Q= (Q, +, ⋅, 0, 1) называют подполукольцом полукольца R= (R, +, ⋅, 0, 1), если множество Q есть подмножество множества R, замкнутое относительно операций сложения и умножения полукольца R, а также содержащее нуль и единицу полукольца R.
Теорема 3.9. Если А — матрица, все элементы которой принадлежат некоторому полукольцу с итерацией, то все элементы ее итерации А* также принадлежат этому полукольцу с итерацией.