Алгоритм Магу для определения множества внутренней устойчивости графа
Пусть дан граф . Для данного графа существует множество внутренней устойчивости .
Введем булевую переменную , которая определяется следующим образом:
, если вершина принадлежит множеству внутренней устойчивости ;
, если вершина не принадлежит множеству внутренней устойчивости ;
Введем булевую переменную :
, если между i-той и j-той вершиной есть дуга;
, если между i-той и j-той вершиной нет дуги.
Тогда определение внутренней устойчивости (3.4) может быть представлено в следующем виде:
(3.5)
Или используя булевую алгебру:
(3.6)
Применяя формулы равносильности, преобразуем:
(3.7)
Рассмотрим выражение:
(3.8)
Если , то данное равенство является тавтологией.
Если , то равенство имеет вид:
(3.9)
Данное уравнение лежит в основе алгоритма Магу
Алгоритм Магусостоит из следующих этапов:
1. Для графа составляется матрица смежности.
2. По таблице смежности выписываются все парные дизъюнкции.
3. Выражение приводится к ДНФ.
4. Для любой элементарной конъюнкции выписываются недостающие элементы, которые и образуют множество внутренней устойчивости.
ПРИМЕР
Дан граф
Рис. 3.7 Граф
Матрица смежности имеет вид:
Для всех единиц выписываются парные дизъюнкции:
(3.10)
Приведем выражение к ДНФ:
(3.11)
Множества внутренней устойчивости:
Числом внутренней устойчивости = 2.