Аксиоматизация матроида рангами — различия между версиями
(Добавлена статья "Аксиоматизация матроида рангами") |
(Минорные правки форматирования) |
||
Строка 2: | Строка 2: | ||
|about= об аксиоматизации матроида рангами | |about= об аксиоматизации матроида рангами | ||
|statement= Пусть некоторая функция <tex>r: 2^X \to \{0\} \cup \mathbb{N}</tex>, где <tex>2^X</tex> - конечное непустое множество, удовлетворяет условиям: <br> | |statement= Пусть некоторая функция <tex>r: 2^X \to \{0\} \cup \mathbb{N}</tex>, где <tex>2^X</tex> - конечное непустое множество, удовлетворяет условиям: <br> | ||
− | r.1) <tex> 0 \le r(A) \le |A| </tex> <br> | + | (r.1) <tex> 0 \le r(A) \le |A| </tex> <br> |
− | r.2) <tex> A \in B \to r(A) \le r(B) </tex> <br> | + | (r.2) <tex> A \in B \to r(A) \le r(B) </tex> <br> |
− | r.3) <tex>\forall A, B \subset X,</tex> <tex>r(A \cup B) + r(A \cap B) \le r(A) + r(B)</tex> <br> | + | (r.3) <tex>\forall A, B \subset X,</tex> <tex>r(A \cup B) + r(A \cap B) \le r(A) + r(B)</tex> <br> |
Тогда <tex>r</tex> является ранговой функцией однозначно определенного матроида на <tex>X</tex>. <br> | Тогда <tex>r</tex> является ранговой функцией однозначно определенного матроида на <tex>X</tex>. <br> | ||
|proof= Подмножество <tex>I \subseteq 2^X</tex> назовем <tex>r</tex>-независимым, если выполняется <tex>r(I) = |I|</tex>. Обозначим через <tex>\mathcal{I}</tex> множество всех <tex>r</tex>-независимых подмножеств из <tex>2^X</tex>. Докажем, что <tex>\mathcal{I}</tex> удовлетворяет аксиомам независимого множества 1, 2 и 3:<br> | |proof= Подмножество <tex>I \subseteq 2^X</tex> назовем <tex>r</tex>-независимым, если выполняется <tex>r(I) = |I|</tex>. Обозначим через <tex>\mathcal{I}</tex> множество всех <tex>r</tex>-независимых подмножеств из <tex>2^X</tex>. Докажем, что <tex>\mathcal{I}</tex> удовлетворяет аксиомам независимого множества 1, 2 и 3:<br> | ||
− | '''1)''' В силу r.1 выполняется <tex>r(\emptyset)=0</tex>, следовательно <tex> \emptyset \in \mathcal{I}</tex><br> | + | '''1)''' В силу (r.1) выполняется <tex>r(\emptyset)=0</tex>, следовательно <tex> \emptyset \in \mathcal{I}</tex><br> |
− | '''2)''' Пусть <tex> I \in \mathcal{I}</tex> и <tex>J \subseteq I</tex>. Предположим от противного, что <tex>r(J) < |J|</tex>. Тогда, используя r.1 и r.3, получаем: <br> | + | '''2)''' Пусть <tex> I \in \mathcal{I}</tex> и <tex>J \subseteq I</tex>. Предположим от противного, что <tex>r(J) < |J|</tex>. Тогда, используя (r.1) и (r.3), получаем: <br> |
<tex>|I| = r(I) = r(J \cup (I \setminus J)) \le r(J) + r(I \setminus J) - r(\emptyset) < |J| + |I \setminus J| = |I|</tex>, <br> | <tex>|I| = r(I) = r(J \cup (I \setminus J)) \le r(J) + r(I \setminus J) - r(\emptyset) < |J| + |I \setminus J| = |I|</tex>, <br> | ||
что невозможно. Следовательно, <tex>r(J) = |J|</tex>, т.е. <tex> J \in \mathcal{I} </tex> <br> | что невозможно. Следовательно, <tex>r(J) = |J|</tex>, т.е. <tex> J \in \mathcal{I} </tex> <br> | ||
Строка 17: | Строка 17: | ||
{{Лемма | {{Лемма | ||
|statement=Пусть <tex> B \subset A \subseteq 2^X</tex>, <tex>r(B) = |B|</tex>, и <tex> A \setminus B = \{p_1, ... p_t\}</tex>. Если <tex>r(B \cup p_i) = |B|</tex> для любого <tex> i = 1,..., t</tex>, то <tex>r(A) = |B|</tex> | |statement=Пусть <tex> B \subset A \subseteq 2^X</tex>, <tex>r(B) = |B|</tex>, и <tex> A \setminus B = \{p_1, ... p_t\}</tex>. Если <tex>r(B \cup p_i) = |B|</tex> для любого <tex> i = 1,..., t</tex>, то <tex>r(A) = |B|</tex> | ||
− | |proof=По индукции: предположим, что <tex>r(B \cup p_1 \cup ... \cup p_j) = |B|</tex> для некоторого <tex>j = 1,...,t-1</tex>. Тогда, применяя r.2 и r.3, получаем: <br> | + | |proof=По индукции: предположим, что <tex>r(B \cup p_1 \cup ... \cup p_j) = |B|</tex> для некоторого <tex>j = 1,...,t-1</tex>. Тогда, применяя (r.2) и (r.3), получаем: <br> |
− | <tex>|B| = r(B) \le r(B \cup p_1 \cup ... \cup p_j+1) \le r(B \cup p_1 \cup ... \cup p_j) + r(B \cup p_j+1) - r(B) = |B| + |B| - |B| = |B|</tex>. <br> | + | <tex>|B| = r(B) \le r(B \cup p_1 \cup ... \cup p_j+1) \le r(B \cup p_1 \cup ... \cup p_j) + r(B \cup p_j+1) -r(B) = |B| + |B| - |B| = |B| </tex>. <br> |
Следовательно, <tex>r(B \cup p_1 \cup ... \cup p_j+1) = |B|</tex>. Переход доказан, а значит, <tex>r(B \cup p_1 \cup ... \cup p_t) = |B|</tex>. <br> | Следовательно, <tex>r(B \cup p_1 \cup ... \cup p_j+1) = |B|</tex>. Переход доказан, а значит, <tex>r(B \cup p_1 \cup ... \cup p_t) = |B|</tex>. <br> | ||
}} | }} | ||
'''3)''' Пусть <tex>I, J \in \mathcal{I}</tex> и <tex>|I| < |J|</tex>. Положим <tex>J \setminus I = \{p_1,...,p_t\}</tex>. Пусть, от противного, <tex>I \cup p_i \notin \mathcal{I}</tex> для любого <tex>i = 1,...,t</tex>. Тогда для <tex>i = 1,...,t</tex> имеет место: <br> | '''3)''' Пусть <tex>I, J \in \mathcal{I}</tex> и <tex>|I| < |J|</tex>. Положим <tex>J \setminus I = \{p_1,...,p_t\}</tex>. Пусть, от противного, <tex>I \cup p_i \notin \mathcal{I}</tex> для любого <tex>i = 1,...,t</tex>. Тогда для <tex>i = 1,...,t</tex> имеет место: <br> | ||
− | <tex> |I| = r(I) \le r(I \cup p_i) < |I \cup p_i| = |I| + 1</tex>, | + | <tex> |I| = r(I) \le r(I \cup p_i) < |I \cup p_i| = |I| + 1</tex>, т.е. <tex> r(I \cup p_i) = |I|</tex>. Отсюда, в силу доказанной раннее леммы, получаем <tex> r(I \cup J) = |I|</tex>. С другой стороны, <tex>|I| < |J| = r(J) \le r(I \cup J)</tex>. Противоречие. <br> |
− | т.е. <tex> r(I \cup p_i) = |I|</tex>. Отсюда, в силу доказанной раннее леммы, получаем <tex> r(I \cup J) = |I|</tex>. С другой стороны, <tex>|I| < |J| = r(J) \le r(I \cup J)</tex>. Противоречие. <br> | + | |
+ | |||
Все три аксиомы выполняются на <tex>\mathcal{I}</tex>, соответственно, семейство <tex>\mathcal{I}</tex> является семейством независимых множеств некоторого матроида <tex> M = \langle X, \mathcal{I} \rangle</tex>. Осталось проверить, что исходная функция <tex>r</tex> совпадает с ранговой функцией матроида <tex>M</tex>. Для этого надо доказать, что для любой базы <tex>B</tex> произвольного множества <tex>A \subseteq 2^X</tex> выполняется <tex> r(A) = |B|. Пусть <tex>B</tex> - база множества <tex>A \subseteq 2^X</tex>. По определению <tex>\mathcal{I} </tex> имеем <tex> r(B) = |B|</tex> и <tex>B</tex> - максимальное <tex>r</tex>-независимое подмножество из <tex>A</tex>. Если <tex>A=B</tex>, то, очевидно, <tex>r(A)=r(B)</tex>. Поэтому пусть <tex>B \in A</tex>. Пусть <tex> A \setminus B = \{p_1, ... ,p_t\}</tex>. В силу максимальности <tex>B</tex> для любого <tex>i = 1,...,t</tex> множество <tex>B \cup p_i</tex> не является <tex>r</tex>-независимым, т.е. <tex>r(B \cup p_i) < |B \cup p_i|</tex>. Тогда имеем: <br> | Все три аксиомы выполняются на <tex>\mathcal{I}</tex>, соответственно, семейство <tex>\mathcal{I}</tex> является семейством независимых множеств некоторого матроида <tex> M = \langle X, \mathcal{I} \rangle</tex>. Осталось проверить, что исходная функция <tex>r</tex> совпадает с ранговой функцией матроида <tex>M</tex>. Для этого надо доказать, что для любой базы <tex>B</tex> произвольного множества <tex>A \subseteq 2^X</tex> выполняется <tex> r(A) = |B|. Пусть <tex>B</tex> - база множества <tex>A \subseteq 2^X</tex>. По определению <tex>\mathcal{I} </tex> имеем <tex> r(B) = |B|</tex> и <tex>B</tex> - максимальное <tex>r</tex>-независимое подмножество из <tex>A</tex>. Если <tex>A=B</tex>, то, очевидно, <tex>r(A)=r(B)</tex>. Поэтому пусть <tex>B \in A</tex>. Пусть <tex> A \setminus B = \{p_1, ... ,p_t\}</tex>. В силу максимальности <tex>B</tex> для любого <tex>i = 1,...,t</tex> множество <tex>B \cup p_i</tex> не является <tex>r</tex>-независимым, т.е. <tex>r(B \cup p_i) < |B \cup p_i|</tex>. Тогда имеем: <br> | ||
<tex> |B| = r(B) \le r(B \cup p_i) < |B \cup p_i| = |B| + 1 </tex>, <br> | <tex> |B| = r(B) \le r(B \cup p_i) < |B \cup p_i| = |B| + 1 </tex>, <br> |
Версия 13:13, 19 мая 2015
Теорема (об аксиоматизации матроида рангами): | ||||||
Пусть некоторая функция , где - конечное непустое множество, удовлетворяет условиям: (r.1) | ||||||
Доказательство: | ||||||
Подмножество 1) В силу (r.1) выполняется 2) Пусть
3) Пусть
| ||||||