- •Раздел 1. Алгебраические структуры Тема 1.1. Бинарные операции и их свойства
- •Тема 1.2. Алгебраические структуры
- •Тема 1.3. Основные свойства групп
- •Тема 1.4. Поля и кольца
- •Раздел 2. Алгебра множеств Тема 2.1. Основные определения теории множеств
- •Тема 2.2. Подмножество, понятие универсального множества
- •Тема 2.3. Операции над множествами
- •Раздел 3. Основные теоремы комбинаторики
- •Тема 3.1. Метод математической индукции
- •Тема 3.2. Основные принципы комбинаторики
- •Раздел 4. Комбинаторные объекты Тема 4.1. Сочетания
- •Тема 4.2. Размещения и перестановки
- •Раздел 5. Полиномиальные тождества Тема 5.1. Бином Ньютона
- •Тема 5.2. Понятие о методе рекуррентных соотношений
- •Тема 5.3. Метод производящих функций
- •Тема 5.4. Метод траекторий
- •Тема 5.5. Примеры комбинаторных задач
- •Раздел 6. Соответствие, отношение, отображение Тема 6.1. Понятие кортежа. Декартово произведение множеств
- •Тема 6.2. Определения и свойства
- •Тема 6.3. Типы отношений
- •Пересечение и объединение отношений
- •Композиция отображений и отношений
- •Тема 6.5. Решётки
- •Тема 6.4. Верхняя и нижняя границы множества.
- •Раздел 7. Операции булевой алгебры Тема 7.1.Понятие высказывания, простые и составные высказывания
- •Тема 7.2.Операции на множестве высказываний
- •Отрицание
- •Конъюнкция
- •Дизъюнкция
- •«Исключающее или»
- •Импликация
- •Эквивалентность
- •Штрих Шеффера
- •Раздел 8. Законы и тождества Булевой алгебры Тема 8.1.Формулы Булевой алгебры
- •Тема 8.2.Законы и тождества Булевой алгебры
- •Тема 8.3.Составление формулы по заданной таблице истинности
- •Тема 8.4. Двойственность
- •Тема 8.5.Булева алгебра и теория множеств
- •Тема 8.6.Днф, интервалы и покрытия
- •Раздел 9. Функциональная полнота. Алгебра Жегалкина
- •Тема 9.1.Функционально полные системы
- •Тема 9.2.Алгебра Жегалкина и линейные функции
- •Тема 9.3.Замкнутые классы. Монотонные функции
- •Тема 9.4.Теоремы о функциональной полноте
- •Раздел 10. Хорновские формулы
- •Тема 10.1.Задача получения продукции
- •Тема 10.2.Решение задачи о продукции
- •Алгоритм замыкание(X,f)
- •Алгоритм ПрямаяВолна(X,y,f)
- •Алгоритм БыстроеЗамыкание(X,f)
- •Раздел 11. Теория релейно-контактных схем Тема 11.1.Основные понятия
- •Тема 11.2.Основные задачи теории релейно-контактных схем
- •Тема 11.3.Построение машины голосования
- •Тема 11.4.Двоичный сумматор
- •Тема 11.5.Методы упрощения логических выражений. Методы решения логических задач
- •Раздел 12. Логика предикатов Тема 12.1.Определение предиката
- •Тема 12.2.Логические операции над предикатами
- •Тема 12.3.Кванторы
- •Тема 12.4. Истинные формулы и эквивалентные соотношения
- •Тема 12.5.Доказательства в логике предикатов
- •Раздел 13. Теория графов
- •Тема 13.1.Основные определения теории графов
- •Тема 13.2. Способы задания графов
- •Тема 13.3. Отношения порядка и эквивалентности на графе
- •Тема 13.4. Числовые характеристики графа
- •Тема 13.5.Изоморфизм графов
- •Раздел 14. Проблемы достижимости на графах Тема 14.1.Граф достижимости
- •Тема 14.2.Взаимная достижимость, компоненты сильной связности и базы графа
- •Раздел 15. Некоторые классы графов Тема 15.1.Деревья
- •Тема 15.2. Обход графа
- •Тема 15.3. Расстояния. Диаметр, радиус и центр графа. Протяжённости.
- •Раздел 16. Машина Тьюринга
- •Тема 16.1. Формальное описание машины Тьюринга
- •Тема 16.2. Примеры построения машины Тьюринга
- •Тема 16.3. Свойства машины Тьюринга как алгоритма
- •Раздел 17. Машина Поста
- •Тема 17.1. Теоретическая часть. Состав машины Поста
- •Тема 17.2. Применимость программ. Определение результата выполнения программ
- •Раздел 18. Основные понятия теории автоматов Тема 18.1. Общие подходы к описанию устройств, предназначенных для обработки дискретной информации
- •Тема 18.2. Способы задания конечного автомата
- •Тема 18.3. Эквивалентные автоматы
- •Тема 18.4. Автоматы Мура и Мили
- •Тема 18.5. Примеры синтеза автоматов
Тема 14.2.Взаимная достижимость, компоненты сильной связности и базы графа
По аналогии с графом достижимости определим граф сильной достижимости.
Определение:Пусть– ориентированный граф.Граф сильной достижимостидляимеет тоже множество вершини следующее множество рёберв графевершиныивзаимно достижимы.
По матрице графа достижимости легко построить матрицуграфа сильной достижимости. Действительно из определений достижимости и сильной достижимости непосредственно следует, то для всех пар,, значение элементаравно 1 тогда и только тогда, когда оба элементаиравны 1, т.е.
По матрице можно выделить компоненты сильной связности графаследующим образом:
поместим в компоненту вершинуи все такие вершины, что;
пусть уже построены компоненты ,…,и– это вершина с минимальным номером, ещё не попавшая в компоненты; тогда поместим в компонентувершинуи все такие вершины, что;
Повторяем второй шаг до тех пор, пока все вершины не будут распределены по компонентам.
В нашем примере для графа примера 14.1. по матрицеполучаем следующую матрицу графа сильной достижимости
Используя описанную выше процедуру, находим, что вершины графа разбиваются на 4 компоненты сильной связности:,,,. На множестве компонент сильной связности также определим отношение достижимости.
Определение:Пустьи– компоненты сильной связности графа. Компонентадостижимаиз компоненты, еслиили существуют такие две вершиныи, чтодостижима из.строго достижима из, еслиидостижима из. Компонентаназывается минимальной, если она не является строго достижимой ни из какой компоненты.
Так как все вершины в одной компоненте взаимно достижимы, то нетрудно понять, что отношения достижимости и строгой достижимости на компонентах не зависят от выбора вершин и.
Из определения легко выводится следующая характеристика строгой достижимости.
Лемма:Отношение строгой достижимости является отношением частичного порядка, т.е. оно антирефлексивно, антисимметрично и транзитивно.
Это отношение можно представлять в виде ориентированного графа, вершинами которого являются компоненты, а ребро означает, чтострого достижима из. Ниже показан граф компонент для графа примера 14.1.
В данном случае имеется одна минимальная компонента .
Во многих приложениях ориентированный граф представляет собой сеть распространения некоторого ресурса: продукта, товара, информации и т.п. В таких случаях естественно возникает задача поиска минимального числа таких точек (вершин), из которых этот ресурс может быть доставлен в любую точку сети.
Определение:Пусть- ориентированный граф. Подмножество вершинназываетсяпорождающим, если из вершинможно достичь любую вершину графа. Подмножество вершинназывается базой графа, если оно является порождающим, но никакое его собственное подмножество порождающим не является.
Следующая теорема позволяет эффективно находить все базы графа.
Теорема:Пусть - ориентированный граф. Подмножество вершин является базой тогда и только тогда, когда содержит по одной вершине из каждой минимальной компоненты сильной связности и не содержит никаких других вершин.
Доказательство:заметим вначале, что каждая вершина графа достижима из вершины, принадлежащей некоторой минимальной компоненте. Поэтому множество вершин, содержащих по одной вершине из каждой минимальной компоненты, является порождающим, а при удалении из него любой вершины перестаёт быть таковым, так как вершины из соответствующей минимальной компоненты становятся недостижимы. Поэтомуявляется базой.
Обратно, если является базой, то оно обязано включать хотя бы по одной вершине из каждой минимальной компоненты, иначе вершины такой минимальной компоненты окажутся недоступны. Никаких других вершинсодержать не может, так как каждая из них достижима из уже включённых вершин.
Из этой теоремы вытекает следующая процедура построения одной или перечисления всех баз графа :
найти все компоненты сильной связности ;
определить порядок на них и выделить минимальные относительно этого порядка компоненты;
породить одну или все базы графа, выбирая по одной вершине из каждой минимальной компоненты.
Пример 14.3:Определим все базы ориентированного графа .
На первом этапе находим компоненты сильной связности :
На втором этапе строим граф строгой достижимости на этих компонентах.
Определяем минимальные компоненты: ,и.
Наконец перечисляем все четыре базы :,,и.