Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Дискретная матем. (контр. раб.).doc
Скачиваний:
17
Добавлен:
23.08.2019
Размер:
1.95 Mб
Скачать

Контрольные вопросы

1. Сколько ячеек должно быть на карте Карно для функции пяти переменных?

2. Можно ли найти минимальную форму записи логической функции с помощью метода Квайна?

3. Можно ли приступить к кодированию нулями и единицами (метод Квайна – Мак-Класки) следующей формы записи логической функции?

4. Обязательно ли включать в контуры ячейки с прочерками при минимизации неполностью определенных логических функций?

5. Для какой из функций: или необходимо найти сокращенную нормальную форму при минимизации неполностью определенных логических функций?

9. Свойства логических функций

Функция f(x1x2, ..., xi–1xixi+1, ..., xn) называется существенно зависящей от аргумента xi, если хотя бы на одном наборе входных переменных

f(x1x2, ..., xi1, 0, xi+1, ..., xn)  f(x1x2, ..., xi1, 1, xi+1, ..., xn)

Функция называется сохраняющей нуль, если она равна нулю на нулевом наборе данных.

f(x1x2, ..., xn) = 0 при всех x= 0, = 1, 2, ..., n

Функция называется сохраняющей единицу, если она равна единице на единичном наборе данных.

f(x1x2, ..., xn) = 1 при всех x= 1, = 1, 2, ..., n

Функция называется самодвойственной, если она принимает противоположные значения на противоположных наборах аргументов.

Функция называется монотонной, если выполняется условие

f(x1x2, …, xn)  f(x1’, x2’, …, xn’) при всех xi  xi’, i = 1, 2, ..., n

Замечание: если ни одно из условий xi  xi’ для всех i от 1 до n или xi  xi’ для всех i от 1 до n не выполняется, то говорят, что наборы xi и xiнесравнимы. Пусть , , . Тогда , а и  , а также и  будут несравнимыми.

Функция называется линейной, если ее можно представить линейным полиномом Жегалкина

,

где a0a1, ..., an - константы, которые могут принимать значения 0 и 1.

Пример 1. Определим свойства функции логического умножения И

  1. Сохраняет нуль, так как f(0, 0) = 0.

  2. Сохраняет единицу, так как f(1, 1) = 1.

  3. Не является самодвойственной, так как .

  4. Монотонна, так как

f(1, 1)   f(0, 1),

f(1, 1)   f(1, 0),

f(1, 1)   f(0, 0),

f(0, 1)   f(0, 0),

f(1, 0)   f(0, 0),

остальные наборы входных переменных несравнимы.

  1. f(x1x2) = x1x2 не является линейной, так как ее невозможно представить в виде линейного полинома Жегалкина.

Пример 2. Определить свойства логической функции, заданной таблицей

x1

0

0

0

0

1

1

1

1

x2

0

0

1

1

0

0

1

1

x3

0

1

0

1

0

1

0

1

f

0

1

0

1

0

1

0

1

f(0, 0, 0) = f(1, 0, 0)

f(0, 0, 1) = f(1, 0, 1)

f(0, 1, 0) = f(1, 1, 0)

f(0, 1, 1) = f(1, 1, 1) f не зависит существенно от x1

f(0, 0, 0) = f(0, 1, 0)

f(0, 0, 1) = f(0, 1, 1)

f(1, 0, 0) = f(1, 1, 0)

f(1, 0, 1) = f(1, 1, 1) f не зависит существенно от x2

f(0, 0, 0) f(0, 0, 1) f существенно зависит от x3

f(0, 0, 0) = 0 f сохраняет ноль

f(1, 1, 1) = 1 f сохраняет единицу

f(0, 0, 0) f(1, 1, 1)

f(0, 0, 1) f(1, 1, 0)

f(0, 1, 0) f(1, 0, 1)

f(0, 1, 1) f(1, 0, 0) f самодвойственна

f(1, 1, 1) > f(0, 0, 0)

f(1, 1, 0) = f(1, 0, 0)

f(1, 1, 0) = f(0, 1, 0)

f(1, 0, 1) > f(1, 0, 0)

f(1, 0, 1) = f(0, 0, 1)

f(0, 1, 1) > f(0, 1, 0)

f(0, 1, 1) = f(0, 0, 1) f монотонна

Из таблицы значений функции f понятно, что f = x3. Эта запись одновременно является и полиномом Жегалкина для функции f. Данный полином – линейный (так как в нем нет слагаемых, являющихся конъюнкциями нескольких переменных), следовательно, и функция f является линейной.

Пример 3. Определить свойства логической функции, заданной таблицей

x

0

0

0

0

1

1

1

1

y

0

0

1

1

0

0

1

1

z

0

1

0

1

0

1

0

1

f

1

1

0

1

0

1

0

1

f(0, 0, 0) f(1, 0, 0) f существенно зависит от x

f(0, 0, 0) f(0, 1, 0) f существенно зависит от y

f(0, 1, 0) f(0, 1, 1) f существенно зависит от z

f(0, 0, 0) = 1 f не сохраняет ноль

f(1, 1, 1) = 1 f сохраняет единицу

f(0, 0, 0) = f(1, 1, 1) f не является самодвойственной

f(0, 1, 0) < f(0, 0, 0) f не является монотонной

Получить полином Жегалкина можно из ДСНФ функции. Чтобы упростить данный процесс, попробуем сначала минимизировать нашу функцию, например, с помощью карты Карно.

f(x, y, z) = z +xy = z xy xy z = z (x 1)(y 1) (x 1)(y 1)z =

= z xy x y 1 xyz xz yz z = xyz xy xz yz x y 1

Замечание:

Были использованы следующие преобразования:

a + b = a b ab

a = a 1

a a = 0

a 0 = a

Полученный полином Жегалкина не является линейным, следовательно, исходная функция f – не линейная.