Транзитивне замикання
Транзитивне замикання бінарного відношення
на множині
— це найменше транзитивне відношення на множині
, що включає
.
«Найменше транзитивне відношення» визначається за допомогою відношення включення.
Це можливо, позаяк відношення само є множиною (а саме підмножиною декартового квадрата множини
). тому, якщо R1 ⊂ R2, тоді R1 вважатимемо меншим за R2.
Зміст |
Приклади [ред.]
- Якщо
— це множина людей (живих або мертвих), і
— відношення «є батьком або матір'ю», тоді транзитивним замиканням
є відношення «є предком». Якщо
— це множина аеропортів, а
еквівалентне «існує рейс від
до
», і транзитивне замикання
дорівнює
, тоді
еквівалентне «можливо долетіти з
до
літаком» (хоча, можливо, з пересадками).
Приклад [ред.]
A = {Болт, Гайка, Двигун, Автомобіль, Колесо, Вісь}
причому деякі з деталей і конструкцій можуть використовуватися при складанні інших конструкцій. Взаємозв'язок деталей описується відношенням R («безпосередньо використовується в») і складається з наступних кортежів:
| Конструкція | Де використовується |
|---|---|
| Болт | Двигун |
| Болт | Колесо |
| Гайка | Двигун |
| Гайка | Колесо |
| Двигун | Автомобіль |
| Колесо | Автомобіль |
| Вісь | Колесо |
Таблиця 1. Відношення R.
Транзитивне замикання складається з кортежів (додані кортежі позначені жирним):
| Конструкція | Де використовується |
|---|---|
| Болт | Двигун |
| Болт | Колесо |
| Гайка | Двигун |
| Гайка | Колесо |
| Двигун | Автомобіль |
| Колесо | Автомобіль |
| Вісь | Колесо |
| Болт | Автомобіль |
| Гайка | Автомобіль |
| Вісь | Автомобіль |
Таблиця 2. Транзитивне замикання відношення R.
Очевидний сенс замикання R полягає в описі включення деталей друг у друга не тільки безпосередньо, а через використання їх у проміжних деталях, наприклад, болт використовується в автомобілі, так як він використовується в двигуні, а двигун використовується в автомобілі.
Транзитивне замкнення [ред.]
(Теорія)
Нехай
– орієнтований граф,
– його матриця суміжності.
Означення. Шляхом з вершини
до вершини
у графі
називається послідовність ребер
, кожне з яких належить
. Довжиною шляху називається кількість задіяних в ньому ребер. Шлях називається простим, якщо в ньому жодна вершина не проходиться двічі (за винятком можливо першої та останньої вершини). Циклом називається простий шлях, який починається та закінчується в одній і тій же вершині. Граф,що не містить циклів, називається ациклічним.
Означення. Булева матриця
, в якій
тоді і тільки тоді коли існує шлях з вершини i до вершини
, називається транзитивним замиканням матриці суміжності
.
Транзитивне замикання можна обчислити за допомогою алгоритма Флойда, застосувавши на
-тій ітерації наступну формулу до булевої матриці 
![C_k[i, j] = C_{k-1}[i, j] or C_{k-1}[i, k] and C_{k-1}[k, j])](http://upload.wikimedia.org/math/a/1/f/a1f37d635c9963d3aeed85a9144eabd0.png)
Ця формула встановлює існування шляху від
до
, який проходить через вершини з номерами не більшими за
, лише в наступних випадках:
- Вже існує шлях від
до
, який проходить через вершини з номерами не більшими за
. - Існує шлях від
до
, який проходить через вершини з номерами не більшими за
та шлях від
до
, який також проходить через вершини з номерами не більшими за
.
Алгоритм обчислення транзитивного замикання ще до Флойда розробив Уоршелл, тому наведений далі алгоритм називається алгоритмом Уоршелла.
procedure Warshall;
begin
var i, j, k: integer;
for k = 1 to n
for i = 1 to n
for j = 1 to n
W[i][j] = W[i][j] or (W[i][k] and W[k][j])
end;
Приклад. Запустимо алгоритм Уоршелла на графі, поданому на рисунку 1. Матриця суміжності A та матриця транзитивного замикання C мають вид:


Розглянемо матрицю суміжності
графу
як булеву матрицю, в якій
якщо існує ребро, яке сполучає вершини
та
, та
інакше. Вважаємо, що довжини усіх ребер дорівнюють 1. Матриця суміжності містить інформацію про шляхи довжини 1 між вершинами графу. Матриця
*
=
містить інформацію про наявність шляхів довжини 2. І взагалі,
якщо існує шлях між вершинами
та
довжини
. Якщо такого шляху не існує, то
. Транзитивне замикання матриці суміжності
визначається як логічна операція or матриць
,
,
, де
– розмір матриці
:
Closure=
.
Матриці суміжності
та транзитивного замикання
із прикладу пов’язані рівністю: 
Дивись також [ред.]
Джерела [ред.]
- Куратовский К., Мостовский А. (1970). Теория множеств. Москва: Мир. с. 416.
- ван дер Варден Б.Л. (1975). Алгебра. Москва: Наука. с. 623. ISBN 5-8114-0552-9.
- Андерсон Джеймс Дискретна математика і комбінаторика = Discrete Mathematics with Combinatorics - М .: "Вільямс", 2006. - С. 960. - ISBN 0-13-086998-8.
- Бєлоусов А. І., Ткачов С. Б. Дискретна математика. Серія: Математика в технічному університеті. Вид-во: МГТУ ім. Н. Е. Баумана, 2001 .- 744 с. ISBN 5-7038-1769-2, 5-7038-1270-4
- Віленкін Н. Я. Комбінаторика - М ., 1969.
- Єрусалимський Я. М. Дискретна математика - djvu.504.com1.ru: 8019/WWW/6be408e8a605874170890817e8abb173.djvu - М ., 2000.
- Іванов Б. Н. Дискретна математика. Алгоритми і програми. Розширений курс - bnivanov.ru / book / Discrete_mathematics_BN_Ivanov.pdf - М .: Известия, 2011. - С. 512. - ISBN 978-5-206-00824-1.
- Іванов Б. Н. Дискретна математика. Алгоритми і програми. Видавництво: Физматлит, 2007. - 408 с. ISBN 978-5-9221-0787-7
- Капітонова Ю. В., Кривий С. Л., Летичівський А. А., Луцький Г. М. Лекції з дискретної математики - СПб. : БХВ-Петербург, 2004. - С. 624. - ISBN 5-94157-546-7.
- Кемени Дж., Снелл Дж., Томпсон Дж. Введення в кінцеву математику - М ., 1963. - С. 486.
- Новиков Ф. А. Дискретна математика для програмістів - 2-е вид. - СПб. : "Пітер", 2005. - С. 364. - ISBN 5-94723-741-5.
- Редькін М. П. Дискретна математика. Видавництво: Лань, 2006. - 96 с. ISBN 5-8114-0522-7
- Романовський І. В. Дискретний аналіз - 4-е изд. - СПб. : Невський Діалект; БХВ-Петербург, 2008. - С. 336.
- Яблонський С. В. Введення в дискретну математику - topology.math.csu.ru / library / posob / diskret / Yablonskij_Vvedenie_diskret.djvu - М .: Наука, 1979. - С. 272.

еквівалентне «існує рейс від
до
», і транзитивне замикання
, тоді
еквівалентне «можливо долетіти з 
.
, який проходить через вершини з номерами не більшими за
=
.