
- •Размещено на http://www.Allbest.Ru/
- •1. Булевы функции. Суперпозиции
- •1.1 Задание №1
- •1.2 Задание №2
- •1.3 Задание №3
- •1.4 Задание №4
- •2. Булевы функции и теория множеств
- •2.1 Задание №1
- •2.2 Задание №2
- •2.3 Задание №3
- •2.4 Задание №4
- •3. Нормальные формы и полиномы
- •3.1 Задание №1
- •3.2 Задание №2
- •4. Классы Поста
- •4.1 Задание №1
- •4.2 Задание №2
- •4.3 Задание № 3
- •5. Минимизация нормальных форм всюду определенных булевых функций
- •5.1 Задание № 1
- •5.2 Задание № 2
4.1 Задание №1
Доопределить функции f(x,y,z), g(x,y,z), h(x,y,z) так, чтобы f M, g L, h S.
Если построение какой-либо функции невозможно, докажите это.
Выясните вопрос о принадлежности построенных функций к классам T0 и T1.
f(x,y,z)= (–-0 -01-)
g(x,y,z)= (0-10 –-1)
h(x,y,z)= (–10 –01)
Изобразим развёрнутую таблицу данных функций
-
x
y
Z
F
g
H
0
0
0
-
0
-
0
0
1
-
-
0
0
1
0
-
1
1
0
1
1
0
0
0
1
0
0
-
-
-
1
0
1
0
-
-
1
1
0
1
-
0
1
1
1
-
1
1
Доопределим функцию f, используя определение монотонной функции.
Так как f (1,0,1) = 0, то на всех наборах, предшествующих набору (1,0,1), функция тоже должна равняться 0, т. е. f (0, 0, 1) = f (1, 1, 1) = 0.
Так как f (1,1,0) = 1, то на всех наборах, которым предшествует набор (0,0,1), функция f должна принять значение 0, т. е. f (0, 1, 0) = f(1,0,0)=1. По определению монотонной функции f(0,0,0)=0, f(1,1,1)=1.
Получаем: f (x, у, z) = (00101011).
Доопределим функцию g, учитывая, что она — линейная. Общий вид линейной функции от переменных х, у, z имеет вид: g(x,y,z) = a0 + a1x + a2y + a3z.
Будем подставлять наборы значений аргументов, на которых функция определена.
Получим систему соотношений:
0 = a0 + a1·0 + a2·0 + a3·0
1 = a0 + a1·0 + a2·1 + a3·0
0 = a0 + a1·0 + a2·1 + a3·1
1 = a0 + a1·1 + a2·1 + a3·1
a0 = 0
a0 + a2 = 1
a2 = 1
a2 + a3 = 0
a3 = 1
a1 + a0 +a2 + a3 = 1
a1 = 1
Итак, g(x,y,z) = 0 + x +y + z = x + y + z
Исходя из этой формулы, найдём значения функции g на тех наборах, на которых она была не определена.
В итоге имеем: g(x,y,z) = (01101111). Доопределим функцию h, используя определение самодвойственной функции. Так как наборы (0, 0, 0) и (1, 1, 1) противоположны и h(0, 0, 0) = 0 => h(1, 1, 1) = 1.
Противоположными парами наборов значений переменных являются также (0,0,1) и (1,1,0), (0,1,0) и (1,0,1), (0,1,1) и (1,0,0). Используя известные значения функции h , получим:
Итак, h (x,y,z)= (01101001)
Т
ак
как h
(0,0,0) = g(0,0,0)
= 0 ≠ f
(0,0,0), то f
T0
,
g
T0,
h
T0.
Т ак как f (1,1,1) = 1 ≠ f (1,1,1) то f T1, g T1, h T1
4.2 Задание №2
Можно ли из функции f(x,y,z) с помощью суперпозиций
получить g(x,y,z) ?
Верно ли, что f(x,y,z) [g]? ([g] — замыкание класса {g})
f (x,y,z)= (0110 1111)
g(x,y,z) = (1010 0100)
Проверим f(x,y,z) на принадлежность к классам Поста
f (0,0,0) = 0 => f T0; f (1,1,1) = 1 => f T1;
(
0,
0, 1)
(1, 0, 1) и
f
(0,
0, 0) > f
(1,
0, 1) => f
M;
f (0,0,1)= f (1,1,0)=> f S
-
x
y
z
f
0
0
0
0
0
0
1
1
(x⊕1)(y⊕1)z
0
1
0
1
(x⊕1) y(z⊕1)
0
1
1
0
1
0
0
1
x(y⊕1)(z⊕1)
1
0
1
1
x(y⊕1)z
1
1
0
1
xy(z⊕1)
1
1
1
1
xyz
f (x,y,z)= (x⊕1)(y⊕1)z ⊕ (x⊕1)y(z⊕1) ⊕ x(y⊕1)(z⊕1) ⊕ x(y⊕1)z ⊕ xy(z⊕1) ⊕ xyz = xyz ⊕ xz ⊕ yz ⊕ z ⊕ xyz ⊕ xy ⊕ zy ⊕ y ⊕ xyz ⊕ xy ⊕ xz ⊕ x ⊕ xyz ⊕ xz ⊕ xyz ⊕ xy ⊕ xyz = xy ⊕ xz ⊕ z ⊕ y ⊕x
Т ак как в полиноме функции f присутствуют конъюнкции, то f L.
Итак, мы видим, что функция f(x,y,z) сохраняет ноль и сохраняет единицу, значит, система {f}функционально полна в слабом смысле, и с помощью суперпозиций из f нельзя получить любую булеву функцию.
Проверим функцию g(x, y,z) на принадлежность к классам Поста:
f (0,0,0) = 1 => f T0; f (1,1,1) = 0 => f T1;
( 0, 0, 0) (1, 1, 1) и f (0, 0, 0) > f (1, 1, 1) => f M;
f (0,1,1)= f (1,0,0)=> f S
-
x
y
Z
g
0
0
0
1
(x⊕1)(y⊕1)(z⊕1)
0
0
1
0
0
1
0
1
(x⊕1) y(z⊕1)
0
1
1
0
1
0
0
0
1
0
1
1
x(y⊕1)z
1
1
0
1
xy(z⊕1)
1
1
1
0
f (x,y,z)= (x⊕1)(y⊕1)(z⊕1)⊕ (x⊕1)y(z⊕1) ⊕ x(y⊕1)z ⊕ xy(z⊕1) = xyz ⊕ xz ⊕ yz ⊕ z ⊕ xy ⊕ x ⊕ y ⊕ 1 ⊕ xyz ⊕ xy ⊕ zy ⊕ y ⊕ xyz ⊕ xz ⊕ xyz ⊕ xy = xy ⊕ x ⊕ z ⊕ 1
З
начит,
g
L.
Так как g
не принадлежит ни одному из классов
Поста, то g
– функционально полный класс = > так
как f
функционально сильный в слабом смысле
класс, то f
.