Uploaded by Сергей Царев

Контрольная работа по математической логике

advertisement
Домашняя контрольная работа
Вариант 6
Задание 1
Задано универсальное множество 𝑈 = {1,2,3,4,5,6}, и в нем подмножества
𝐴, 𝐵. Выполнить действия: 𝐴 ∩ 𝐵, 𝐴 ∪ 𝐵, 𝐴 − 𝐵, 𝐴 △ 𝐵 и 𝐴. Решение представить в
виде таблицы.
𝐴 = {5,6}, 𝐵 = {3,4,5}
Решение
𝐴∩𝐵
{5}
𝐴∪𝐵
{3,4,5,6}
𝐴−𝐵
{6}
𝐴△𝐵
{3,4,6}
𝐴
{1,2,3,4}
Задание 2
Дана функция алгебры логики
𝑓 = 𝑦 ∨ (𝑥 → 𝑦𝑧)
1. Построить таблицу истинности.
2. Упростить, применяя основные равносильности алгебры логики.
3. Построить СДНФ, СКНФ.
4. Представить в виде канонического многочлена Жегалкина.
5. Определить принадлежность основным классам булевых функций.
Решение
1. Таблица истинности:
𝑥
𝑦
𝑧
𝑦𝑧
𝑥 → 𝑦𝑧
𝑦
𝑦 ∨ (𝑥 → 𝑦𝑧)
0
0
0
0
1
1
1
0
0
1
0
1
1
1
0
1
0
0
1
0
1
0
1
1
1
1
0
1
1
0
0
0
0
1
1
1
0
1
0
0
1
1
1
1
0
0
0
0
0
1
1
1
1
1
0
1
2.
Упростим выражение функции.
дизъюнкцию
и
отрицание,
затем
Сначала выразим импликацию через
воспользуемся
ассоциативностью
и
коммутативностью дизъюнкции:
𝑦 ∨ (𝑥 → 𝑦𝑧) = 𝑦 ∨ (𝑥 ∨ 𝑦𝑧) = 𝑦 ∨ 𝑥 ∨ 𝑦𝑧 = 𝑥 ∨ 𝑦 ∨ 𝑦𝑧.
Теперь применим еще раз ассоциативность дизъюнкции, дистрибутивность
дизъюнкции относительно конъюнкции и закон исключенного третьего, затем
свойство константы 1 и еще раз ассоциативность дизъюнкции:
𝑥 ∨ 𝑦 ∨ 𝑦𝑧 = 𝑥 ∨ (𝑦 ∨ 𝑦𝑧) = 𝑥 ∨ ((𝑦 ∨ 𝑦)(𝑦 ∨ 𝑧)) = 𝑥 ∨ (1(𝑦 ∨ 𝑧)) = 𝑥 ∨ (𝑦 ∨ 𝑧) =
= 𝑥 ∨ 𝑦 ∨ 𝑧.
Упрощенное выражение получено.
3.
По таблице истинности выпишем СДНФ и СКНФ.
СДНФ строится по
строкам таблицы истинности, в которых функция принимает значение 1:
𝑥 𝑦 𝑧 ∨ 𝑥 𝑦𝑧 ∨ 𝑥𝑦𝑧 ∨ 𝑥𝑦𝑧 ∨ 𝑥𝑦 𝑧 ∨ 𝑥𝑦𝑧 ∨ 𝑥𝑦𝑧.
СКНФ строится по строкам таблицы истинности, в которых функция
принимает значение 0 (такая строка всего одна, поэтому СКНФ состоит из одной
элементарной дизъюнкции):
𝑥∨𝑦∨𝑧
4.
Многочлен
Жегалкина
получим
из
СДНФ
равносильными
преобразованиями:
𝑥 𝑦 𝑧 ∨ 𝑥 𝑦𝑧 ∨ 𝑥𝑦𝑧 ∨ 𝑥𝑦𝑧 ∨ 𝑥𝑦 𝑧 ∨ 𝑥𝑦𝑧 ∨ 𝑥𝑦𝑧 =
= (1 ⊕ 𝑥)(1 ⊕ 𝑦)(1 ⊕ 𝑧) ⊕ (1 ⊕ 𝑥)(1 ⊕ 𝑦)𝑧 ⊕ (1 ⊕ 𝑥)𝑦(1 ⊕ 𝑧) ⊕ (1 ⊕ 𝑥)𝑦𝑧
⊕ 𝑥(1 ⊕ 𝑦)(1 ⊕ 𝑧) ⊕ 𝑥(1 ⊕ 𝑦)𝑧 ⊕ 𝑥𝑦𝑧 =
= (1 ⊕ 𝑥)(1 ⊕ 𝑦)((1 ⊕ 𝑧) ⊕ 𝑧) ⊕ (1 ⊕ 𝑥)𝑦((1 ⊕ 𝑧) ⊕ 𝑧) ⊕ 𝑥(1 ⊕ 𝑦)((1 ⊕ 𝑧) ⊕ 𝑧)
⊕ 𝑥𝑦𝑧 =
= (1 ⊕ 𝑥)(1 ⊕ 𝑦) ⊕ (1 ⊕ 𝑥)𝑦 ⊕ 𝑥(1 ⊕ 𝑦) ⊕ 𝑥𝑦𝑧 =
= 1 ⊕ 𝑥 ⊕ 𝑦 ⊕ 𝑥𝑦 ⊕ 𝑦 ⊕ 𝑥𝑦 ⊕ 𝑥 ⊕ 𝑥𝑦 ⊕ 𝑥𝑦𝑧 =
= 1 ⊕ (𝑥 ⊕ 𝑥) ⊕ (𝑦 ⊕ 𝑦) ⊕ (𝑥𝑦 ⊕ 𝑥𝑦 ⊕ 𝑥𝑦) ⊕ 𝑥𝑦𝑧 = 1 ⊕ 𝑥𝑦 ⊕ 𝑥𝑦𝑧.
5.
Определим принадлежность основным классам булевых функций.
Из
таблицы истинности видно, что 𝑓(0,0,0) = 1, 𝑓(1,1,1) = 1. Следовательно, 𝑓 ∉ 𝑇0,
𝑓 ∈ 𝑇1. Вектор значений функции
𝑓:
11111101
при переворачивании и
инвертировании дает вектор значений двойственной функции: 01000000. Понятно,
что
𝑓 ∗ ≠ 𝑓,
поэтому
𝑓 ∉ 𝑆.
Многочлен Жегалкина, который мы построили в
предыдущем пункте, содержит нелинейные слагаемые 𝑥𝑦 и 𝑥𝑦𝑧: следовательно,
Наконец, мы имеем:
𝑓 ∉ 𝐿.
000 < 110,
но
𝑓(0,0,0) = 1 > 0 = 𝑓(1,1,0).
Следовательно, 𝑓 ∉ 𝑀.
Задание 3
1) 𝐴(𝑥) = "𝑥 < 0", 𝐵(𝑥) = "𝑥 4 − 𝑥 ≤ 0";
2) 𝐴(𝑥, 𝑦) = "𝑥 < 𝑦", 𝐵(𝑥, 𝑦) = "𝑥 + 𝑦 = 0".
Найти область истинности предикатов 𝐴(𝑥), 𝐵(𝑥), 𝐴(𝑥) ∨ 𝐵(𝑥), 𝐴(𝑥), 𝐵(𝑥),
𝐴(𝑥) → 𝐵(𝑥), 𝐴(𝑥) ∨ 𝐵(𝑥). Применить к предикатам 𝐴(𝑥) и 𝐵(𝑥) кванторные
операции. Будут ли предикаты 𝐴(𝑥, 𝑦) и 𝐵(𝑥, 𝑦) равносильны или один из них
является следствием другого?
Применить к предикатам
𝐴(𝑥, 𝑦)
и
𝐵(𝑥, 𝑦)
кванторные операции.
Решение
Область истинности предиката 𝐴(𝑥) — это множество тех 𝑥, для которых
𝑥 < 0, то есть множество (−∞, 0).
Область истинности предиката 𝐵(𝑥) — это множество тех 𝑥, для которых
𝑥 4 − 𝑥 ≤ 0, то есть множество [0,1].
Область истинности предиката 𝐴(𝑥) ∨ 𝐵(𝑥) — это объединение (−∞, 0) ∪
[0,1] = (−∞, 1].
Область истинности предиката 𝐴(𝑥) — это множество тех 𝑥, для которых
𝐴(𝑥) ложно, то есть множество тех 𝑥, для которых 𝑥 ≥ 0, то есть множество
[0, +∞).
Область истинности предиката 𝐵(𝑥) — это множество тех 𝑥, для которых
𝐵(𝑥) ложно, то есть множество тех 𝑥, для которых 𝑥 4 − 𝑥 > 0, то есть множество
(−∞, 0) ∪ (1, +∞).
Область истинности предиката 𝐴(𝑥) → 𝐵(𝑥) — это все равно что область
истинности предиката 𝐴(𝑥) ∨ 𝐵(𝑥), то есть объединение [0, +∞) ∪ [0,1] = [0, +∞).
Применим к предикатам
𝐴(𝑥)
и
𝐵(𝑥)
кванторные операции.
Если на
предикат 𝐴(𝑥) навесить квантор всеобщности, то получится высказывание ∀𝑥𝐴(𝑥),
которое означает, что все числа меньше нуля. Очевидно, что это высказывание
ложно. Если на предикат 𝐴(𝑥) навесить квантор существования, то получится
высказывание ∃𝑥𝐴(𝑥), которое означает, что существует число, которое меньше
нуля. Это истинное высказывание: такие числа действительно существуют.
Если на предикат
высказывание
∀𝑥𝐵(𝑥),
𝐵(𝑥)
навесить квантор всеобщности, то получится
которое означает, что для всех чисел выполняется
неравенство 𝑥 4 − 𝑥 ≤ 0. Это высказывание ложно: не для всех чисел выполняется
такое неравенство. Например, для числа 𝑥 = 2 это неравенство ложно. Если на
предикат
∃𝑥𝐵(𝑥),
𝐵(𝑥)
навесить квантор существования, то получится высказывание
которое означает, что существует число, для которого выполняется
неравенство 𝑥 4 − 𝑥 ≤ 0. Это истинное высказывание: такие числа действительно
существуют. Например, 𝑥 = 0.
Предикаты 𝐴(𝑥, 𝑦) и 𝐵(𝑥, 𝑦) не равносильны и ни один из них не является
следствием другого, потому что существуют такие пары (𝑥, 𝑦), для которых 𝐴(𝑥, 𝑦)
истинно, а 𝐵(𝑥, 𝑦) ложно (например, 𝑥 = 0, 𝑦 = 1), и существуют такие пары (𝑥, 𝑦),
для которых 𝐴(𝑥, 𝑦) ложно, а 𝐵(𝑥, 𝑦) истинно (например, 𝑥 = 1, 𝑦 = −1).
Применим к предикатам
𝐴(𝑥, 𝑦)
и
𝐵(𝑥, 𝑦)
кванторные операции.
Перечислим все возможные комбинации кванторов.
Высказывание ∀𝑥∀𝑦𝐴(𝑥, 𝑦) означает, что для любых чисел 𝑥, 𝑦 выполняется
неравенство 𝑥 < 𝑦. Это ложное высказывание: например, для 𝑥 = 1, 𝑦 = 0 неверно,
что 𝑥 < 𝑦.
Высказывание ∀𝑥∃𝑦𝐴(𝑥, 𝑦) означает, что для любого 𝑥 можно подобрать
такое 𝑦, чтобы выполнялось неравенство 𝑥 < 𝑦. Это истинное высказывание: для
любого 𝑥 можно взять 𝑦 = 𝑥 + 1.
Высказывание ∃𝑥∀𝑦𝐴(𝑥, 𝑦) означает, что есть такое число 𝑥, которое меньше
всех чисел (и в том числе даже меньше самого себя). Это ложное высказывание.
Высказывание ∀𝑦∃𝑥𝐴(𝑥, 𝑦) означает, что для любого 𝑦 можно подобрать
такое 𝑥, чтобы выполнялось неравенство 𝑥 < 𝑦. Это истинное высказывание: для
любого 𝑦 можно взять 𝑥 = 𝑦 − 1.
Высказывание ∃𝑦∀𝑥𝐴(𝑥, 𝑦) означает, что есть такое число 𝑦, которое больше
всех чисел. Это ложное высказывание.
Высказывание ∃𝑥∃𝑦𝐴(𝑥, 𝑦) означает, что существуют такие числа 𝑥, 𝑦, для
которых выполняется неравенство 𝑥 < 𝑦. Это истинное высказывание: например,
𝑥 = 0, 𝑦 = 100500.
Высказывание ∀𝑥∀𝑦𝐵(𝑥, 𝑦) означает, что для любых чисел 𝑥, 𝑦 выполняется
равенство
𝑥 + 𝑦 = 0.
неверно, что 𝑥 + 𝑦 = 0.
Это ложное высказывание:
например, для
𝑥 = 1, 𝑦 = 0
Высказывание ∀𝑥∃𝑦𝐵(𝑥, 𝑦) означает, что для любого 𝑥 можно подобрать
такое 𝑦, чтобы выполнялось равенство 𝑥 + 𝑦 = 0. Это истинное высказывание: для
любого 𝑥 надо взять 𝑦 = −𝑥.
Высказывание ∃𝑥∀𝑦𝐴(𝑥, 𝑦) означает, что есть такое число 𝑥, что равенство
𝑥 + 𝑦 = 0 выполняется для любого 𝑦. Это ложное высказывание.
Высказывание ∀𝑦∃𝑥𝐵(𝑥, 𝑦) означает, что для любого 𝑦 можно подобрать
такое 𝑥, чтобы выполнялось равенство 𝑥 + 𝑦 = 0. Это истинное высказывание: для
любого 𝑦 надо взять 𝑥 = −𝑦.
Высказывание ∃𝑦∀𝑥𝐴(𝑥, 𝑦) означает, что есть такое число 𝑦, что равенство
𝑥 + 𝑦 = 0 выполняется для любого 𝑥. Это ложное высказывание.
Высказывание ∃𝑥∃𝑦𝐵(𝑥, 𝑦) означает, что существуют такие числа 𝑥, 𝑦, для
которых выполняется равенство 𝑥 + 𝑦 = 0. Это истинное высказывание: например,
𝑥 = 100500, 𝑦 = −100500.
Download