Краевое сжатие
В теории графов сжатие ребра — это операция , которая удаляет ребро из графа и одновременно объединяет две вершины , которые оно ранее соединяло. Сжатие ребер — фундаментальная операция в теории миноров графов . Идентификация вершин является менее ограничительной формой этой операции.
Определение
[ редактировать ]Операция сжатия ребра происходит относительно конкретного ребра, . Край удаляется и две инцидентные ему вершины, и , объединяются в новую вершину , где ребра, падающие на каждый соответствует ребру, инцидентному либо или . В более общем смысле, операцию можно выполнить над набором ребер путем сжатия каждого ребра (в любом порядке). [1]
Полученный график иногда записывается как . (Сравните это с , что означает простое удаление края без объединения его инцидентных вершин.)
Как определено ниже, операция сжатия ребер может привести к созданию графа с несколькими ребрами , даже если исходный граф был простым графом . [2] Однако некоторые авторы [3] запретить создание нескольких ребер, чтобы сжатие ребер, выполняемое на простых графах, всегда приводило к созданию простых графов.
Формальное определение
[ редактировать ]Позволять быть графом ( или ориентированным графом ), содержащим ребро с . Позволять быть функцией, которая отображает каждую вершину в самому себе, а в противном случае отображает его в новую вершину . Сокращение приводит к новому графику , где , , и для каждого , инцидентен ребру тогда и только тогда, когда соответствующее ребро случается с в .
Идентификация вершин
[ редактировать ]Идентификация вершин (иногда называемая сокращением вершин ) снимает ограничение, заключающееся в том, что сокращение должно происходить над вершинами, имеющими общее инцидентное ребро. (Таким образом, сжатие ребер является частным случаем идентификации вершин.) Операция может выполняться с любой парой (или подмножеством) вершин графа. Ребра между двумя сжимающимися вершинами иногда удаляются. Если и являются вершинами различных компонент , то мы сможем создать новый график путем выявления и в как новая вершина в . [4] В более общем смысле, учитывая раздел множества вершин, можно идентифицировать вершины в этом разделе; результирующий граф известен как факторграф .
Расщепление вершин
[ редактировать ]Расщепление вершин , то же самое, что и разделение вершин, означает, что одна вершина разбивается на две, причем эти две новые вершины соседствуют с вершинами, с которыми была смежна исходная вершина. Это обратная операция идентификации вершин, хотя, как правило, для идентификации вершин соседние вершины двух идентифицированных вершин не являются одним и тем же набором.
Сокращение пути
[ редактировать ]Сжатие пути происходит на наборе ребер пути , которые сжимаются, образуя одно ребро между конечными точками пути. Ребра, инцидентные вершинам пути, либо исключаются, либо произвольно (или систематически) соединяются с одной из конечных точек.
скручивание
[ редактировать ]Рассмотрим два непересекающихся графа и , где содержит вершины и и содержит вершины и . Предположим, мы можем получить график путем определения вершин из и из как вершина из и определение вершин из и из как вершина из . В скручивании из относительно множества вершин , вместо этого мы определяем, с и с . [5]
Приложения
[ редактировать ]Методы сжатия ребер и вершин полезны для доказательства путем индукции по количеству вершин или ребер в графе, где можно предположить, что свойство справедливо для всех меньших графов, и это можно использовать для доказательства свойства для большего графа.
Сжатие ребер используется в рекурсивной формуле для количества остовных деревьев произвольного связного графа : [6] и в рекуррентной формуле для хроматического полинома простого графа. [7]
Сокращение также полезно в структурах, где мы хотим упростить граф, идентифицируя вершины, которые представляют собой по существу эквивалентные объекты. Одним из наиболее распространенных примеров является приведение общего ориентированного графа к ациклическому ориентированному графу путем сжатия всех вершин в каждой сильно связной компоненте . Если отношение, описываемое графом, является транзитивным , никакая информация не теряется, пока мы помечаем каждую вершину набором меток вершин, которые были сокращены для ее формирования.
Другим примером является объединение, выполняемое при распределении регистров глобальной раскраски графа , где вершины сжимаются (там, где это безопасно), чтобы исключить операции перемещения между различными переменными.
Сжатие ребер используется в пакетах 3D-моделирования (вручную или с помощью какой-либо функции программного обеспечения для моделирования) для последовательного уменьшения количества вершин, помогая создавать модели с низким содержанием полигонов.
См. также
[ редактировать ]Примечания
[ редактировать ]- ^ Гросс и Йеллен 1998 , с. 264
- ^ Кроме того, петли могут возникать, когда граф начинался с нескольких ребер или, даже если граф был простым, из-за многократного применения сжатия ребер.
- ^ Розен 2011 , с. 664
- ^ Оксли 2006 , стр. 147–8 §5.3 Теорема Уитни о 2-изоморфизме
- ^ Оксли 2006 , с. 148
- ^ Гросс и Йеллен 1998 , с. 264
- ^ Запад 2001 , с. 221
Ссылки
[ редактировать ]- Гросс, Джонатан; Йеллен, Джей (1998), Теория графов и ее приложения , CRC Press, ISBN 0-8493-3982-0
- Оксли, Джеймс (2006) [1992], Теория матроидов , Oxford University Press, ISBN 978-0-19-920250-8
- Розен, Кеннет (2011), Дискретная математика и ее приложения (7-е изд.), McGraw-Hill, ISBN 978-0-07-338309-5
- Уэст, Дуглас Б. (2001), Введение в теорию графов (2-е изд.), Прентис-Холл, ISBN 0-13-014400-2