Покрытия, закрытые множества — различия между версиями
Shersh (обсуждение | вклад) (→Источники информации) |
Shiplayer (обсуждение | вклад) (→Покрытие) |
||
Строка 2: | Строка 2: | ||
{{Определение | {{Определение | ||
− | |definition = Пусть <tex>M =\; \langle X,I \rangle</tex> {{---}} матроид. Тогда '''покрытие''' (англ. ''span'') множества <tex>A \subseteq X</tex> {{---}} это множество <tex> | + | |definition = Пусть <tex>M =\; \langle X,I \rangle</tex> {{---}} матроид. Тогда '''покрытие''' (англ. ''span'') множества <tex>A \subseteq X</tex> {{---}} это множество <tex> span_M(A) = \mathcal {f} x \in X \; |\; r(A) = r(A \cup x) \mathcal {g}</tex> |
}} | }} | ||
+ | Далее <tex>span_M </tex> будет указываться, как <tex>span</tex> | ||
+ | |||
{{Определение | {{Определение | ||
|definition = <tex> span(A) = A \cup \mathcal {f} x \in X \setminus A \; |\; \forall S \subseteq A,\ S \in I,\ |S| = r(A) :\ S \cup x \notin I \mathcal {g} </tex> | |definition = <tex> span(A) = A \cup \mathcal {f} x \in X \setminus A \; |\; \forall S \subseteq A,\ S \in I,\ |S| = r(A) :\ S \cup x \notin I \mathcal {g} </tex> | ||
Строка 38: | Строка 40: | ||
# <tex> A, B \subseteq X;\ A \subseteq span(B) \ \Rightarrow \ span(A) \subseteq span(B) </tex> | # <tex> A, B \subseteq X;\ A \subseteq span(B) \ \Rightarrow \ span(A) \subseteq span(B) </tex> | ||
# <tex> A \subseteq X,\ p \in X \setminus A,\ q \in span(A \cup p) \setminus span(A) \ \Rightarrow \ p \in span(A \cup q) </tex> | # <tex> A \subseteq X,\ p \in X \setminus A,\ q \in span(A \cup p) \setminus span(A) \ \Rightarrow \ p \in span(A \cup q) </tex> | ||
− | |proof = | + | |proof ='''Необходимое условие'''. Пусть <tex> span </tex> будет функцией покрытия матроида <tex> M = (S, L) </tex> с ранговой функцией <tex> r </tex>. Покажем, что <tex> s \in span(T)</tex>. Пусть <tex>U \subseteq span(T)</tex> и <tex>s \in span(U)</tex>. Предположим, что <tex> s </tex> не принадлежит <tex>T</tex>. Тогда по [[ Ранговая_функция, полумодулярность | полумодулярность ранговой функции]] мы имеем: |
+ | : <tex> r(T \cup {s}) <= r(T \cup U \cup {s}) <= r(T \cup U) + r(U \cup {s}) - r(U) = r(T \cup U) = r(T)</tex> | ||
+ | Это показывает, что <tex> s \in span(T) </tex>. | ||
+ | |||
+ | Заметим, что <tex> s \in span(T \cup {t}) \Rightarrow span(T) </tex> эквивалентно таким выражениям: <tex> r(T \cup {t} \cup {s}) = r(T \cup {t}) </tex> и <tex> r(T \cup {s}) > r(T)</tex>. Следовательно | ||
+ | : <tex>r(T \cup t \cup {s}) = r(T \cup {t}) <= r(T) + 1 <= r(T \cup {s}) </tex> | ||
+ | то есть, <tex> t \in span(T \cup {s}) </tex>. | ||
+ | |||
+ | '''Достаточное условие'''. Пусть функция <tex>span</tex> удовлетворяет свойствам и определена, как: | ||
+ | :<tex> L = \mathcal {f} I \subseteq S \; |\; \forall s \in I : s \notin span(I \setminus {s}) \mathcal {g} </tex> | ||
+ | Сперва посмотрим на следующее: | ||
+ | :если <tex> I \in L </tex>, тогда <tex>span(I) = I \cup \mathcal {f} t \; | \; I \cup {t} \in L \mathcal {g} </tex>. (1) | ||
+ | |||
+ | Действительно, если <tex> t \in span(I) \setminus I </tex>, тогда <tex> I \cup {t} \notin L </tex>, по определению независимого множества. С другой стороны, <tex> I \subseteq span(I)</tex>. Кроме того, если <tex> I \cup {t} \notin L </tex>, тогда по определению независимого множества получаем, что <tex> \exists s \in I \cup t : s \in span(I \cup {t} \setminus {s}) </tex>. Если <tex> s = t </tex>, тогда <tex> t \in span(I) </tex>. Предположим, что <tex> s \neq t </tex>, т.е. <tex> s \in I </tex>. Мы знаем, что <tex> s \in span(I \setminus {s}) </tex>, так как <tex> I \in L </tex>. Таким образом по 3 свойству доказывается (для <tex> T \in I \setminus {s} </tex>), <tex> t \in span(I) </tex>. | ||
+ | |||
+ | Теперь покажем, что <tex> M = (S, L) </tex> {---} матроид. Очевидно, <tex> \emptyset \in L </tex>. Для начала покажем, что <tex> I </tex> закрытое множество под полученным подмножеством, Пусть <tex> I \in L </tex> и <tex> J \subseteq I </tex>. Мы видим, что <tex> J \in I </tex>. Предположим наоборот, что <tex>\exists s \in J : s \in span(J \setminus {s}) </tex>. Тогда по второму свойству <tex> span(J \setminus {s}) \subseteq span(I \setminus {s})</tex>. Следовательно, <tex> s \in span( I \setminus {s})</tex>, что противоречит условию, что <tex> I \in L </tex>. Для того чтобы проверить [[Определение матроида | 3-ю аксиому матроидов]], допустим, что <tex> I, J \in L </tex>, <tex> |I \setminus J| = 1 </tex> и <tex> |J \setminus I| = 2</tex>. Пусть <tex>I \setminus J = {i}</tex> и <tex>J \setminus I = {j_1, j_2}</tex>. Предположим, что <tex> I \cup {j_1} \in L</tex>, т.е. <tex> J \cup {i} \setminus {j_2} \in L</tex>, и так по (1) применяется к <tex>J \setminus {j_2} </tex>, <tex> i \in span(J \setminus {j_2}) </tex>. Поэтому, <tex> I \subseteq span(J \setminus {j_2})</tex> и <tex> span(I) \subseteq span(J \setminus {j_2}) </tex>. Таким образом <tex> j_2 \in span(i) </tex>(как и <tex> J \in L</tex>) и поэтому, (1) применяется к <tex> I </tex> и к <tex> I \cup {j_2} \in L </tex>. | ||
+ | |||
+ | Таким образом <tex> M </tex> является матроидом. Теперь покажем, что <tex>span = span_M</tex>. Выберем такое множество <tex> T \subseteq S </tex>, чтобы увидеть, что <tex> span(T) = span_M(T) </tex>, пусть <tex> I </tex> будет базой <tex> T </tex> (в <tex> M </tex>). Тогда используя (1), мы получаем: | ||
+ | :<tex>span_M(T) = T \cup \mathcal {f} x \; | \; I \cup {x} \in L \mathcal {g} = span(I) \subseteq(T) </tex> | ||
+ | Таким образом, мы показали, что <tex> span(T) \subseteq span(I)</tex> т.е. по 1 свойству <tex> T \subseteq span(I)</tex>. Теперь выберем <tex> t \in T \setminus I</tex>. Мы знаем <tex>I \cup t \notin L</tex>, т.к. <tex> I </tex> максимально по включению, и, следовательно, по (1) получаем, что <tex> t \in span(I) </tex>. | ||
}} | }} | ||
− | |||
== Закрытые множества == | == Закрытые множества == |
Версия 15:20, 15 июня 2015
Покрытие
Определение: |
Пусть | — матроид. Тогда покрытие (англ. span) множества — это множество
Далее
будет указываться, как
Определение: |
Утверждение: |
Эти определения эквивалентны. |
Понятно, что элементы из Иначе говоря, не должно существовать множеств подходят под оба определения. Для остальных же равенство означает, что не найдётся множеств Для такого обязательно будет выполнено в противном случае что приведёт к Тогда для верно Из последнего получается, что и учитывая имеем |
Утверждение: |
Для множества выполнено |
Покажем, что следующее определение замыкания равносильно тому, которое было дано ранее: По сравнению со старым определением появилось два ограничения, нужно убедится в том, что они не существены. Сначала рассмотрим
Второе ограничение — можно наложить по той причине, что элементы и так входят в замыкание благодаря левой части объединения.В соответствии с этим определением, замыкание множества — это, кроме всех элементов , все такие что какое-то из максимальных по мощности независимых подмножеств нельзя дополнить -ом, оставив это множество независимым. Определение покрытия отличается только квантором — вместо "какое-то" нужно поставить "любое".Учитывая, что описывает непустое множество таких (по определению ранга), будет верным следствие: |
Теорема: |
Покрытие обладает следующими свойствами:
|
Доказательство: |
Необходимое условие. Пусть полумодулярность ранговой функции мы имеем: будет функцией покрытия матроида с ранговой функцией . Покажем, что . Пусть и . Предположим, что не принадлежит . Тогда поЭто показывает, что .Заметим, что эквивалентно таким выражениям: и . Следовательното есть, .Достаточное условие. Пусть функция удовлетворяет свойствам и определена, как:Сперва посмотрим на следующее:
Действительно, если , тогда , по определению независимого множества. С другой стороны, . Кроме того, если , тогда по определению независимого множества получаем, что . Если , тогда . Предположим, что , т.е. . Мы знаем, что , так как . Таким образом по 3 свойству доказывается (для ), .Теперь покажем, что 3-ю аксиому матроидов, допустим, что , и . Пусть и . Предположим, что , т.е. , и так по (1) применяется к , . Поэтому, и . Таким образом (как и ) и поэтому, (1) применяется к и к . {---} матроид. Очевидно, . Для начала покажем, что закрытое множество под полученным подмножеством, Пусть и . Мы видим, что . Предположим наоборот, что . Тогда по второму свойству . Следовательно, , что противоречит условию, что . Для того чтобы проверитьТаким образом является матроидом. Теперь покажем, что . Выберем такое множество , чтобы увидеть, что , пусть будет базой (в ). Тогда используя (1), мы получаем: |
Закрытые множества
Определение: |
Множество | называется закрытым (англ. closed set, flat), если Класс закрытых множеств обозначается
Теорема: |
Закрытые множества обладают следующими свойствами:
|
См. также
Источники информации
- Асанов М. О., Баранский В. А., Расин В. В. — Дискретная математика: Графы, матроиды, алгоритмы. ISBN 978-5-8114-1068-2
- courses.engr.illinois.edu — Lecture 14, course CS 598CSC: Combinatorial optimization