Объединение матроидов, проверка множества на независимость — различия между версиями
(Новая страница: «Пусть нам даны три матроида: <tex>M_1 = \langle X, I_1 \rangle</tex>, <tex>M_2 = \langle X, I_2 \rangle</tex>, <tex>M = M_1 \cup M_2 = \langl…») |
|||
Строка 1: | Строка 1: | ||
Пусть нам даны три матроида: | Пусть нам даны три матроида: | ||
<tex>M_1 = \langle X, I_1 \rangle</tex>, | <tex>M_1 = \langle X, I_1 \rangle</tex>, | ||
+ | |||
<tex>M_2 = \langle X, I_2 \rangle</tex>, | <tex>M_2 = \langle X, I_2 \rangle</tex>, | ||
+ | |||
<tex>M = M_1 \cup M_2 = \langle X, I = {A | A = A_1 \cup A_2, A_1 \in I_1, A_2 \in I_2} \rangle</tex>. | <tex>M = M_1 \cup M_2 = \langle X, I = {A | A = A_1 \cup A_2, A_1 \in I_1, A_2 \in I_2} \rangle</tex>. | ||
− | Для простоты мы считаем, что носители в обоих матроидах одинаковы, если не так, то дополним их до объединения, заметим, что от этого <tex>M_1</tex> и <tex>M_2</tex> не перестанут быть матроидами | + | |
+ | Для простоты мы считаем, что носители в обоих матроидах одинаковы, если не так, то дополним их до объединения, заметим, что от этого <tex>M_1</tex> и <tex>M_2</tex> не перестанут быть матроидами. | ||
+ | |||
+ | |||
Определим ещё несколько матроидов, которые нам понадобятся: | Определим ещё несколько матроидов, которые нам понадобятся: | ||
<tex>M_{\oplus} = M_1 \oplus M_2 \langle (X \times {1}) \cup (X \times {2}), I = {A | A = A_1 \cup A_2, A_1 \in I_1, A_2 \in I_2} \rangle</tex>, | <tex>M_{\oplus} = M_1 \oplus M_2 \langle (X \times {1}) \cup (X \times {2}), I = {A | A = A_1 \cup A_2, A_1 \in I_1, A_2 \in I_2} \rangle</tex>, | ||
Из предыдущей темы ([[Объединение матроидов, доказательство того, что объединение является матроидом]];) мы знаем, что | Из предыдущей темы ([[Объединение матроидов, доказательство того, что объединение является матроидом]];) мы знаем, что | ||
для <tex>P_1((x, y)) = x</tex> - <tex>P_1(M_{\oplus}) = M</tex>, поэтому матроид <tex>M_{P_1} = \langle I_{P_1} = {A | |P_1(A)| = |A|} \rangle</tex>. | для <tex>P_1((x, y)) = x</tex> - <tex>P_1(M_{\oplus}) = M</tex>, поэтому матроид <tex>M_{P_1} = \langle I_{P_1} = {A | |P_1(A)| = |A|} \rangle</tex>. | ||
+ | |||
Теперь перейдём к задаче. У нас есть множество и нужно проверить его независимость в объединении матроидов. | Теперь перейдём к задаче. У нас есть множество и нужно проверить его независимость в объединении матроидов. | ||
Множество <tex>U</tex> - независимо, если <tex>r(U) = |U|</tex>. | Множество <tex>U</tex> - независимо, если <tex>r(U) = |U|</tex>. | ||
− | А можно заметить, что в матроиде <tex>M</tex> - <tex>r(U) = max_{A \in M_{\oplus}, A \in I_{P_1}, P_1(A) \subset U}</tex>. | + | А можно заметить, что в матроиде <tex>M</tex> - <tex>r(U) = max_{A \in M_{\oplus}, A \in I_{P_1}, P_1(A) \subset U} |U|</tex>. |
Т.е. мы свели задачу о проверке множества на независимость в объединении к нахождению мощности максимального независимого множества в пересечении матроидов <tex>M_{\oplus}</tex> и <tex>M_{P_1}</tex>. Мы это уже умеем делать - [[Алгоритм построения базы в пересечении матроидов]]. | Т.е. мы свели задачу о проверке множества на независимость в объединении к нахождению мощности максимального независимого множества в пересечении матроидов <tex>M_{\oplus}</tex> и <tex>M_{P_1}</tex>. Мы это уже умеем делать - [[Алгоритм построения базы в пересечении матроидов]]. |
Версия 04:20, 18 мая 2011
Пусть нам даны три матроида:
,,
.
Для простоты мы считаем, что носители в обоих матроидах одинаковы, если не так, то дополним их до объединения, заметим, что от этого
и не перестанут быть матроидами.
Определим ещё несколько матроидов, которые нам понадобятся:
,
Из предыдущей темы (Объединение матроидов, доказательство того, что объединение является матроидом;) мы знаем, что
для - , поэтому матроид .
Теперь перейдём к задаче. У нас есть множество и нужно проверить его независимость в объединении матроидов.
Множество - независимо, если .
А можно заметить, что в матроиде - .
Т.е. мы свели задачу о проверке множества на независимость в объединении к нахождению мощности максимального независимого множества в пересечении матроидов и . Мы это уже умеем делать - Алгоритм построения базы в пересечении матроидов.