Барицентр дерева — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
Строка 8: Строка 8:
 
{{Лемма
 
{{Лемма
 
|id = lem1
 
|id = lem1
|statement = Пусть вершины <tex> y, z -</tex> соседи вершины <tex> x </tex>. Тогда <tex> 2d(x) < d(y) + d(z) </tex>.
+
|statement = Пусть существуют вершины <tex> y, z -</tex> соседи вершины <tex> x </tex>. Тогда <tex> 2d(x) < d(y) + d(z) </tex>.
 
|proof = Подвесим дерево за вершину <tex> x </tex>. Тогда дерево можно представить в виде объединения трёх непересекающихся множеств: <tex> Y, Z </tex> (поддеревья с корнем в вершинах <tex> y, z </tex> соответственно) и <tex> X - </tex> остальных вершин (заметим, что все эти множества не пустые, так как содержат вершины <tex> y, z, x </tex> соответственно). Найдём <tex> d(x) </tex>:
 
|proof = Подвесим дерево за вершину <tex> x </tex>. Тогда дерево можно представить в виде объединения трёх непересекающихся множеств: <tex> Y, Z </tex> (поддеревья с корнем в вершинах <tex> y, z </tex> соответственно) и <tex> X - </tex> остальных вершин (заметим, что все эти множества не пустые, так как содержат вершины <tex> y, z, x </tex> соответственно). Найдём <tex> d(x) </tex>:
 
<tex> d(x) = d(y) + |Y| - |Z| - |X| </tex>. Это верно, так как все вершины из множества <tex> Y </tex> находятся от <tex> x </tex> на одно ребро дальше, чем от <tex> y </tex>, а вершины из множеств <tex> Z, X </tex> наоборот. Аналогично <tex> d(x) = d(z) + |Z| - |Y| - |X| </tex>. Сложим эти уравнения и получим: <tex> 2d(x) = d(y) + d(z) - 2|X| </tex>. При этом <tex> |X| > 0 </tex>. Таким образом, <tex> 2d(x) < d(y) + d(z) </tex>.
 
<tex> d(x) = d(y) + |Y| - |Z| - |X| </tex>. Это верно, так как все вершины из множества <tex> Y </tex> находятся от <tex> x </tex> на одно ребро дальше, чем от <tex> y </tex>, а вершины из множеств <tex> Z, X </tex> наоборот. Аналогично <tex> d(x) = d(z) + |Z| - |Y| - |X| </tex>. Сложим эти уравнения и получим: <tex> 2d(x) = d(y) + d(z) - 2|X| </tex>. При этом <tex> |X| > 0 </tex>. Таким образом, <tex> 2d(x) < d(y) + d(z) </tex>.
Строка 15: Строка 15:
 
{{Лемма
 
{{Лемма
 
|id = lem2
 
|id = lem2
|about = о выпуклости <tex> d(x) </tex>
+
|statement = Функция <tex> d(x) </tex> строго выпукла (вниз) на любом пути дерева.
|statement = Функция <tex> d(x) </tex> из определения выпукла на любом пути дерева
+
|proof = Очевидно из характеристического признака строго выпуклой функции: <tex> 2f(\frac{x+y}{2}) < f(x) + f (y) </tex>.
 
}}
 
}}
  
Строка 23: Строка 23:
 
|about = о числе барицентров
 
|about = о числе барицентров
 
|statement= В дереве не более <tex> 2 </tex> барицентов
 
|statement= В дереве не более <tex> 2 </tex> барицентов
|proof=  
+
|proof= Пусть в дереве есть хотя бы <tex> 3 </tex> барицентра: <tex> a, b, c </tex>. Тогда рассмотрим путь, начинающийся в <tex> a </tex> и заканчивающийся в <tex> b </tex>. Так как <tex> d(a) = d(b) = d_{min} </tex>, и функция <tex> d(x) </tex> строго выпукла, вершины <tex> a, b </tex> являются соседями. В противном случае, или в этом пути есть вершина <tex> v: d(v) < d_{min} </tex>, или для всех вершин <tex> u </tex> в пути <tex> d(u) = d_{min} </tex>. Первое предположение противоречит тому, что <tex> a, b \  - </tex> барицентры, а второе <tex> - </tex> тому, что функция <tex> d(x) </tex> строго выпукла. Таким образом, вершины <tex> a, b </tex> являются соседями. Аналогично доказывается, что вершины <tex> b, c </tex> и <tex> a, c \ -</tex> соседи. Но в таком случае в дереве образовался цикл, что противоречит определению дерева. Таким образом, более <tex> 2 </tex> барицентров в дереве быть не может.
 
}}
 
}}
 +
  
 
{{Определение
 
{{Определение
Строка 33: Строка 34:
 
{{Теорема
 
{{Теорема
 
|id = theor2
 
|id = theor2
|statement= Для любого числа <tex> k </tex> существует дерево, в котором расстояние между центром и барицентром вершины не меньше <tex> k </tex>
+
|statement= Для любого числа <tex> k </tex> существует дерево, в котором расстояние между центром и барицентром дерева не меньше <tex> k </tex>
|proof=  
+
|proof= Рассмотрим дерево, построенное следующим образом: к вершине дерева <tex> x </tex> проводим <tex> n + 1 </tex> ребро, <tex> n </tex> из которых проведено в листья дерева, а одно ребро продолжим достраивать как бамбук, расстояние в котором от листа до <tex> x </tex> назовём числом <tex> l </tex>. Докажем, что существуют такие <tex> m, l </tex>, что расстояние между центром и барицентром не меньше <tex> k </tex>.
 +
Назовём лист бамбука вершиной <tex> a </tex>, а центр дерева <tex>- \  c </tex>. Тогда <tex> dist(a, c) = \frac{l+1}{2} </tex>. Для удобства будем считать, что центр один, для этого будем рассматривать только нечётные <tex> l. </tex> Теперь будем искать, какое <tex> n </tex> стоит выбрать, чтобы барицентром оказалась вершина <tex> x </tex>. Найдём <tex> d(x): d(x) = n + 1 + 2 + ... + l = n + \frac{(l+1)l}{2} </tex>. Рассмотрим вершину <tex> v \neq x </tex>. Очевидно, что <tex> d(v) > 2(n-1) </tex>, так как все вершины, кроме <tex> x </tex> удалены хотя бы на расстояние <tex> 2 </tex> от <tex> n-1 </tex> вершины. В таком случае, <tex> d(x) < d(v) \Leftrightarrow n > \frac{(l+1)l}{2} + 2 </tex>. Мы получили, что <tex> dist(c, x) = \frac{l-1}{2} </tex>, и <tex> x </tex> является барицентром. Найдём такие <tex> l ,</tex> что <tex> \frac{l-1}{2} \geq k</tex>. Для этого можно взять любое <tex> l \geq 2k + 1 </tex>. Таким образом, искомые <tex> m, l </tex> существуют, и теорема доказана.
 
}}
 
}}

Версия 01:15, 20 декабря 2017

Определение:
Барицентром дерева (англ. Tree barycenter) называется вершина [math] x [/math], у которой величина [math]d(x) = \sum\limits_v dist(x, v) [/math] минимальна, где [math] dist(x, v) -[/math] расстояние между вершинами [math] x [/math] и [math] v [/math] в рёбрах.


Основные свойства

Лемма:
Пусть существуют вершины [math] y, z -[/math] соседи вершины [math] x [/math]. Тогда [math] 2d(x) \lt d(y) + d(z) [/math].
Доказательство:
[math]\triangleright[/math]

Подвесим дерево за вершину [math] x [/math]. Тогда дерево можно представить в виде объединения трёх непересекающихся множеств: [math] Y, Z [/math] (поддеревья с корнем в вершинах [math] y, z [/math] соответственно) и [math] X - [/math] остальных вершин (заметим, что все эти множества не пустые, так как содержат вершины [math] y, z, x [/math] соответственно). Найдём [math] d(x) [/math]:

[math] d(x) = d(y) + |Y| - |Z| - |X| [/math]. Это верно, так как все вершины из множества [math] Y [/math] находятся от [math] x [/math] на одно ребро дальше, чем от [math] y [/math], а вершины из множеств [math] Z, X [/math] наоборот. Аналогично [math] d(x) = d(z) + |Z| - |Y| - |X| [/math]. Сложим эти уравнения и получим: [math] 2d(x) = d(y) + d(z) - 2|X| [/math]. При этом [math] |X| \gt 0 [/math]. Таким образом, [math] 2d(x) \lt d(y) + d(z) [/math].
[math]\triangleleft[/math]
Лемма:
Функция [math] d(x) [/math] строго выпукла (вниз) на любом пути дерева.
Доказательство:
[math]\triangleright[/math]
Очевидно из характеристического признака строго выпуклой функции: [math] 2f(\frac{x+y}{2}) \lt f(x) + f (y) [/math].
[math]\triangleleft[/math]
Теорема (о числе барицентров):
В дереве не более [math] 2 [/math] барицентов
Доказательство:
[math]\triangleright[/math]
Пусть в дереве есть хотя бы [math] 3 [/math] барицентра: [math] a, b, c [/math]. Тогда рассмотрим путь, начинающийся в [math] a [/math] и заканчивающийся в [math] b [/math]. Так как [math] d(a) = d(b) = d_{min} [/math], и функция [math] d(x) [/math] строго выпукла, вершины [math] a, b [/math] являются соседями. В противном случае, или в этом пути есть вершина [math] v: d(v) \lt d_{min} [/math], или для всех вершин [math] u [/math] в пути [math] d(u) = d_{min} [/math]. Первое предположение противоречит тому, что [math] a, b \ - [/math] барицентры, а второе [math] - [/math] тому, что функция [math] d(x) [/math] строго выпукла. Таким образом, вершины [math] a, b [/math] являются соседями. Аналогично доказывается, что вершины [math] b, c [/math] и [math] a, c \ -[/math] соседи. Но в таком случае в дереве образовался цикл, что противоречит определению дерева. Таким образом, более [math] 2 [/math] барицентров в дереве быть не может.
[math]\triangleleft[/math]


Определение:
Центром дерева (англ. Tree center) называется вершина [math] x [/math], для которой величина [math] \max\limits_v dist(x, v) [/math] минимальна.


Теорема:
Для любого числа [math] k [/math] существует дерево, в котором расстояние между центром и барицентром дерева не меньше [math] k [/math]
Доказательство:
[math]\triangleright[/math]

Рассмотрим дерево, построенное следующим образом: к вершине дерева [math] x [/math] проводим [math] n + 1 [/math] ребро, [math] n [/math] из которых проведено в листья дерева, а одно ребро продолжим достраивать как бамбук, расстояние в котором от листа до [math] x [/math] назовём числом [math] l [/math]. Докажем, что существуют такие [math] m, l [/math], что расстояние между центром и барицентром не меньше [math] k [/math].

Назовём лист бамбука вершиной [math] a [/math], а центр дерева [math]- \ c [/math]. Тогда [math] dist(a, c) = \frac{l+1}{2} [/math]. Для удобства будем считать, что центр один, для этого будем рассматривать только нечётные [math] l. [/math] Теперь будем искать, какое [math] n [/math] стоит выбрать, чтобы барицентром оказалась вершина [math] x [/math]. Найдём [math] d(x): d(x) = n + 1 + 2 + ... + l = n + \frac{(l+1)l}{2} [/math]. Рассмотрим вершину [math] v \neq x [/math]. Очевидно, что [math] d(v) \gt 2(n-1) [/math], так как все вершины, кроме [math] x [/math] удалены хотя бы на расстояние [math] 2 [/math] от [math] n-1 [/math] вершины. В таком случае, [math] d(x) \lt d(v) \Leftrightarrow n \gt \frac{(l+1)l}{2} + 2 [/math]. Мы получили, что [math] dist(c, x) = \frac{l-1}{2} [/math], и [math] x [/math] является барицентром. Найдём такие [math] l ,[/math] что [math] \frac{l-1}{2} \geq k[/math]. Для этого можно взять любое [math] l \geq 2k + 1 [/math]. Таким образом, искомые [math] m, l [/math] существуют, и теорема доказана.
[math]\triangleleft[/math]