МинистерствообразованияРоссийскойФедерации
НОВОСИБИРСКИЙГОСУДАРСТВЕННЫЙТЕХНИЧЕСКИЙУНИВЕРСИТЕТ _____________________________________________________________________
С
.
А
.
Гусев
,
О
.
М
.
Сарычева
ДИСКРЕТНАЯ
МАТЕМАТИКА
Утверждено
редакционно
-
издательским
советом
университета
в
качестве
конспекта
лекций
УДК 519.1(075.8) Г 962
Рецензент: канд. физ.-мат. наук, доц. М.Г. Зайцев
Работа подготовлена на кафедре экономической информатики для студентов I курса факультета
бизнеса, специальность «Прикладнаяинформатикавэкономике»
ГусевС.А., СарычеваО.М.
Г 962 Дискретнаяматематика: Конспектлекций. – Новосибирск: Изд-воНГТУ, 2003. – 72 с.
Данныйконспектлекцийсоставленнаосновекурсалекций, читаемогоавторамидлястудентов I курсафакультета бизнеса Новосибирского государственного технического университета. В нем излагаются основы таких разделов дискретной математики, как «Теория множеств», «Алгебра логики», «Комбинаторика», «Теория графов». Работа предназначенадлястудентовилиц, начинающихизучатьдискретнуюматематику.
УДК 519.1(075.8)
ВВЕДЕНИЕ
Работа составлена на основе лекций по дискретной математике, читаемых в течение одного семестра студентам первого курсафакультета бизнеса, обучающимсяпо специальности «Прикладная информатика в экономике». Конспект лекций содержит четыре раздела: элементы теории множеств, алгебралогики, элементыкомбинаторикиитеорияграфов.
Целью данного курса является дать слушателям основные понятия дискретной математики, которыенеобходимыдлядальнейшегообученияданнойспециальности.
Основные понятия теориимножеств, которые изложены впервой главе, составляют базовый язык математики (азначит, идискретной) ипоэтомунеобходимыдляизученияостальныхразделов. Работа компьютеров основана на двоичной системе счисления и поэтому все преобразования информации осуществляются по законам алгебры логики. Известны также применения алгебры логики в теории контактных и релейно-контактных схем, при анализе алгоритмов программ, синтезе управляющих систем. Основные понятия комбинаторики необходимы для изучения курса теории вероятностей. В экономическихисследованияхтакженередко возникаютзадачи, которыерешаются сиспользованием методовкомбинаторики. Теорияграфовприменяетсядлярешениязадачвразличныхобластяхнаукии техники, втомчислеивэкономике, например, длярешениязадачнахождениякратчайшихмаршрутов втранспортныхсетях.
Дляизученияданногокурсастудентамдостаточнознанийматематикивобъемесреднейшколы.
I. ТЕОРИЯМНОЖЕСТВ
1. Понятиемножества, операциинадмножествами
1.1. Множестваиподмножества
В математике понятия множества и его элементов, так же как понятия точки, прямой, вектора, относятсякисходнымпонятияминикакнеопределяются.
Мы будем понимать под множеством всякую совокупность каких-либо объектов. Объекты этой совокупности есть элементы данного множества. Обычно множества обозначаются прописными, а элементымножествастрочнымибуквами.
Принадлежность элемента a множеству A обозначается a∈A (a принадлежит A).
Еслиэлемент b непринадлежитмножеству A, то, вэтомслучае, используетсяобозначение b∉A.
Пример 1
1) A– множествожителейвг. Новосибирске. 2) C – множествопланетСолнечнойсистемы. 3) D – множестводействительныхчисел; 2∈D. 4) N – множествонатуральныхчисел; 1,2∈N; 2∉N.
Множество называется подмножеством множества , если всякий элемент множества является элементом множества . При этом используется обозначение . Знак называется знакомвключения. Вэтомслучаеговорят, чтоВсодержитА.
A B A
B A⊆B ⊆
Множества А и равны , если их элементы совпадают, т.е. если А⊆В и В⊆А. В этом случае пишут .
B A=B
Обычно для доказательства равенства двух множеств и доказывают два включения А⊆В и В⊆А.
A B
Если и , то называется строгим подмножеством . Обозначение знак ⊂ называетсязнакомстрогоговключения.
A⊆B A≠B A B A⊂B
Множествамогутбытьконечными (состоящиеизконечногочислаэлементов) ибесконечными. Число элементов в конечном множестве A называется мощностью A и обозначается A . О мощностибесконечногомножествабудетговоритьсявследующихразделах.
Множество мощности 0, т.е. не содержащее элементов, называется пустым и обозначается ∅. Принято считать, что пустое множество является подмножеством любого множества. Множество, содержащеевсеэлементы, находящиесяврассмотрении, называетсяуниверсумомиобозначается ∪.
1.2. Способызаданиямножеств
Обычно выделяют следующие способы задания множеств: списком своих элементов;
порождающей процедурой илиописанием характеристических свойств, которыми должны обладать
егоэлементы.
Списком можно задавать лишь конечные множества. Список обычно заключают в фигурные скобки, например, A={ , , , }a b c d означает, чтомножество A состоитизчетырехэлементов a b c d, , , .
Порождающая процедура описывает способ получения элементов множества из уже полученных элементов либо из других объектов. Элементами множества считаются все объекты, которые могут бытьпостроеныспомощьютакойпроцедуры.
Пример 2
1) Множество A=
{
x x| = π/ 2+ π2 k k, = ± ±0, 1, 2,…}
естьмножестворешенийуравнения si .}
≤
}
nx=1 2) МножествочиселФибоначи
{
n n 1 n 2, 2,3, ; 1,0 1 1}
F= f = f − + f − n= … f = f = .
Когдаиспользуетсяспособзаданиямножествапутемописаниясвойствегоэлементов, тоуказываются свойства, которым должны удовлетворять все элементы данного множества.
Пример 3
{
2 2( , ) | 1
K= x y x +y − множество точек единичного круга на плоскости;
{ | sin 0.5}
Z= x x≤ −множестводействительныхчисел, синускоторыхменьше 0.5.
1.3. Операциинадмножествами
Объединением множеств А и В называется множество, состоящее из тех и только тех элементов, которые принадлежат хотя бы одному из этих множеств. Объединение обозначается A∪B.
{ |
A∪B= x x∈A или x∈B}.
Объединение множеств, принадлежащих произвольной (в том числе бесконечной) системе множеств, определяетсяаналогично. Приэтомиспользуютсяследующиеобозначения:
A∪ ∪ ∪B C D A
∪
– объединениемножеств А, В, С, D;
A S∈
− объединение множеств, принадлежащих системе S. Если множества, занумерованы
индексами, то обычно пишут для системы, состоящей из множеств, и − для бесконечногочисламножеств. 1
n
i i
A
=
∪
n1
i i
A
∞
=
∪
Пример 4
1) Пусть B1=
{
a b c, ,}
, B2={
c d e, , , тогда B1∪
B2= . | 1x =
{
a b c d e, , , ,}
=2) А – множестворешенийуравнения |sin :
2 , 0, 1, 2, 2 , 0, 1, 2,
2 2
A=x x= + ππ k k= ± ± x x= − + ππ k k= ± ±
…
∪
… .3) Множествоточекплоскости D2 естьобъединениеточекправойилевойполуплоскостей
{
}
2
( , ) ,x y x y
= ∈ ∈
D D D =
{( , ) , , x y x y x 0} {( , ) , , x y x y x 0}.
= ∈D ∈D ≥ ∪ ∈D ∈D <
A
Пересечением множеств и В называется множество, состоящее из тех и только тех элементов,
которые принадлежат и
А и В.
Обозначение A∩B. A B
∩ ={ | x x∈A и }.
}
x∈B
Аналогично, какдляоперацииобъединенияопределяетсяпересечениепроизвольной, втомчислеи бесконечнойсистемымножеств.
Пример 5
1) Пусть A=
{
a b c, ,}
, B={
a d e f, , , , тогда ;∞
{ }
A∩B= a
2) Рассмотрим , где
1
m m
B A
=
=
∩
( )
, 2 2 1m
A x y x y
m
= +
≤ − круг радиуса 1
m, тогда множество содержит единственный элемент − точку .
B
( )
0, 0Разностьюмножеств и называетсямножествовсехтехитолькотехэлементов , которыене
принадлежат . Приэтомиспользуетсяобозначение .
A B A
B A B\
В отличие от операций объединения и пересечения разность строго двуместна, т.е. определена толькодлядвухмножеств.
Пример 6
{
, ,}
A= a b c , B=
{
a b d e h, , , ,}
, A B\ ={ }
c . Свойстваоперации «разность»:1) разностьопределенатолькодлядвухмножеств; 2) разностьнекоммутативна, т.е. A B/ ≠B A/ ; 3) если A B\ = ∅, то A⊆B.
Дополнением множества называется множество всех элементов, не принадлежащих (но
принадлежащих U )
A A
\ . A=
U
AПример 7
Пусть C=
{
( )
x y, |x2+y2≤1}
− множествоточекплоскости, находящихсявкругерадиуса 1, тогда( )
{
2 2}
,y |x +y >1
C= x – внешность единичного круга.
Симметрическойразностьюмножеств A и B называетсямножество
( / ) ( / ) A B∆ = A B ∪ B A .
Рис. 1.1. Операциинадмножествами
1.4. Свойстваоперацийнадмножествами
1. Коммутативность:
A∪B=B∪A, A∩B=B∩A;
2. Ассоциативность:
( ) ( )
A∪ B∪C = A∪B ∪C, A ∩(B ∩ C) = (A ∩ B)∩C;
3. Дистрибутивность:
A∩(BUC)=(A∩B)U(A∩C), AU(B∩C)=(AUB)∩(AUC) ;
4. Идемпотентность:
AUA=A, A∩A=A;
5. Поглощение:
(
A∩B)
∪A= A,(
A∪B)
∩A=A;6. Свойствануля:
A∪∅ = A, A∩∅ = ∅;
7. Свойстваединицы:
A∪
U U
= , A∩U
=A;8. Инволютивность: A=A;
9. ЗаконыдеМоргана:
A∩B=A∪B, A∪B=A∩B;
10. Свойствадополнения:
A∩A= ∅, A∪A=
U
.1.5. Разбиенияипокрытия
Пусть − некоторое семейство подмножеств множества , . Семейство называетсяпокрытием множества , есликаждый элемент принадлежит хотябы одному из множеств .
{ }
Bi i I∈σ =
i
B
A Bi⊆A σ
( )
{
a| существует bтакое, что a b,}
R
δ = ∈R
+
R
+
}
.
Пример 4
Пусть A= =B {1, 2,3, 4,5,6}, R= ≤" ", тогда δ =R
{
1, 2,3, 4,5,6}
.Пример 5
Пусть A= =B {1, 2,3, 4,5,6}, R=
{
( )
a b, | ,a b∈A a, =b 2}
, тогда δ =R{
1, 2,3, 4}
.Областьюзначенийбинарногоотношения R называетсямножество
( )
{
b| существует aтакое, что a b,}
R
ρ = ∈ .
Пример 6
Пусть A= =B {1, 2,3, 4,5,6}, R=
{
( )
a b, | ,a b∈A a, =b 2}
, тогда δ =R{
1, 2,3, 4}
ρ =R{
3, 4,5, 6}
.Пусть
a
∈
A
. МножествоR a
( )
=
{
b b B aRb
|
∈
,
называетсяобразом a в B.Пример 7
Пусть A= =B {1, 2,3, 4,5,6}, R= ≤" ", a=2, тогда R(2)=
{
2,3, 4,5,6}
.1 −
Пусть b ∈ B. Множество R ( ) {b = a a∈A aRb, } называетсяпрообразом b в A.
Пример 8
Пусть A= =B {1, 2,3, 4,5,6}, R= ≤" ", b=2, тогда R−1(2)=
{ }
1, 2 .Пусть . Образом множества относительно бинарного отношения называется объединениеобразоввсехэлементов
C⊆A
R
C R
C
( ) { | , }
a C
R C b b B aRb
∈
=
∪
∈Пример 9
{1, 2, 3, 4, 5, 6}
A= =B , R= ≤" ", C={2, 3}, тогда R C( )=
{
2,3, 4,5, 6}
.Если , то прообразом множества относительно называется объединение прообразов всехэлементов D
D⊆B R
1( ) { | , }
b D
R− D a a A aRb
∈
=
∪
∈ .Пример 10
{1, 2, 3, 4, 5, 6}
A= =B , R= ≤" ", D={2, 3}, тогда R-1( ) {1, 2,3}D = .
Пусть R – бинарное отношение на . Если , то называется сужением R. Для отношений определеныобычнымобразомтехнико-множественныеоперацииобъединения, пересечения, разности, симметрическойразности.
A B× R1⊆ R1
Дополнением бинарного отношения R между элементами
и являетсямножество
A B R= ×A B R\ .
Пример 11
A= =B D, R= ≤" ". Дополнением является .
_
счетно, объединение счетного числа счетных множеств счетно. Но не все множества являются счетными.
Теорема 4. (Кантора).
Множествовсехдействительныхчиселотрезка [0,1] неявляетсясчетным.
Доказательство
Предположим, что множество действительных чисел отрезка счетно и существует его нумерация. Расположим все числа, изображенные бесконечными десятичными дробями, в порядке этойнумерации:
[0,1]
11 12 13 21 22 23 31 32 33
0, 0,
0,
a a a
a a a
a a a
⋅
… … …
Рассмотрим бесконечную десятичную дробь 0, b b b1 2 3…
≠
такую, что , . Этадробьнеможетвойтивуказаннуюпоследовательность, так как откаждогочисласномером i онаотличается i-йцифрой. Следовательно, всечислаизотрезка [0,1] не могутбытьпронумерованыимножествовсехдействительныхчиселотрезка [0,1] несчетно.
1 1
b ≠a1 b2 a22, …
Мощность множества действительных чисел отрезка называется континуум; множества такоймощностиназываютсяконтинууальными.
[0,1]
5. Специальныебинарныеотношения
Мыбудемрассматриватьбинарныеотношения, заданныенанепустоммножестве A. R
Бинарноеотношение R намножестве называетсярефлексивным, если длявсех . Еслибинарноеотношениерефлексивнои −конечноемножество, то главнаядиагональ матричного представлениясодержиттолькоединицы.
A A
( , )x x ∈ x∈A
Бинарное отношение R на множестве А называется антирефлексивным, если для всех . В матричном представлении главная диагональ антирефлексивного бинарного отношения содержиттольконули.
x∈A
( )
x x, ∉RПример 1
1. Отношение “≤” намножествах Nи D рефлексивно, аотношение “<” антирефлексивно. 2. Отношение “иметьобщийделитель” намножестве N рефлексивно.
3. Отношение “быть симметричным относительно оси х” не является ни рефлексивным ни антирефлексивным.
Бинарное отношение называется симметричным, если . То есть для любой пары отношение выполняется в обе стороны либо не выполняется вообще. Матрица симметричного отношениясимметричнаотносительноглавнойдиагонали.
( )
x,y ∈ ⇒R( )
y x, ∈RОтношение R называетсяантисимметричным, еслииз ( , )x y ∈R и (y x, )∈R следует x = y.
Пример 2
1. Отношение “∩” являетсясимметричным.
2. Отношениенамножестве N “иметьобщийделитель≠1” являетсясимметричным. 3. Отношение “≤” являетсяантисимметричным.
Бинарноеотношениеназываетсятранзитивным, если
( )
x y, ∈R и( )
y z, ∈R ⇒( )
x z, ∈R.Пример 3
1. Отношение “=” на D являетсятранзитивным: x=y и y=z ⇒ x=z. D
2. Отношение “≤” на являетсятранзитивным.
3. Отношениевключениядлямножествтранзитивно: A⊆B и ⇒ . B∩C≠ ∅
Бинарное отношение называется отношением эквивалентности (или просто
эквивалентностью), еслионорефлексивно, симметричноитранзитивно.
Пример 4
1. Отношение равенства на Dесть отношение эквивалент-ности. 2. Отношениеподобиятреугольниковестьэквивалентность.
3. Отношение “иметь один и тот же остаток от деления на какое-либо число” является эквивалентностьюна N.
Пусть на множестве заданоотношение эквивалентности R. Тогдаможно разбитьмножество на классы эквивалентных элементов. Действительно, возьмем произвольный элемент и образуемкласс , состоящий из и всехэлементов, эквивалентных . Затем выберем
(если такой найдется) и образуем класс , состоящий из и всех элементов, эквивалентных и т.д. Получается система классов (возможно бесконечная) такая, что любой элемент из А входитхотябыводинкласс, т.е.
A A
A
2 C1 1
a ∈ \ a ∈A
2
a
1
C a1 a1
2
C , ,…
2
a
1 2
C C
i i
C =A
∪
.Этасистемаклассовобладаетследующимилегкопроверяемымисвойствами: 1) система образует разбиение A, такое, что классы попарно не пересекаются; 2) любыедваэлементаизодногоклассаэквивалентны;
3) любыедваэлементаизразныхклассовнеэквивалентны.
Построенное разбиение, т.е. системаклассов называется системой классов эквивалентности по отношению к R или фактор-множеством по R. Мощность этой системы называется индексом разбиения.
A
С другой стороны, любое разбиение на классы определяет некоторое отношение эквивалентности, аименно, отношение “входитьводинитотжеклассданногоразбиения”.
A
Пример 5
1. Всеклассыэквивалентности D поотношениюравенствасостоятизодногоэлемента. 2. Разбиениемножестватреугольников наклассыэквивалентностипоотношениюподобия. 3. Разбиение N поотношению “иметьобщийостатокотделенияна 3”:
{
}
0 3, 6,9,
C = …
A
, C1=
{
1, 4,7,…}
, C2={
2,5,8,…}
.Бинарное отношение на множестве называется предпорядком на , если оно рефлексивно и транзитивно.
A
Рефлексивное, транзитивноеиасимметричноеотношение на множествеАназывается частичным
порядкомна A.
x≤x x∈A
y ≤ z
x≤z
N D
U
x≥y
y≤x x≤y x≠y x<y
Такие бинарныеотношениячасто обозначаются символом “≤”. Тогдааксиомычастичного порядка можнозаписатьввиде:
1) длявсех – рефлексивность; x≤ y z y≤
2) из и следует x = y – антисимметричность; x≤y y≤z
3) из и следует – транзитивность.
Пример 6
1. Обычноеотношение “≤” намножествах и являетсячастичнымпорядком. 2. Отношениеделимостина N.
Для любого множества отношение “⊆” является частичным порядком на множестве всех подмножеств U.
Отношение, обратное к частичному порядку “≤”, является частичным порядком, который называетсядвойственнымк “≤” иобозначается “≥”. Такимобразом, , тогдаитолькотогда, когда
. Если и , тоиспользуетсяобозначение .
Частично упорядоченные множества, состоящие из небольшого количества элементов, удобно описывать диаграммами. Кружочками обозначаются элементы; линия, идущая вверх, соединяет элемент с каждым непосредственно следующим за ним большим элементом.
Рассмотрим множество и множество его подмножеств, частично упорядоченное относительноотношениявключения. Нарис. 1.2 приведенасоответствующаядиаграмма.
{
1, 2,3}
A=
{
○
{3}
○
{
○
1,2,3}
○
∅
○
{1}
○
{1,2}
{2}
○
○
2,3}
Рис. 1.2.Частичныйпорядокнамножествеподмножеств
{
1, 2,3}
Частичный порядок “≤” на множестве называется линейным, если для любых двух элементов выполняется или . Множество с заданным на нем частичным (линейным) порядкомназываетсячастично (линейно) упорядоченным.
A ,
x y∈A x≤ y y≤x A
Элемент а частично упорядоченного множества называется максимальным, если из того, что , следует .
A
A a≤x a=x
Элемент а частично упорядоченного множества называется минимальным, если из того, что , следует .
x≤a a=x
Пример 8
1. В примере 7 с множеством подмножеств – максимальный элемент, ∅ –
минимальный. A
{
1, 2,3}
= A
2. Рассмотрим и отношение , R – есть
частичныйпорядок,
{
1, 2, 3, 4, 5, 6A=
}
}
≤
)
≤{( , ) | , и делит } R= x y x y∈A x y
1 – минимальныйэлемент, 6 – максимальныйэлемент.
3. Пусть A = N, рассмотрим отношение
, которое является частичным порядком на N. Вэтомслучаесуществуютдваминимальныхэлементана N− 1 и 2.
{( , ) | , четныеи , либо , - нечетныеи
R= x y x y− x≤y x y x y
Элемент называется наибольшим если для всех . Элемент называется
наименьшим если для всех .
a∈A x≤a x∈A a∈A
a≤x x∈A
Пример 9
1. Рассмотрим множество подмножеств {1,2,3}. Пусть R- отношение включения. Тогда минимальныйэлементравеннаименьшему = ∅, максимальныйэлементравеннаибольшему ={1,2,3}. 2. Пусть и , в этом случае не существует наименьшего и наибольшегоэлемента.
(
0,1A= R={( , ) | ,x y x y∈Aиx y}
3. Пусть A=
{
1, 2,3, 4,5,6}
и R={( , ) x y x y, ∈A и x делит }y , тогда 1 – наименьший элемент; 6 – не 6x≤
x x⋅ =x, x∨ =x x;
5. Двойноеотрицание: x =x;
6. Свойстваконстант: &1
x =
1 1
x∨ =
x, x& 0=0; 0
x∨ =x
, ; 0 1= , 1=0;
7. ЗаконыдеМоргана:
1 1& 2
x x =x ∨x2, x1∨x2=x1&x2;
8. Законпротиворечия: x&x=0;
9. Закон «исключенноготретьего»: x∨ =x 1.
Все эти равенства остаются справедливыми при подстановке вместо переменных любых логических функций и, следовательно, любых формул, представляющих эти функции. При этом необходимо соблюдать следующее правило подстановки формулы вместо переменной: при подстановке формулы F вместо переменной все вхождения переменной в исходной равенство
должныбытьодновременнозамененыформулойF.
x x
Это правило подстановкипозволяет получить из приведенныхсоотношенийновые эквивалентные соотношения.
Если какая-либо формула F содержит F1 в качестве подформулы, то замена F1 на эквивалентную формулудаст F′эквивалентнуюF.
В этом заключается правило замены подформул, которое позволяет, используя эквивалентные соотношения, получатьформулы, эквивалентныеданной.
Преобразования формул, использующие эквивалентные соотношения и правило замены, называются эквивалентнымипреобразованиями.
Эквивалентные преобразования являются мощным средством доказательства эквивалентности формул.
Рассмотримнекоторыеосновныеэквивалентныепреобразованиявбулевойалгебре. Отметим, чтов булевойалгебрепринятоопускатьскобкивследующихдвухслучаях:
а) при последовательном выполнении нескольких конъюнкций или дизъюнкций, например,
или ;
1( 2 3) 1 2 3
x x x =x x x x1∨(x2∨x3)= ∨x1 x2∨x3
x
б) если они являются внешними скобками у конъюнкции: например, вместо .
1 2 3 4 5 1 2 3 4 5
( (x x ∨x ))∨(x x ) пишутx x( ∨x )∨x x
Оба соглашения совершенно аналогичны общепринятому опусканию скобок для умножения в арифметическихформулах.
Рассмотрим некоторые эквивалентности, позволяющие делать упрощения в формулах в процессе эквивалентныхпреобразований:
а) Поглощение:
x∨xy=x; x x( ∨y)=x.
Доказательство первого равенства: . Второе равенство сводитсякпервому, еслиприменитьдистрибутивныйзаконвлевойчасти.
&1
x∨xy=x ∨xy= =x
(
1∨y)
=x&1=б) Склеивание: xy∨x y=x.
Доказательство: xy∨x y=x y
(
∨y)
=x&1=x. в) Обобщенноесклеивание: xz∨y z∨xy=xz∨y z. Доказательство:(1 ) (1 )
xz∨y z∨xy=xz∨y z∨xyz∨xyz =xz ∨y ∨yz ∨x =xz∨y z.
г) x∨xy= ∨x y.
Доказательство: x∨xy=(x∨x) & (x∨y) 1& (= x∨y)= ∨x y
) (0, ,... )
x x f x x
∨ = ∨ ⋅
.
д) x1 f x x( ,1 2,... n 1 2 n .
Равенствод) проверяетсяподстановкойдвухвозможныхзначенийпеременной x1: 0 или 1.
4. Нормальныеформы
Разложениелогическойфункции f x( ,...,1 xn) повсемпеременнымввиде
1
1 n
1 1
( ,...,t )=1
( ,..., ) t ... tn
n f t
называетсясовершеннойдизъюнктивнойнормальнойформой (СДНФ).
Из того, чтодля любой логическойфункции существуетразложение по переменным, следует, что любаялогическая функция, кроме 0, может быть представлена ввиде СДНФ. Из построения СДНФ, видно, чтотакоепредставлениеоднозначно.
Для построения СДНФ можно использовать таблицу функции. Так как в представлении (4.1) участвуюттолькоединичныенаборы, и xt =x, толькокогда t=1, и xt =x
)
, только когда , тодля каждого единичного набора составляется конъюнкция переменных по следующему правилу: переменная входитв конъюнкциюбез отрицания, еслив наборе она равна 1, и с отрицанием, еслив наборееезначениеравно 0. СДНФестьдизъюнкцияпостроенныхтакимобразомконъюнкций.
0
t=
Пример 1
Пустьданатаблицафункциитрехпеременных.
Требуется построить СДНФ этой функции. У этой функции четыре единичных набора: , , ,
(
. Для каждого из этих наборов составим соответственно по изложенному выше правилу конъюнкции переменных:(
000)
( )
011( )
101 1111 2
x x x3, x x x1 2 3, x x x1 2 3, x x . Взяв дизъюнкцию этих
конъюнкций, получимСДНФ
1
x x2 x3 f
0 0 0 1 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 0 1 1 1 1
1 2 3x
1 2 3x x x x x1 2 3 x x x1 2 3 x x x1 2 3
= ∨ ∨ ∨
СДНФ
f x .
Разложениелогическойфункции f x( ,...,1 xn) повсемпеременнымввиде 1
1 n
1 1
( ,...,t )=0
( ,..., ) & ( t ... tn)
n n
f t
f x x = x ∨ ∨x (4.2)
называется совершеннойконъюнктивнойнормальнойформой (СКНФ).
Аналогично, какдляСДНФ, справедливоутверждениеотом, чтолюбаялогическаяфункция, кроме 1, можетбытьоднозначнопредставленаввидеСКНФ.
ТакжедляпостроенияСКНФможноиспользоватьтаблицуфункции. Таккаквпредставлении (4.2) участвуют только нулевыенаборы, и xt =x, только когда t=0, и xt =x
)
, только когда , то для каждогонулевогонаборасоставляется дизъюнкцияпеременныхпоследующему правилу: переменная входит в дизъюнкцию без отрицания, если в наборе она равна 0, и с отрицанием, если в наборе ее значениеравно 1. СКНФестьконъюнкцияпостроенныхтакимобразомдизъюнкций.
1
t=
Пример 2
Для функции, заданнойв Примере 1, требуется построитьСКНФ. Нулевые наборы: , , , . Составим дизъюнкции переменных:
( )
001(
010)
( )
100(
110 x1∨x2∨x3, x1∨x2∨x3, x1∨x2∨x3, x1∨x2∨x3.КонъюнкцияэтихдизъюнкцийестьСКНФданнойфункции: СКНФ ( 1 2 3) & ( 1 2 3) & ( 1 2 3) & ( 1 2 3
f = x ∨x ∨x x ∨x ∨x x ∨x ∨x x ∨x ∨x ).
Элементарной конъюнкцией называется конъюнкция переменных или их отрицаний, в которых каждая переменная встречается не болееодного раза. Число переменных, входящих в элементарную конъюнкцию, называетсярангомэлементарнойконъюнкции. Поопределениюконстанта 1 считается элементарнойконъюнкциейранга 0.
Примерыэлементарныхконъюнкций: x1, x3, x x3 4, x x x1 2 3.
Дизъюнктивной нормальной формой (ДНФ) называется формула, имеющая вид дизъюнкции элементарныхконъюнкций.
ПримерыДНФ: x x1 2∨x x x1 2 3, x2∨x x x1 2 4.
Конъюнкции, входящие в ДНФ, называются слагаемыми. Число слагаемых в ДНФ называется длинойДНФ.
ОсновныеотличияСДНФотДНФ:
а) еслив СДНФ вкаждой конъюнкции присутствуют все переменные функции с отрицаниемили безотрицания, товконъюнкциях, входящихвДНФ, могутотсутствоватьнекоторыепеременные;
б) длякаждойлогическойфункциисуществуеттолькооднаСДНФ, втовремякакДНФможетбыть неединственнойдляоднойитойжелогическойфункции.
Пример 3
СледующиедвеДНФэквивалентны: x2∨x x x1 2 3=x2∨x x1 3. ИмсоответствуетСДНФ
1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
x x x ∨x x x ∨x x x ∨x x x ∨x x x .
1) спомощьютаблицистинности;
2) спомощьюэквивалентныхпреобразований; сначаластроятДНФ, азатемСДНФ.
При использовании эквивалентных преобразований для приведения к ДНФ выполняется следующая последовательностьдействий:
1) с помощью эквивалентных преобразований все подформулы выражаются в виде суперпозиции дизъюнкции, конъюнкции, отрицания;
2) все отрицания «спускаютдо переменных» с помощью двойного отрицания x=x и законов де
Моргана;
3) раскрываютскобкисиспользованиемзаконадистрибутивности: x⋅
(
y∨z)
=xy∨xz; 1x∨ =x
4) с помощью эквивалентностей x x⋅ =x, x∨ =x x, xx=0, удаляются лишние конъюнкциииповторенияпеременныхвконъюнкциях;
5) спомощьюэквивалентностей x⋅ =0 0, x∨ =1 1, x∨ =0 x, 0=1, 1=0 удаляютсяконстанты. ДляпереходаотДНФкСДНФиспользуетсяправило «расщепления»: Kx∨Kx =K.
Еслиизформулы спомощьюнекоторыхэквивалентныхсоотношенийможнополучитьформулу , то можно получить из , использую те же эквивалентные соотношения. То есть всякое эквивалентное преобразование обратимо. Используя это замечание, можно доказать следующую теорему.
1
F
2
F F1 F2
Теорема 4
Длялюбых двухэквивалентных формул и существуетэквивалентноепреобразование в .
1
F F2 F1
2
F
Доказательство
Преобразуем и в СДНФ. Поскольку и эквивалентны, то их СДНФ совпадают. Обратив преобразование от СДНФ к , получим эквивалентное преобразование от к :
.
1
F F2 F1 F2
2
F F1 F2
1 2
F ⇒СДНФ⇒F
Элементарной дизъюнкцией называется дизъюнкция переменных или их отрицаний, в которых каждаяпеременнаявстречаетсянеболееодногораза.
Примерыэлементарныхдизъюнкций: x1, x3, x3∨x4, x1∨x2∨x3.
Конъюктивной нормальной формой (КНФ) называется формула, имеющая вид конъюнкции элементарныхдизъюнкций.
ПримерыКНФ: (x1∨x2) & (x1∨x2∨x3) , x2& (x1∨x2∨x4). ОсновныеотличияСКНФотКНФ:
а) еслив СКНФ в каждой дизъюнкции присутствуютвсе переменные функции с отрицанием или безотрицания, товдизъюнкциях, входящихвКНФ, могутотсутствоватьнекоторыепеременные;
б) длякаждойлогическойфункциисуществуеттолькооднаСКНФ, втовремякакКНФможетбыть неединственнойдляоднойитойжелогическойфункции.
Пример 4
СледующиедвеКНФэквивалентны: x2⋅
(
x1∨x2∨x3)
= =x2⋅(
x1∨x3)
. ИмсоответствуетСКНФ(
x1∨x2∨x3) (
⋅ x1∨x2∨x3) (
⋅ x1∨x2∨x3) (
⋅ x1∨x2∨x3) (
⋅ x1∨x2∨x3)
)
.Для одной логической функции переход от КНФ к ДНФ можно осуществить с помощью эквивалентных преобразований. Для этого выполняетсяследующаяпоследовательностьдействий:
1) спомощьюдистрибутивногозаконапереходяткконъюнкциям: x⋅
(
y∨z)
=xy∨xz;2) удаляются лишние конъюнкции и повторения переменных в конъюнкциях с помощью эквивалентностей: A∨AB=A, A∨ =A A, A A⋅ =A;
3) удаляютсялишниеконстантыспомощьюэквивалентностей: A⋅ =1 A, A∨ =0 A. ПриведениелогическойфункциикСКНФможноосуществитьдвумяспособами: 1) спомощьютаблицистинности;
2) спомощьюэквивалентныхпреобразований; сначаластроятКНФ, азатемСКНФ.
При использовании эквивалентных преобразований для приведения к КНФ выполняется следующаяпоследовательностьдействий:
1) с помощью эквивалентных преобразований все подформулы выражаются в виде суперпозиции дизъюнкции, конъюнкции, отрицания;
2) все отрицания с помощью двойного отрицания и законов де Моргана «спускаются до переменных»;
3) с помощью закона дистрибутивности переходят к конъюнкции дизъюнкций;
(
) (
x∨yz= ∨ ⋅ ∨x y x z
4) удаляются лишние дизъюнкции и переменные в них с помощью эквивалентностей: , ,
A A⋅ =A
5) удаляютсялишниеконстантывэлементарныхдизъюнкциях: A∨ =0 A, A∨ =1 1, A⋅ =1 1. ПереходотКНФкСКНФосуществляетсясиспользованиемэквивалентности A=
(
A∨x) (
⋅ A∨x)
. РассмотримпоследовательностьдействийдляпереходаотДНФкКНФ:1) с помощью дистрибутивного закона переходят к конъюнкциям элементарныхдизъюнкций;
(
) (
x∨yz= x∨y ⋅ ∨x z
)
2) удаляются лишние дизъюнкции с помощью законов , и лишние переменныевдизъюнкциях ,
A A⋅ =A A⋅
(
A∨B)
=Ax∨ =x x x∨ =x 1;
0
∨ = A∨ =1 1 A 1 3) удаляютсялишниеконстантывэлементарныхдизъюнкциях: A A, , ⋅ =1.
5. Минимизациялогическихфункций
В данном разделе рассматривается проблема минимизации логических функций как задача нахождения среди всех ДНФ, эквивалентных данной функции, той, которая содержит минимальное вхождениебукв.
5.1. Основныеопределения
Импликантой функции называется такая элементарная конъюнкция над множеством
{
, что(
1, , nf x … x
)
}
K
1, , n
x … x
(
1, , n)
(
1, , n)
K∨ f x … x = f x … x .
Пример 1
1. Формулапоглощения x∨xy=x, xy −импликанта.
2. Рассмотримфункциютрехпеременных, заданнуюввидетаблицы. СДНФэтойфункциизадаетсяформулой
1
x x2 x3 f
0 0 0 1 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 1
1 2 3 1 2 3 1 2 3 1 2 3 1 2 3.
u=x x x ∨x x x ∨x x x ∨x x x ∨x x x
u
Любая элементарная конъюнкция в формуле является импликантой. Элементарные конъюнкции x x1 2, x x1 2, x x2 3
тожеявляютсяимпликантами.
Импликанта функции называется простой импликантой, еслипосле отбрасывания любой буквы из получается конъюнкция, не являющаяся импликантой.
K f
K
1 3
x x
Например, для функции , − простые импликанты;
−импликанта, нонепростая.
(
1 2
x x ∨x3
)
x x1 21 2 3
x x x
Пример 2
Упростимформулу впримере 1, сделавслияниепопеременной впервыхдвухконъюнкцияхи по в двухпоследних. Врезультате получим
u x1
3
x u=x x2 3∨x x x1 2 3∨x x1 2 = =x x2 3∨ ⋅x1 (x x2 3∨x2), так
как x x2 3∨x2=x2∨x3, то u=x x2 3∨x x1
(
2∨x3)
=x x2 3∨x x1(
2⋅x3)
=x1∨x x2 3. Из формулы x1∨x x2 3видно, что функция f существенно зависит от переменных x1,x2,x3. Поэтому в конъюнкции x x2 3
нельзя отбросить какую-либо переменнуютак, чтобы получилась сноваимпликанта. Таким образом, ,
1
x x x2 3 −простыеимпликанты.
ДизъюнкциявсехпростыхимпликантфункцииназываетсясокращеннойДНФ. Справедливаследующаятеорема.
Теорема 1
ЛюбаялогическаяфункцияпредставимаипритомоднозначноввидесокращеннойДНФ.
Для рассмотренной в примерах 1 и 2 функции сокращенной ДНФ является x1∨x x2 3, так как в любойдругойимпликанте, соответствующейединичномунабору, могутбытьудаленыпеременные.
Дизъюнктивная нормальная форма называется минимальной, если она содержит наименьшее числобуквсредивсехДНФ, эквивалентныхей.
Определенные выше ДНФ − сокращенная, тупиковая и минимальная находятся в следующем соотношении. Тупиковая ДНФ получается из сокращенной путем удаления некоторых слагаемых. МинимальнаяДНФнаходитсясредитупиковых.
5.2. ГеометрическаяинтерпретацияДНФ
Множествовсехнаборов можнорассматриватькакмножествовершинn-мерногокуба. Например, при
(
α1,…,αn)
i
)
i1
)
}
3
n=
(001) (011)
(111) (101)
(000) (010)
(100) (110)
Рис.2.1. Геометрическаяинтерпретация
всехнаборовфункциитрехпеременных
Пусть принимают фиксированные значения 0 или 1, . Множество вершинкуба таких, что , называется
(
-мернойгранью.1, , r
i
σ … σ
(
α1,…,1 2 r
i < <i …< ≤i n
)
n−rn
α
1 1, 2 2, , r r
i i i i i
α = σ α = σ … α = σ
Пример 3
1. Пусть в трехмерном кубе , , . Тогда соответствующая грань будет образована вершинами (100), (101), (110), (111). Ееразмерностьравна 2.
r= i1=1
1 1 i
σ =
2. , , , , . Соответствующая грань размерности 1 образована вершинами (001) и (101).
2
r= i1=2 i2=3 σ =2 0 σ =3 1
Пусть f x
(
1,…,xn − произвольная логическая функция. Обозначим(
) (
{
1 | ,f ,…,αn α1 , n
)
1N = α f … α = −
)
множествоединичных наборов. Если вкачестве рассмотреть элементарнуюконъюнкцию
f
(
)
1 21 2
1, , r
r
n i i i
K x … x =xσ ⋅xσ ⋅ ⋅… xσ ,
то множество называется интервалом r-го ранга. Легко видеть, что интервал r-го ранга представляет собой -мерную грань. Таким образом, интервал представляет собой множество наборов, в которых компоненты, соответствующие переменным элементарной конъюнкции, принимают фиксированные значения, а остальные компоненты равны 0 или 1. Интервалы обозначаются наборами, в которых указываются фиксированные значения переменных, а остальные компонентыпомечаютсязнаком «−».
K
N NK
(
n−rПример 4
Конъюнкциям K1
(
x x x1, 2, 3)
=x2⋅x3, K2(
x x x1, 2, 3)
=x1 соответствуютинтервалыn
f
(
) ( )
{
}
1 000 , 100 K
N = ,
{
( ) ( )
}
.2 100 , 101 , (110), (111) K
N =
Этиминтерваламсоответствуютобозначения (− 00), (1 −−). Если f x
(
1,…,xn)
=g x(
1,…,xn) (
∨h x1,…,x)
, то:Этот метод применим для функций, зависящих от небольшого числа (не более 4) переменных. Функция задается прямоугольной таблицей, в которой наборы значений переменных расположены в таком порядке, чтобы при переходе к следующему столбцу или строке изменялась бы только одна компонента решения. Нахождение простых импликант сводится к выделению максимальных по включению прямоугольников, состоящих из единиц. Считается, что каждая клетка, примыкающая к одной из сторон, является соседней к клетке, примыкающей к противоположной стороне и расположеннойв той жестроке (илив том жестолбце). соседних клеток, содержащих единицы и расположенных по вертикали или горизонтали в виде прямоугольника или квадрата, соответствуют однойэлементарнойконъюнкции, рангкоторойменьшеnнаkединиц.
2k
Пример 7
РассмотримкартуКарнодляфункции f x x x x
(
1, 2, 3, 4)
созначениями (1110 0101 0100 1101)х3х4
х1х2
00
00
01
01
11
11 10
10
1 1 1
1 1
1 1 1
1
Рис. 2.2. ПримерпостроениякартыКарно
Максимальнымиявляютсяинтервалы:
(00 0)− , (000 )− , (− −01), (− −1 1), (110 )− . СокращеннаяДНФимеетвид
1 2 4 1 2 3 3 4 2 4 1 2 3
x x x ∨x x x ∨x x ∨x x ∨x x x .
5.3.3. ТаблицаКвайнадляпостроениятупиковыхДНФ
Строки этой таблицы соответствуют простым импликантам функции , а столбцы − наборам из множества . На пересечении строки, соответствующей импликанте и столбца, соответствующего набору , стоит 1, если и 0, если . Минимальное покрытие столбцов таблицы строками так, чтобы в него попали все единицы, соответствует тупиковой ДНФ. МинимальнойДНФ соответствует покрытие, обладающее минимальной суммойрангов конъюнкций, соответствующихстрокам, вошедшим впокрытие. ДляпостроениявсехтупиковыхДНФ функции составим КНФ по следующему правилу: поставим в соответствие столбцу элементарную дизъюнкцию , где − все такие простые импликанты , что . Положим . Раскрывая скобки с помощью закона дистрибутивности и
применяяэквивалентности и , получимиз КНФ ДНФ , слагаемые которойсоответствуюттупиковымДНФфункции .
f
0
(
ff
N
K
α
I
α
M
α
K
( )
( )
1I α =
(
1, ,i= …
B=A
f
( )
I α =
K
f
( )
fD =K1∨ 2∨…Ks
&
f
α
=
K
A A⋅ =
i
K
A∨ ⋅A
)
s f
( )
1i
K α = Dα
A