Барицентр дерева — различия между версиями
Anverk (обсуждение | вклад) |
м (rollbackEdits.php mass rollback) |
||
(не показано 20 промежуточных версий 2 участников) | |||
Строка 1: | Строка 1: | ||
{{Определение | {{Определение | ||
|id = tree_barycenter | |id = tree_barycenter | ||
− | |definition = '''Барицентром дерева''' (англ. '' | + | |definition = '''Барицентром дерева''' (англ. ''tree barycenter'') называется вершина <tex> x </tex>, у которой величина <tex>d(x) = \sum\limits_v dist(x, v) </tex> минимальна, где <tex> dist(x, v) -</tex> расстояние между вершинами <tex> x </tex> и <tex> v </tex>. |
}} | }} | ||
Строка 9: | Строка 9: | ||
|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> | + | |proof = Подвесим дерево за вершину <tex> x </tex>. Тогда дерево можно представить в виде объединения трёх непересекающихся множеств: <tex> Y, Z \ - </tex> поддеревья с корнями в вершинах <tex> y, z </tex> соответственно и <tex> X = V_G \setminus (Y \cup Z) </tex>. Заметим, что все эти множества не пустые, так как содержат вершины <tex> y, z, x </tex> соответственно. Найдём <tex> d(x) </tex>. |
− | <tex> | + | Простой путь до вершины <tex> t \in Y </tex> из <tex> x </tex> всегда единственный и представим следующим образом: <tex> x \rightarrow y \rightsquigarrow t</tex>. Значит, все вершины из множества <tex> Y </tex> находятся от <tex> x </tex> на одно ребро дальше, чем от <tex> y </tex>. Аналогично все вершины из множеств <tex> Z, X </tex> ближе на одно ребро к <tex> x </tex>, чем к <tex> y </tex>. Тогда <tex> d(x) = d(y) + |Y| - |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>. |
}} | }} | ||
{{Лемма | {{Лемма | ||
|id = lem2 | |id = lem2 | ||
− | |statement = Функция <tex> d(x) </tex> строго выпукла | + | |statement = Функция <tex> d(x) </tex> строго выпукла на любом пути в дереве. |
− | |proof = | + | |proof = Признак непрерывной строго выпуклой функции <ref>https://ru.wikipedia.org/wiki/Выпуклая_функция</ref>: <tex> \forall x, y \in \mathbb{R} (x \neq y) </tex> выполнено <tex> 2f(\displaystyle \frac{x+y}{2}) < f(x) + f (y) </tex>. Будем называть функцию строго выпуклой на множестве натуральных чисел, если предыдущее неравенство выполнено для всех <tex> x, y \in \mathbb{N} </tex>. Введём функцию <tex> g_p(x): \mathbb{N} \rightarrow V_G </tex>, которая по номеру вершины в пути <tex> p </tex> находит саму вершину. В дальнейшем <tex> d(a) </tex> будем считать как <tex> d(g_p(a)) </tex> для некоторого рассматриваемого пути <tex> p </tex>. Доопределим функцию <tex> d(x) </tex> так, чтобы в точке <tex> a + \displaystyle \frac{1}{2} </tex>, где <tex> a \in \mathbb{N} </tex> она принимала значение, строго меньшее <tex> \displaystyle \frac{d(a)+d(a+1)}{2} </tex>. Это нужно сделать, потому что не всегда <tex> \displaystyle \frac{a+b}{2} \in \mathbb{N}</tex>. Докажем, что такая функция строго выпукла на множестве натуральных чисел. |
+ | Есть два случая: когда расстояние между <tex> x, y </tex> четное и нечетное. Докажем первый случай, второй доказывается аналогично. Пусть в пути от <tex> x </tex> до <tex> y </tex>, кроме них есть только вершина <tex> z </tex>. Тогда по предыдущей лемме неравенство очевидно. Пусть есть другие вершины, кроме <tex> x, y, z </tex>, тогда их не меньше двух, так как <tex> dist(x, y) </tex> четно. Рассмотрим тогда в этом пути вершины, которые находятся от <tex> z </tex> на расстоянии не больше <tex> 2 </tex> (пусть они идут в порядке: <tex> a b z c d </tex>), и докажем, что неравенство всё ещё сохраняется. <tex> 4d(z) < 2d(b) + 2d(c) < d(a) + d(z) + d(z) + d (b) \Rightarrow 2d(z) < d(a) + d (b)</tex>. Так будем увеличивать расстояние от <tex> z </tex> и придём к вершинам <tex> x, y </tex>, сохраняя инвариант. | ||
}} | }} | ||
Строка 26: | Строка 27: | ||
}} | }} | ||
+ | == Центр дерева == | ||
{{Определение | {{Определение | ||
Строка 35: | Строка 37: | ||
|id = theor2 | |id = theor2 | ||
|statement= Для любого числа <tex> k </tex> существует дерево, в котором расстояние между центром и барицентром дерева не меньше <tex> k </tex> | |statement= Для любого числа <tex> k </tex> существует дерево, в котором расстояние между центром и барицентром дерева не меньше <tex> k </tex> | ||
− | |proof= Рассмотрим дерево, построенное следующим образом: к вершине дерева <tex> x </tex> | + | |proof= Рассмотрим дерево, построенное следующим образом: к вершине дерева <tex> x </tex> подвесим <tex> n </tex> свободных вершин (в дереве они станут листьями) и бамбук, расстояние в котором от листа до <tex> x </tex> назовём числом <tex> l </tex>. Докажем, что существуют такие <tex> n, l </tex>, что расстояние между центром и барицентром не меньше <tex> k </tex>. |
− | Назовём лист бамбука вершиной <tex> a </tex>, а центр дерева <tex>- \ c </tex>. Тогда <tex> dist(a, c) = \frac{l+1}{2} </tex>. | + | Для удобства будем считать, что центр один, для этого будем рассматривать только нечётные <tex> l. </tex> Назовём лист бамбука вершиной <tex> a </tex>, а центр дерева <tex>- \ c </tex>. Тогда <tex> dist(a, c) = \displaystyle \frac{l+1}{2} </tex>. Теперь будем искать, какое <tex> n </tex> стоит выбрать, чтобы барицентром оказалась вершина <tex> x </tex>. Найдём <tex> d(x) </tex>: <tex> d(x) = n + 1 + \dots + l = n + \displaystyle \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) \Leftarrow n > \displaystyle \frac{(l+1)l}{2} + 2 </tex>. Мы получили, что <tex> dist(c, x) = \displaystyle \frac{l-1}{2} </tex>, и <tex> x </tex> является барицентром. Найдём такие <tex> l ,</tex> что <tex> \displaystyle \frac{l-1}{2} \geqslant k</tex>. Для этого можно взять любое <tex> l \geqslant 2k + 1 </tex>. Таким образом, искомые <tex> n, l </tex> существуют. |
}} | }} | ||
+ | |||
+ | '''Замечание''': доказательство существования такого <tex> n </tex>, чтобы вершина <tex> x </tex> была барицентром можно было проводить и менее строго, ведь очевидно, что при больших <tex> n </tex> у барицентра должно быть минимальное расстояние до <tex> n </tex> листьев. И такой вершиной и является <tex> x </tex>. | ||
+ | |||
+ | == Примечания == | ||
+ | <references/> | ||
== См. также == | == См. также == | ||
Строка 46: | Строка 53: | ||
== Источники информации == | == Источники информации == | ||
− | * | + | * ''Melnikov O.''. «Exercises in Graph Theory» — «Springer», 2013 г. — 47-48 стр. — ISBN 978-94-017-1514-0 |
[[Категория: Дискретная математика и алгоритмы]] | [[Категория: Дискретная математика и алгоритмы]] | ||
[[Категория: Основные определения теории графов]] | [[Категория: Основные определения теории графов]] |
Текущая версия на 19:17, 4 сентября 2022
Определение: |
Барицентром дерева (англ. tree barycenter) называется вершина | , у которой величина минимальна, где расстояние между вершинами и .
Основные свойства
Лемма: |
Пусть существуют вершины соседи вершины . Тогда . |
Доказательство: |
Подвесим дерево за вершину Простой путь до вершины . Тогда дерево можно представить в виде объединения трёх непересекающихся множеств: поддеревья с корнями в вершинах соответственно и . Заметим, что все эти множества не пустые, так как содержат вершины соответственно. Найдём . из всегда единственный и представим следующим образом: . Значит, все вершины из множества находятся от на одно ребро дальше, чем от . Аналогично все вершины из множеств ближе на одно ребро к , чем к . Тогда . Аналогично . Сложим эти уравнения и получим: . При этом . Таким образом, . |
Лемма: |
Функция строго выпукла на любом пути в дереве. |
Доказательство: |
Признак непрерывной строго выпуклой функции [1]: выполнено . Будем называть функцию строго выпуклой на множестве натуральных чисел, если предыдущее неравенство выполнено для всех . Введём функцию , которая по номеру вершины в пути находит саму вершину. В дальнейшем будем считать как для некоторого рассматриваемого пути . Доопределим функцию так, чтобы в точке , где она принимала значение, строго меньшее . Это нужно сделать, потому что не всегда . Докажем, что такая функция строго выпукла на множестве натуральных чисел. Есть два случая: когда расстояние между четное и нечетное. Докажем первый случай, второй доказывается аналогично. Пусть в пути от до , кроме них есть только вершина . Тогда по предыдущей лемме неравенство очевидно. Пусть есть другие вершины, кроме , тогда их не меньше двух, так как четно. Рассмотрим тогда в этом пути вершины, которые находятся от на расстоянии не больше (пусть они идут в порядке: ), и докажем, что неравенство всё ещё сохраняется. . Так будем увеличивать расстояние от и придём к вершинам , сохраняя инвариант. |
Теорема (о числе барицентров): |
В дереве не более барицентов |
Доказательство: |
Пусть в дереве есть хотя бы | барицентра: . Тогда рассмотрим путь, начинающийся в и заканчивающийся в . Так как , и функция строго выпукла, вершины являются соседями. В противном случае, или в этом пути есть вершина , или для всех вершин в пути . Первое предположение противоречит тому, что барицентры, а второе тому, что функция строго выпукла. Таким образом, вершины являются соседями. Аналогично доказывается, что вершины и соседи. Но в таком случае в дереве образовался цикл, что противоречит определению дерева. Таким образом, более барицентров в дереве быть не может.
Центр дерева
Определение: |
Центром дерева (англ. Tree center) называется вершина | , для которой величина минимальна.
Теорема: |
Для любого числа существует дерево, в котором расстояние между центром и барицентром дерева не меньше |
Доказательство: |
Рассмотрим дерево, построенное следующим образом: к вершине дерева Для удобства будем считать, что центр один, для этого будем рассматривать только нечётные подвесим свободных вершин (в дереве они станут листьями) и бамбук, расстояние в котором от листа до назовём числом . Докажем, что существуют такие , что расстояние между центром и барицентром не меньше . Назовём лист бамбука вершиной , а центр дерева . Тогда . Теперь будем искать, какое стоит выбрать, чтобы барицентром оказалась вершина . Найдём : . Рассмотрим вершину . , так как все вершины, кроме удалены хотя бы на расстояние от вершины. В таком случае, . Мы получили, что , и является барицентром. Найдём такие что . Для этого можно взять любое . Таким образом, искомые существуют. |
Замечание: доказательство существования такого
, чтобы вершина была барицентром можно было проводить и менее строго, ведь очевидно, что при больших у барицентра должно быть минимальное расстояние до листьев. И такой вершиной и является .Примечания
См. также
Источники информации
- Melnikov O.. «Exercises in Graph Theory» — «Springer», 2013 г. — 47-48 стр. — ISBN 978-94-017-1514-0