хМинистерство образования и науки Российской Федерации
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
«Сибирская государственная автомобильно-дорожная академия
(СибАДИ)»
Факультет Информационные системы в управлении (ИСУ)
Специальность Автоматизированные системы обработки информации и управления (АСОИУ)
Кафедра Компьютерные информационные автоматизированные системы (КИАС)
Курсовая работа по дисциплине
Математическая логика и теория алгоритмов
Тема Алгоритмы дискретной математики
Выполнил: студент гр.АС-10И2
Курганов И.Д.
Проверил: преподаватель
Палий И.А.
Омск – 2012г.
Содержание
Введение
Часть 1. Логические функции (Функции алгебры логики).
ЗАДАНИЕ
Логическая функция A двух переменных.
Расставить скобки в формуле своего варианта в соответствии со старшинством логических операций, так чтобы сделать явной последовательность вычисления значений логической функции. Составить таблицу истинности функции. Применяя равносильные преобразования, построить ДНФ и СДНФ этой функции.
Логическая функция B двух переменных.
Расставить скобки в формуле своего варианта в соответствии со старшинством логических операций, так чтобы сделать явной последовательность вычисления значений логической функции. Составить таблицу истинности. Применяя равносильные преобразования, построить КНФ и СКНФ этой функции.
Логическая функция C трех переменных.
Расставить скобки в формуле своего варианта в соответствии со старшинством логических операций, так чтобы сделать явной последовательность вычисления значений логической функции. Составить таблицу истинности функции. Применяя равносильные преобразования, построить ДНФ и СДНФ, КНФ и СКНФ, СПНФ этой функции.
Логическая функция D трех переменных.
Расставить скобки в формуле своего варианта в соответствии со старшинством логических операций, так чтобы сделать явной последовательность вычисления значений логической функции. Составить таблицу истинности функции. Определить, к каким классам Поста принадлежит эта функция, дать подробные объяснения.
Логическая функция E четырех переменных.
Построить минимальные ДНФ и КНФ функции E четырех переменных своего варианта, заданной вектором своих значений. Воспользоваться двумя алгоритмами: методом Квайна и картами Карно. Определить, к каким классам Поста принадлежит эта функция, дать подробные объяснения.
Вариант 7
Логическая функция A двух переменных 1
Построим таблицу истинности заданной функции:
| 
				 x  | 
				 y  | 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
| 
				 0  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
				 0  | 
				 1  | 
| 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
				 1  | 
				 1  | 
				 0  | 
| 
				 1  | 
				 0  | 
				 0  | 
				 1  | 
				 1  | 
				 0  | 
				 1  | 
| 
				 1  | 
				 1  | 
				 0  | 
				 0  | 
				 0  | 
				 1  | 
				 1  | 
Применяя равносильные преобразования, попытаемся построить ДНФ и СДНФ этой функции:
1) 

2)
ДНФ: 

Построим СДНФ:
:

СДНФ: 

Логическая функция B двух переменных
Построим таблицу истинности заданной функции:
| 
				 x  | 
				 y  | 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
				 f  | 
| 
				 0  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
				 1  | 
				 1  | 
| 
				 0  | 
				 1  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
				 1  | 
| 
				 1  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
				 1  | 
				 1  | 
| 
				 1  | 
				 1  | 
				 0  | 
				 0  | 
				 0  | 
				 1  | 
				 1  | 
КНФ и СКНФ для этой функции равны единице, так как эта функция является "константой 1".
КНФ = СКНФ =1
 Логическая функция C трех переменных
Построим таблицу истинности заданной функции:
| 
				 x  | 
				 y  | 
				 z  | 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
| 
				 0  | 
				 0  | 
				 0  | 
				 1  | 
				 1  | 
				 0  | 
				 0  | 
| 
				 0  | 
				 0  | 
				 1  | 
				 1  | 
				 0  | 
				 1  | 
				 1  | 
| 
				 0  | 
				 1  | 
				 0  | 
				 0  | 
				 0  | 
				 1  | 
				 0  | 
| 
				 0  | 
				 1  | 
				 1  | 
				 0  | 
				 1  | 
				 0  | 
				 1  | 
| 
				 1  | 
				 0  | 
				 0  | 
				 0  | 
				 0  | 
				 0  | 
				 0  | 
| 
				 1  | 
				 0  | 
				 1  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
| 
				 1  | 
				 1  | 
				 0  | 
				 0  | 
				 0  | 
				 0  | 
				 1  | 
| 
				 1  | 
				 1  | 
				 1  | 
				 0  | 
				 1  | 
				 1  | 
				 0  | 
Применяя равносильные преобразования, попытаемся построить ДНФ и СДНФ этой функции:
1) 

2) 

3) 

4) 
-ДНФ
СДНФ:

СКНФ:

СПНФ:
Логическая
функция D
трех переменных
Построим таблицу истинности заданной функции:
| 
				 x  | 
				 y  | 
				 z  | 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
| 
				 0  | 
				 0  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
| 
				 0  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
				 1  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
| 
				 0  | 
				 1  | 
				 0  | 
				 1  | 
				 0  | 
				 1  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
| 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
				 0  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
				 0  | 
| 
				 1  | 
				 0  | 
				 0  | 
				 0  | 
				 1  | 
				 1  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
| 
				 1  | 
				 0  | 
				 1  | 
				 0  | 
				 1  | 
				 1  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
| 
				 1  | 
				 1  | 
				 0  | 
				 0  | 
				 0  | 
				 1  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
| 
				 1  | 
				 1  | 
				 1  | 
				 0  | 
				 0  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
				 0  | 
Проверим функцию на линейность


| 
				 f  | 
				 f1  | 
| 
				 0  | 
				 1  | 
| 
				 1  | 
				 1  | 
| 
				 0  | 
				 1  | 
| 
				 1  | 
				 1  | 
| 
				 1  | 
				 1  | 
| 
				 1  | 
				 1  | 
| 
				 0  | 
				 1  | 
| 
				 0  | 
				 1  | 

Проверим функцию на монотонность


111>110
Проверим функцию на сохранение нуля

Проверим функцию на сохранение единицы

Проверим функцию на самодвойственность
| 
				 f  | 
				 f*  | 
| 
				 1  | 
				 1  | 
| 
				 1  | 
				 0  | 
| 
				 1  | 
				 0  | 
| 
				 0  | 
				 0  | 
| 
				 1  | 
				 1  | 
| 
				 1  | 
				 0  | 
| 
				 1  | 
				 0  | 
| 
				 0  | 
				 0  | 

Построим таблицу поста для этой функции
| 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
| 
			 
  | 
			   | 
			   | 
			   | 
			   | 
			   | 
 Логическая функция E четырех переменных
0111010000101101
Восстановим таблицу истинности функции по её вектору значения:
| 
			 X1  | 
			 X2  | 
			 X3  | 
			 X4  | 
			 F(x1,x2,x3,x4)  | 
| 
			 0  | 
			 0  | 
			 0  | 
			 0  | 
			 0  | 
| 
			 0  | 
			 0  | 
			 0  | 
			 1  | 
			 1  | 
| 
			 0  | 
			 0  | 
			 1  | 
			 0  | 
			 1  | 
| 
			 0  | 
			 0  | 
			 1  | 
			 1  | 
			 1  | 
| 
			 0  | 
			 1  | 
			 0  | 
			 0  | 
			 0  | 
| 
			 0  | 
			 1  | 
			 0  | 
			 1  | 
			 1  | 
| 
			 0  | 
			 1  | 
			 1  | 
			 0  | 
			 0  | 
| 
			 0  | 
			 1  | 
			 1  | 
			 1  | 
			 0  | 
| 
			 1  | 
			 0  | 
			 0  | 
			 0  | 
			 0  | 
| 
			 1  | 
			 0  | 
			 0  | 
			 1  | 
			 0  | 
| 
			 1  | 
			 0  | 
			 1  | 
			 0  | 
			 1  | 
| 
			 1  | 
			 0  | 
			 1  | 
			 1  | 
			 0  | 
| 
			 1  | 
			 1  | 
			 0  | 
			 0  | 
			 1  | 
| 
			 1  | 
			 1  | 
			 0  | 
			 1  | 
			 1  | 
| 
			 1  | 
			 1  | 
			 1  | 
			 0  | 
			 0  | 
| 
			 1  | 
			 1  | 
			 1  | 
			 1  | 
			 1  | 
Выпишем СДНФ и СКНФ для этой функции
СДНФ:

СКНФ :

Составим карту Карно для ДНФ
| 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
| 
				 
  | 
				 
 1  | 
				 
 
  | 
				 
  | 
				 
  | 
				 
  | 
| 
				 
  | 
				 
 1  | 
				 1  | 
				 
 
  | 
				 
 1  | 
				 
  | 
| 
				 
  | 
				 
  | 
				 
 
  | 
				 
 1  | 
				 1  | 
				 
  | 
| 
				 
  | 
				 
 
  | 
				 1  | 
				 1  | 
				 
  | 
				 
  | 
| 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
Минимальная ДНФ:

Составим карту Карно для КНФ
| 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
| 
				 
  | 
				 
  | 
				 0  | 
				 
 0  | 
				 0  | 
				 
  | 
| 
				 
  | 
				 
  | 
				 
  | 
				 0  | 
				 
  | 
				 
  | 
| 
				 
  | 
				 
 0  | 
				 
 0  | 
				 
  | 
				 
  | 
				 
  | 
| 
				 
  | 
				 0  | 
				 
  | 
				 
  | 
				 0  | 
				 
  | 
| 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
				 
  | 
Минимальная КНФ:

Минимизация по методу Квайна для ДНФ
Выпишем двоичные наборы на которых функция равна 1и рассортируем их в столбцы по количеству единиц:
| 
			 
  | 
			 0011  | 
			 
  | 
			 
  | 
| 
			 0001  | 
			 1010  | 
			 1101  | 
			 1111  | 
| 
			 0010  | 
			 0101  | 
			 
  | 
			 
  | 
| 
			 
  | 
			 1100  | 
			 
  | 
			 
  | 
После проведенных склеек рассортируем полученные наборы по положению прочерка:
| 
			 _101  | 
			 0_01  | 
			 00_1  | 
			 001_  | 
| 
			 _010  | 
			 
  | 
			 11_1  | 
			 110_  | 
Выполнить дополнительные склейки нельзя.
Получим 7 двоичных наборов:
_010, _101, 0_01, 00_1, 11_1, 001_,110_
| 
			 
  | 
			 0001  | 
			 0011  | 
			 1010  | 
			 1101  | 
			 0010  | 
			 0101  | 
			 1100  | 
			 1111  | 
| 
			 _010+  | 
			 
  | 
			 
  | 
			 1+  | 
			 
  | 
			 1+  | 
			 
  | 
			 
  | 
			 
  | 
| 
			 _101˅  | 
			 
  | 
			 
  | 
			 
  | 
			 1˅  | 
			 
  | 
			 1˅  | 
			 
  | 
			 
  | 
| 
			 0_01^  | 
			 1^  | 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
			 1^  | 
			 
  | 
			 
  | 
| 
			 00_1˅  | 
			 1˅  | 
			 1˅  | 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
| 
			 11_1+  | 
			 
  | 
			 
  | 
			 
  | 
			 1+  | 
			 
  | 
			 
  | 
			 
  | 
			 1+  | 
| 
			 001_^  | 
			 
  | 
			 1^  | 
			 
  | 
			 
  | 
			 1^  | 
			 
  | 
			 
  | 
			 
  | 
| 
			 110_  | 
			 
  | 
			 
  | 
			 
  | 
			 1+  | 
			 
  | 
			 
  | 
			 1+  | 
			 
  | 
Ядро функции: {
}
-
минимальные
 ДНФ
Минимизация по методу Квайна для КНФ
Выпишем двоичные наборы на которых функция равна 0 и рассортируем их в столбцы по количеству нулей:
| 
			 0111  | 
			 0110  | 
			 0100  | 
			 0000  | 
| 
			 1110  | 
			 1001  | 
			 1000  | 
			 
  | 
| 
			 1011  | 
			 
  | 
			 
  | 
			 
  | 
После проведенных склеек получим :
| 
			 _110  | 
			 0_00  | 
			 10_1  | 
			 011_  | 
| 
			 _000  | 
			 
  | 
			 01_0  | 
			 100_  | 
Выполнить дополнительные склейки нельзя.
Получим 7 двоичных наборов:
_110, _000, 0_00, 10_1, 01_0, 011_,100_
| 
			 
  | 
			 0000  | 
			 0100  | 
			 0110  | 
			 0111  | 
			 1000  | 
			 1001  | 
			 1011  | 
			 1110  | 
| 
			 _110+  | 
			 
  | 
			 
  | 
			 0+  | 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
			 0+  | 
| 
			 _000  | 
			 0˅  | 
			 
  | 
			 
  | 
			 
  | 
			 0˅  | 
			 
  | 
			 
  | 
			 
  | 
| 
			 0_00  | 
			 0^  | 
			 0^  | 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
| 
			 10_1+  | 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
			 0+  | 
			 0+  | 
			 
  | 
| 
			 01_0  | 
			 
  | 
			 0˅  | 
			 0˅  | 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
| 
			 011_+  | 
			 
  | 
			 
  | 
			 
  | 
			 0+  | 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
| 
			 100_  | 
			 
  | 
			 
  | 
			 0^  | 
			 
  | 
			 0^  | 
			 
  | 
			 
  | 
			 
  | 
Ядро функции: {
}
В результате получим:
-
минимальная
КНФ
Определим принадлежность функции к основным классам поста:
Проверим функцию на линейность


| 
				 X1  | 
				 X2  | 
				 X3  | 
				 X4  | 
				 f  | 
				 f1  | 
| 
				 0  | 
				 0  | 
				 0  | 
				 0  | 
				 0  | 
				 0  | 
| 
				 0  | 
				 0  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
| 
				 0  | 
				 0  | 
				 1  | 
				 0  | 
				 0  | 
				 1  | 
| 
				 0  | 
				 0  | 
				 1  | 
				 1  | 
				 0  | 
				 0  | 
| 
				 0  | 
				 1  | 
				 0  | 
				 0  | 
				 1  | 
				 0  | 
| 
				 0  | 
				 1  | 
				 0  | 
				 1  | 
				 0  | 
				 1  | 
| 
				 0  | 
				 1  | 
				 1  | 
				 0  | 
				 1  | 
				 1  | 
| 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
				 1  | 
				 0  | 
| 
				 1  | 
				 0  | 
				 0  | 
				 0  | 
				 1  | 
				 0  | 
| 
				 1  | 
				 0  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
| 
				 1  | 
				 0  | 
				 1  | 
				 0  | 
				 0  | 
				 1  | 
| 
				 1  | 
				 0  | 
				 1  | 
				 1  | 
				 1  | 
				 0  | 
| 
				 1  | 
				 1  | 
				 0  | 
				 0  | 
				 0  | 
				 0  | 
| 
				 1  | 
				 1  | 
				 0  | 
				 1  | 
				 0  | 
				 1  | 
| 
				 1  | 
				 1  | 
				 1  | 
				 0  | 
				 0  | 
				 1  | 
| 
				 1  | 
				 1  | 
				 1  | 
				 1  | 
				 1  | 
				 0  | 

Проверим функцию на монотонность


1011>1010
Проверим функцию на сохранение нуля

Проверим функцию на сохранение единицы

Проверим функцию на самодвойственность
| 
				 f  | 
				 f1  | 
| 
				 0  | 
				 0  | 
| 
				 1  | 
				 1  | 
| 
				 1  | 
				 0  | 
| 
				 1  | 
				 0  | 
| 
				 0  | 
				 1  | 
| 
				 1  | 
				 0  | 
| 
				 0  | 
				 1  | 
| 
				 0  | 
				 1  | 
| 
				 0  | 
				 1  | 
| 
				 0  | 
				 1  | 
| 
				 1  | 
				 0  | 
| 
				 0  | 
				 1  | 
| 
				 1  | 
				 0  | 
| 
				 1  | 
				 0  | 
| 
				 0  | 
				 0  | 
| 
				 1  | 
				 1  | 

Построим таблицу поста для этой функции
| 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
			 
  | 
| 
			 
  | 
			 +  | 
			 +  | 
			   | 
			   | 
			   | 
































































