
- •1.Множества, подмножества. Операции над множествами и их свойства. Диаграммы Эйлера – Венна
- •2.Покрытия и разбиения множеств. Биномиальные коэффициенты и числа Стирлинга второго рода. Перечисление элементов множеств.
- •3.Представление множеств в эвм. Коды Грея. Мультимножества.
- •4.Отношения и их основные свойства. Композиция отношений.
- •5.Отношение эквивалентности и его свойства. Отношение порядка и его свойства. Матричное представление отношений.
- •6.Функции, их свойства. Представление функций в эвм. Инъекция, сюръекция и биекция, их свойства.
- •7.Подстановки, перестановки, группы подстановок. Представление подстановок циклами.
- •8.Операции на алгебраических структурах. Группы, подгруппы, нормальные группы, их свойства.
- •9.Кольца, их основные свойства. Кольца многочленов, их свойства. Подкольца, идеалы, их свойства. Поля, их основные свойства.
- •10.Графы и орграфы. Простейшие типы графов. Представление отношений графами.
- •11.Матрицы смежности и инцидентности, их основные свойства. Смежностные (реберные) графы.
- •12.Изоморфизм графов.
- •13. Подграфы. Остовные подграфы. Операции на графах.
- •14. Компоненты графа, связность.
- •15.Маршруты, цепи, циклы. Диаметр, радиус и обхват графа. Пути в орграфах.
- •17.Теоремы существования эйлеровых и гамильтоновых циклов.
- •18.Задачи о кратчайшем пути.
- •19. Вершинные и реберные раскраски графа. Хроматический многочлен, хроматическое число и хроматический индекс.
- •20. Планарность. Формула Эйлера. Теорема Потрягина-Куратовского. Теорема о четырех красках.
- •21.Деревья. Матричная теорема о деревьях, подсчет числа остовов.
- •22.Корневые деревья. Задачи о подсчете корневых деревьев. Высота дерева. Числа Фибоначчи, их свойства.
- •23. Кубические деревья. Числа Каталана, их свойства.
- •24.Основные понятия булевой алгебры: булев куб, булевы функции.
- •25.Элементарные булевы функции, их свойства. Существенные и фиктивные переменные. Основные функциональные элементы.
- •26.Формулы. Реализация булевых функций формулами. Принцип двойственности.
- •27.Разложение булевых функций по переменным. Совершенная днф и совершенная кнф.
- •28. Полиномы Жегалкина. Не полностью определенные (частичные) булевы функции.
- •29.Виды днф и кнф: сокращенные, минимальные, кратчайшие, тупико-вые.
- •30. Методы построения сокращенных днф. Минимизация днф. Геометрическая интерпретация. Метод Блейка.
- •31.Метод минимизирующих карт (карт Карно). Реализация булевых функций схемами из функциональных элементов.
- •32. Полнота и замкнутость
- •33.Важнейшие замкнутые классы. Теорема о полноте. Примеры функционально полных базисов.
- •34. Основные понятия о разрешимых и неразрешимых проблемах. Алгоритмы и разрешимость.
- •35. Схемы алгоритмов, схемы потоков данных и использовании теории графов и теории конечных автоматов для их описания.
- •36.Формула полной вероятности.
- •37.Формула Бейеса.
- •38.Формула Бернулли.
- •39.Функция распределения, плотность распределения и их свойства. Связь между ними.
- •40.Числовые характеристики случайных величин.
- •41.Нормальное распределение.
- •42. Метод золотого сечения
- •43.Метод касательных.
- •44.Метод наискорейшего спуска.
- •45.Метод покоординатного спуска.
- •46.Платежная матрица. Нижняя и верхняя цена игры. Принцип минимакса.
- •47.Решение игры в смешанных стратегиях.
- •48.Упрощение игр.
- •49.Игра 2 на 2.
- •50.Игры 2 на n и m на 2.
- •51.Марковский процесс с дискретными состояниями и дискретным временем
- •52.Марковский процесс с дискретными состояниями и непрерывным временем.
- •53.Система массового обслуживания с отказами.
- •54.Система массового обслуживания с ограничением по длине очереди.
- •55.Исчисление высказываний
- •57.Логика предикатов первого порядка
55.Исчисление высказываний
Напомним, что тавтологией мы называли пропозициональную формулу, истинную при всех значениях переменных. Оказывается, что все тавтологии можно получить из некоторого набора "аксиом" с помощью "правил вывода", которые имеют чисто синтаксический характер и никак не апеллируют к смыслу формулы, ее истинности и т. д. Эту задачу решает так называемое исчисление высказываний.
Одним
из возможных вариантов (Гильбертовской)
аксиоматизации логики высказываний
является следующая система аксиом
(Каковы бы ни были формулы
,
следующие формулы называют аксиомами
исчисления высказываний):
;
;
;
;
;
;
;
;
;
;
.
вместе с единственным правилом:
(Modus
ponens)
Теорема корректности исчисления высказываний утверждает, что все перечисленные выше аксиомы являются тавтологиями, а с помощью правила modus ponens из истинных высказываний можно получить только истинные. Доказательство этой теоремы тривиально и сводится к непосредственной проверке. Куда более интересен тот факт, что все остальные тавтологии можно получить из аксиом с помощью правила вывода — это так называемая теорема полноты логики высказываний.
Несложно проверить, что все аксиомы — тавтологии. Для примера проделаем это для самой длинной аксиомы (точнее, схемы аксиом) — для второй. В каком случае формула
(где
—
некоторые формулы) могла бы быть ложной?
Для этого посылка
должна
быть истинной, а заключение
—
ложным. Чтобы заключение было ложным,
формула
должна
быть истинной, а формула
—
ложной. Последнее означает, что
истинна,
а
ложна.
Таким образом, мы знаем, что
,
и
истинны.
Отсюда следует, что
и
истинны,
и потому
истинна
— противоречие. Значит, наша формула
не бывает ложной.
Корректность правила MP также очевидна: если формулы и всегда истинны, то по определению импликации формула также всегда истинна. Таким образом, все формулы, входящие в выводы (все теоремы) являются тавтологиями.
Теорема (О корректности ИВ). Всякая теорема исчисления высказываний есть тавтология.
Теорема (О полноте ИВ). Всякая тавтология есть теорема исчисления высказываний.
Теорема (корректность исчисления высказываний, вторая форма). Всякое совместное множество формул непротиворечиво.
Теорема (полнота исчисления высказываний, вторая форма). Всякое непротиворечивое множество совместно.
Теорема
(теорема компактности для исчисления
высказываний).
Пусть
—
множество формул, всякое конечное
подмножество которого совместно. Тогда
и все множество
совместно.
Теорема 22 (лемма Кенига). Любое бесконечное дерево имеет бесконечную ветвь.
Говоря о бесконечности дерева, мы имеем в виду, что соответствующее множество бесконечно. Отсюда следует, что оно содержит слова сколь угодно большой длины.
Обычно утверждение леммы Кенига формулируют так: если колония бактерий, возникшая из одной бактерии, никогда не вымирает полностью, то существует бесконечная последовательность бактерий, каждая следующая из которых получается при делении предыдущей.
57.Логика предикатов первого порядка
Логика первого порядка (исчисление предикатов) — формальное исчисление, допускающее высказывания относительно переменных, фиксированных функций, и предикатов. Расширяет логику высказываний. В свою очередь является частным случаем логики высшего порядка.
Определение (логики высшего порядка). Пусть М – непустое множество. Тогда n-местным предикатом, заданным на М, называется выражение, содержащее n переменных и обращающееся в высказывание при замене этих переменных элементами множества М.
Рассмотрим примеры. Пусть М есть множество натуральных чисел N. Тогда выражения «x – простое число», «x – четное число», «x – больше 10» являются одноместными предикатами. При подстановке вместо x натуральных чисел получаются высказывания: «2 – простое число», «6 – простое число», «3 – четное число», «5 больше 10» и т.д. Выражения «x больше y», «x делит y нацело», «x плюс y равно 10» являются двухместными предикатами. (Конечно, последнее выражение можно было записать и так: «x+y=10»). Примеры трехместных предикатов, заданных на множестве натуральных чисел: число z лежит между «x и y», «x плюс y равно z», «|x-y|£z».
Будем считать, что высказывание – нульместный предикат, то есть предикат, в котором нет переменных для замены.
Предикат с заменяемыми переменными x1,…,xn будет обычно обозначаться заглавной латинской буквой. После которой в скобках указаны эти переменные. Например, P(x1,x2), Q(x2,x3), R(x1). Среди переменных в скобках могут быть и фиктивные.
Определение. Предикат W(x1,…,xn) называется конъюнкцией предикатов U(x1,…,xn) и V(x1,…,xn), заданных на множестве М, если для любых а1,…,аn из М высказывание W(а1,…,аn) есть конъюнкция высказываний U(а1,…,аn) и V(а1,…,аn).
Легко по аналогии привести определения и других упомянутых выше операций.
В логике предикатов первого порядка вводятся и две новые операции: квантором общности и квантором существования. Эти операции рассмотрим вначале на примерах. Пусть дано выражение «существует х такой, что x+y=10». На множестве натуральных чисел это предложение определяет одноместный предикат P(y), так Р(2) и Р(9) – истинные высказывания, Р(11) – ложное. Если обозначить предикат «x+y=10» через S(x,y) (а это предикат двухместный), то P(y) можно записать так: «существует х такой, что S(x,y)». В этом случае говорят, что предикат P(y) получен из предиката S(x,y) навешиванием квантора существования на x и пишут P(y)=($x)S(x,y). Рассмотрим другой пример. Выражение «для всех х справедливо, что y³-х2» определяет на множестве целых чисел одноместный предикат Q(y). Если предикат «y³-х2» обозначить через T(x,y), то Q(y) можно записать так: «для всех x справедливо T(x,y)». В таком случае говорят, что предикат Q(y) получен из предиката T(x,y) навешиванием квантора общности на х и пишут Q(y)=("x)T(x,y).
Определение. Пусть P(x1,…,xn) – предикат, заданный на множестве M, y – переменная. Тогда выражение «для всякого y выполняется P(x1,…,xn)» – предикат, полученный из P навешиванием квантора общности на переменную y, а выражение «существует y такой, что выполняется P(x1,…,xn)» – предикат, полученный из P навешиванием квантора существования на переменную y.
Язык
логики первого
порядка
строится на основе сигнатуры,
состоящей из множества функциональных
символов
и
множества предикатных символов
.
С каждым функциональным и предикатным
символом связана арность,
то есть число возможных аргументов.
Допускаются как функциональные так и
предикатные символы арности 0. Первые
иногда выделяют в отдельное множество
констант.
Кроме того используются следующие
дополнительные символы
Символы переменных (обычно x,y,z,x1,y1,z1,x2,y2,z2, и т. д.),
Пропозициональные связки:
, (конъюнкция, дизъюнкция, отрицание, импликация и эквиваленция)
Кванторы: всеобщности
и существования
,
Служебные символы: скобки и запятая.
Перечисленные символы вместе с символами из и образуют Алфавит логики первого порядка. Более сложные конструкции определяются индуктивно:
Терм есть символ переменной, либо имеет вид
, где f — функциональный символ арности n, а
— термы.
Атом имеет вид
, где p — предикатный символ арности n, а — термы.
Формула — это либо атом, либо одна из следующих конструкций:
, где F,F1,F2 — формулы, а x — переменная.
Переменная
x
называется связанной
в формуле F,
если F
имеет вид
либо
,
или же представима в одной из форм
,
причем x
уже связанна в H,
F1
и F2.
Если x
не связанна в F,
ее называют свободной
в F.
Формулу без свободных переменных
называют замкнутой
формулой, или
предложением.
Теорией первого
порядка
называют любое множество предложений.
Логика первого порядка обладает рядом полезных свойств, которые делают ее очень привлекательной в качестве основного инструмента формализации математики. Главными из них являются полнота (это означает, что для любой формулы выводима либо она сама, либо ее отрицание) и непротиворечивость (ни одна формула не может быть выведена одновременно со своим отрицанием). При этом если непротиворечивость более или менее очевидна, то полнота — нетривиальный результат полученный Гёделем в 1930 году (теорема Гёделя о полноте). По сути теорема Гёделя устанавливает фундаментальную эквивалентность понятий доказуемости и общезначимости.
Логика первого порядка обладает свойством компактности: если некоторое множество формул не выполнимо, то невыполнимо также некоторое его конечное подмножество.
Являясь формализованым аналогом обычной логики, логика первого порядка дает возможность строго рассуждать об истинности и ложности утверждений и об их взаимосвязи, в частности, о логическом следовании одного утверждения из другого, или, например, об их эквивалентности. Рассмотрим классический пример формализации утверждений естественного языка в логике первого порядка.
Возьмем рассуждение «Каждый человек смертен. Конфуций — человек. Следовательно, Конфуций смертен». Обозначим «x есть человек» через ЧЕЛОВЕК(x) и «x смертен» через СМЕРТЕН(x). Тогда утверждение «каждый человек смертен» может быть представлено формулой: x(ЧЕЛОВЕК(x) → СМЕРТЕН(x)) утверждение «Конфуций — человек» формулой ЧЕЛОВЕК(Конфуций), и «Конфуций смертен» формулой СМЕРТЕН(Конфуций). Утверждение в целом теперь может быть записано формулой
x(ЧЕЛОВЕК(x)
→ СМЕРТЕН(x))
ЧЕЛОВЕК(Конфуций)
→ СМЕРТЕН(Конфуций)