Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Алиев Курс лекций по математической логике и теории алгоритмов 2003.doc
Скачиваний:
176
Добавлен:
16.08.2013
Размер:
4.53 Mб
Скачать

6.3. Метод Петрика нахождения тупиковых днф

Рассмотрим табл.6.2, строки которой соответствуют простым импликантам функции f, а столбцы — конъюнкциям совершенной ДНФ (СДНФ). В каждую клетку записываем единицу, если соответствующая простая импликанта поглощает элементарную конъюнкцию и нуль — в противном случае. Такая таблица называется «импликантной таблицей».

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

Таблица 6.2

СДНФ

Сокр.

ДНФ

1000

1100

1010

0101

0011

1110

1011

0111

P1

1__0

1

1

1

0

0

1

0

0

P2

101_

0

0

1

0

0

0

1

0

P3

_001

0

0

0

0

1

0

1

0

P4

0_11

0

0

0

0

1

0

0

1

P5

01_1

0

0

0

1

0

0

0

1

Пусть в общем случае в таблице имеется N столбцов и m строк. Поставим в соответствие простым импликантам сокращённой ДНФ переменные P1 … Pm. Фиксируем некоторую дизъюнкцию простых импликант. Будем считать, что Pi = 1, если i-я простая импликанта входит в эту дизъюнкцию и Pi = 0, в противном случае. Запишем в виде формалы условие того, что рассматриваемая дизъюнкция является ДНФ функции. Для этого необходимо, чтобы в каждом столбце таблицы была хотя бы одна единица, т.е.

,

где — элемент матрицы (таблицы), стоящий вi-й строке и j-м столбце, .

Эту формулу можно трактовать как КНФ некоторой двоичной функции от переменных P1 … Pm, которая принимает значение 1 только на тех наборах переменных, которые соответствуют некоторым ДНФ исходной функции, и значение 0 — на наборах, которые соответствуют наборам импликант, не являющихся ДНФ исходной функции.

Заметим, что функция монотонна, так как формула 6.2.3 не содержит переменных с отрицаниями. Поэтому согласно утверждению 6.3 для нахождения её сокращённой ДНФ достаточно раскрыть скобки в формуле 6.2.3, а затем произвести все поглощения. Наконец, остаётся заметить, что в силу указанного выше свойства этой функции, её простые импликанты и только они будут давать тупиковые ДНФ исходной функцииf.

Для табл. 6.2 функция равна:

.

Отсюда P1P3P5 даёт для f тупиковую форму:

,

а P1P2P4P5 даёт:

.

Л е к ц и я 7

Алгебраические системы

7.1. Алгебраические системы. Булевы алгебры

Определение 7.1. Множество M с заданными на нём операциями и отношениями называется алгебраической системой. При этом M называется основным множеством системы, а множество символов, используемых для обозначения определённых на M операций и отношений называется сигнатурой алгебраической системы.

Алгебраическую систему с основным множеством M и сигнатурой , состоящий из символов операцийfi арностей ni и отношений Rj арностей mj, обозначают в виде M(), или подробнееM(). При этом набор натуральных чисел <n1, …, nk; m1, …, ml> называется типом алгебраической системы M(). Если на алгебраической системе определены только операции, то она называетсяалгеброй. Если на алгебраической системе только отношения, то она называется моделью.

Пример 7.2. N(+, *; =, <) — алгебраическая система.

Пример 7.3. N(+, *) — алгебра.

Пример 7.4. N(+, <) — модель.

Пример 7.5. Алгебрами являются полугруппы, группы, кольца, поля и т.д.

В математической логике особую роль играют так называемые булевы алгебры.

Определение 7.6. Булевой алгеброй называется множество B с двумя бинарными операциями «», «», и одной унарной операцией «» и двумя нуль-арными операциями (т.е. выделенными элементами) 0, 1, удовлетворяющими условиям (при любых ):

1. ,

2. ,

3. ,

4. ,

5. ,

6. ,

7. ,

8. ,

9. ,

10. ,

11. ,

12. .

Несложно показать, что из условий 1-12 следуют равенства:

, ,,,

, .

Например, выведем из условий 1-12 равенство :

.

Элементы 0 и 1 булевой алгебры B называют её нулём и единицей. Иногда их обозначают в виде 0B и 1B.

Пример 7.7. Пусть 2M — обозначение множества всех подмножеств множества M, — бинарная операция пересечения множеств,— бинарная операция объединения множеств. ДляA M обозначим A = M\A, A — дополнение множества A. «» — унарная операция, иM – нуль-арные операции, играющие роль 0 и 1. Тогда 2M(M) — булева алгебра.

Пример 7.8. Пусть M — множество всех положительных делителей числа m, равного произведению некоторых различных простых чисел. Определим операции «», «» и «» следующим образом: для любых M положим ,,. Число 1M играет роль нуль-арной операции 0. Число m M играет роль нуль-арной операции 1. Тогда M(,,, 1, m) — булева алгебра.

Определение 7.9. Пусть — бинарное отношение на наM. Бинарное отношение на множествеM называется отношением частичного порядка (или просто отношением порядка), если оно рефлексивно, транзитивно, антисимметрично. Отношение частичного порядка  на М называется отношением линейного порядка, если для любых x, x  M либо x x, либо x x. Отношение порядка обозначается через «». Еслии, то пишут.

Множество M с заданным на нём отношением частичного или линейного порядка «» называется, соответственно, частично или линейно упорядоченным множеством.

В некоторых случаях при изучении частично упорядоченных множеств используются их геометрические изображения — диаграммы. При построении диаграмм частично упорядоченного множества M() различные элементы изM отождествляются с различными точками плоскости так, что:

точка лежит левее (или ниже) точки, если;

точка соединяется отрезком с отличной от неё точкой, еслии не существует точки, отличной отa, b, удовлетворяющей условию (в этом случае говорят, чтоb непосредственно следует за a или a непосредственно предшествует b).

Пример 7.10. M = 2{1, 2, 3}.

Положим для любых AB M, . Тогда диаграмма дляM() представляется рис.7.1.

Рис.7.1

Пример 7.11. M = {}.

Положим a b «натуральное число a» «натурального числаb». Тогда диаграмма для M() имеет вид, показанный на рис.7.2.

n

n–1

3

2

1

Рис.7.2

Пример 7.12. M = {1, 2, 3, 4, 5, 6}.

Положим a b a | b для любых a, b M. Тогда диаграмма для M() имеет вид (рис.7.3).

Рис.7.3

Интересно отметить связь булевых алгебр с частично упорядоченными множествами.

Пусть B — произвольная булева алгебра. Для произвольных элементов a, b B положим a b a b = b.

Из условий 6.4.2 следует, соответственно, что так определённое отношение «» наB рефлексивно, антисимметрично и транзитивно. В итоге имеем частично упорядоченное множество B(). Диаграмма дляB() называется диаграммойбулевой алгебры B. Таким образом на рис.7.1 изображена диаграмма булевой алгебры всех надмножеств множества {1, 2, 3}.