Покрытия, закрытые множества — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
м
Строка 5: Строка 5:
 
}}
 
}}
 
{{Определение
 
{{Определение
|definition = <tex> span(A) = A \cup \mathcal {f} x \in X \; |\; \forall S \subseteq A \setminus x,\ 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>  
 
}}
 
}}
  
 
{{Утверждение
 
{{Утверждение
 
|statement=Эти определения эквивалентны.
 
|statement=Эти определения эквивалентны.
|proof=Понятно, что элементы из <tex> A </tex> подходят под оба определения. Для остальных же <tex> x </tex> равенство <tex> \ r(A) = r(A \cup x) </tex> означает, что не найдётся множеств <tex> S' \subseteq A \cup x :\ S' \in I,\ |S'| > r(A). </tex> Для такого <tex> S' </tex> обязательно будет выполнено <tex> x \in S', </tex> в противном случае <tex> S' \subseteq A, </tex> откуда следует <tex> r(A) \geqslant |S'|. </tex> Следовательно для <tex> S = S' \setminus x </tex> верно <tex> S \subseteq A,\ S \in I. </tex> Из последнего получается, что <tex> r(A) \geqslant |S|, </tex> и учитывая <tex> r(A) < |S'|,\ |S| + 1 = |S'| </tex> имеем <tex> r(A) = |S|. </tex>  
+
|proof=Понятно, что элементы из <tex> A </tex> подходят под оба определения. Для остальных же <tex> x </tex> равенство <tex> \ r(A) = r(A \cup x) </tex> означает, что не найдётся множеств <tex> S' \subseteq A \cup x :\ S' \in I,\ |S'| > r(A). </tex> Для такого <tex> S' </tex> обязательно будет выполнено <tex> x \in S', </tex> в противном случае <tex> S' \subseteq A, </tex> что приведёт к <tex> r(A) \geqslant |S'|. </tex> Тогда для <tex> S = S' \setminus x </tex> верно <tex> S \subseteq A,\ S \in I. </tex> Из последнего получается, что <tex> r(A) \geqslant |S|, </tex> и учитывая <tex> r(A) < |S'|,\ |S| + 1 = |S'| </tex> имеем <tex> r(A) = |S|. </tex>  
  
Иначе говоря, не должно существовать множеств <tex> S \subseteq A,\ x \notin S,\ S \in I,\ |S| = r(A):\ S' = S \cup x \in I. </tex>  
+
Иначе говоря, не должно существовать множеств <tex> S \subseteq A,\ S \in I,\ |S| = r(A):\ S' = S \cup x \in I. </tex>  
 
}}
 
}}
 +
  
 
{{Утверждение
 
{{Утверждение
|statement=Определения замыкания и покрытия похожи (???)
+
|statement=Для множества <tex> A \subseteq X </tex> выполнено <tex> span(A) \subseteq \langle A \rangle. </tex>
 
|proof=Покажем, что следующее определение замыкания равносильно тому, которое [[Оператор замыкания для матроидов | было дано]] ранее:
 
|proof=Покажем, что следующее определение замыкания равносильно тому, которое [[Оператор замыкания для матроидов | было дано]] ранее:
: <tex>\langle A \rangle = A \cup \mathcal {f} x \in X \; |\; \exists H \subseteq A \setminus x, \; H \in I , \; |H| = r(A) :\ H \cup x \notin I \mathcal {g}</tex>
+
: <tex>\langle A \rangle = A \cup \mathcal {f} x \in X \setminus A \; |\; \exists H \subseteq A, \; H \in I , \; |H| = r(A) :\ H \cup x \notin I \mathcal {g}</tex>
 
По сравнению со старым определением появилось два ограничения, нужно убедится в том, что они не существены. Сначала рассмотрим <tex> |H| = r(A). </tex>  
 
По сравнению со старым определением появилось два ограничения, нужно убедится в том, что они не существены. Сначала рассмотрим <tex> |H| = r(A). </tex>  
 
: Пусть <tex> \exists H \subseteq A :\ H \in I ,\; H \cup x \notin I, </tex> но <tex> |H| < r(A). </tex>  По [[Ранговая функция, полумодулярность | определению ранга]] <tex> \exists D \subseteq A ,\; D \in I :\ |D| = r(A). </tex> Поскольку <tex> |H| < |D| </tex>, можно применить 3-ю аксиому матроидов несколько раз и получить <tex> H' \subseteq A :\ H \subseteq H' ,\; H' \in I ,\; |H'| = r(A). </tex>  
 
: Пусть <tex> \exists H \subseteq A :\ H \in I ,\; H \cup x \notin I, </tex> но <tex> |H| < r(A). </tex>  По [[Ранговая функция, полумодулярность | определению ранга]] <tex> \exists D \subseteq A ,\; D \in I :\ |D| = r(A). </tex> Поскольку <tex> |H| < |D| </tex>, можно применить 3-ю аксиому матроидов несколько раз и получить <tex> H' \subseteq A :\ H \subseteq H' ,\; H' \in I ,\; |H'| = r(A). </tex>  
 
: <tex> H' \cup x \notin I </tex> также будет выполнено, поскольку в противном случае <tex> H \cup x \notin I </tex> будет неверно (в силу 2-ой аксиомы матроидов).
 
: <tex> H' \cup x \notin I </tex> также будет выполнено, поскольку в противном случае <tex> H \cup x \notin I </tex> будет неверно (в силу 2-ой аксиомы матроидов).
Второе ограничение {{---}} <tex> H \subseteq A \setminus x </tex> вместо <tex> H \subseteq A </tex> {{---}} вытекает само собой, поскольку в случае <tex> x \in H </tex> не могут одновременно выполнятся <tex> H \in I </tex> и <tex> H \cup x \notin I. </tex>
+
Второе ограничение {{---}} <tex> x \in X \setminus A </tex> можно наложить по той причине, что элементы <tex> x \in A </tex> и так входят в замыкание благодаря левой части объединения.
 +
 
 
В соответствии с этим определением, замыкание множества <tex> A </tex> {{---}} это, кроме всех элементов <tex> A </tex>, все такие <tex> x, </tex> что какое-то из максимальных по мощности независимых подмножеств <tex> A </tex> нельзя дополнить <tex> x </tex>-ом, оставив это множество независимым. Определение покрытия отличается только квантором {{---}} вместо "какое-то" нужно поставить "любое".
 
В соответствии с этим определением, замыкание множества <tex> A </tex> {{---}} это, кроме всех элементов <tex> A </tex>, все такие <tex> x, </tex> что какое-то из максимальных по мощности независимых подмножеств <tex> A </tex> нельзя дополнить <tex> x </tex>-ом, оставив это множество независимым. Определение покрытия отличается только квантором {{---}} вместо "какое-то" нужно поставить "любое".
 +
 +
Учитывая, что <tex> S \subseteq A,\ S \in I,\ |S| = r(A) </tex> описывает непустое множество таких <tex> S </tex> (по определению ранга), будет верным следствие:
 +
: <tex> \forall S \subseteq A,\ S \in I,\ |S| = r(A) :\ S \cup x \notin I \ \Rightarrow </tex>
 +
: <tex> \exists H \subseteq A, \; H \in I , \; |H| = r(A) :\ H \cup x \notin I </tex>
 +
Следовательно <tex> x \in span(A) \ \Rightarrow \ x \in \langle A \rangle. </tex>
 
}}
 
}}
  
Строка 29: Строка 36:
 
{{Теорема
 
{{Теорема
 
|statement = Покрытие обладает следующими свойствами:
 
|statement = Покрытие обладает следующими свойствами:
# <tex> A, B \in 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 \in X,\ p \in X \setminus A,\ q \in span(A \cup p) \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 =
 
}}
 
}}
Строка 41: Строка 48:
  
 
{{Теорема
 
{{Теорема
|statement = Замкнутые множества обладают следующими свойствами:
+
|statement = Закрытые множества обладают следующими свойствами:
 
# <tex> A, B \in \mathcal L \ \; \Rightarrow \ A \cap B \in \mathcal L </tex>
 
# <tex> A, B \in \mathcal L \ \; \Rightarrow \ A \cap B \in \mathcal L </tex>
# Если <tex> F \in \mathcal L,\ p \in X \setminus A </tex> и <tex> F' </tex> {{---}} наименьшее по включению закрытое множество, содержащее <tex> F \cup p, </tex> тогда не существует <tex> F'' \in \mathcal L :\ F \subseteq F'' \subseteq F'. </tex>  
+
# Если <tex> F \in \mathcal L,\ p \in X \setminus F </tex> и <tex> F' </tex> {{---}} наименьшее закрытое множество, содержащее <tex> F \cup p, </tex> тогда не существует <tex> F'' \in \mathcal L :\ F \subseteq F'' \subseteq F'. </tex>  
 
|proof =
 
|proof =
 
}}
 
}}
Строка 53: Строка 60:
 
*''Асанов М. О., Баранский В. А., Расин В. В.'' {{---}} Дискретная математика: Графы, матроиды, алгоритмы. '''ISBN 978-5-8114-1068-2'''
 
*''Асанов М. О., Баранский В. А., Расин В. В.'' {{---}} Дискретная математика: Графы, матроиды, алгоритмы. '''ISBN 978-5-8114-1068-2'''
 
* [http://dictionary.sensagent.com/Matroid/en-en/ sensagent.com {{---}} Matroid]
 
* [http://dictionary.sensagent.com/Matroid/en-en/ sensagent.com {{---}} Matroid]
 +
* [http://courses.engr.illinois.edu/cs598csc/sp2010/Lectures/Lecture14.pdf http://courses.engr.illinois.edu] {{---}} Lecture 14, course ''CS 598CSC: Combinatorial optimization''
  
 
[[Категория:Алгоритмы и структуры данных]]
 
[[Категория:Алгоритмы и структуры данных]]
 
[[Категория:Матроиды]]
 
[[Категория:Матроиды]]

Версия 12:18, 16 июня 2014

Покрытие

Определение:
Пусть [math]M =\; \langle X,I \rangle[/math] — матроид. Тогда покрытие (англ. span) множества [math]A \subseteq X[/math] — это множество [math] span(A) = \mathcal {f} x \in X \; |\; r(A) = r(A \cup x) \mathcal {g}[/math]


Определение:
[math] 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} [/math]


Утверждение:
Эти определения эквивалентны.
[math]\triangleright[/math]

Понятно, что элементы из [math] A [/math] подходят под оба определения. Для остальных же [math] x [/math] равенство [math] \ r(A) = r(A \cup x) [/math] означает, что не найдётся множеств [math] S' \subseteq A \cup x :\ S' \in I,\ |S'| \gt r(A). [/math] Для такого [math] S' [/math] обязательно будет выполнено [math] x \in S', [/math] в противном случае [math] S' \subseteq A, [/math] что приведёт к [math] r(A) \geqslant |S'|. [/math] Тогда для [math] S = S' \setminus x [/math] верно [math] S \subseteq A,\ S \in I. [/math] Из последнего получается, что [math] r(A) \geqslant |S|, [/math] и учитывая [math] r(A) \lt |S'|,\ |S| + 1 = |S'| [/math] имеем [math] r(A) = |S|. [/math]

Иначе говоря, не должно существовать множеств [math] S \subseteq A,\ S \in I,\ |S| = r(A):\ S' = S \cup x \in I. [/math]
[math]\triangleleft[/math]


Утверждение:
Для множества [math] A \subseteq X [/math] выполнено [math] span(A) \subseteq \langle A \rangle. [/math]
[math]\triangleright[/math]

Покажем, что следующее определение замыкания равносильно тому, которое было дано ранее:

[math]\langle A \rangle = A \cup \mathcal {f} x \in X \setminus A \; |\; \exists H \subseteq A, \; H \in I , \; |H| = r(A) :\ H \cup x \notin I \mathcal {g}[/math]

По сравнению со старым определением появилось два ограничения, нужно убедится в том, что они не существены. Сначала рассмотрим [math] |H| = r(A). [/math]

Пусть [math] \exists H \subseteq A :\ H \in I ,\; H \cup x \notin I, [/math] но [math] |H| \lt r(A). [/math] По определению ранга [math] \exists D \subseteq A ,\; D \in I :\ |D| = r(A). [/math] Поскольку [math] |H| \lt |D| [/math], можно применить 3-ю аксиому матроидов несколько раз и получить [math] H' \subseteq A :\ H \subseteq H' ,\; H' \in I ,\; |H'| = r(A). [/math]
[math] H' \cup x \notin I [/math] также будет выполнено, поскольку в противном случае [math] H \cup x \notin I [/math] будет неверно (в силу 2-ой аксиомы матроидов).

Второе ограничение — [math] x \in X \setminus A [/math] можно наложить по той причине, что элементы [math] x \in A [/math] и так входят в замыкание благодаря левой части объединения.

В соответствии с этим определением, замыкание множества [math] A [/math] — это, кроме всех элементов [math] A [/math], все такие [math] x, [/math] что какое-то из максимальных по мощности независимых подмножеств [math] A [/math] нельзя дополнить [math] x [/math]-ом, оставив это множество независимым. Определение покрытия отличается только квантором — вместо "какое-то" нужно поставить "любое".

Учитывая, что [math] S \subseteq A,\ S \in I,\ |S| = r(A) [/math] описывает непустое множество таких [math] S [/math] (по определению ранга), будет верным следствие:

[math] \forall S \subseteq A,\ S \in I,\ |S| = r(A) :\ S \cup x \notin I \ \Rightarrow [/math]
[math] \exists H \subseteq A, \; H \in I , \; |H| = r(A) :\ H \cup x \notin I [/math]
Следовательно [math] x \in span(A) \ \Rightarrow \ x \in \langle A \rangle. [/math]
[math]\triangleleft[/math]


Теорема:
Покрытие обладает следующими свойствами:
  1. [math] A, B \subseteq X;\ A \subseteq span(B) \ \Rightarrow \ span(A) \subseteq span(B) [/math]
  2. [math] A \subseteq X,\ p \in X \setminus A,\ q \in span(A \cup p) \setminus span(A) \Rightarrow p \in span(A \cup q) [/math]


Закрытые множества

Определение:
Множество [math]A \subseteq X[/math] называется закрытым (англ. closed set, flat), если [math] span(A) = A. [/math] Класс закрытых множеств обозначается [math] \mathcal L. [/math]


Теорема:
Закрытые множества обладают следующими свойствами:
  1. [math] A, B \in \mathcal L \ \; \Rightarrow \ A \cap B \in \mathcal L [/math]
  2. Если [math] F \in \mathcal L,\ p \in X \setminus F [/math] и [math] F' [/math] — наименьшее закрытое множество, содержащее [math] F \cup p, [/math] тогда не существует [math] F'' \in \mathcal L :\ F \subseteq F'' \subseteq F'. [/math]

Смотри также

Оператор замыкания для матроидов

Источники информации

  • Асанов М. О., Баранский В. А., Расин В. В. — Дискретная математика: Графы, матроиды, алгоритмы. ISBN 978-5-8114-1068-2
  • sensagent.com — Matroid
  • http://courses.engr.illinois.edu — Lecture 14, course CS 598CSC: Combinatorial optimization