Алгоритм GYO
Эта статья в значительной степени или полностью опирается на один источник . ( декабрь 2023 г. ) |
Алгоритм GYO [1] — это алгоритм, применимый к гиперграфам . Алгоритм принимает на вход гиперграф и определяет, является ли гиперграф α-ациклическим . Если да, то он вычисляет разложение гиперграфа.
Алгоритм был предложен в 1979 году Грэмом и независимо Ю и Озсойоглу , отсюда и его название.
Определение
[ редактировать ]Гиперграф — это обобщение графа . Формально гиперграф состоит из набора вершин V и множества E гиперребер , каждое из которых является подмножеством вершин V . Учитывая гиперграф, мы можем определить его простой граф как неориентированный граф, определенный на одном и том же наборе вершин, в котором мы помещаем ребро между любыми двумя вершинами, которые встречаются вместе в некотором гиперребре.
Гиперграф H называется α-ациклическим, если он удовлетворяет двум условиям: хордальность и конформность. Точнее, мы говорим, что H хордальный, если его простой граф является хордальным графом . Мы говорим, что H конформен, если для каждой клики простого графа существует гиперребро H, содержащее все вершины клики.
Алгоритм GYO принимает на вход гиперграф и определяет, является ли он α-ациклическим в этом смысле.
Принцип алгоритма
[ редактировать ]Алгоритм итеративно удаляет так называемые уши гиперграфа, пока гиперграф не будет полностью разложен.
Формально мы говорим, что гиперребро e гиперграфа является ухом, если выполняется одно из следующих двух условий:
- изолирован , т. е . для любого другого гиперребра , у нас есть ;
- почти перекрыто другим гиперребром, т. е. существует еще одно гиперребро такое, что все вершины в происходят только в .
В частности, каждое ребро, являющееся подмножеством другого ребра, является ухом.
Алгоритм GYO тогда действует следующим образом:
- ухо e в H. Найдите
- Удалите e и удалите все вершины H, которые находятся только в e .
Если алгоритм успешно исключает все вершины, то гиперграф является α-ацильным. В противном случае, если алгоритм доберется до непустого гиперграфа, не имеющего ушей, то исходный гиперграф не был α-ациклическим:
Предположим, сначала алгоритм GYO заканчивается на пустом гиперграфе, пусть будет последовательностью ушей, которые он нашел, и пусть последовательность полученных гиперграфов (в частности и пустой гиперграф). Ясно, что , пустой гиперграф, -ациклический. Тогда можно это проверить, если является -ациклический тогда также -ациклический. Это означает, что действительно -ациклический.
В другом направлении, если предположить, что является -ациклический, можно показать, что имеет ухо . [2] Поскольку удаление этого ушка дает гиперграф, который по-прежнему является ациклическим, мы можем продолжать этот процесс до тех пор, пока гиперграф не станет пустым.
Ссылки
[ редактировать ]- Абитбул, Серж; Халл, Ричард; Виану, Виктор (2 декабря 1994 г.). Основы баз данных: логический уровень (PDF) . Ридинг, Массачусетс: Пирсон. ISBN 978-0-201-53771-0 . См. алгоритм 6.4.4.
Примечания
[ редактировать ]- ^ Ю, Коннектикут; Озсойоглу, МЗ (1979). «Алгоритм членства в дереве распределенного запроса» . КОМПСАК 79. Слушания. Компьютерное программное обеспечение и Третья международная конференция по приложениям IEEE Computer Society, 1979 г. стр. 306–312. дои : 10.1109/CMPSAC.1979.762509 .
- ^ Бро-Барон, Иоганн (27 марта 2014 г.). «Возвращение к ацикличности гиперграфа». arXiv : 1403.7076 [ math.CO ]. См. теорему 6 о существовании уха.