- •ПЕРЕЧЕНЬ МАТЕРИАЛОВ
- •ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
- •ОГЛАВЛЕНИЕ
- •1 ЭЛЕМЕНТЫ МАТЕМАТИЧЕСКОЙ ЛОГИКИ
- •1.1 Логика высказываний
- •1.1.1 Понятие логического высказывания
- •1.1.2 Логические операции
- •1.1.3 Пропозиционные формулы
- •1.1.4 Тавтологии
- •1.1.5 Равносильные формулы
- •1.2 Булевы функции
- •1.2.1 Понятие булевой функции. Число булевых функций от n переменных
- •1.2.2 Элементарные булевы функции. Представление булевых функций пропозиционными формулами
- •1.2.3 Двойственные функции. Принцип двойственности
- •1.2.4 Совершенные конъюнктивные нормальные формы (СКНФ)
- •1.2.5 Полиномы Жегалкина
- •1.3 Полнота и замкнутость
- •1.3.1 Полные системы функций и замкнутые классы
- •1.3.2 Основные замкнутые классы
- •1.3.3 Теоремы о функциональной полноте
- •1.3.4 Базисы пространства булевых функций
- •1.4 Минимизация булевых функций
- •1.4.1 Постановка задачи
- •1.4.2 Метод Квайна-Макклоски
- •1.4.3 Карты Карно
- •1.5 Реализация булевых функций
- •1.5.1 Контактные схемы
- •1.5.2 Схемы из функциональных элементов
- •1.6 Предикаты
- •1.6.1 Основные понятия и определения
- •1.6.2 Операции над предикатами
- •1.6.3 Равносильные формулы логики предикатов
- •1.6.4 Приведенная форма и предваренная нормальная форма предиката
- •2 ОСНОВЫ ТЕОРИИ МНОЖЕСТВ
- •2.1 Множества и операции над ними
- •2.1.1 Основные понятия
- •2.1.2 Способы задания множеств
- •2.1.3 Операции над множествами
- •2.1.4 Свойства операций над множествами. Алгебра множеств
- •2.1.5 Декартово произведение множеств
- •2.2 Отображения множеств
- •2.2.1 Основные понятия
- •2.2.2 Произведение (композиция) отображений
- •2.2.3 Обратные отображения
- •2.3 Отношения
- •2.3.1 Основные понятия и способы задания отношений
- •2.3.2 Операции над бинарными отношениями и их свойства
- •2.4 Отношения экивалентности
- •2.4.1 Классы эквивалентности
- •2.4.2 Отношения частичного порядка
- •2.5 Комбинаторика
- •2.5.1 Размещения
- •2.5.2 Перестановки
- •2.5.3 Сочетания
- •2.5.4 Сочетания с повторениями
- •2.5.5 Бином Ньютона. Понятие о производящей функции
- •2.5.6 Числа Стирлинга
- •2.5.7 Число Белла
- •2.6 Мощности множеств
- •2.6.1 Мощность конечного множества
- •2.6.2 Мощности бесконечных множеств. Счетные множества
- •2.6.3 Несчетные множества. Мощность континуума
- •2.6.4 Кардинальные числа. Гипотеза континуума
- •3 ЭЛЕМЕНТЫ ТЕОРИИ ГРАФОВ
- •3.1 Основные определения и типы графов
- •3.1.1 Основные понятия
- •3.1.2 Основные типы графов
- •3.1.3 Обобщения понятия графа
- •3.1.4 Изоморфные графы
- •3.1.5 Количество различных графов порядка n
- •3.2 Основные числовые характеристики и матрицы графа
- •3.2.1 Степени вершин графа
- •3.2.2 Матрица смежности
- •3.2.3 Матрица Кирхгофа
- •3.2.4 Матрица инцидентности
- •3.3 Подграфы и операции на графах
- •3.3.1 Подграфы
- •3.3.2 Операции над графами
- •3.4 Связные графы и расстояние в графах
- •3.4.1 Маршруты в графах. Связные графы
- •3.4.2 Компоненты связности. Связность графа и его дополнения
- •3.4.3 Расстояния на графах
- •3.4.4 Метод поиска в ширину
- •3.4.5 Выяснение вопросов связности, достижимости и расстояний на графе по матрице смежности
- •3.5 Деревья и остовы
- •3.5.1 Критерии дерева
- •3.5.3 Типы вершин дерева, радиус и центры
- •3.5.4 Остовы графа, циклический ранг и ранг разрезов
- •3.5.5 Задача о минимальном остове
- •3.5.6 Разрезы графа. Фундаментальная система циклов и фундаментальная система разрезов
- •3.5.7 Линейное пространство графа
- •3.6 Эйлеровы и гамильтоновы графы
- •3.6.1 Эйлеровы графы
- •3.6.2 Гамильтоновы графы
- •3.7 Планарные графы
- •3.7.1 Вложимость графов в трехмерное пространство
- •3.7.2 Планарные графы. Формула Эйлера
- •3.7.3 Следствия из формулы Эйлера
- •3.7.4 Гомеоморфные графы. Критерий планарности
- •3.8 Раскраски графов
- •3.8.1 Хроматическое число графа
- •3.8.2 Хроматическое число 2-дольного графа. Критерий 2-дольности
- •3.8.3 Некоторые оценки хроматического числа
- •3.8.4 Раскраски планарных графов
- •3.8.5 Реберная раскраска графа
- •3.9 Паросочетания
- •3.9.1 Паросочетания
- •3.9.2 Теорема Холла о свадьбах
- •3.10 Сети
- •3.10.1 Основные понятия
- •3.10.2 Потоки в сетях
- •3.10.3 Сетевое планирование
- •ПРОДОЛЖЕНИЕ ОГЛАВЛЕНИЯ
- •4 ЭЛЕМЕНТЫ ЧИСЛЕННЫХ МЕТОДОВ
- •4.1 Математическое моделирование и вычислительный эксперимент
- •4.2 Метод Гаусса решения систем линейных алгебраических уравнений. Плохая обусловленность и анализ ошибок. Влияние погрешностей округления
- •4.3 Итерационные методы решения систем линейных алгебраических уравнений. Метод простых итераций и метод Зейделя
- •4.3.1 Основные понятия
- •4.3.2 Метод простой итерации. Описание метода
- •4.3.3 Некоторые сведения о векторах и матрицах
- •4.3.4 Условия и скорость сходимости метода простой итерации
- •4.3.5 Приведение системы (1) к виду (2)
- •4.4 Интерполирование алгебраическими многочленами. Интерполяционный многочлен Лагранжа
- •4.4.1 Постановка задачи
- •4.4.2 Интерполяционная формула Лагранжа. Представление и оценка остатка
- •4.4.3 Практическое применение интерполяции
- •4.5 Конечные разности. Интерполяционный многочлен Ньютона
- •4.5.1 Конечные разности
- •4.5.2 Интерполяционный многочлен Ньютона
- •4.5.3 Линейная интерполяция
- •4.6 Многочлены Чебышева на отрезке [-1, 1]. Интерполирование сплайнами
- •4.7 Численное интегрирование
- •4.7.1 Формулы прямоугольников
- •4.7.2. Формула трапеций
- •4.7.3. Формула Симпсона (метод параболических трапеций)
- •4.7.4 Квадратурные формулы наивысшей алгебраической степени точности (квадратурные формулы Гаусса)
- •4.8 Численное решение нелинейных уравнений
- •4.8.1. Отделение корней
- •4.8.2 Метод деления отрезка пополам
- •4.8.3 Метод простой итерации (метод последовательных приближений)
- •4.8.4. Метод Ньютона (метод касательных)
- •4.8.5 Метод секущих
- •4.8.6 Метод хорд
- •4.9 Итерационные методы решения систем нелинейных уравнений
- •4.9.1 Метод простой итерации
- •4.9.2 Метод простой итерации для системы двух уравнений
- •4.9.3 Метод Ньютона
- •4.9.4 Метод Ньютона для системы двух уравнений
- •4.10 Численные методы решения задачи Коши для обыкновенного дифференциального уравнения
- •4.10.1 Метод Эйлера
- •4.10.2 Методы Рунге–Кутта
- •4.11 Постановка задачи линейного программирования. Геометрическая интерпретация и графическое решение задачи линейного программирования
- •4.11.1 Предмет математического программирования
- •4.11.2 Основная задача линейного программирования
- •4.11.3 Геометрический смысл системы линейных неравенств
- •4.11.4 Графический метод решения задач линейного программирования
- •4.12 Симплексный метод решения задачи линейного программирования. Двойственность в линейном программировании
- •4.12.1 Свойства решений задачи линейного программирования (ЗЛП)
- •4.12.2 Общая идея симплексного метода
- •4.12.3 Построение начального опорного плана
- •4.12.4 Признак оптимальности опорного плана. Симплексные таблицы
- •4.12.5 Переход к нехудшему опорному плану. Симплексные преобразования
- •4.13 Разностные методы
- •4.13.1 Основные понятия
- •4.13.2 Сетки и сеточные функции
- •4.13. 3 Аппроксимация простейших дифференциальных операторов
- •4.13.4 Разностная задача
- •4.13.5 Устойчивость
- •4.13.6 Связь аппроксимации и устойчивости со сходимостью
- •4.13.7 Явные и неявные разностные схемы
- •ОГЛАВЛЕНИЕ
- •Лабораторная работа 5. Задача коммивояжера
- •ПРОДОЛЖЕНИЕ ОГЛАВЛЕНИЯ
- •2.1. Метод Гаусса решения систем линейных алгебраических уравнений
- •2.2. Итерационные методы решения систем линейных алгебраических уравнений. Метод простых итераций и метод Зейделя
- •2.2.1. Метод простых итераций
- •2.2.2 Метод Зейделя
- •2.3. Интерполирование алгебраическими многочленами. Интерполяционный многочлен Лагранжа
- •2.3.1. Постановка задачи
- •2.3.2 Интерполяционный многочлен Лагранжа
- •2.3.3 Практическое применение интерполирования. Оценка погрешности интерполяционного многочлена Лагранжа
- •2.4 Конечные разности. Интерполяционный многочлен Ньютона
- •2.4.1 Конечные разности
- •2.4.2 Первая интерполяционная формула Ньютона (для интерполирования вперед)
- •2.4.3 Вторая интерполяционная формула Ньютона (для интерполирования назад)
- •2.5 Интерполирование сплайнами
- •2.6 Численное интегрирование
- •2.6.1 Метод средних прямоугольников
- •2.6.2 Формула трапеций
- •2.6.3 Формула Симпсона (метод параболических трапеций)
- •2.7 Численное решение нелинейных уравнений. Отделение корней. Метод половинного деления. Метод простой итерации
- •2.7.1 Отделение корней
- •2.7.2 Метод половинного деления
- •2.7.3 Метод простой итерации (метод последовательных приближений)
- •2.7.4 Практический критерий сходимости (когда надо прекращать итерации)
- •2.8 Итерационные методы решения нелинейных уравнений. Метод Ньютона. Метод секущих. Метод хорд
- •2.8.1 Метод Ньютона (метод касательных)
- •2.8.2 Метод секущих
- •2.8.3 Метод хорд
- •2.9 Итерационные методы решения систем нелинейных уравнений
- •2.9.1 Метод простой итерации для системы двух уравнений
- •2.9.2 Метод Ньютона для системы двух уравнений
- •2.10.1 Метод Эйлера
- •2.10.2 Метод Рунге-Кутта
- •2.11 Графическая интерпретация и графическое решение задачи линейного программирования
- •2.11.1 Основная задача линейного программирования
- •2.11.2 Графическая интерпретация задачи линейного программирования
- •2.11.3 Графическое решение задачи линейного программирования
- •2.12 Симплексный метод решения задачи линейного программирования
- •2.13 Метод сеток для уравнения параболического типа
- •2.13.1 Общие сведения
- •2.13.2 Постановка задачи
- •2.13.3 Разностные схемы
- •2.13.4 Оценки погрешностей
- •2.14 Метод сеток для уравнения гиперболического типа
- •ОГЛАВЛЕНИЕ
- •1 Операции над множествами. Алгебра множеств. Декартово произведение множеств
- •2 Отображения множеств. Бинарные отношения на множествах
- •3 Комбинаторика и мощности множеств
- •6 Расстояния в графах
- •7 Деревья и остовы
- •8 Эйлеровы графы. Критерий эйлеровости. Планарные графы. Формула Эйлера
- •9 Раскраски графов. Хроматическое число графа
- •10 Сети и потоки в сетях
- •Тесты по разделу «ЭЛЕМЕНТЫ ТЕОРИИ ГРАФОВ»
- •ЭЛЕМЕНТЫ ЧИСЛЕННЫХ МЕТОДОВ
- •1 Численные методы решения систем линейных алгебраических уравнений
- •2 Интерполирование алгебраическими многочленами
- •3 Численное интегрирование
- •4 Численные методы решения нелинейных уравнений и систем нелинейных уравнений
- •5 Численное решение обыкновенных дифференциальных уравнений первого порядка
- •6 Линейное программирование
- •7 Численное решение уравнений с частными производными
- •Тесты по разделу «ЭЛЕМЕНТЫ ЧИСЛЕННЫХ МЕТОДОВ»
- •ОГЛАВЛЕНИЕ
- •ПРОГРАММА ДИСЦИПЛИНЫ
- •СПИСОК ВОПРОСОВ К ЗАЧЕТУ ПО ВЫЧИСЛИТЕЛЬНОЙ МАТЕМАТИКЕ
- •СПИСОК РЕКОМЕНДУЕМОЙ ЛИТЕРАТУРЫ
3.5.4 Остовы графа, циклический ранг и ранг разрезов
Пусть G – произвольный (n,m) -граф с k компонентами связности. Если G – не лес, то в нем (его компонентах связности) существуют циклы. Рассмотрим какой-либо цикл и удалим из него некоторое ребро. При этом количество компонент связности не увеличится. Если после этого еще останутся циклы, то рассмотрим следующий из них и снова удалим ка- кое-либо его ребро. Продолжим этот процесс до тех пор, пока не исчезнут все циклы. Полученный в результате подграф, который, очевидно, является лесом и имеет столько же компонент связности, как и исходный граф G, называется остовом графа G.
Теорема. Число ребер графа G, которые нужно удалить для получения остова, не зависит от способа удаления и равно m − n + k .
Доказательство. Пусть Hi , i =1,k – компоненты связности графа G, и пусть Hi − (ni ,mi ) -графы. После удаления ребер из циклов компоненты Hi она превратится в дерево, которое (см. теорему о критериях дерева) имеет ni −1 ребер. Значит, из Hi необходимо удалить mi − (ni −1) ребер. Суммируя по всем компонентам, находим, что для получения ос-
k |
k |
k |
k |
|
това из графа G необходимо удалить ∑(mi − ni +1) |
= ∑mi − ∑ni + ∑1 = m − n + k |
ребер, |
||
i=1 |
i=1 |
i=1 |
i=1 |
|
что и требовалось доказать.
Определение. Число ν(G) = m(G) − n(G) + k(G) ребер, которые необходимо удалить из графа G для получения остова, называется циклическим рангом (или цикломатическим числом) графа G. Число ребер в остове графа G, которое в различных остовах одно и то же и равно n(G) − k(G) , называется рангом разрезов (или коциклическим рангом) графа G.
Легко видеть, что справедливы следующие утверждения:
1.Граф G является лесом тогда и только тогда, когда ν(G) = 0 .
2.Граф G содержит единственный цикл тогда и только тогда, когда ν(G) =1.
3.Граф, в котором число ребер не меньше, чем число вершин, обязательно содержит
цикл.
Имеют место также следующие теоремы.
Теорема (Кирхгоф). Число остовов в связном графе G порядка n ≥ 2 равно алгебраическому дополнению любого элемента матрицы Кирхгофа K(G) графа G.
Теорема. Орграф сильно связен, если в нем существует остовной циклический мар-
шрут.
94
3.5.5 Задача о минимальном остове
Задача формулируется следующим образом: во взвешенном связном графе требуется найти остов минимального веса.
Данная задача имеет большое практическое значение: проектирование линий электропередачи, трубопроводов, сетей железных дорог и т.д.
Существуют достаточно простые алгоритмы решения этой задачи.
Алгоритм Краскала
1 шаг. Строим остовной подграф T1 = On e1 , где On – пустой граф порядка n = G ,
а e1 – ребро графа G минимального веса.
Далее, для i = 2, n −1.
2 шаг. Строим Ti = Ti−1 ei , где ребро ei имеет минимальный вес среди ребер, не входящих в Ti−1 и не составляющее циклов с ребрами подграфа Ti−1 .
Легко видеть, что граф Tn −1 является искомым остовом. Аналогичную структуру имеет и следующий алгоритм.
Алгоритм Прима
1 шаг. Строим T1 = e1 — ребро графа G минимального веса.
Далее, для i = 2, n −1.
2 шаг. Строим Ti = Ti−1 ei , где ei – ребро минимального веса, не входящее в Ti−1 и инцидентное ровно одной вершине подграфа Ti−1 .
Помимо задачи о минимальном остове рассматривается также задача о максимальном остове, которая формулируется и решается аналогично.
3.5.6 Разрезы графа. Фундаментальная система циклов и фундаментальная система разрезов
Разделяющим множеством графа G называется такая его совокупность ребер, удаление которых приводит к увеличению числа компонент связности графа G. В частности для связного графа – это такая совокупность ребер графа G, удаление которых приводит к несвязному графу. Минимальное разделяющее множество (то есть такое, что никакое его собственное подмножество разделяющим уже не является) называется разрезом. Разрез, состоящий из одного ребра, называется мостом.
Например, для графа на рисунке 5:
95
• |
{e2 , e5 , e7 , e6 |
} – разделяющее |
|
e4 |
e5 |
|
e11 |
|||||
множество, но не разрез; |
|
|
|
|||||||||
|
|
|
e7 |
|
|
|||||||
• |
{e2, e3 }, {e |
|
, e |
|
}, |
e1 |
e3 |
|
|
|||
5 |
6 |
e6 |
e8 |
e10 |
||||||||
{e6 , e7 , e8 |
|
|
|
|
|
|
||||||
, e10 } – разрезы; |
|
e2 |
|
e9 |
|
|||||||
• |
{e4 } – мост; |
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|||||
• |
{e5 ,e7 ,e8 } – не является разделяющим множеством. |
|
Рис. 5 |
|||||||||
Дополнением подграфа H в графе G будем называть граф H G , который имеет те же вершины, что и граф G и все те ребра графа G, которые не принадлежат подграфу H.
Теорема. Пусть T – остов графа G.
1.Всякий разрез графа G имеет общее ребро с T.
2.Всякий цикл графа G имеет общее ребро с дополнением T G остова T в графе G.
Доказательство. 1. Пусть множество ребер R графа G является разрезом графа G.
Удаление всех ребер множества R разбивает некоторую компоненту связности K графа G на две части K1 и K2 . Поскольку T – остов, его часть, покрывающая вершины компоненты K, является деревом, в частности, связным графом и поэтому имеет ребро, соединяющее некоторую вершину K1 с некоторой вершиной K2 . Это ребро является общим у R и T.
2. Пусть теперь C – некоторый цикл графа G. Предположим, что он не имеет общих ребер с T G . Тогда C целиком содержится в остове T. Но это невозможно, поскольку остов есть лес, то есть граф без циклов. Теорема доказана.
Пусть дан граф G. Зафиксируем некоторый его остов T. Как известно (критерии дерева), если добавить к T некоторое ребро графа G (удаленное при получении остова), то появится ровно один цикл. Множество циклов, полученных таким способом, называется фундаментальной системой циклов, ассоциированной с остовом T. Ясно, что все циклы, полученные таким способом, различны и их количество равно циклическому рангу ν(G) .
Так, например, если G – граф на предыду- |
|
e4 |
e5 |
e11 |
||||
щем рисунке 5 и T — |
его остов на рисунке 6, то |
e1 |
e3 |
e6 |
|
|||
фундаментальная система циклов G, ассоцииро- |
e10 |
|||||||
ванная с остовом T, следующая (рис. 7-10): |
|
|
|
|
|
|
||
|
|
|
Рис. 6 |
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
e5 |
e5 |
|
|
|
e5 |
e11 |
|
|
|
|
|
||||
e1 |
e3 |
e7 |
e6 |
e10 |
e6 |
|
||
|
e2 |
e6 |
|
|
e8 |
|||
|
|
|
|
|
|
|
||
|
|
|
e9 |
|
|
|
||
|
|
|
|
|
|
|
||
|
|
|
Рис |
|
|
|
|
Рис. |
96
Согласно теореме о критериях дерева (пункт d)) удаление любого ребра из остова T разбивает T на две компоненты связности. Пусть V1 – вершины одной компоненты, а V2 – другой. Если добавить к такому ребру остова T другие ребра графа G, соединяющие вершины V1 с вершинами V2 , то получим некоторый разрез графа G. Множество разрезов, полученных таким способом, называется фундаментальной системой разрезов графа G, ассоциированной с остовом T. Понятно, что количество разрезов в фундаментальной системе равно числу ребер в остове, которое совпадает с рангом разрезов графа G.
Для рассматриваемого графа G и его остова T, получаем следующую фундаментальную систему разрезов (рис. 11):
e1 |
e3 |
|
e4 |
|
e7 |
|
|
e6 |
|||
|
|
e8 |
|||
|
|
|
|
|
|
e2 |
e2 |
|
|
|
e9 |
e5 |
|
|
|
|
e11 |
e7 |
e8 |
e10 |
|
|
|
|
|
e8 |
|
||
|
e9 |
|
|
||
|
e9 |
|
|
|
Рис. 11
3.5.7 Линейное пространство графа
Пусть E(G) – множество ребер графа G. Рассмотрим Ω(E(G)) – булеан этого множества, с операцией – разностная сумма (или сумма по модулю 2) A B = (A B ) (A B). Определим также умножение на элементы Z2 = {0, 1} следующим образом: A E(G) положим по определению 0 A = , 1 A = A.
Нетрудно убедиться, что эти операции удовлетворяют всем аксиомам линейного про-
странства: |
|
|
1. |
A B = B A |
A, B E(G) ; |
2. |
(A B) C = A (B C) A, B,C E(G) ; |
|
3. |
существует нулевой элемент – : A = A A E(G) ; |
|
4.для каждого A E(G) существует обратный элемент A : A A = ;
5. |
1 A = A |
A E(G) ; |
|
6. |
m(nA) = (mn)A m,n Z2 , A E(G) ; |
||
7. |
m(A B) = mA mB |
m Z2 , A, B E(G) ; |
|
97
