
- •Н. Г. Моисеев математическая логика и теория алгоритмов
- •Оглавление
- •Предисловие
- •Введение
- •Техника безопасности при выполнении лабораторных работ
- •1. Общие требования безопасности
- •2. Требования безопасности перед началом работы
- •3. Требования безопасности во время работы
- •4. Требования безопасности в аварийной обстановке
- •5. Требования безопасности по окончании работы
- •6. Ответственность
- •Лабораторная работа № 1 алгебра высказываний и логические операции над ними
- •1.1. Теоретическая часть
- •1.1.1. Высказывания и операции над ними. Понятие высказывания
- •1.1.2. Логические операции над высказываниями
- •1.2. Задания к выполнению работы
- •1.3. Контрольные вопросы
- •2.1.1. Формулы алгебры высказываний
- •2.1.1. Равносильные формулы алгебры высказываний
- •I. Основные равносильности:
- •II. Равносильности, выражающие одни логические операции через другие:
- •III. Равносильности, выражающие основные законы алгебры логики:
- •2.2. Задания к выполнению работы
- •2.3. Контрольные вопросы
- •Учебно-методическое обеспечение
- •Лабораторная работа № 3 функции алгебры логики. Совершенные нормальные формы
- •3.1. Теоретическая часть
- •3.1.1. Функции алгебры логики
- •3.1.2. Представление произвольной функции алгебры логики в виде формулы алгебры логики
- •3.1.3. Закон двойственности
- •3.1.4. Дизъюнктивная нормальная форма (днф) и совершенная дизъюнктивная нормальная форма (сднф)
- •3.1.5. Конъюнктивная нормальная форма (кнф) и совершенная конъюнктивная нормальная форма (скнф)
- •3.1.6. Проблема разрешимости
- •3.2. Задания к выполнению работы
- •Сднф и скнф операции конъюнкции
- •3.3. Контрольные вопросы
- •4.1.1. Основные понятия релейно-контакных схем
- •4.1.2. Реализация с помощью релейно-контакных схем основных логических операций
- •4.2. Задания к выполнению работы
- •4.3. Контрольные вопросы
- •5.2. Задания к выполнению работы
- •5.3. Контрольные вопросы
- •Учебно-методическое обеспечение
- •Лабораторная работа № 6 построение доказательств в логике высказываний
- •6.1. Теоретическая часть
- •6.1.1. Основные понятия и определения, используемые при построении доказательств в логике высказываний
- •6.1.2. Аксиоматический метод доказательства логических выражений
- •6.1.3. Конструктивный метод доказательства логических выражений
- •Метод доказательства логических выражений
- •6.1.4. Принцип резолюций
- •6.1.5. Метод Вонга
- •6.1.6. Метод натурального исчисления
- •6.2. Задания к выполнению работы
- •6.3. Контрольные вопросы
- •7.1.1. Составление легенд на основе клауз
- •7.1.2. Составление клауз на основе легенд
- •7.2. Задания к выполнению работы
- •7.3. Контрольные вопросы
- •8.1.1. Формулы исчисления высказываний
- •8.1.2. Определение доказуемой формулы
- •1. Система аксиом исчисления высказываний
- •2. Правила вывода
- •1. Правило подстановки
- •2. Правило заключения.
- •3. Определение доказуемой формулы
- •8.1.3. Производные правила вывода
- •8.1.4. Понятие выводимости формулы из совокупности формул
- •8.1.5. Понятие вывода
- •8.1.6. Правила выводимости
- •13. Правило исключения третьего в доказуемых формулах
- •8.1.7. Связь между алгеброй высказываний и исчислением высказываний
- •Теоремы, устанавливающие связь между алгеброй высказываний и исчислением высказываний
- •8.2. Задания к выполнению работы
- •8.3. Контрольные вопросы
- •9.1.1. Логические операции над предикатами
- •9.1.2. Кванторные операции
- •9.1.3. Понятие формулы логики предикатов
- •9.1.4. Значение формулы логики предикатов
- •9.1.5. Равносильные формулы логики предикатов
- •9.1.6. Предваренная нормальная форма
- •9.1.7. Общезначимость и выполнимость формул
- •9.2. Задания к выполнению работы
- •9.3. Контрольные вопросы
- •Учебно-методическое обеспечение
- •Лабораторная работа № 10 алгоритмы и их применение
- •10.1. Теоретическая часть
- •10.1.1. Характерные черты алгоритма и основные требования к алгоритмическим процедурам
- •10.1.2. Классификация алгоритмических моделей
- •10.1.3. Машины Тьюринга
- •Тьюрингова функциональная схема
- •Программа (схема) работы машины Тьюринга,
- •10.2. Задания к выполнению работы
- •10.3. Контрольные вопросы
- •Учебно-методическое обеспечение
- •Заключение
- •424000 Йошкар-Ола, пл. Ленина, 3
- •424006 Йошкар-Ола, ул. Панфилова, 17
Учебно-методическое обеспечение
1. Лихтарников, Л. М. Математическая логика: курс лекций / Л. М. Лихтарников, Т. Г. Сукачева. – СПб.: Лань, 1998
2. Игошин, В. И. Математическая логика и теория алгоритмов / В. И. Игошин. – М.: ACADEMA, 2004.
3. Шапорев, С. Д. Математическая логика: курс лекций и практических занятий / С. Д. Шапорев – СПб.: БХВ – Петербург, 2005.
Лабораторная работа № 3 функции алгебры логики. Совершенные нормальные формы
ЦЕЛЬ РАБОТЫ – изучение функций алгебры логики и способов получения совершенных нормальных форм.
3.1. Теоретическая часть
Значение формул алгебры логики полностью зависит от значений входящих в эту формулу высказываний. Поэтому формула алгебры логики является функцией входящих в нее элементарных высказываний.
Например, формула
является функцией трех переменных
.
Особенностью этой функции является то
обстоятельство, что ее аргументы
принимают одно из двух значений: ноль
или единицу, и при этом функция также
принимает одно из двух значений: ноль
или единицу.
3.1.1. Функции алгебры логики
Функция алгебры
логики
переменных
(или
функция
Буля) –
функция
переменных
,
где каждая переменная принимает два
значения: 0
и 1,
и при этом функция может принимать
только одно из двух значений:
0 или 1.
Любая формула алгебры логики является и функцией алгебры логики. Очевидно, что тождественно истинные и тождественно ложные формулы алгебры логики представляют собой постоянные функции, а две равносильные формулы выражают одну и ту же функцию.
Определим, каково
количество функций
переменных. Каждую функцию алгебры
логики, как и формулу алгебры логики,
можно задать с помощью таблицы истинности,
которая будет содержать
строк. Следовательно, каждая функция
переменных принимает
значений, состоящих из нулей и единиц.
Таким образом, функция
переменных полностью определяется
набором значений из нулей и единиц длины
.
Общее количество
наборов, состоящих из нулей и единиц
длины
,
равно
.
Значит, общее количество различных
функций алгебры логики
переменных равно
.
В соответствии с
данной формулой различных функций
одной переменной будет
,
а различных функций двух переменных –
,
.
Выпишем все функции алгебры логики
одной и двух переменных.
Булевы функции от одной переменной.
Булевой функцией от одной переменной называется функция f, заданная на множестве из двух элементов и принимающая значения в том же двухэлементном множестве.
Элементы
двухэлементного множества будем
обозначать 0 и 1. Тогда
.
Составим таблицу истинности для различных функций одной переменной. Она будет иметь вид табл.3.1.
Таблица 3.1
Таблица истинности всех функций одной переменной
|
|
|
|
|
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
Из данных таблицы
следует, что две функции одной переменной
будут постоянными:
и
,
а две переменными:
и
.
Таким образом, всего будет иметься четыре различные булевы функции одного аргумента:
– функция, тождественно равная 0 (тождественный нуль);
– тождественная функция;
– функция, называемая отрицанием;
– функция, тождественно равная 1(тождественная единица).
Булевы функции
от двух переменных.
Булевой
функцией от двух переменных называется
функция f,
заданная на множестве
и принимающая значения в двухэлементном
множестве
.
Составим таблицу
истинности для всевозможных функций
от двух переменных аналогично порядку
составления таблицы истинности от одной
переменной (табл. 3.1). При этом в первой
строчке приведем сокращенные обозначения
всех рассмотренных нами ранее операций,
во второй – сокращенные обозначения
функций, то есть
.
Многие из функций в табл. 3.2 имеют названия и специальные обозначения. Приведем их, сгруппировав функции в пары по тому принципу, что каждая функция из пары является отрицанием другой функции этой пары.
Таблица 3.2
Таблица истинности всех функций двух переменных
|
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1.
– тождественный ноль,
– тождественная
единица.
2.
–
конъюнкция,
– отрицание
конъюнкции – штрих
Шеффера.
3.
– дизъюнкция,
– отрицание
дизъюнкции – стрелка
Пирса (или
штрих
Лукасевича).
4.
– импликация,
–
отрицание импликации
(специального названия нет).
5.
– антиимпликация или обратная импликация,
в которой посылка
,
а следствие
,
– отрицание
антиимпликации (без специального
названия).
6.
- эквивалентность,
–
отрицание
эквивалентности или сложение
по модулю два.
7.
– всегда принимает значения, равные
переменной
,
– всегда принимает
значения, равные отрицанию переменной
.
8.
– всегда принимает значения, равные
переменной
,
–
всегда принимает
значения, равные отрицанию переменной
.
Из
введенных простейших булевых функций
можно строить с помощью суперпозиций
более сложные булевы функции. Например,
если в функцию
вставить вместо аргумента t
функцию
,
то получим следующую сложную функцию:
.
Если в нее, в свою очередь, вставить
вместо аргумента z
функцию
,
то получим сложную функцию
.
И так далее. В результате можно получить
булевы функции от трех, четырех и большего
числа переменных.