Таким образом, матрица смежности вершин результирующего графа принимает вид:
x1y1 | x1y2 | x1y3 | x2y1 | x2y2 | x2y3 | |||
x1y1 | 1 | 1 | 0 | 1 | 0 | 0 | ||
x1y2 | 0 | 0 | 1 | 0 | 1 | 0 | ||
A | = | x1y3 | 1 | 0 | 0 | 0 | 0 | 1 |
x2y1 | 1 | 0 | 0 | 1 | 1 | 0 | ||
x2y2 | 0 | 1 | 0 | 0 | 0 | 1 | ||
x2y3 | 0 | 0 | 1 | 1 | 0 | 0 |
Нетрудно убедиться, что полученной матрице смежности вершин соответствует граф G1´G2, представленный на рис. 4
Операция произведения графов. Пусть G1(X,E1) и G2(Y,E2) - два графа. Произведением G1×G2 графов G1 и G2 называется граф с множеством вершин X´Y, а дуга из вершины (xi,yj) в вершину (xk,yl) существует тогда и только тогда, когда существуют дуги (xi,xk) Î E1 и (yj,yl) Î E2.
Выполнение операции произведения рассмотрим на примере графов, изображенных на рис. 5. Множество вершин Z результирующего графа определяется как декартово произведение множеств X´Y. Множество Z содержит следующие элементы: z1=(x1y1), z2=(x1y2), z3=(x1y3), z4=(x2y1), z5=(x2y2), z6=(x2y3).
Определим множество дуг результирующего графа. Для удобства рассмотрения составим таблицу, в первом столбце которой указываются дуги графа G1, во втором – дуги графа G2, а в третьем и четвертом – дуги результирующего графа.
G1 | G2 | (x1,y1)®(x2,y1) | (za, zb) |
(x1,x2) | (y1,y1) (y1,y2) (y2,y3) (y3,y2) | (x1,y1)®(x2,y1) (x1,y1)®(x2,y2) (x1,y2)®(x2,y3) (x1,y3)®(x2,y2) | (z1,z4) (z1,z5) (z2,z6) (z3,z5) |
(x2,x1) | (y1,y1) (y1,y2) (y2,y3) (y3,y2) | (x2,y1)®(x1,y1) (x2,y1)®(x1,y2) (x2,y2)®(x1,y3) (x2,y3)®(x1,y2) | (z4,z1) (z4,z2) (z5,z3) (z6,z2) |
Результирующий граф G1×G2 изображен на рис.5.
Операция произведения обладает следующими свойствами.
1. G1×G2 = G2×G1.
2. G1×(G2×G3) = (G1×G2)×G3.
Рассмотрим выполнение операции произведения графов в матричной форме.
Пусть G1(X,E1) и G2(Y,E2) – два графа, имеющие nx и ny вершин соответственно. Результирующий граф G1×G2 имеет nx×ny вершин, а его матрица смежности вершин - квадратная матрица размером (nx×ny)´ (nx ×ny). Обозначим через aab = a(ij)(kl) элемент матрицы смежности вершин, указывающий на наличие дуги (ребра), соединяющей вершину za=(xiyj) c zb=(xkyl). Этот элемент может быть вычислен при помощи матриц смежности вершин исходных графов следующим образом:
aab =a(ij)(kl) = a1,ik Ù a2,jl, (3)
де a1,ik, a1,ik – элементы матрицы смежности вершин графов G1 и G2 соответственно.
Пример 5. Выполнить операцию произведения на графах, приведенных на рис. 5.
Составим матрицы смежности вершин исходных графов.
x1 | x2 | y1 | y2 | y3 | |||||||
x1 | 0 | 1 | y1 | 1 | 1 | 0 | |||||
A1 | = | x2 | 1 | 0 | A2 | = | y2 | 0 | 0 | 1 | |
y3 | 0 | 1 | 0 |
Построим матрицу A смежности вершин результирующего графа, каждый элемент которой вычисляется согласно соотношению (4.3).
|
| x1y1 | x1y2 | x1y3 | x2y1 | x2y2 | x2y3 | |
| x1y1 | a1,11Ù a2,11 | a1,11Ùa2,12 | a1,11Ù a2,13 | a1,12Ùa2,11 | a1,12Ù a2,12 | a1,12Ù a2,13 | |
| x1y2 | a1,11Ù a2,21 | a1,11Ù a2,22 | a1,11Ù a2,23 | a1,12Ù a2,21 | a1,12Ù a2,22 | a1,12Ù a2,23 | |
A | = | x1y3 | a1,11Ù a2,21 | a1,11Ù a2,22 | a1,11Ù a2,23 | a1,12Ù a2,31 | a1,12Ù a2,32 | a1,12Ù a2,33 |
| x2y1 | a1,21Ù a2,11 | a1,21Ù a2,12 | a1,21Ù a2,13 | a1,22Ù a2,11 | a1,22Ù a2,12 | a1,22Ù a2,13 | |
| x2y2 | a1,21Ù a2,21 | a1,21Ù a2,22 | a1,21Ù a2,23 | a1,12Ù a2,21 | a1,12Ù a2,22 | A1,12Ù a2,23 | |
| x2y3 | a1,21Ù a2,31 | a1,21Ù a2,32 | a1,21Ù a2,33 | a1,22Ù a2,31 | a1,12Ù a2,32 | A1,12Ù a2,33 |
Для удобства рассмотрения разделим матрицу A на четыре квадратные подматрицы. Заметим, что каждая подматрица может быть получена путем логического элементов матрицы умножения A2 на один из элементов a1,ijматрицы A1. С учетом этого матрицу A можно представить так:
x1y1 | x1y2 | x1y3 | x2y1 | x2y2 | x2y3 | |||
x1y1 | a1,11ÙA2 | a1,12ÙA2 | ||||||
x1y2 | ||||||||
A | = | x1y3 | ||||||
x2y1 | a1,21ÙA2 | a1,22ÙA2 | ||||||
x2y2 | ||||||||
x2y3 |
Таким образом, матрица смежности вершин графа G1×G2 имеет вид: