
- •Факультет
- •Теория вероятностей Программа дисциплины
- •Теоретический материал
- •1. Случайные события
- •2. Случайные величины
- •3. Случайные векторы
- •Контрольная работа
- •Решение типовых задач Случайные события
- •Случайные величины
- •Дискретная математика Программа дисциплины
- •Теоретический материал
- •Классы функций
- •Логические функции двух переменныхf(x1,x2)
- •Контрольная работа
- •Литература
Контрольная работа
1. Записать в двоичной системе номер зачетной книжки, приписать в конце единицы до получения 16 разрядов.
Получается f0(x1, x2, x3, x4).
2. Первые 8 разрядов f0образуют функциюf1(x1, x2, x3).
3. Последние 8 разрядов f0образуют функциюf2(x1, x2, x3), причем, еслиf2= 1 только на двух наборах (x1,x2,x3), то положитьf2(0, 0, 0) = 1.
Задание 1
1. По таблице истинности f1(x1,x2,x3),f2(x1,x2,x3) составить СДНФ и упростить ее (если возможно), обозначив результатыD1,D2.
2. Составить таблицу истинности для f*1. Используя принцип двойственности, получить формулуD*2.
3. Используя правило де Моргана, получить КНФ для D1иD2.
4. По таблице истинности f1, f2составить СКНФ; раскрывая скобки и упрощая, получить ДНФ.
Задание 2
1. Для f2(x1,x2,x3),f0(x1,x2,x3,x4) с помощью карт Карно найти сокращенную ДНФ и сокращенную КНФ.
2. Нарисовать П-схему.
3. Составить таблицу Поста и выделить базисы из набора функций: f1(x1, x2, x3); f2(x1, x2, x3); f3(x1, x2, x3) = x1x2 (x2 x3); f4(x1, x2, x3) = x1 x2x3;f5(x1,x2,x3) = (x1x3)x2.
Задание 3
1. Закодировать свою фамилию простейшим кодом и кодом Хэмминга (4,7).
2. Передано слово, закодированное простейшим кодом и кодом Хэмминга (4,7).
Принято: 0100 [i] 01011001101011000110011[j] 111100,
где i = 0,5 + (–1)a 0,5; j = 0,5 + (–1)b 0,5.
Какое слово передано?
Решение типовых задач
Упростить ДНФ можно, используя теоремы поглощения и Блейка. Если в ДНФ какое-нибудь слагаемое входит сомножителем в другие слагаемые, то оно их поглощает.
Пример 7.Упростить:
x
x y
x z
x
= x;
x
=
.
Часто, чтобы применить поглощение, необходимо предварительно использовать правило Блейка. Это можно сделать в случае, если одно слагаемое содержит множитель, а другое слагаемое содержит отрицание этого множителя.
Пример 8.Упростить:
или
При применении правил де Моргана не забывать ставить дизъюнкцию в скобки.
Пример 9.Перейти от ДНФ к КНФ:
а)
Ставим над ДНФ два отрицания. Применяя правило де Моргана к нижнему отрицанию, получаем новое ДНФ, затем, применяя правило к верхнему отрицанию, получаем КНФ:
б)
Если
применить к
правило Блейка, нужно дописать
,
но оно уже есть, поэтому отбрасываем
,
используя формулу справа налево, получаем
.
При использовании карт Карно для упрощения ДНФ надо не забывать, что объединять кругами можно только 2kсоседних единиц (т. е. 1, 2, 4, 8, 16, …); круги должны быть максимального размера; число кругов должно быть минимальным; карты Карно соединяются по кругу.
Пример 10.Составить упрощенную ДНФ (рис. 13), изобразить соответствующую П-схему.
Выписывая
сомножители надо учитывать только
неизменяющиеся в круге переменные,
получаем
.
Рис. 13
Нарисуем П-схему, реализующую эту функцию. Конъюнкции отвечает последовательное соединение, а дизъюнкции параллельное (рис. 14).
Рис. 14
Для проверки линейности функции можно использовать таблицу истинности. Если число нулей не равно числу единиц, то функция нелинейная. В случае равенства числа нулей и единиц надо построить полином Жегалкина.
Пример 11.Проверить линейность функции:
а) функция f(x,y) задана таблично.
x y |
f(x, y) |
00 01 10 11 |
1 0 0 1 |
Полином от двух переменных имеет вид
P(x, y) = a0 + a1 x + a2 y + a3 x y,
где коэффициенты a0, a1, a2, a3равны 0 или 1.
Для нашей функции:
P(0,0) = a0 = 1;
P(0,1) = a0 + a2 = 1+ a2 = 0, a2 = 1;
P(1,0) = a0 + a1 = 1+ a1 =0, a1 = 1;
P(1,1) = a0 + a1 + a2 + a3 = 1 + 1 + 1 + a3 = 1, a3 = 0.
Значит P(x,y) = 1 +x+y – линейная функция.
б) функция f(x,y) = (xy)x.
Если функция задана формулой, полином Жегалкина можно получить тождественными преобразованиями, например, в нашем случае
,
значит, функция f(x,y) нелинейная.
При построении
использовали свойства x+ x = 0
и.
При нахождении базисов по таблице Поста следует помнить, что базис – это минимальная полная система, поэтому проверку на полноту начинаем с наборов из одной функции, постепенно увеличивая их число. Найденные базисы не включаются в большие наборы.
Пример 12.Найти базисы по таблице Поста.
f |
T0 |
T1 |
L |
M |
S |
f1 f2 f3 f4 |
+ + – + |
– – + + |
+ – – – |
– – – + |
– + – – |
В каждом столбце есть минус, следовательно, система полная. Базисов из одной функции нет, так как в каждой строке есть плюс.
Проверяем наборы из двух функций на полноту: {f1,f3} – базис, { f2,f3} – базис, других базисов нет.