Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Андросенко В.А. - Дискретная математика - метод. указания для I курса.docx
Скачиваний:
299
Добавлен:
16.05.2015
Размер:
1.96 Mб
Скачать

Задачи для самостоятельного решения

Задача 1. Обойти тремя способами бинарное ордерево.

a

e

а) б)

l

k

f

b

n

m

b

c

k

а

p

e

d

q

l

c

f

m

d

Задача 2. Нарисовать дерево, соответствующее списку

а) (а,(b,(c,d)), (e,f),k);

б) (а,(b,(c,(d,e))), (k(l,m)),p);

в) ((a,b), (c,(d,e),(f,k))).

Задача 3. Написать список висячих вершин данного ордерева

а) б)

c

a

s

t

e

d

m

k

b

f

m

l

p

Задача 4. Найти глубину списка.

а) ((a,(b,(c,d))), (f,e),k); б) (a,(b,(c,(d,k))), (e,(f,((q,m),h)))).

Тема 3. Булевы функции

Булевой функцией y=f(x1, x2,…, xn) от n переменных x1, x2,…, xn называется любая функция, в которой аргументы и функция могут принимать значение либо 0, либо 1, т.е. булева функция это правило, по которому по произвольному набору нулей и единиц (x1, x2,…, xn) ставится в соответствие значение 0 или 1.

Вектором значений булевой функции у= f(x1, x2,…, xn) называется упорядоченный набор всех значений функции f, при котором значения упорядочены по лексикографическому порядку.

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

  1. Булева функция f(x1, x2,…, xn), принимающая значение 1 на всех наборах нулей и единиц, называется константой 1, или тождественной единицей. Обозначение: 1.

  2. Булева функция f(x1, x2,…, xn), принимающая значение 0 на всех наборах нулей и единиц, называется константой 0, или тождественным нулем. Обозначение: 0.

  3. Отрицанием называется булева функция одной переменной, которая определяется следующей таблицей истинности

х

0

1

f(x)

1

0

Обозначения: х, . Записьх читается «не икс» или «отрицание икс».

  1. Конъюнкцией называется булева функция двух переменных, которая определяется следующей таблицей истинности

x

0

0

1

1

y

0

1

0

1

f(x,y)

0

0

0

1

Другие названия: логическое умножение (произведение); логическое «и».

Обозначения: ху, ху, min(x,y). Запись может читаться так: «икс и игрек» или «икс умножить на игрек».

  1. Дизъюнкцией называется булева функция двух переменных, которая определяется следующей таблицей истинности

x

0

0

1

1

y

0

1

0

1

f(x,y)

0

1

1

1

Другие названия: логическое сложение (сумма); логическое «или». Обозначение: ху, max(x,y).

Запись ху может читаться так: «икс или игрек» или «сумма икс и игрек».

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

x

0

0

1

1

y

0

1

0

1

f(x,y)

1

1

0

1

Другое название: логическое следование.

Обозначения: ху, ху, ху. Запись ху может читаться так: из икс следует игрек».

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

x

0

0

1

1

y

0

1

0

1

f(x,y)

1

0

0

1

Обозначения: ху, ху, ху.

Запись ху может читаться так: «икс эквивалентно игрек» или «икс равносильно игрек».

  1. Суммой по модулю_2 называется булева функция двух переменных, которая определяется следующей таблицей истинности

x

0

0

1

1

y

0

1

0

1

f(x,y)

0

1

1

0

Другое название: антиэквивалентность.

Обозначения: ху, х+у.

Запись ху может читаться так: «икс плюс игрек».

  1. Штрих Шерифа это булева функция двух переменных, которая определяется следующей таблицей истинности

x

0

0

1

1

y

0

1

0

1

f(x,y)

1

1

1

0

Другое название: отрицание конъюнкции, логическое «не-и».

Обозначение: х|у.

Запись х|у может читаться так: «не икс или не игрек», «икс и игрек несовместны», «икс штрих Шеффера игрек».

  1. Стрелка Пирса это булева функция двух переменных, которая определяется следующей таблицей истинности

x

0

0

1

1

y

0

1

0

1

f(x,y)

1

0

0

0

Другое название: отрицание дизъюнкции, логическое  не - или .

Обозначение: ху.

Все логические операции можно выразить через три логические операции (конъюнкция, дизъюнкция, отрицание).

Применение логических операций и функций определяются скобками. Если скобок нет, то логические операции применяются в следующей последовательности: отрицание, дизъюнкция, конъюнкция, импликация, эквиваленция.

Определение. Две функции f1(x1, …, xn) и f2(x2, …, xn) называются равносильными, если они принимают одинаковое значение на одних и тех же наборах переменных. Функция от f1(x1, …, xn) называется тождественно-истинной, если она принимает значения 1 на всех наборах своих переменных. Функция f1(x1, …, xn) называется тождественно-ложной если она принимает значение 0 на всех своих наборах переменных.

Рассмотрим 3 основные группы равносильности.

  1. Основные равносильности

  • ;

  • ;

  • x*1x;

  • ;

  • x*00;

  • ;

  • x*;

  • ;

  • (закон двойного отрицания);

  • (закон поглощения);

  • (закон поглощения).

  1. Равносильности, выражающие одни логические операции другими

  • ;

  • ;

  • ;

  • ;

  • ;

  • ;

  • .

  1. Равносильности, выражающие основные законы алгебры и логики

  • ;

  • ;

  • ;

  • ;

  • ;

  • .

Для того чтобы сравнить две булевых функции, удобно привести их к некоторому стандартному виду.