Поддерево максимального соответствия (для трех или более деревьев): различия между версиями

Перейти к навигации Перейти к поиску
м
Строка 39: Строка 39:




Отношение истинного доминирования
''Отношение истинного доминирования''


Проиндексируем потомков каждой внутренней вершины любого дерева на произвольном пути. Пусть имеется пара <math>\overrightarrow{v}, \overrightarrow{w}</math> lca-кортежей, такая, что <math>\overrightarrow{w} \prec \overrightarrow{v} \;</math>. Соответствующее отношение доминирования ассоциирует ее с направлением <math>\overrightarrow{\delta}_{\overrightarrow{w} \prec \overrightarrow{v}} = (\delta_1, ..., \delta_k)</math>, по которому <math>\overrightarrow{w_i} \;</math> спускается от потомка <math>v_i \;</math>, индексированного с <math>\delta_i \;</math>. Пусть <math>v_i(j) \;</math> – потомок <math>v_i \;</math> с индексом <math>j \;</math>. Доминирование по направлению считается активным, если поддеревья с корнями в <math>v_1(\delta_1),..., v_к(\delta+k) \;</math> имеют по меньшей мере одну общую метку листа. Заметим, что каждая метка листа может обозначать только одно активное направление и, следовательно, каждый lca-кортеж может иметь не более и активных направлений доминирования. Два направления <math>\overrightarrow{\delta}_{\overrightarrow{w} \prec \overrightarrow{v}}</math> и <math>\overrightarrow{\delta}_{\overrightarrow{u} \prec \overrightarrow{v}}</math> называются совместимыми в том и только том случае, если векторы направлений различаются по всем координатам.
Проиндексируем потомков каждой внутренней вершины любого дерева на произвольном пути. Пусть имеется пара <math>\overrightarrow{v}, \overrightarrow{w}</math> lca-кортежей, такая, что <math>\overrightarrow{w} \prec \overrightarrow{v} \;</math>. Соответствующее отношение доминирования ассоциирует ее с направлением <math>\overrightarrow{\delta}_{\overrightarrow{w} \prec \overrightarrow{v}} = (\delta_1, ..., \delta_k)</math>, по которому <math>\overrightarrow{w_i} \;</math> спускается от потомка <math>v_i \;</math>, индексированного с <math>\delta_i \;</math>. Пусть <math>v_i(j) \;</math> – потомок <math>v_i \;</math> с индексом <math>j \;</math>. Доминирование по направлению считается активным, если поддеревья с корнями в <math>v_1(\delta_1),..., v_к(\delta+k) \;</math> имеют по меньшей мере одну общую метку листа. Заметим, что каждая метка листа может обозначать только одно активное направление и, следовательно, каждый lca-кортеж может иметь не более и активных направлений доминирования. Два направления <math>\overrightarrow{\delta}_{\overrightarrow{w} \prec \overrightarrow{v}}</math> и <math>\overrightarrow{\delta}_{\overrightarrow{u} \prec \overrightarrow{v}}</math> называются совместимыми в том и только том случае, если векторы направлений различаются по всем координатам.
Строка 50: Строка 50:




Примечание 2. Отношение строгого доминирования < на lca-кортежах имеет размер O(n3). Кроме того, оно может быть вычислено за время O(kn3).
'''Примечание 2'''. Отношение строгого доминирования <math>< \;</math> на lca-кортежах имеет размер <math>O(n^3) \;</math>. Кроме того, оно может быть вычислено за время <math>O(kn^3) \;</math>.




Примечание 3. Для любого lca-кортежа vE, в случае, если mast(vE) > 0, имеет место одна из двух ситуаций: (1) v представляет собой lca-кортеж, состоящий из листьев с одной и той же меткой; (2) v истинно доминирует некоторый lca-кортеж.
'''Примечание 3.''' Для любого lca-кортежа <math>\overrightarrow{v} \;</math>, в случае, если <math>mast(\overrightarrow{v}) > 0 \;</math>, имеет место одна из двух ситуаций: (1) <math>\overrightarrow{v} \;</math> представляет собой lca-кортеж, состоящий из листьев с одной и той же меткой; (2) <math>\overrightarrow{v} \;</math> истинно доминирует некоторый lca-кортеж.




Остается показать, как можно вычислить значения mast(vE). Для каждого lca-кортежа vE строится так называемый граф совместимости G(vE). Вершинами G(vE) являются активные направления из v; между двумя вершинами имеется ребро в том и только том случае, если соответствующие направления совместимы. Вершины G(vE) имеют веса; вес вершины, соответствующей активному направлению 8, равен максимальному значению mast lca-кортежа, доминируемого v по этому направлению. Пусть MWC(G(vE)) – клика с максимальным весом в G(vE).
Остается показать, как можно вычислить значения <math>mast(\overrightarrow{v}) \;</math>. Для каждого lca-кортежа <math>\overrightarrow{v} \;</math> строится так называемый граф совместимости <math>G(\overrightarrow{v}) \;</math>. Вершинами <math>G(\overrightarrow{v}) \;</math> являются активные направления из <math>\overrightarrow{v} \;</math>; между двумя вершинами имеется ребро в том и только том случае, если соответствующие направления совместимы. Вершины <math>G(\overrightarrow{v}) \;</math> имеют веса; вес вершины, соответствующей активному направлению <math>\overrightarrow{ \delta } \;</math>, равен максимальному значению mast lca-кортежа, доминируемого v по этому направлению. Пусть <math>MWC(G(\overrightarrow{v})) \;</math> – клика с максимальным весом в <math>G(\overrightarrow{v}) \;</math>.




4501

правка

Навигация