Объединение матроидов, проверка множества на независимость
| Определение: |
| Пусть и — два матроида на множестве элементов с наборами независимых множеств и . Положим . Множество удовлетворяет аксиомам независимости, следовательно, — матроид, для которого служит набором независимых множеств. Этот матроид называется объединением матроидов (англ. matroid union) и , и обозначается |
Обычно термин "объединение" применяется, когда носители в обоих матроидах одинаковы, однако это не является необходимым, мы можем дополнить их до объединения, заметим, что от этого и не перестанут быть матроидами. Если в и носители непересекающиеся, тогда это будет являться прямой суммой матроидов.
- Операция объединения матроидов ассоциативна, следовательно, можно говорить об объединении нескольких матроидов.
- В отличие от пересечения матроидов, объединение двух конечных (англ. finite matroid) матроидов всегда является матроидом, однако объединение двух бесконечных матроидов (англ. infinite matroid) не обязательно будет им.
- Объединение применяется к независимым множествам, а не к матроидам в целом, то есть это операция на другом уровне, по сравнению с пересечение матроидов.
Проверка множества на независимость
Зададим функцию : : , а для множества выполняется .
Преобразуем каждый элемент множества в матроиде в , а каждый элемент множества в матроиде в . Мы получили два матроида и . Наша функция будет являться естественным отображением , где .
Затем определим два матроида, которые нам далее понадобятся:
- — прямая сумма двух матроидов (носители матроидов и при пересечении будут давать пустое множество).
- — в данном случае будет содержать такие независимые множества, что мощность любого множества из будет равна мощности множества, получаемого функцией над , то есть не будет содержать одновременно и .
Теперь перейдём к нашей задаче. У нас есть некоторое множество в , и нужно проверить его независимость в объединении матроидов (то есть, лежит ли оно в ).
Множество является независимым, если . Можно заметить, что в матроиде выполняется . Таким образом, мы свели задачу о проверке множества на независимость в объединении к нахождению мощности максимального независимого множества в пересечении матроидов и . С помощью алгоритма построения базы в пересечении матроидов мы будем искать размер максимального подсета множества в пересечении набора независимых множеств матроидов.
См. также
Литература
- Емеличев В. А., Мельников О. И., Сарванов В. И., Тышкевич Р. И. — Лекции по теории графов
- Chandra Chekuri — Combinatorial Optimization
- Michel X. Goemans — Advanced Combinatorial Optimization
- https://en.wikipedia.org/wiki/Matroid