§ 21. Бинарные матроиды
Рассмотрим более детально матроиды, представимые над полем из двух элементов,— бинарные матроиды.
Бинарным является, например, матроид М = (Е, β) с множеством элементов E = {1, 2, 3, 4}, множество β баз которого составляют все трехэлементные подмножества в Е, содержащие 1. В самом деле, положив φ(1) = (1, 1, 0, 0), φ(2) = (0, 1, 1, 0), φ (3) = (0,0,1,1), φ(4) = (0, 1, 0, 1), получим представление матроида М над полем из двух элементов 0 и 1.
Пусть F = {0, 1} = Z2 — поле классов целых чисел по модулю 2, М — матроид с множеством элементов Е, т — порядок матроида М, т. е. число элементов в Е, 2E — булеан множества Е (совокупность всех подмножеств множества Е). Превратим этот булеан в линейное пространство над Z2, определив подходящим образом сложение подмножеств и их умножение на 0 и 1. Именно, для X, Y 2Е положим X+Y = (XY)\(X∩Y) —сумма множеств по модулю 2 (симметрическая разность), 1 • X = X, 0 • X = Ø. Прямая проверка подтверждает, что в 2E внесена структура линейного пространства над Z2, нулевым вектором которого служит Ø.
Пусть L — подмножество пространства 2Е, состоящее из пустого множества, всех циклов матроида М и объединений попарно непересекающихся циклов. Фиксируем какую-либо базу В матроида М. Согласно следствию 16.7 для любого е в множестве В е существует ровно один цикл. Обозначим этот цикл через Сe.
Теорема 21.1. Если исходный матроид М является бинарным, то L — подпространство пространства 2E размерности ρ *(M), базис которого составляют все циклы из множества
где В — произвольная база матроида М.
> Пусть nXm-матрица А является представлением матроида М над Z2. Для произвольного непустого подмножества X множества Е обозначим через S(X) сумму (по модулю 2) всех столбцов матрицы А, соответствующих элементам из X.
Заметим, что непустое подмножество ХЕ является элементом множества L тогда и только тогда, когда S(X) = 0. Действительно, пусть вначале X — цикл. Тогда система столбцов, соответствующих элементам из Хг линейно зависима над Z2, и потому для какого-либо подмножества Y в X S(Y) = 0. Но всякая часть рассматриваемой системы столбцов линейно независима, следовательно, Y = X. Итак, S{X) = 0 для цикла X. Очевидно, что то же верно, если X — объединение попарно непересекающихся циклов.
Обратно, пусть ХЕ и S(X) = 0. Тогда система столбцов матрицы А, соответствующих элементам подмножества X, линейно зависима над Z2 и, следовательно, X — зависимое множество. Поэтому оно содержит цикл Х1. Если Y = X\ X1= Ø, то S(У) = 0, поскольку S(X) =S(Х1) = 0 и S{X) = S(X1) + S{Y). Следовательно, Y содержит цикл Х2. Через несколько подобных шагов мы разобьем множество X на непересекающиеся циклы.
Пусть X и Y — произвольные элементы множества L, Z = X∩Y, X' = X\Z, Y' = Y\Z. Тогда X+Y = X'Y', X' ∩Y' = Ø, S(X+Y) = S(X') + S(Y'). Ho S(X) = O = S(X') + S(Z), поэтому S(X') = S(Z). Аналогично S(Y') = S(Z). Следовательно, S(X+ Y) = S(Z) +S(Z) = 0.
Тем самым доказано, что L — подпространство пространства 2E.
Теперь докажем, что (1)—базис пространства L. Если бы система векторов (1) была линейно зависимой над Z2, то сумма каких-либо из них была бы равна нулевому вектору пространства 2Е, т. е. пустому множеству. Но если е1, е2, ..., ek — попарно различные элементы из , то
Следовательно, система (1) линейно независима.
Остается доказать, что произвольный элемент X пространства L является суммой по модулю 2 каких-либо циклов из (1). Это очевидно для Х = Ø. Пусть xL и Х≠Ø. Согласно утверждению 17.2 Х ∩= Ø. Если X ∩ = { е1, е2, ..., ek}, то
В самом деле, это равенство равносильно равенству
Левую_ часть последнего обозначим через D. Так как Cei ∩ = {ei} и eiX, то D∩B = Ø. Следовательно, D — независимое множество. С другой стороны, DL, а каждый элемент пространства L, отличный от пустого множества, является зависимым множеством. Итак, D = Ø, т. е. верно равенство (2). <
Заметим, что условие бинарности в формулировке теоремы 2.1 существенно. Пусть, например, М = (Е, β) — матроид с множеством элементов Е = {1, 2, 3, 4}, базами которого служат все двухэлементные подмножества множества Е. Тогда {1, 2, 3} и {1, 2, 4} — циклы, а {1, 2, 3} + {1, 2, 4} = {3, 4} — база. Следовательно, множество L не является в этом случае подпространством.
Возвратимся к бинарным матроидам. Пространство L называется пространством циклов матроида М, а его базис (1)— базисом циклов этого матроида (относительно базы В).
Так как двойственный матроид М* также является бинарным (теорема 20.3), то верна теорема, двойственная предыдущей, и возникают понятия пространства коциклов и базиса коциклов. Именно, пусть L* — подмножество булеана 2Е, элементами которого служат все коциклы матроида М, объединения попарно непересекающихся коциклов и пустое множество. Фиксируем в М базу В. Тогда для любого элемента еВ множество В е содержит ровно один коцикл Сe*. В этих обозначениях верно
Следствие 21.2. Множество L* является подпространством пространства 2Е размерности ρ(М). Множество коциклов
где В — фиксированная база матроида M, служит базисом этого пространства.
Базисы циклов (1) и коциклов (3) легко определяются друг через друга. Верна следующая
Теорема 21.3. Пусть f В, {Сe1, Сe2, ..., Cek] — множество всех циклов из базиса (1), содержащих f, Xf = {f, е1, е2, ..., ek}. Тогда Xf = Сf*.
> Согласно следствию 16.7 множество f содержит ровно один коцикл. Очевидно, что Xf f. Поэтому достаточно доказать, что Xf является коциклом. По теореме 17.3 множество Xf — коцикл, если выполняются следующие условия:
|Xf ∩ С| ≠ 1 для каждого цикла С;
Xf — минимальное непустое множество, удовлетворяющее условию 1).
Пусть С — цикл, D = C ∩ Xf. Так как (1) — базис пространства циклов, то С однозначно представляется в виде суммы циклов из (1):
Если fC, to f принадлежит хотя бы одному слагаемому в (4), например, fCei. Тогда
Пусть fC. Тогда либо f не входит ни в одно из слагаемых (4), либо f входит по меньшей мере в два из этих слагаемых. В первом случае D = Ø. Во втором пусть, например,
Тогда {еi1, еi2} D, |D|>1. Тем самым доказано, что выполняется условие 1).
Пусть теперь Y Xf. Если f Y, то Y содержится в кобазе и потому конезависимо. Согласно лемме 17.4 существует такой цикл С, что |Y∩С| = 1. Если же fY, но, например, еi ≠ Y, то |Y∩Сei| = 1. Тем самым доказано, что Xf — коцикл. <
Ниже окажется полезным следующее
Утверждение 21.4. Если φ — изоморфизм бинарного матроида М1 на матроид М2, а (1) — базис цикла матроида М1 относительно базы В, то система
(5)
является базисом циклов матроида M2 относительно базы φ(В).
> По определению изоморфизма матроидов множество φ(В) является базой матроида M2. Для любого цикла матроида M1 множество φ(С) — цикл матроида M2. Ecли теперь е — элемент матроида M1 и еB, то φ(e) φ(В). Согласно следствию 17.7 множество S= φ(В) φ(e) содержит ровно один цикл. Этот цикл совпадает с φ(Сe), поскольку Ce Be и, следовательно, φ(Сe) S. Итак, доказано, что (5)—базис циклов матроида M2 относительно базы φ(В). <
Теперь обратимся к графам. Графический и, следовательно, кографический матроиды бинарны, о чем свидетельствует
Теорема 21.5. Для любого непустого графа G матрица инцидентности I = I(G) является представлением, циклического матроида M(G) над Z2.
> Для произвольного подмножества ребер X обозначим через I(X) подматрицу матрицы I, составленную иp столбцов, соответствующих ребрам, входящим в X. Достаточно доказать, что rank I(X) < |X| тогда и только тогда, когда подграф G(X), порожденный множеством ребер X, содержит цикл. Но I(X) — матрица инцидентности графа G(X). При изменении нумерации вершин или ребер ранг этой матрицы, понятно, не изменится. Пусть граф G(X) содержит цикл С. Перенумеруем вершины и ребра графа G(X) так, чтобы элементы, входящие в цикл С, имели меньшие номера. Теперь матрица I(X) принимает вид
где А — матрица инцидентности графа С. В каждом столбце матрицы А ровно две единицы, поэтому сумма ее строк по модулю 2 равна нулевой строке. Следовательно, det А = 0, и столбцы матрицы А, а вместе с ними и столбцы матрицы I(X) линейно зависимы.
Пусть теперь граф G(X)—ациклический. Очевидно, что достаточно считать его деревом. Снова изменим нумерацию вершин и ребер графа G(X). Одной из концевых вершин дерева G(X) и инцидентному ей ребру припишем номер 1. Теперь обратимся к дереву G(X) — 1. Одной из его концевых вершин и инцидентному ей ребру припишем номер 2 и т. д. В этой нумерации матрица инцидентности примет вид
ранг ее равен числу столбцов. <
Обратимся еще раз к представлениям циклического матроида M(G) над Z2. Пусть EG=E и φ: Е→Zn2 — представление. Поскольку длина цикла в графе не менее трех, то все двухэлементные множества ребер независимы. В этой ситуации, как отмечалось выше, представление φ индуцирует изоморфизм матроидов. Поэтому из предыдущей теоремы непосредственно вытекает
Следствие 21.6. Циклический матроид M(G) непустого графа G изоморфен векторному матроиду над Z2, порожденному столбцами матрицы инцидентности I(G).
К бинарному матроиду M(G) применима также теорема 21.1, т. е. верно
Следствие 21.7. Все циклы графа G, объединения циклов, не имеющих общих ребер, и пустое множество относительно сложения по модулю 2 и умножения на числа по формулам 1•X=X, 0•X=Ø составляют линейное пространство над Z2 — пространство циклов графа G, размерность которого равна циклическому рангу v(G). Аналогичное утверждение верно для разрезов.
Базисы циклов и коциклов матроида M(G) называются базисами циклов и, соответственно, разрезов графа G.
Следствие 21.8. Каждый цикл графа однозначно представляется в виде суммы по модулю 2 циклов, взятых из какого-либо фиксированного базиса циклов. Аналогичное утверждение верно для разрезов.
Следствие 21.9. Любой граф G содержит не более чем 2v(G) -1 циклов.
Как правило, число циклов в графе значительно меньше, чем число, указанное в предыдущем следствии. Оданако приведенная оценка точна в том смысле, что существуют графы, число циклов в которых равно 2v(G) -1. Таковы, например, все леса и граф, изображенный на рис. 21.1.
Следствие 21.10. Любой граф имеет не более чем 2v(G) -1 разрезов.
Следствие 21.11. Пусть G — граф, Н — его остов, f ЕH, [Се1, Се2, ..., Cek] — множество всех циклов, входящих в базис циклов относительно Н и содержащих f, Сf* = {f, e1, e2 ..., ek}. Тогда {Сf*: f ЕH} — базис разрезов графа G относительно остова Н.
Рассмотрим примеры.
Пусть G — граф, изображенный на рис. 21.2. Множество ребер {1, 2, 6, 8} порождает в G остов. Базис циклов относительно этого остова: С3 = G(2, 3, 8), С4 = G(1, 2, 4), C5 = G(1, 5, 6), C7 = G(2, 1, 6, 7), С9 = G(6, 1, 2, 8, 9). Каждый другой цикл однозначно разлагается в сумму каких-либо из этих пяти. Например, G(3, 5, 9) = С3 + С5 + С9. Множество {С1*, С2*, С6*, С8*}, где C1* ={1,4, 5, 7, 9}, С2* = {2, 3, 4, 7, 9}, С6* = {6, 5, 7, 9}, C8* = {8, 3, 9}, является базисом разрезов графа G.
Найдем базис циклов графа G, заданного своей матрицей инцидентности I. Пусть
Этот граф изображен на рис. 21.3, однако при отыскании базиса циклов рисунок использоваться не будет.
В силу следствия 21.6 базы системы столбцов этой матрицы соответствуют ребрам остовов, а минимальные линейно зависимые системы столбцов — простым циклам.
Используем два следующих утверждения из линейной алгебры:
1) Пусть А' — матрица, полученная из матрицы А в результате элементарных преобразований строк. Если какой-либо столбец матрицы А линейно выражается через другие ее столбцы, то точно такое же соотношение (с теми же коэффициентами и номерами столбцов) верно и для столбцов матрицы А'.
2) Всякую невырожденную матрицу с помощью элементарных преобразований строк можно превратить в единичную.
Превратим базисную подматрицу матрицы I (т. е. подматрицу максимального порядка с отличным от нуля определителем) в единичную, после чего совсем просто будет найти в графе G остов и базис циклов. Прибавляя (по модулю 2) поочередно ко второй строке первую, к третьей — вторую, к пятой — третью и четвертую, получим
Итак, rank I = 4, первые четыре столбца составляют базу системы столбцов. Соответствующие им ребра e1, e2, e3, е4 порождают в графе G остов.
Далее к первой строке прибавляем третью и четвертую, ко второй — третью, к третьей — четвертую:
Линейные соотношения между столбцами последней матрицы те же, что и между столбцами исходной матрицы I. Если Ak (k = 1,…,6) — столбцы матрицы I, то A5 = А2 + А4, А6 = A1 + A3 + A4, столбцы А2, А4, А5 линейно зависимы над Z2, причем это — единственная минимальная линейно зависимая система столбцов, содержащаяся в {А1, А2, A3, A4, А5}. Аналогично {А1, А3, А4, А5} — единственная минимальная линейно зависимая система столбцов, содержащаяся в {А1, А2, A3, A4, А6}. Ребра графа G, соответствующие столбцам матрицы I, входящим в эти минимальные линейно зависимые системы, образуют в G простые циклы, составляющие базис системы циклов:
(см. рис. 21.3).