Объединение матроидов, доказательство того, что объединение является матроидом — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
 
(не показано 5 промежуточных версий этого же участника)
Строка 1: Строка 1:
{{Определение
+
 
|definition =
+
 
<tex>M_1 = \langle X_1, I_1 \rangle </tex> и <tex> M_2 = \langle X_2, I_2 \rangle </tex> — матроиды. Тогда <tex> M_1 \cup M_2 = \langle X = X_1 \cup X_2, I = \mathcal {f} A \mid A = A_1 \cup A_2, A_1 \in I_1, A_2 \in I_2  \mathcal {g} \rangle </tex>.
 
}}
 
 
{{Лемма
 
{{Лемма
|statement = <tex>M = \langle X, I \rangle</tex> — матроид, <tex> f \colon X \to Y</tex>. Тогда <tex>M_1 = \langle Y, I_1 = \mathcal {f} f(A) \mid A \in I \mathcal {g} \rangle </tex> является матроидом.
+
|statement = <tex>M = \langle X, I \rangle</tex> — [[Определение матроида|матроид]], <tex> f \colon X \to Y</tex>. Также <tex>\exists f^{-1} \colon Y \to X</tex>. Тогда <tex>M_1 = \langle Y, I_1 = \mathcal \{ f(A) \mid A \in I \mathcal \} \rangle </tex> является матроидом.
 
|proof =
 
|proof =
 
Докажем аксиомы независимости для <tex> I_1 </tex>.
 
Докажем аксиомы независимости для <tex> I_1 </tex>.
  
 
# <tex>\varnothing \in I_1</tex> <br /><tex> \varnothing = f(\varnothing) \in I_1 </tex>
 
# <tex>\varnothing \in I_1</tex> <br /><tex> \varnothing = f(\varnothing) \in I_1 </tex>
# <tex>B \subset A, A \in I_1 \Rightarrow B \in I_1</tex><br /><tex>A \in I_1</tex>, значит <tex>\mathcal {9} S, S \in I</tex>, такое, что <tex> A = f(S)</tex>. <tex>B = f(S \setminus f^{-1} (A \setminus B)), (S \setminus f^{-1} (A \setminus B)) \subset S \Rightarrow (S \setminus f^{-1} (A \setminus B)) \in I</tex>. Значит <tex>B \in I_1</tex>.
+
# <tex>B \subset A, A \in I_1 \Rightarrow B \in I_1</tex><br /><tex>A \in I_1</tex>, значит <tex>\exists S, S \in I</tex>, такое, что <tex> A = f(S)</tex>. Из этого следует, что <tex>\forall x \in  A\ f^{-1}(x) \cap  S \ne \varnothing</tex>. Пусть <tex> T = \{x \in  S | f(x) \in  B\}</tex>. Тогда <tex> B = f(T) </tex> и из этого <tex> T \subseteq S, T \in I </tex> и <tex> B \in I_1 </tex>, ч. т. д.
# Пусть <tex> A \in I_1, A = f(S), B \in I_1, B = f(T), |A| > |B|</tex>. Докажем, что <tex> \mathcal {9} y \in A \setminus B, B \cup \mathcal{f} y \mathcal {g} \in I_1</tex><br /><tex>A = f(S) \Rightarrow \mathcal {9} S_1 \subset S, A = f(S_1), |S_1| = |A| </tex>.<br /><tex>B = f(T) \Rightarrow \mathcal {9} T_1 \subset T, B = f(T_1), |T_1| = |B| </tex>.<br /><tex>S_1 \in I, T_1 \in I</tex> по второй аксиоме для <tex>M</tex>.<br /><tex> |S_1| > |T_1| </tex>, значит по третьей аксиоме для <tex>M</tex>, <tex>\mathcal {9} x \in S_1 \setminus T_1, T_1 \cup \mathcal{f} x \mathcal {g} \in I</tex>. Следовательно <tex>f(T_1 \cup \mathcal{f} x \mathcal {g}) \in I_1</tex>.<br /><tex>f(T_1 \cup \mathcal{f} x \mathcal {g}) = f(T_1) \cup f(x) = B \cup f(x)</tex>. Значит <tex>\mathcal {9} y = f(x) \in A \setminus B , B \cup \mathcal{f} y \mathcal {g} \in I_1</tex>
+
# Пусть <tex> A \in I_1, A = f(S), B \in I_1, B = f(T), |A| > |B|</tex>. Докажем, что <tex>\exists y \in A \setminus B, B \cup \mathcal \{ y \mathcal \} \in I_1</tex><br /><tex>A = f(S) \Rightarrow \exists S_1 \subset S, A = f(S_1), |S_1| = |A| </tex>.<br /><tex>B = f(T) \Rightarrow \exists T_1 \subset T, B = f(T_1), |T_1| = |B| </tex>.<br /><tex>S_1 \in I, T_1 \in I</tex> по второй аксиоме для <tex>M</tex>.<br /><tex> |S_1| > |T_1| </tex>, значит по третьей аксиоме для <tex>M</tex>, <tex>\exists x \in S_1 \setminus T_1, T_1 \cup \mathcal \{ x \mathcal \} \in I</tex>. Следовательно <tex>f(T_1 \cup \mathcal \{ x \mathcal \}) \in I_1 </tex> и <tex>f(x) \in f(S_1 \setminus T_1) = A \setminus B. </tex> Также <br /><tex> f(T_1 \cup \mathcal \{ x \mathcal \}) = f(T_1) \cup f(x) = B \cup f(x)</tex>. Значит <tex>\exists y = f(x) \in A \setminus B , B \cup \mathcal \{ y \mathcal \} \in I_1</tex>
 
}}
 
}}
  
 
{{Теорема
 
{{Теорема
|statement = Объединение матроидов является матроидом.
+
|statement = [[Объединение матроидов, проверка множества на независимость|Объединение матроидов]] является матроидом.
|proof = Рассмотрим матроиды <tex>M_1</tex> и <tex>M_2</tex> из определения объединения матроидов. Из [[Прямая сумма матроидов|леммы]] знаем, что <tex> M_1 \oplus M_2= \langle X = X_1 \times \mathcal {f} 1 \mathcal {g} \cup X_2 \times \mathcal {f} 2 \mathcal {g}, I = \mathcal {f} A \mid A = A_1 \cup A_2, A_1 \in I_1, A_2 \in I_2  \mathcal {g} \rangle </tex> является матроидом. Пусть <tex>f \colon X_1 \times \mathcal {f} 1 \mathcal {g} \cup X_2 \times \mathcal {f} 2 \mathcal {g} \to X_1 \cup X_2 </tex>, такая, что <tex>f(x \times \mathcal {f} 1 \mathcal {g}) \rightarrow x </tex>, <tex>f(x \times \mathcal {f} 2 \mathcal {g}) \rightarrow x </tex>. Тогда по лемме <tex> M_3 = \langle X_1 \cup X_2, I_3 = \mathcal {f} f(A) \mid A \in I \mathcal {g} \rangle</tex> — матроид, в котором независимым множествам соответствуют объединения независимых множеств в <tex>M_1</tex> и <tex>M_2</tex>. То есть <tex>M_3 = M_1 \cup M_2</tex>.
+
|proof = Рассмотрим матроиды <tex>M_1</tex> и <tex>M_2</tex> из определения [[Объединение матроидов, проверка множества на независимость|объединения матроидов]]. Из [[Прямая сумма матроидов|леммы]] знаем, что <tex> M_1 \oplus M_2= \langle X = X_1 \times \mathcal \{ 1 \mathcal \} \cup X_2 \times \mathcal \{ 2 \mathcal \}, I = \mathcal \{ A \mid A = A_1 \cup A_2, A_1 \in I_1, A_2 \in I_2  \mathcal \} \rangle </tex> , где <tex> X_1 \times \mathcal \{ i \mathcal \} </tex> — декартово произведение множеств <tex> X_1 </tex> и <tex> \mathcal \{ i \mathcal \</tex>, является матроидом. Пусть <tex>f \colon X_1 \times \mathcal \{ 1 \mathcal \} \cup X_2 \times \mathcal \{ 2 \mathcal \} \to X_1 \cup X_2 </tex>, такая, что <tex>f(x \times \mathcal \{ 1 \mathcal \}) \rightarrow x </tex>, <tex>f(x \times \mathcal \{ 2 \mathcal \}) \rightarrow x </tex>. Тогда по вышеизложенной лемме <tex> M_3 = \langle X_1 \cup X_2, I_3 = \mathcal \{ f(A) \mid A \in I \mathcal \} \rangle</tex> — матроид, в котором независимым множествам соответствуют объединения независимых множеств в <tex>M_1</tex> и <tex>M_2</tex>. То есть <tex>M_3 = M_1 \cup M_2</tex>.
 
}}
 
}}
 +
 +
== См. также==
 +
* [[Определение матроида]]
 +
* [[Объединение матроидов, проверка множества на независимость]]
 +
* [[Алгоритм построения базы в объединении матроидов]]
 +
 +
== Источники информации==
 +
* [https://courses.engr.illinois.edu/cs598csc/sp2010/Lectures/Lecture19.pdf Chandra Chekuri {{---}} Combinatorial Optimization]
 +
* [http://math.mit.edu/~goemans/18438F09/lec13.pdf Michel X. Goemans {{---}} Advanced Combinatorial Optimization]
 +
* [https://en.wikipedia.org/wiki/Matroid Wikipedia {{---}} Matroid]
 +
 +
[[Категория:Алгоритмы и структуры данных]]
 +
[[Категория:Матроиды]]
 +
[[Категория:Объединение матроидов]]

Текущая версия на 18:16, 5 января 2019


Лемма:
[math]M = \langle X, I \rangle[/math]матроид, [math] f \colon X \to Y[/math]. Также [math]\exists f^{-1} \colon Y \to X[/math]. Тогда [math]M_1 = \langle Y, I_1 = \mathcal \{ f(A) \mid A \in I \mathcal \} \rangle [/math] является матроидом.
Доказательство:
[math]\triangleright[/math]

Докажем аксиомы независимости для [math] I_1 [/math].

  1. [math]\varnothing \in I_1[/math]
    [math] \varnothing = f(\varnothing) \in I_1 [/math]
  2. [math]B \subset A, A \in I_1 \Rightarrow B \in I_1[/math]
    [math]A \in I_1[/math], значит [math]\exists S, S \in I[/math], такое, что [math] A = f(S)[/math]. Из этого следует, что [math]\forall x \in A\ f^{-1}(x) \cap S \ne \varnothing[/math]. Пусть [math] T = \{x \in S | f(x) \in B\}[/math]. Тогда [math] B = f(T) [/math] и из этого [math] T \subseteq S, T \in I [/math] и [math] B \in I_1 [/math], ч. т. д.
  3. Пусть [math] A \in I_1, A = f(S), B \in I_1, B = f(T), |A| \gt |B|[/math]. Докажем, что [math]\exists y \in A \setminus B, B \cup \mathcal \{ y \mathcal \} \in I_1[/math]
    [math]A = f(S) \Rightarrow \exists S_1 \subset S, A = f(S_1), |S_1| = |A| [/math].
    [math]B = f(T) \Rightarrow \exists T_1 \subset T, B = f(T_1), |T_1| = |B| [/math].
    [math]S_1 \in I, T_1 \in I[/math] по второй аксиоме для [math]M[/math].
    [math] |S_1| \gt |T_1| [/math], значит по третьей аксиоме для [math]M[/math], [math]\exists x \in S_1 \setminus T_1, T_1 \cup \mathcal \{ x \mathcal \} \in I[/math]. Следовательно [math]f(T_1 \cup \mathcal \{ x \mathcal \}) \in I_1 [/math] и [math]f(x) \in f(S_1 \setminus T_1) = A \setminus B. [/math] Также
    [math] f(T_1 \cup \mathcal \{ x \mathcal \}) = f(T_1) \cup f(x) = B \cup f(x)[/math]. Значит [math]\exists y = f(x) \in A \setminus B , B \cup \mathcal \{ y \mathcal \} \in I_1[/math]
[math]\triangleleft[/math]
Теорема:
Объединение матроидов является матроидом.
Доказательство:
[math]\triangleright[/math]
Рассмотрим матроиды [math]M_1[/math] и [math]M_2[/math] из определения объединения матроидов. Из леммы знаем, что [math] M_1 \oplus M_2= \langle X = X_1 \times \mathcal \{ 1 \mathcal \} \cup X_2 \times \mathcal \{ 2 \mathcal \}, I = \mathcal \{ A \mid A = A_1 \cup A_2, A_1 \in I_1, A_2 \in I_2 \mathcal \} \rangle [/math] , где [math] X_1 \times \mathcal \{ i \mathcal \} [/math] — декартово произведение множеств [math] X_1 [/math] и [math] \mathcal \{ i \mathcal \} [/math], является матроидом. Пусть [math]f \colon X_1 \times \mathcal \{ 1 \mathcal \} \cup X_2 \times \mathcal \{ 2 \mathcal \} \to X_1 \cup X_2 [/math], такая, что [math]f(x \times \mathcal \{ 1 \mathcal \}) \rightarrow x [/math], [math]f(x \times \mathcal \{ 2 \mathcal \}) \rightarrow x [/math]. Тогда по вышеизложенной лемме [math] M_3 = \langle X_1 \cup X_2, I_3 = \mathcal \{ f(A) \mid A \in I \mathcal \} \rangle[/math] — матроид, в котором независимым множествам соответствуют объединения независимых множеств в [math]M_1[/math] и [math]M_2[/math]. То есть [math]M_3 = M_1 \cup M_2[/math].
[math]\triangleleft[/math]

См. также[править]

Источники информации[править]