Рассмотрим практическое применение изложенного материала.
Перечень базисов.
1. - базис Пирса (элемент Вебба);
2. - базис Шеффера;
3. - коипликация, эквиваленция;
4. - импликативный базис;
5. - импликация, коимпликация;
6. - импликация, сложение по модулю 2;
7. - коимпликативный базис;
8. - импликативный базис;
9. - конъюнктивный базис Буля;
10. - дизъюнктивный базис Буля;
11. - коимпликативный базис (коимпликация, константа 1);
12. - эквиваленция, конъюнкция, константа 0;
13. - эквиваленция, дизъюнкция, константа 0;
14. - сложение по модулю 2, конъюнкция, эквиваленция;
15. - сложение по модулю 2, дизъюнкция, эквиваленция;
16. - базис Жегалкина;
17. - сложение по модулю 2, дизъюнкция, константа 1.
Базис минимальный, если удаление хотя бы одной функции превращает систему ФАЛ в неполную.
Проблема простейшего представления логических функций сводится к выбору не только базиса, но и формы наиболее экономного представления этих функций.
Если сравнить в смысле минимальности различные формы представлений ФАЛ, то станет ясно, что нормальные формы экономичнее совершенных нормальных форм, но с другой стороны, нормальные формы не дают однозначного представления.
Минимальная (тупиковая) форма представления ФАЛ содержит минимальное количество термов и переменных в термах , дальнейшие упрощения минимальной формы не возможны.
Дисциплина «Методы логического проектирования»рассматривает теоретические аспекты минимизации логических функций. Методов минимизации несколько. Перечислим основные: Метод неопределённых коэффициентов для базиса И- ИЛИ - НЕ, метод Квайна, метод минимизирующих карт и т.д. Подробно каждый из методов рассмотрен в пособии А.Я. Савельева «Основы информатики».
Упрощение сложных логических выражений может быть осуществлено по основным законам и аксиомам, изложенным выше.
Пример.
Пусть задана логическая функция с помощью таблицы истинности:F(a,b,c) = A916.
Представить её в базисе Жегалкина, используя не более 4 - х элементов.
Решение.
A | B | c | F | |
* | ||||
* | ||||
* | ||||
* |
Построим СДНФ для заданной функции.
Так как задан базис Жегалкина, целесообразно элементарные минтермы соединить операцией сложение по модулю 2.
СДНФ: a b c ⊕ ab c ⊕ a b c ⊕ abc.
Упростим полученную формулу:
a b c ⊕ ab c ⊕ a b c ⊕ abc = a c(b ⊕ b) ⊕ a (b c ⊕ bc) = a c ⊕ a(b~c) = a c ⊕ a(b ⊕ c) = a c ⊕ ab ⊕ a c = c(a⊕ a) ⊕ ab = c ⊕ ab =
c ⊕ ab⊕1.
Рассмотрим практическое применение изложенного материала.
Задача 1. На вопрос, кто из трех студентов изучал логику, был получен следующий ответ: если изучал первый, то изучал и второй, но неверно, что если изучал третий, то изучал логику и второй. Кто из студентов изучал логику?
Решение.
Обозначим через В1, В2, В3 высказывания, состоящие в том, что соответственно первый, второй, третий студенты изучали логику. Из условия задачи следует истинность высказывания:
(В1 → В2) & ( )
Так как В1 → В2 = 1 + В2 и = В3 & 2, получаем следующее выражение:
( 1 & В2) (В3 2) = 1 2 В3 & В2 2 В3 = 1 2 В3
Из полученного выражения следует, что логику изучал третий студент.
Задача 2. Алеша, Боря и Гриша нашли в земле сосуд. Рассматривая находку, каждый высказал по два предложения:
Алеша: это сосуд греческий и изготовлен в 5-ом веке.
Боря: это сосуд финикийский и изготовлен в 3-ем веке.
Гриша: это сосуд не греческий и изготовлен в 4-ом веке.
Каждый из них оказался прав только в одном из предположений. Где и в каком веке изготовлен сосуд?
Решение.
Примем следующие обозначения:
G – сосуд греческий;
F – сосуд финикийский;
V3 – сосуд изготовлен в 3-ем веке;
V4 – сосуд изготовлен в 4-ом веке;
V5 – сосуд изготовлен в 5-ом веке;
Формализуем условие задачи, используя приведенные выражения:
Высказывание Алеши G 5 ˅ V5 = 1.
Высказывание Бори F 3˅ V3 = 1.
Высказывание Гриши 4 ˅ G V4 =1 (так как каждый был прав только в одном предположении из двух)
Полученные высказывания логически перемножаем (так как высказывался Алеша, Боря и Гриша), результат должен быть равен 1, т.е.
(G 5 ˅ V5) (F 3 ˅ V3) ( 4 ˅ G V4)
Выполним умножение по действиям:
1) (G 5 ˅ V5) (F 3 ˅ V3) = G 5 F 3 ˅ G 5 V3 ˅ V5 F 3 ˅ V5 V3;
Конъюнкция G 5 F 3 = 0, т.к. не могут быть одновременно две страны.
Конъюнкция V5 V3 = 0, т.к. не могут быть одновременно 3-й и 5-й века.
В итоге получаем после умножения первых двух скобок: G 5 V3 ˅ V5 F 3
2) (G 5 V3 ˅ V5 F 3) ( 4 + G V4) = G 5 V3 4 + V5 F 3 G V4 +
+ V5 F 3 4 + G 5 V3 G V4 = 1
Конъюнкции: G 5 V3 4, G 5 V3 G V4, V5 F 3 G V4 равны нулю.
В итоге получаем: V5 F 3 4 = F 3 4 V5 = 1, т.е. сосуд финикийский, изготовлен в 5-ом веке.
Если обратить внимание на то, что первое и второе высказывание можно записать используя операцию сложение по модулю 2, а третье высказывание – это эквиваленция, мы приходим к более простым формулам и преобразованиям:
(G ⊕ V5) (F ⊕ V3) (G ~ V4) = (G ⊕ V5) (F ⊕ V3) ( ⊕ V4) = 1
Упростим данное выражение:
(G ⊕ V5) (F ⊕ V3) = G F ⊕ G V3 ⊕ F V5 ⊕ V5 V3
Конъюнкции G F и V5 V3 равны нулю.
(G V3 ⊕ F V5) ( ⊕ V4) = G V3 ⊕ G V3 V4 ⊕ F V5 ⊕ F V5 V4 = 1
Конъюнкции G V3 , G V3 V4, F V5 V4 равны нулю, следовательно остается конъюнкция F V5 , т.е. сосуд финикийский, 5-й век.