- •Введение.
- •Тема 1. Логические высказывания и предикаты.
- •1. Понятие высказывания. Логические операции над высказываниями.
- •Основные логические связки.
- •2. Формулы и их логические возможности.
- •3. Свойства логических операций (законы логики).
- •4. Понятие предиката. Операции над предикатами.
- •5. Кванторы.
- •Практическая работа по теме 1.
- •Задания для самостоятельной работы по теме 1.
- •Контрольные вопросы по теме 1.
- •Тема 2. Множества. Отношения. Отображения.
- •1.Основные понятия
- •2. Операции над множествами
- •3. Геометрическое моделирование множеств. Диаграммы Венна
- •4. Соотношение между множествами и составными высказываниями
- •5. Алгебра множеств. Основные тождества алгебры множеств
- •Основные тождества алгебры множеств
- •6. Эквивалентность множеств
- •Практическая работа по теме 2.
- •Задания для самостоятельной работы по теме 2.
- •Контрольные вопросы по теме 2.
- •Тема 3. Отношения. Функции.
- •1. Основные понятия и определения
- •2. Бинарные отношения и их свойства.
- •Свойства бинарных отношений.
- •3. Отношение эквивалентности.
- •4. Функции. Основные понятия и определения
- •Практическая работа по теме 3.
- •Задания для самостоятельной работы по теме 3.
- •Контрольные вопросы по теме 3
- •Тема 4. Булевы функции.
- •1. Определение булевой функции
- •2. Существенные и фиктивные переменные.
- •Критерий несущественности переменной.
- •3. Формулы логики булевых функций
- •4. Эквивалентность булевых формул.
- •5. Равносильные преобразования формул
- •Основные равносильности булевых формул.
- •6. Двойственность. Принцип двойственности.
- •7. Нормальные формы.
- •8. Полные системы булевых функций
- •9. Полином Жегалкина
- •10. Замкнутые классы функций.
- •11. Функциональная полнота.
- •Практическая работа по теме 4.
- •Задания для самостоятельной работы по теме 4.
- •Контрольные вопросы по теме 4.
- •Тема 5. Основные понятия теории графов.
- •1. Основные понятия теории графов.
- •Маршруты, циклы в неориентированном графе
- •Пути, контуры в ориентированном графе
- •2. Планарность и изоморфизм графов
- •3. Способы задания графов
- •Основные свойства матриц смежности и инцидентности
- •4. Связность графа
- •5. Алгоритм обхода вершин графа.
- •6. Нагруженные графы
- •Свойства минимальных путей в нагруженном ориентированном графе
- •7. Деревья
- •8. Основные типы практических задач.
- •1. «Задача коммивояжера» и «Задача о минимальной сети дорог»
- •2. Построение турнирной таблицы
- •3. «Задача о четырех красках»
- •Практическая работа по теме 5.
- •Задания для самостоятельной работы по теме 5.
- •Контрольные вопросы к теме 5.
- •Задания контрольной работы
- •Список источников литературы Основная литература
- •Дополнительная литература
Маршруты, циклы в неориентированном графе
Пусть G – неориентированный граф. Маршрутом в графе G называется такая последовательность (конечная или бесконечная) ребер a1, a2, ... an..., что каждые два соседних ребра ai и ai+1 имеют общую инцидентную вершину. Одно и то же ребро может встречаться в маршруте несколько раз. В конечном маршруте (a1, a2, ... an) имеется первое ребро a1 и последнее ребро an. Вершина x1, инцидентная ребру a1, но не инцидентная ребру a2, называется началом маршрута, а вершина xn, инцидентная ребру an, но не инцидентная ребру an-1, называется концом маршрута.
Длиной (или мощностью) маршрута называется число ребер, входящих в маршрут, причем каждое ребро считается столько раз, сколько оно входит в данный маршрут.
Замкнутый маршрут называется циклом.
Маршрут (цикл), в которой все ребра различны, называется простой цепью (циклом). Маршрут (цикл), в которой все вершины (кроме первой и последней) различны, называется элементарной цепью (циклом).
На рис. 13 изображены два маршрута из вершины x1 в вершину x4: M1 = (a1, a2, a4) и M2 = (a1, a2, a5, a6). Длина маршрута M1 равна 3, а длина маршрута M2 равна 4.
Рисунок
13
|
(a1,a3,a4) – простая элементарная цепь длины 3, так как все ребра и вершины попарно различны.
|
|
(a2,a4,a3) – простой элементарный цикл, так как это замкнутый маршрут, у которого все ребра и вершины, кроме первой и последней, различны. |
|
(a1,a2,a4,a3) – цепь, которая является простой, но не элементарной, так как все ребра различны, но вершина x2 встречается дважды.
|
|
(a1,a2,a2) – маршрут длины 3, не являющийся ни простой, ни элементарной цепью, т.к. ребро a2 и вершина x2 встречаются дважды. |
Пути, контуры в ориентированном графе
Понятия пути и контура в ориентированном графе аналогичны понятиям маршрута и цикла в неориентированном графе.
Путем в ориентированном графе называется последовательность дуг, в которой конечная вершина всякой дуги, отличной от последней, является начальной вершиной следующей дуги.
Число дуг пути называется длиной пути.
Путь называется контуром, если его начальная вершина совпадает с конечной вершиной.
Путь (контур), в котором все дуги различны, называется простым.
Путь (контур), в котором все вершины, кроме первой и последней, различны, называется элементарным.
Понятиям ребра, маршрута, цепи, цикла в неориентированном графе соответствуют понятия дуги, пути, ориентированной цепи, контура в ориентированном графе.
Неориентированный граф |
Ориентированный граф |
ребро маршрут цикл |
дуга путь контур |
Пример.
Рисунок 14.
В приведенном на рис. 14 графе выделим следующие пути:
(x1,x2,x3,x4) – простой элементарный путь, т.к. каждая вершина и каждая дуга используются не более одного раза;
(x2,x5,x6,x7,x2) – простой элементарный контур, т.к. это замкнутый путь, в котором все дуги и вершины, кроме первой и последней, различны.
Гамильтонова цепь (путь, цикл, контур) − простая цепь (путь, цикл, контур), проходящая через все вершины.
Эйлерова цепь (путь, цикл, контур) − цепь (путь, цикл, контур), содержащая все ребра (дуги) графа по одному разу.
Число ребер графа можно определять различными способами. Наиболее простой способ – прямой пересчет ребер. Другой способ использует понятие степеней вершин графа.
Пример.
Рассмотрим граф типа a (см. рис. 16) и
подсчитаем степени его вершин. Получим:
(А)=2, (B)=3,
(C)=3,
(D)=2,
(E)=3,
(F)=3..
Если просуммировать степени всех вершин
и разделить это число пополам, получим
количество ребер графа. Так, для графа
типа a имеем
.
В общем случае, пусть вершины графа
обозначены Ai (i =
1,n), тогда число ребер графа определяется
по формуле
(1)
Формула (1) для определения числа ребер графа применима как для графов с кратными ребрами, так и для графов с петлями. Следует только правильно подсчитывать степени вершин. Для этого нужно вокруг вершины провести маленькую окружность так, чтобы в нее не попала полностью петля. После чего подсчитать количество ребер, проходящих в этой окружности к вершине. Так, для вершины B графа с (см. рис. 16) получаем (B)=5, а для вершины D того же графа ( D)=6.
Число ребер этого графа
,
что соответствует значению, полученному
прямым пересчетом.
Приведенные рассуждения позволяют сформулировать теорему о степенях вершин в графе (теорема Эйлера о рукопожатиях): в любом конечном графе количество вершин нечетной степени четно или равно нулю.
Во всех примерах графов это действительно так. Если бы был найден граф, у которого количество вершин нечетной степени было бы нечетным, то из формулы (1) следовало бы, что число ребер этого графа было бы нецелым.
Возможная интерпретация этой теоремы: на любом мероприятии (банкете, приеме и т.д.) число лиц, совершивших нечетное число рукопожатий, четно или таких лиц нет вовсе.
