Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка целая.docx
Скачиваний:
75
Добавлен:
12.11.2019
Размер:
5.04 Mб
Скачать

§ 2. Матрицы над другими алгебраическими структурами

Мы уделяем много внимания матрицам над полукольцами (Z2, /\, \/) и (B, /\, \/, ) однако ничего не сказали о матрицах, чьи элементы принадлежат другим структурам. Сначала мы рассмотрим вопрос о том, что надо требовать от структуры (S, , +) для того, чтобы матрицы над S обладали нужными свойствами. Затем обсудим технику вычислений, применяемую в ситуациях, когда операция замыкания корректно определена.

2.1. Обобщенные матрицы. Пусть ( , , ) обозна­чает множество (п, (S, , +)) матриц п п над (S, , +) с операциями и , определенными в тер­минах и +. Можно легко определить матрицы над про­извольным непустым множеством, однако индуцирован­ные при этом операции над матрицами могут быть некорректными и обладать неестественными свойствами, Рассмотрим вначале операцию сложения.

Если М и N — согласованные матрицы над S, тогда по определению

Для получения использовалась только одна операция сложения +. Поэтому сложение матриц выполняется про­сто. Однако для того, чтобы операция была коммута­тивна и ассоциативна, теми же самыми свойствами долж­но обладать (S, +). Отсюда следует, что нулевая матри­ца существует тогда и только тогда, когда существует двусторонняя ) единица 0 по отношению к + в S. Аналогично существование аддитивных обратных элементов в зависит от существования аддитивных обратных эле­ментов в S. Поэтому сложение на всегда может быть определено. Причем, хотя для того, чтобы ( , ) стало коммутативной группой, требуется выполнение многих свойств на (S, +), многое можно получить даже тогда, когда операция + не обладает достаточным набором хо­роших свойств.

В противоположность этому умножение в требует гораздо большего от S. По аналогии с матрицами над (Z2, /\, \/) положим

Поскольку суммирование проводится в S, то для коррект­ного определения умножения в необходимо, чтобы ре­зультат не зависел от порядка суммирования. Это будет выполнено, если сложение в S ассоциативно.

Не следует ожидать, что умножение в будет комму­тативно; даже (так как ( , ), зависит от (S, ) и (S, +)) для того, чтобы обеспечить ассоциативность в ( , ), требуется больше, чем ассоциативность в (S, ). Рассмотрим следующий пример, в котором будут выполне­ны левая и правая дистрибутивность над +, ассоциа­тивность в (S, ) и ассоциативность и коммутативность

в (S, +).

Пример 2.1. Пусть M, N и Р — матрицы размерно­сти 1 2, 2 3 и 3 1 соответственно. Тогда

При проведении выкладок предполагалось, что + ассоциа­тивна, поэтому некоторые скобки были опущены. //

Пока все это выглядит не очень оптимистично, по­скольку лишь небольшое число структур может удовлет­ворять условиям, накладываемым на (S, , +). Заметим также, что для существования единичной матрицы тре­буется, чтобы:

а) 0 x = 0 = x 0 для всех x S, где 0 —аддитивная единица в S (напомним, что это условие не является аксиомой поля);

б) S должно иметь двустороннюю мультипликативную единицу.

Тем не менее можно проверить, что если (S, , +) — кольцо пли поле, тогда все вышеуказанные условия вы­полнены и ( , , )—кольцо.

Понятия упорядочения и замыкания матриц над бо­лее узкими структурами, такими как упорядоченные поля и т. п., становятся слишком сложными и поэтому обсуж­даться не будут.

Как уже отмечалось в упражнении 6.1, мы можем рас­сматривать (п, (Z2, /\, \/)) как (п, В). Аналогично мы можем обобщить вычисления на другие родственные алгебраические структуры, однако требуется тщатель­ность, чтобы сформулировать условия на то, какую си­стему попользовать. Например, Z2 Z3 путем обычного включения Z2 Z3 (А В обозначает тождественное отображение на А, где А В) следует, что

А (п, Z2) А (п, Z3).

Пусть теперь дана матрица из 0 и 1. Спрашивается, определена она на {0, 1} или же на {0, 1, 2}? Это необхо­димо знать для перехода к построению арифметики. Ко­нечно (как будет показано в § 3), все это зависит от то­го, что мы пытаемся вычислять. Аналогичные проблемы возникают с любыми включениями, особенно (п, В), (п, Z2), (п, Z), (п, Zm), (п, Q) и (п, R).

2.2. Алгоритм Уоршолла. В этом разделе мы опишем быстрый способ вычисления (транзитивного или рефлек­сивного) замыкания квадратных матриц над (Z2, /\, \/). Этот способ — один из вариантов метода Уоршолла; пред­ставим его в виде программы. Еслп М — матрица размер­ности п п над (Z2, /\, \/), то ее можно преобразовать в М+ следующим образом:

for j from 1 to п do

for i from 1 to n do

if i j and Мij = 1 then

for k from 1 to n do

Mik Mik \/ Mjk.

Чтобы вычислить М*, мы можем прибавить I или в нача­ле, или в конце, используя соотношение

М*= (M + I)+ = M+ + I.

Пример 2.2. Пусть

тогда, используя алгоритм, заменим 0 на 1 в следующих элементах: (1, 4), (1, 5), (3, 4), (3, 5), (5, 2), (5, 5), (2, 2,), (2, 3), (3, 3).

Получим матрицу

//

Мы не будем доказывать, что программа выполняет нужные действия, однако отметим, что смысл программы состоит в том, что если ij и Mij=1, то (i, j) для некоторого р ≤ n, где — отношение, порожденное М. По­этому заменим i-ю строку на дизъюнкцию iи j-й строк, чтобы указать, что все, что относится к j, также относит­ся и к i.

Очевидно, что при i = j выполнение этого шага не да­ет никакого выигрыша. Основная сложность проверки пра­вильности программы — убедиться в том, что ничего не пропущено. Читатель сможет доказать это самостоятель­но, прочитав гл. 7.

Метод Уоршолла дает значительный выигрыш по срав­нению с прямым использованием определения замыкания; он может быть еще улучшен, однако это требует исполь­зования более сложных структур данных, и поэтому мы не будем больше этим заниматься.

Этот метод можно многими путями приспособить для получения различных оценок, связанных с матрицами (отношениями), простейшим из которых является понятие «расстояния» между элементами множества, связанными отношением . Расстояние между двумя точками х и у (d(x, у)) равно наименьшему n такому, что n N и у n(х). Если М — матрица, соответствующая , то, заме­няя циклы следующим образом, получим требуемый ре­зультат:

if Mij 0 then

for k: from 1 to n do

if Mij ≠ 0 and

(Mik = 0 or Mik > Mij + Mik)

then Mik Мij + Mjk.

Здесь используется арифметика над Z (а не над Z2).

Пример 2.3. Применение описанной выше процеду­ры к матрице из предыдущего примера дает

//

Упражнение 6.2.

  1. Определение. Говорят, что две (n n)-матри­цы X и Y над полем F подобны над F, если существует обратимая матрица P над F такая, что

X = P-1YP. //

Показать, что отношение, индуцируемое подобием на (п, F), является отношением эквивалентности и что матрица I подобна только себе.

  1. Показать, что если A, B (п, F) для некоторого п N и некоторого поля F, тогда

(А + В)T = A T + B T, (AB)T=BTAT.

  1. Определение. Стохастической матрицей называ­ется действительная матрица над ({х: 0 ≤ x ≤ 1}, , +) такая, что сумма элементов в каждой строке равна 1. //

Показать, что множество 3 3 стохастических матриц не замкнуто по отношению к сложению, но замкнуто по отношению к умножению. Установить, какие свойства поля (R) при этом использовались.