Доказательство теоремы Эдмондса-Лоулера — различия между версиями
м (rollbackEdits.php mass rollback) |
|||
(не показано 10 промежуточных версий 3 участников) | |||
Строка 1: | Строка 1: | ||
− | |||
{{Теорема | {{Теорема | ||
|about= | |about= | ||
Строка 8: | Строка 7: | ||
|proof= | |proof= | ||
− | + | Неравенство <tex>\max\limits_{I \in I_1 \cap I_2 } |I| \le \min\limits_{A \subseteq X} r_1(A) + r_2(X \setminus A)</tex> доказывается [[Теорема Эдмондса - Лоулера, формулировка, док-во в простую сторону|здесь]]. | |
− | + | ||
− | <tex>|I| = | + | Конструктивно построим <tex>\forall M_1, M_2</tex> такие <tex>I \in I_1 \cap I_2</tex> и <tex>A \subseteq X</tex>, что <tex>|I| = r_1(A) + r_2(X \setminus A)</tex>. Этого будет достаточно для доказательства теоремы. |
− | <tex>I \ | + | |
− | <tex>| | + | Обозначим <tex>S = \left\{x|I \cup \{x\} \in I_1\right\}</tex>, <tex>T = \left\{x|I \cup \{x\} \in I_2\right\}</tex>. Если <tex>S \cap T \ne \varnothing</tex>, добавим их пересечение в <tex>I</tex>. |
− | + | ||
− | <tex> | + | {{Лемма |
− | + | |about=1 | |
− | <tex>\ | + | |statement = <tex>A</tex> — независимое множество в матроиде <tex>M=\langle X, I\rangle</tex>. <tex>B \subset X</tex>, <tex>|B|=|A|</tex> и в подграфе графа замен <tex>G_M</tex>, индуцированном <tex>A \oplus B</tex>, существует единственное полное паросочетание. Тогда <tex>B</tex> — независимое в матроиде <tex>M</tex>. |
+ | |proof= | ||
+ | [[Файл:El_lemma2.png|thumb|right|Граф <tex>G</tex>]] | ||
+ | Обозначим граф (неориентированный), индуцированный <tex>A \oplus B</tex> за <tex>G</tex>. Обозначим вершины из <tex>A \setminus B</tex> за <tex>y_i</tex>, из <tex>B \setminus A</tex> за <tex>z_i</tex>. Перенумеруем вершины так, чтобы рёбра из паросочетания соединяли вершины с одинаковыми индексами, и <tex>\forall i,j: i < j</tex> не существовало бы ребра между вершинами <tex>y_i</tex> и <tex>z_j</tex> (возможность первого следует из существования полного паросочетания, второго — из его единственности). | ||
+ | |||
+ | Пусть <tex>B</tex> — не независимо, значит, <tex>\exists</tex> цикл <tex>C \subset B</tex>. Обозначим <tex>i = \min k: z_k \in C</tex>. | ||
+ | |||
+ | <tex>\forall j > i \quad y_iz_j \notin G(A) \Rightarrow A \setminus y_i \cup z_j \notin I \Rightarrow C \setminus z_i \subseteq \langle A \setminus y_i \rangle</tex>. | ||
+ | |||
+ | Так как <tex>C</tex> — цикл, то <tex>C \subseteq \langle C \setminus z_i \rangle \subseteq \langle A \setminus y_i \rangle</tex>. Это означает, что <tex>z_i \in \langle A \setminus y_i \rangle</tex>, и, следовательно, <tex> A \setminus y_i \cup z_i \notin I</tex>, что приводит к противоречию с существованием ребра <tex>y_i z_i</tex>. | ||
}} | }} | ||
+ | Построим [[Граф замен для двух матроидов|граф замен]] <tex>G_I</tex>. Добавим вершину <tex>z</tex>, не влияющую на независимость в первом матроиде — из неё будут вести рёбра во все вершины множества <tex>S</tex>. Пусть <tex>p</tex> — кратчайший путь из <tex>S</tex> в <tex>T</tex>, <tex>p_1</tex> — путь <tex>p</tex> с добавленным в начало ребром из <tex>z</tex>. По лемме 1 и [[Лемма о единственном паросочетании в подграфе замен, индуцированном кратчайшим путем|лемме о единственном паросочетании]] <tex>I \oplus p_1 \in I_2</tex>. Теперь добавим вершину <tex>u</tex>, не влияющую на независимость во втором матроиде — в неё будут вести рёбра из всех вершин множества <tex>T</tex>. Тогда <tex>p_2</tex> (путь <tex>p</tex> с добавленным ребром в <tex>u</tex>) — кратчайший путь из <tex>S</tex> в <tex>u</tex>. Аналогично, <tex>I \oplus p_2 \in I_1</tex>. Отсюда следует, что <tex>I \oplus p \in I_1 \cap I_2</tex>, причём <tex>|I \oplus p| = |I| + 1</tex>. | ||
+ | |||
+ | Будем таким образом увеличивать <tex>I</tex>, пока существует путь <tex>p</tex>. Рассмотрим момент, когда такого пути не нашлось. | ||
+ | Введём обозначение: <tex>A = \{u|u \rightsquigarrow T\}</tex>. Докажем, что <tex>r_1(A) = |I \cap A|</tex> от противного. | ||
+ | Пусть <tex>r_1(A) > |I \cap A|</tex>, тогда существует <tex>z \in A \setminus (I \cap A)</tex>, такое, что <tex>(I \cap A) \cup \{z\} \in I_1</tex>. Если <tex>I \cup \{z\} \in I_1</tex>, то <tex>z \in S</tex> и из <tex>S</tex> есть путь в <tex>A</tex>. Значит, <tex>I \cup \{z\} \notin I_1</tex>. Отсюда следует, что существует <tex>y \in I \setminus A</tex>, такое что <tex>I \setminus \{y\} \cup \{z\} \in I_1</tex>. Но тогда ребро <tex>yz</tex> имеется в графе, что противоречит отсутствию пути из <tex>S</tex> в <tex>T</tex>. | ||
+ | |||
+ | Следовательно, <tex>r_1(A) = |I \cap A|</tex>. Аналогично, <tex>r_2(\overline A) = |I \cap \overline A|</tex>. Отсюда <tex>r_1(A) + r_2(\overline A) = |I|</tex>, то есть при найденных <tex>I</tex> и <tex>A</tex> достигается равенство. | ||
− | + | Построен пример равенства, значит, теорема доказана. | |
}} | }} |
Текущая версия на 19:25, 4 сентября 2022
Теорема (Эдмондса - Лоулера): | ||||||
Пусть , — матроиды. Тогда Где . и — ранговые функции в первом и втором матроиде соответственно. | ||||||
Доказательство: | ||||||
Неравенство здесь. доказываетсяКонструктивно построим такие и , что . Этого будет достаточно для доказательства теоремы.Обозначим , . Если , добавим их пересечение в .
Построим граф замен . Добавим вершину , не влияющую на независимость в первом матроиде — из неё будут вести рёбра во все вершины множества . Пусть — кратчайший путь из в , — путь с добавленным в начало ребром из . По лемме 1 и лемме о единственном паросочетании . Теперь добавим вершину , не влияющую на независимость во втором матроиде — в неё будут вести рёбра из всех вершин множества . Тогда (путь с добавленным ребром в ) — кратчайший путь из в . Аналогично, . Отсюда следует, что , причём . Будем таким образом увеличивать , пока существует путь . Рассмотрим момент, когда такого пути не нашлось. Введём обозначение: . Докажем, что от противного. Пусть , тогда существует , такое, что . Если , то и из есть путь в . Значит, . Отсюда следует, что существует , такое что . Но тогда ребро имеется в графе, что противоречит отсутствию пути из в .Следовательно, Построен пример равенства, значит, теорема доказана. . Аналогично, . Отсюда , то есть при найденных и достигается равенство. | ||||||