Домашняя контрольная работа Вариант 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.