Шаг 4.
Матроиды. "Жадные" алгоритмы.
Различные аксиоматизации матроидов

    На этом шаге мы рассмотрим различные аксиоматизации матроидов.

Теорема 10 (Аксиомы независимости).
1) Пусть M(Е) матроид и Ind - семейство его независимых множеств. Тогда

    (I.1) Ind≠∅; X ⊆ J ∈ Ind влечет X ∈ Ind для любого X;

    (I.2) для любых I, J ∈ Ind таких, что |I| < |J|, существует p ∈ J\I, для которого I∪p ∈ Ind;

    (I.2') для любого A⊆Е все максимальные в A независимые подмножества равномощны.

    2) Обратно, пусть семейство I подмножеств конечного непустого множества Е удовлетворяет условиям (I.1), (I.2) или, что эквивалентно, условиям (I.1), (I.2'), где I играет роль Ind. Тогда I совпадает с семейством независимых множеств однозначно определенного матроида на Е.

Доказательство.

    1) Свойство (I.1) было уже отмечено в лемме 1 из предыдущего шага, а свойство (I.2') - в лемме 2. Применив (I.2') к I∪J, где I, J ∈ Ind и |I| < |J|, получим (I.2).

    2) Обратно, пусть I удовлетворяет условию (I.1), где вместо Ind фигурирует I. Легко видеть, что тогда (I.2) эквивалентно (I.2'). Поэтому будем считать, что выполняются все три свойства (I.1), (I.2) и (I.2').

    Общую мощность максимальных I-подмножеств из А назовем I-рангом множества A и обозначим через Ir(А). Зададим отображение A → 〈A〉 (А ⊆ Е), полагая для произвольного p ∪ Е: p ∪ 〈A〉 тогда и только тогда, когда p ∈ A или существует I ⊆ А такое, что I ∈ I и I∈p ∉ I.

    Заметим, что в силу леммы 5 предыдущего шага искомый оператор замыкания обязан быть таким.

    Свойства направленности и монотонности для заданного отображения очевидны.

    Прежде чем доказывать идемпотентность, покажем, что для любого A ⊆ E выполняется равенство

Ir(〈A〉)=Ir(A)

    Пусть, от противного, существуют такие I, J ∈ I, что I ⊆ A, J ⊆ 〈A〉 и

|I|=Ir(A)<Ir(〈A〉)=|J|

    Тогда в силу (I.2) найдется р ∈ J\I, для которого I∪p ∈ I. Учитывая максимальность I, получаем p ∈ 〈A〉\А. По определению 〈A〉 существует такое I' ⊆ A, что

I'∈ I, I'∪p ∉ I

    Очевидно, в силу (I.1) можно считать, что I' является максимальным I-множеством из А, т.е. |I'|=|I|. Тогда Ir(А) = |I'| < |I∪p|. По условию (I.2) существует q ∈ (I∪p)\I', для которого I'∪q ∈ I.

    Если q ∈ I, то I'∪q ⊆ A, что противоречит максимальности I'.

    Если q = р, то I'∪p ∈ I, что противоречит выбору множества I'.

    Таким образом, Ir(А) = Ir(〈А〉).

    Докажем идемпотентность нашего отображения, т.е. проверим, что 〈〈A〉〉 = 〈B〉 для любого А⊆Е.

    Пусть, от противного, существует p ∈ 〈〈〉〉\〈B〉. Возьмем некоторое максимальное I-множество B из А. Так как p ∉ 〈А〉, по определению замыкания 〈А〉 выполняется В∪p ∈ X. Следовательно,

Ir(〈А〉) = Ir(〈〈〉〉) ≥ |B∪p| = Ir(А)+1= Ir(〈А〉)+1,

что невозможно.

    Покажем теперь, что выполняется аксиома замены. Пусть A ⊆ Е, p, q ∈ Е, q ∉ 〈A〉 и q ∈ (A∪p). Тогда по определению замыкания существует I ∈ I, для которого I∪A∪p и I∪q ∉ I. Так как q ∉ 〈A〉, мы имеем

p ∈ I, (I\p)∪q ∈ I

    Положим I' = (I\p)∪q. Тогда I' ∈ I и I'∪p ∉ I, т. е. p ∈ 〈A∪q〉.

    Итак, наш оператор замыкания задает матроид М на Е.

    Наконец, А ∈ I выполняется тогда и только тогда, когда p ∈ 〈A\p〉. Для любого p ∈ A, что, в свою очередь, эквивалентно условию A ∈ Ind(M).

    Таким образом, I = Ind(M).

    Условия (I.1) и (I.2) называют аксиомами независимости.

Теорема 11 (Аксиомы баз).
  1. Пусть M(Е) - матроид и Bs семейство его баз. Тогда:

        (B.1) Bs ≠∅; если В1, В2 ∈ Bs и В1 ≠ В2, то В1 ⊄ В2 и В2 ⊄ В1;

        (В.2) если В1, В2 ∈ Bs, то для любого b1 ∈ В1 существует b2 ∈ В2 такой, что 1\b1)∪b2 ∈ Bs.

  2. Обратно, пусть семейство B подмножеств конечного непустого множества Е удовлетворяет условиям (В.1) и (В.2), где B играет роль Bs. Тогда B является семейством баз однозначно определенного матроида на Е.
Доказательство.
  1. Свойство (В.1) очевидно, а свойство (В.2) вытекает из (I.2) и условия равномощности баз.
  2. Обратно, пусть семейство B удовлетворяет аксиомам (В.1) и (В.2), где вместо Bs фигурирует B.

        Покажем сначала, что все B-множества равномощны. Пусть В1, В2 ∈ B. Без ограничения общности будем считать, что |B1| ≤ |В2|. Пусть |B1| = t и

    B1={b1, b2, ..., bt}.

        По аксиоме (В.2) существует c1 В2 такой, что

    1, b2, ..., bt} ∈ B.

        Аналогично, существует с2 ∈ В2 такой, что

    {c1, с2, b3, ..., bt} ∈ B.

        Продолжая этот процесс, получим

    {c1, c2, ..., ct} ∈ B

    для некоторых с1, с2, ..., ct ∈ В2. В силу аксиомы (В.1) получаем 1, с2, ..., ct} = В2, т.е. |B2| ≤ t = |Bi|. Следовательно, |B2| = |B1|.

        Подмножество А из Е будем называть B-независимым, если оно содержится в некотором B-множестве. Ясно, что B-множества - это максимальные B-независимые множества. Обозначим через I совокупность всех B-независимых множеств.

        Заметим, что семейство I удовлетворяет аксиоме независимости (I.1). Для завершения доказательства теоремы достаточно проверить, что семейство I удовлетворяет аксиоме (I.2) и воспользоваться теоремой 1.

        Пусть I, J ∈ I и |I| < |J|. Зафиксируем базу В2, содержащую J. Среди баз, содержащих I, выберем такую базу B1, для которой пересечение В1∩В2 содержит наибольшее возможное число элементов.

        Покажем, что В1\I ∈ В2. Действительно, если существует b1 ∈ В1\I такой, что b1 ∉ В2, то по аксиоме (В.2) существует b2 ∈ В2, для которого

    B= (B1\b1)∪b2 ∈ B

    и b1 ≠ b2, так как b1 ∉ B2, а b2 ∈ B2. Тогда |В ∩ B2| > |B1 ∩ B2|, что невозможно, поскольку I ⊆ В.

        Таким образом, B1\I, J ⊆ В2, причем |B1\I| +|J| = |B1| -|I| + |J| > |B1| = |B2|. Следовательно, существует p ∈ (В1\ I) ∩ J. Так как I ∪ p ∈ В1 и p ∈ J\I, элемент p является искомым.

    Заметим, что условие (В.2) называют аксиомой Штейница о замене.


    Примеры.
  1. Пусть Е = {v1, ..., vm} - некоторое множество векторов векторного пространства V над телом F. Рассмотрим множество всех максимальных линейно независимых подмножеств из Е. Оно удовлетворяет аксиомам баз (В.1) и (В.2), т.е. мы имеем матроид на Е с таким семейством баз. Этот матроид называют векторным матроидом над телом F.

  2. Пусть G - произвольный ненулевой (n, m)-граф. Построим матроид циклов графа G, который будем обозначать через M(G). В качестве основного множества Е возьмем EG, в качестве баз этого матроида - остовы (точнее, каждая база - это множество всех ребер некоторого остова). Аксиома (В.1) очевидна, а аксиома (В.2) выполняется в силу леммы 4. Ясно, что в этом матроиде независимыми множествами будут ациклические множества ребер, а циклами - обычные циклы графа.

  3. Пусть M(Е) - произвольный матроид на множестве Е.

        Возьмем A ⊆ Е. В качестве системы независимых множеств на A рассмотрим независимые множества исходного матроида, содержащиеся в А. Ясно, что на А мы получили матроид, который обозначают через M(А) и называют подматроидом исходного матроида.

        Пусть Е1 - конечное множество и f - сюрьективное отображение Е1 на Е. Определим следующим образом матроид M(Е1) на множестве Е1. Пусть r - ранг матроида M(Е). Семейство элементов 1, ..., аr} ⊆ Е1 назовем базой, если {f(а1), ..., f(аr)} - база матроида M(Е). Очевидно, аксиомы баз выполняются и мы получили матроид M(Е1). При переходе от Е к E1 каждый элемент a из Е мы заменяем на некоторое конечное множество элементов (составляющих полный прообраз элемента a относительно f). Для того чтобы получить произвольную базу матроида M(Е1) мы можем поступить следующим образом: берем сначала базу b1, ..., br матроида M(Е), а затем в полных прообразах элементов b1, ..., br берем соответственно по одному элементу а1, ..., аr. Аналогично устроены и независимые множества матроида М(E1). Можно мыслить себе, что матроид М(Е1) получен из матроида М(Е) с помощью "размножения" элементов, т. е. заменой каждого элемента из Е на некоторое число его копий. Поэтому матроид M(Е1) будем называть раздуванием матроида М(Е).

  4. Пусть V - векторное пространство над телом F. Возьмем некоторую систему векторов v1, ..., vm из V (возможно с повторениями векторов). Построим матроид М, отвечающий этой системе векторов. Матроид М будет иметь m элементов. Для простоты мы можем считать, что элементами матроида М являются элементы v1, ..., vm, т.е. все они различны как элементы матроида М, но некоторые из них могут совпадать как элементы векторного пространства V. В качестве баз возьмем все максимальные линейно независимые подсистемы из v1, ..., vm. Мы получили матроид М, который, очевидно, является раздуванием некоторого векторного матроида над телом F. В дальнейшем раздувание векторного матроида над телом F также будем называть векторным матроидом над телом F.

  5. Пусть


    - некоторая матрица над телом F. Строки матрицы A являются элементами пространства векторов-строк Fm. Поэтому матрице A отвечает векторный матроид над телом F, состоящий из n элементов - строк матрицы A. Этот матроид называют матроидом строк матрицы А. Отметим, что здесь строки с разными номерами являются разными элементами матроида, хотя некоторые из них могут совпадать как элементы пространства Fm. Аналогично определяется матроид столбцов матрицы А.

Теорема 12 (Ранговые аксиомы).
  1. Пусть M(Е) матроид и r - его ранговая функция из P(E) в N∪{0}. Тогда для любых A, В ⊆ Е выполняется

        (r.1) 0 ≤ r(А) ≤ |А|;

        (r.2) А⊆В ∠ r(А) ≤ r(В);

        (r.3) r(А∩В) + r(A∪B) ƒ r(А) + r(В).

  2. Обратно, пусть некоторая функция r из P(Е) в N∪{0} где Е - конечное непустое множество, удовлетворяет условиям (r.1), (r.2) и (r.З). Тогда она является ранговой функцией однозначно определенного матроида на Е.
Доказательство.
  1. Свойства (r.1) и (r.2) очевидны. Докажем (r.З). Ясно, что A∩B ⊆ 〈A〉 ∩ 〈B〉 и A∪В ⊆ 〈А〉 ∨ 〈B〉. Используя неравенство полумодулярности, которое выполняется в решетке листов, получаем

    r(А ∩ В)+ r(A∪В) < r(〈А〉 ∩ 〈B〉) + r(〈А〉 ∨ 〈B〉) ≤ r(〈А〉) + r(〈B〉)= r(A) + r(B).

  2. Обратно, пусть некоторая функция r из P(E) в N∪{0}, где Е - конечное непустое множество, удовлетворяет условиям (r.1), (r.2) и (r.З).

        Подмножество I ⊆ Е назовем r-независимым, если выполняется r(I) = |I|. Обозначим через I множество всех r-независимых подмножеств из Е. В силу (r.1) выполняется r(∅) = 0, т. е. ∅ ∈ I.

        Докажем, что семейство I удовлетворяет аксиомам независимости (1.1) и (1.2).

        Сначала проверим аксиому (I.1). Пусть I ∈ I и J ∈ I. Предположим, от противного, что r(J) < |J|. Тогда, используя (r.3) и (r.1), получаем

    |I| = r(I) = r(J∪(I \ J)) ≤ r(J) + r(I \ J) - r(∅) < |J| + (I \ J) - |I|,

    что невозможно. Следовательно, r(J) = |J|, т.е. J ∈ I.

        Прежде чем перейти к проверке аксиомы (I.2), докажем следующее вспомогательное утверждение.

        Пусть B ⊂ A ⊆ Е, r(В) = |В| и A\B = (p1, ..., pt). Если r(В∪pi) = |В| для любого i = 1, ..., t, то r(А)=|В|.

        Предположим, что r(B∪p\∪ ... ∪pj) = |В| для некоторого j = 1, ..., t-1. Тогда, применяя (r.2) и (r.З), получаем

    |B| = r(B) ≤ r(B∪p1∪ ... ∪pj+l) ≤ r(B∪p1∪ ... ∪pj) + r(B∪pj+1) - r(B) = |B| + |B| - |B| =|B|.

        Следовательно, r(B∪p1 ∪ ... ∪pj+l) = |В|.

        Теперь из доказанного, очевидно, вытекает равенство r(А) = r(B∪p1 ∪ ... ∪pt) = |B|.

        Перейдем к проверке аксиомы (I.2). Пусть I, J ∈ I и |I| < |J|. Положим J\I = {p1, ..., pt}. Пусть, от противного, I∪Pi ∉ I для любого i = 1, ..., t. Тогда для i = 1, ..., t имеет место

    |I| = r(I) ≤ r(I∪pi) < |I∪Pi| = |I| + l,

    т.е. r(I∪pi) =|I|. Отсюда в силу доказанного нами вспомогательного утверждения получаем r(I∪J) = |I|. С другой стороны,

    |I| < |J| =r(J) ≤ r(I ∪ J),

    что противоречиво.

        Итак, мы установили справедливость для X аксиомы (1.2).

        Следовательно, семейство I является семейством независимых множеств некоторого матроида M(Е) на множестве Е.

        Осталось проверить, что исходная функция r совпадает с ранговой функцией матроида M(Е). Для этого надо показать, что для любой базы B произвольного множества А⊆Е выполняется r(А) = |В|.

        Пусть B - база множества А⊆Е. По определению 1 имеем r(В) - |В| и В - максимальное r-независимое подмножество из А. Если А = В, то равенство r(А) = |В| очевидно. Поэтому будем считать, что B ⊂ А. Пусть А\В = {p1, ..., pt}. В силу максимальности B для любого i = 1, ..., t множество B∪рi не является r-независимым, т.е. r(B∪pi) < |B∪pi|. Тогда имеем

    |В| = r(B) ≤ r(B∪pi) < |B∪pi| = |B| + 1,

    т.е. r(B∪pi) = |B| для любого i = 1, ..., t. В силу доказанного утверждения получаем r(А) = |B|.

        Теорема доказана.

Теорема 13 (Аксиомы циклов).
  1. Пусть M(Е) - матроид и Ccl - семейство его циклов. Тогда

        (С.1) ∅ ∉ Ccl, если C1, С2 ∈ Ccl и С ≠ С2, то С1 ⊄ С2 и С2 ⊄ С1;

        (С.2) если С1, С2 ∈ Ccl, С1 ≠ С2 и p ∈ С1∩С2, то существует С ∈ Ccl такой, что С ⊆ (C1∪С2)\p.

  2. Обратно, пусть семейство C подмножеств конечного непустого множества Е удовлетворяет условиям (С.1) и (С.2), где вместо Ccl фигурирует С. Тогда семейство C совпадает с семейством циклов однозначно определенного матроида на Е.
Доказательство.
  1. Свойство (С.1) очевидно вытекает из определения цикла.

        Для доказательства (С.2) достаточно проверить, что множество D = (C1∪С2)\p зависимо (тогда оно содержит минимальное зависимое множество - цикл). Так как D ⊆ С1∪С2, мы получаем

    r(D) ≤ r(C1 ∪ С2) ≤ r(C1) + r(C2) - г(C1 ∩ С2) =
    1| - 1 + |С2| - 1 - |C1 ∩ С2| =
    | C1 ∪ С2| - 2 < |C1 ∪ С2| - 1 = D

    т. e. D - зависимое множество.

  2. Обратно, пусть семейство C удовлетворяет условию теоремы. Множество I ⊆ E назовем C-независимым, если оно не содержит ни одного из множеств С ∈ C. Через X обозначим семейство всех C-независимых множеств, содержащихся в Е. Проверим, что семейство С удовлетворяет аксиомам независимости (I.1) и (I.2).

        Поскольку ∅ ∉ C, имеем ∅ ∈ I и аксиома (I.1) очевидно выполняется.

        Проверим справедливость аксиомы (I.2) для семейства I. Предположим, что существуют множества I, J ∈ I такие, что |I| < |J|, для которых (I.2) неверно. Среди всех таких пар I, J выберем ту, у которой мощность |I∪J| минимальна. Положим J\I = {p1, ..., pt}. Если t = 1, то, очевидно, I ⊂ J и утверждение (I.2) выполняется. Поэтому имеем t ≥ 2.

        В силу нашего предположения I∪pi ∉ I для любого i = 1, ..., t. Следовательно, существует Сi ∈ C такое, что Сi ⊆ I∪pi, и в силу C-независимости множества I имеем pi ∈ Ci, для любого i = 1, ..., t. Ясно, что множества С1, ..., Ct попарно различны.

        Рассмотрим множество С1. Для него верно р1 ∈ С1 ⊆ I∪p1. В силу C-независимости J существует q1 ∈ I\J такой, что q1 ∈ C1. Рассмотрим теперь множество (I\q1)∪p1.

        Если (I\q1)∪p1 ∉ X, то существует C' ∈ C, для которого p1 ∈ C' ⊆ (I\q1)∪p1, и, следовательно, в силу (С.2) существует такой цикл С" ∈ C, что

    С" ⊆ (C1 ∪ C')\p1 ⊆ I.

        Пришли к противоречию с условием I ∈ I.

        Пусть (I\q1) ∪ p1 ∈ I. Заметим, что

    |((I\q1) ∪ p1) ∪ J| < |I ∪ J|

        Поэтому в силу выбора пары I, J, для пары (I\q1)∪p1, J существует элемент pj, где j ≥ 2, такой, что

    (I\q1) ∪ p1 ∪ pj ∈ I

        Возьмем множество Cj ∈ X. Для него выполняется pj ∈ Cj ⊆ I∪pj. Если q1 ∉ Cj, то Cj ⊆ (I\q1)∪рj ⊆ (I\q1)∪p1∪pj, что невозможно. Следовательно, q1 ∈ Cj∩Ci и Cj ≠ C1. Тогда по аксиоме (С.2) существует С ∈ C, для которого

    C ⊆ (Сj∪С1)\q1 ⊆ (Cj\q1)∪(C1\q1) ⊆ ((I\q1∪pj)∪((I\q1)∪p1 = (I\q1)∪p1∪pj ∈ I

    что невозможно.

        Итак, семейство I удовлетворяет аксиомам независимости (I.1) и (I.2). Следовательно, существует матроид M(Е) на множестве Е, для которого семейство I является семейством Ind независимых множеств. Из определения C-независимости легко следует, что семейство C совпадает с множеством Ccl циклов матроида М(Е).

    Теорема доказана.

Следствие 1.
Пусть I - произвольное независимое множество матроида M(Е) и p ∈ Е. Тогда I∪p содержит не более одного цикла.
Доказательство.
Пусть в I∪p содержится два различных цикла С1 и С2. Очевидно, p ∈ С1∩ C2 в силу независимости множества I. Тогда по аксиоме (С.2) существует цикл С такой, что

C ⊆ (Cl∪ C2)\p ⊆ I,

что невозможно.

Следствие 2.
Для любой базы В матроида М(Е) и любого p ∈ Е\В множество B∪p содержит точно один цикл и этот цикл проходит через p.

    На следующем шаге мы рассмотрим понятие двойственного матроида.




Предыдущий шаг Содержание Следующий шаг