Дискретная математика в программировании. Практикум. Учебное пособие
.pdf
AÈE = E;
е) A Ç B = A È Bü – теоремы де Моргана.
ï
ý
A È B = A Ç Bï
þ
В отличие от четких множеств для нечетких множеств в
общем случае AÇ A ≠ Æ, AÈ A ¹ E, что, в частности, проиллюстрировано выше в примере наглядного представления нечетких множеств.
Задание
1. Пусть: A = 0,4/ x1 È 0,2/ x2 È 0/ x3 È 1/ x4; B = 0,7/ x1 È 0,9/ x2 È 0,1/ x3 È1/ x4;
C = 0,1/ x1 È 1/ x2 È 0,2/ x3 È 0,9/ x4.
Построить множества:
а) AÇB;
б) АÈВ;
в) А \ В; В \ C.
2. Написать программу, которая формирует заданные нечеткие множества и выполняет операции в соответствии с вариантом:
1.AÇ(BÇC).
2.AÈ(BÈC).
3.А È (A Ç B).
4.А Ç (A È B).
5.(A \ C) È (B \ C).
6.(A \ B) È (A \ C). 7.(AÈB) \ C
8.A \ (B Ç C).
9.А D В.
10.(А \ В) È (В \ А).
11
Практическая работа № 3. Бинарные отношения
Цель |
работы: получение |
навыков |
задания |
бинарных |
множеств в ЭВМ и выполнения операций с ними. |
|
|
||
|
Теоретические сведения |
|
|
|
или |
Пусть А1, А2, . . . , Аn - некоторые множества. Их прямым |
множество |
||
декартовым |
произведением |
называется |
||
упорядоченных наборов из n элементов, т.е.
А1´А2´ . . . ´Аn={(а1, а2, . . . , аn) | aiÎAi }.
Если все множества Ai совпадают A=А1=А2= . . . =Аn, то прямое произведение А1´А2´ . . . ´Аn=An называют прямой n-й степенью множества А.
Бинарным отношением между элементами множеств А и В называется любое подмножество RÍA´B. Если множества A и B совпадают А=В, то R называют бинарным отношением на множестве А.
Если (x, y)ÎR, то это обозначают еще xRy и говорят, что между элементами x и y установлено бинарное отношение R.
Приведем примеры бинарных отношений. Пусть A=B=R, пара (x, y) является точкой вещественной плоскости. Тогда бинарное отношение
R1 = { (x, y) | x2 + y2 £1 }
определяет замкнутый круг единичного радиуса с центром в точке (0,0) на плоскости, отношение
R2 = { (x, y) | x ³ y }
полуплоскость, а отношение
R3= { (x, y) | |x-y| £ 1 }
полосу.
Диагональ множества A´A, т.е. множество D={(x,x) | xÎA}, называется единичным бинарным отношением или отношением равенства в A.
Областью определения бинарного отношения R называется множество
12
dR={ xÎA | yÎB, (x, y) ÎR }.
Областью значений бинарного отношенияR называется множество
Образом |
rR={ yÎB | xÎA, (x, y)ÎR }. |
отношения R |
||||
множества X относительно |
||||||
называется множество |
|
|
|
|
||
|
|
R(X) = { yÎB | xÎX, (x, y)ÎR }; |
|
|
||
прообразом X относительно R называется R -1(X). |
|
|
||||
В теории выбора и принятия решений |
большую роль |
|||||
играют |
бинарные |
отношения |
предпочтения, . |
е. такие |
||
отношения, согласно которым в паре (x, y)ÎR элемент x в какомто смысле лучше чем y. Например:
-в смысле отношения R2 "лучше" означает "больше или равно";
-в смысле отношения R3 понятие "лучше" может означать "отстоит не больше чем на единицу".
Операции над бинарными отношениями определяются подобно операциям над соответствующими множествами. Пусть А – произвольное множество, на котором введены бинарные отношения R, R1, R2,...
1)Объединение двух бинарных отношенийR1 и R2 - это отношение
R1ÈR2 = { (x, y) | (x, y)ÎR1 или (x, y)ÎR2 }.
2) Пересечение двух бинарных отношенийR1 и R2 - это отношение
R1ÇR2 = { (x, y) | (x, y)ÎR1 и (x, y)ÎR2 }.
3)Обратное отношение R –1 = { (x, y) | (y, x)ÎR}.
4)Дополнение к отношению R ={ (x, y) | (x, y)Î(A´A)\R}.
5)Двойственное отношение Rd = R-1 .
6)Композиция (суперпозиция) отношений R=R1oR2 содержит пару (x, y) тогда и только тогда, когда существует такое
zÎA, что (x, y)ÎR1 и (z, y)ÎR2.
7) R1 содержится в R2 (R1 Í R2), если любая пара (x, y), которая принадлежит отношениюR1, также принадлежит и отношению R2.
13
Основные свойства операций над отношениями:
1)Ç Rk -1=(Ç Rk) -1.
2)È Rk -1=(È Rk ) -1.
3)(R1 o R2) -1 = R1 -1o R2 -1.
4)(R1 o R2 )oR3 = R1o(R2 o R3).
5)(R1 È R2 )oR3 = (R1 oR3 )È( R2o R3 ).
6)(R1 Ç R2 )oR3 Í (R1 oR3 )Ç( R2o R3 ).
7)а) если R1Í R2 то R1o R3 ÍR2o R3;
б) если R1 Í R2 то R1-1Í R2-1;
в) если R1 Í R2 то R3oR1 Í R3oR2.
8)a) (R1È R2)d = R1d ÇR2d;
б) (R1Ç R2)d = R1d ÈR2d; в) (R d)d = R.
Способы задания бинарных отношений. Традиционное задание отношений аналогично тому, как это принято в теории множеств, что не всегда удобно. Поэтому наряду с таким заданием применяются другие способы.
1. Матричное задание. Оно используется, когда А – конечное множество А={xi}. Тогда отношение R можно задавать с помощью матрицы R={xij}, элементы которой определяются соотношением:
ìï1, если (xi , x j ) ÎR, xij = íïî0, если (xi , x j ) ÏR.
2. Задание с помощью графа. Для конечного множества А отношение можно задавать с помощью графа(R), Гкоторый является геометрическим образом бинарного отношения. Граф – фигура, состоящая из точек(вершин), соединенных линиями (дугами). Вершины графа соответствуют элементам множества А, т. е. xi, а наличие дуги, соединяющей вершины xi и xj, означает, что (xi,xj)ÎR. Чтобы подчеркнуть упорядоченность пары на дуге ставится стрелка.
3. Задание верхними и нижними срезами. Этот способ может быть использован для любых множеств и отношений. Пусть на множестве А задано отношение R. Верхний срез GR (x)
14
отношения R в точке x ÎА - это множество элементов yÎА таких,
что (y, x)ÎR, т.е. GR(x) = { yÎA | (y, x)ÎR }. Если рассматривать R
как отношение предпочтения, то GR (x) – это множество элементов, лучших чем х. Нижний срез HR(x) отношения R в точке xÎА - это множество элементов yÎА, таких, что (x, y)ÎR,
т.е. HR(x) = { yÎA | (x, y)ÎR }.
Свойства бинарных отношений.
1)Рефлексивность. Отношение R называется рефлексивным, если (х, х)ÎR для любого хÎA.
2)Антирефлексивность. Отношение R называется
антирефлексивным, если (х, х)ÏR для любого хÎA. Если R - антирефлексивное отношение, то xÏGR(x) и хÏHR(x) для любого хÎA .
3) Симметричность. Отношение R называется симметричным, если для любыхx,yÎA из того, что (x, y)ÎR
следует (y, x)ÎR и обратно. Если |
отношение R симметрично, то |
|
для любого хÎA: а) GR(x) = HR(x); |
б) R = R-1. |
|
4) Антисимметричность. Отношение R называется |
||
антисимметричным, если |
для |
любыхx и y из A из |
одновременного выполнения условий (x, y)ÎR и (y, x)ÎR следует,
что x = y.
5) Асимметричность. Отношение R асимметрично, если
R°Ç°R-1= Æ, |
т.е. пересечение |
отношения R |
с |
обратным |
|
отношением |
пусто. |
Эквивалентное |
определение |
||
асимметричности: из двух отношений (x, y)ÎR и (y, x)ÎR одно не выполняется.
Для любого отношения R вводятся понятия симметричной части отношения Rs = R ÇR-1 и асимметричной части отношения Ra = R \ Rs. Если отношение R симметрично, то R = Rs, если отношение R асимметрично, то R = Ra.
6) Транзитивность. Отношение R транзитивно, если для любыx x, y, zÎA из того, что (x, y)ÎR и (y, z)ÎR следует (x, z)ÎR.
Свойства транзитивного отношения:
а) RoRÍR;
б) для любого хÎA из yÎGR(x) следует, что GR(y)ÍGR(x).
15
Отношение R1 называется транзитивным относительно отношения R2, если:
а) из (x, y)Î R1 и (y, x)Î R2 следует, что (x, z)Î R1; б) из (x, y)Î R2 и (y, x)Î R1 следует, что (x, z)Î R1.
7)Негатранзитивность. Отношение R называется негатранзитивным, если`R транзитивно.
8)Полнота. Отношение R полно, если для любых x, yÎА либо (x, y)ÎR, либо (y, x)ÎR, либо оба отношения выполняются одновременно. Свойства полных отношений:
а) GR(x)ÈHR(x) = А для любого хÎA; б) полное отношение рефлексивно.
9)Слабая полнота. Отношение R называется слабо полным, если для любых х¹y из А или (x, y)ÎR, или (y, x)ÎR.
10)Ацикличность. Бинарное отношение R ациклично, если
Rn ÇR-1= Æ для любогоnÎN . Иными словами, если из любой конечной цепочки отношений хRу, уRt,..., vRz следует, что z¹х, то отношение R ациклично.
Связи между бинарными отношениями.
1.Отношение R симметрично тогда и только тогда, когда
R = R-1.
2.Если R рефлексивно, то Rd антирефлексивно, если R антирефлексивно, то Rd рефлексивно.
3.Отношение R слабо полно тогда и только тогда, когда Rd антисимметрично.
4.Отношение R асимметрично тогда и только тогда, когда Rd полно.
Задание
1. Написать программу, которая строит матрицу бинарного отношения R и нижние срезы всех нечетных элементов, а также проверяет полноту R: R ={(xi , x j ) | (xi + x j )%4 =1} .
2. Написать программу, которая строит матрицу бинарного отношения R и верхние срезы всех четных элементов, а также проверяет негатранзитивность R: R ={(xi , x j ) | (xi - x j )%3 = 0}.
16
3. |
Написать программу, которая строит матрицу бинарного |
|
|||||||
отношения |
R |
и |
проверяет |
его |
симметричность |
и |
|||
негатранзитивность: R = {(xi , x j ) |
|
xi (x j |
+1) =12} . |
|
|
||||
|
|
|
|||||||
4. |
Написать программу, которая строит матрицу бинарного |
|
|||||||
отношения R и проверяет, является ли оно асимметричным и |
|
||||||||
слабо полным: R ={(xi , x j ) | $k ÎN, xi |
= kx j - 2} . |
|
|
||||||
5. |
Написать программу, которая строит матрицу бинарного |
|
|||||||
отношения R |
и |
проверяет |
|
его |
полноту |
и рефлексивность: |
|
||
R={(xi , x j ) | $k ÎN, xi = kx j +1} .
6.Написать программу, которая строит матрицу бинарного отношения R и верхние срезы элементов, не кратных 3, а также
проверяет, является ли R слабо полным: R ={(xi , x j ) | xi - x j £ 6} °.
7. Написать программу, которая строит матрицу бинарного отношения R и проверяет его асимметричность и негатранзитивность: R ={(x, y) | (x - y)%3 = 0} .
8. Написать программу, которая строит матрицу бинарного
отношения |
R и |
строит |
верхние срезы |
каждого нечетного |
элемента, |
а |
также |
проверяет |
антисимметричность: |
R={(x, y) | (x + y)%4 = 3} .
9.Написать программу, которая строит матрицу бинарного отношения R на конечном множестве и проверяет его антисимметричность и транзитивность: R = {(x, y) | (x - y)%3 =1} .
10. Написать программу, которая строит матрицу бинарного отношения R на конечном множестве и проверяет его антирефлексивность и негатранзитивность: R ={(x, y) | x %y =1} .
Практическая работа № 4.
Построение таблиц истинности формулы, тождественная истинность, тождественная ложность
Цель работы: получение навыков построения таблиц истинности алгебры логики в ЭВМ.
17
|
|
|
|
Теоретические сведения |
|
|
|
|
|
|||||
|
Высказыванием называется всякое утверждение, о котором |
|
||||||||||||
можно вполне определенно и объективно сказатьистинно оно |
|
|||||||||||||
или |
ложно. Например, |
|
утверждение "2 |
> |
0" |
является |
|
|||||||
высказыванием |
и |
оно истинно, а утверждение "2 < 0" - ложно. |
|
|||||||||||
Высказывание полностью определяется своим истинностным |
||||||||||||||
значением. |
Условимся |
|
значение |
истинности |
высказывания |
|||||||||
обозначать |
буквой "И", если |
высказывание |
истинно, |
и |
буквой |
|
||||||||
"Л", если высказывание ложно. Различают высказывания простые |
|
|||||||||||||
и сложные. Высказывание называется простым, если никакая его |
|
|||||||||||||
часть не является высказыванием. Простые высказывания будем |
|
|||||||||||||
обозначать |
|
начальными |
заглавными |
буквами |
латинского |
|||||||||
алфавита A, B, C или A1, A2,… Сложные |
высказывания |
|
||||||||||||
характеризуются тем, что образованы из нескольких простых |
|
|||||||||||||
высказываний с помощью логических операций, т.е. являются |
|
|||||||||||||
формулами алгебры высказываний. |
|
|
|
|
|
|
||||||||
|
Обозначим |
B = |
{И, |
Л}. |
Определим |
операции на |
|
|||||||
множестве B. |
|
|
|
|
|
|
|
|
|
|
|
|
||
|
Отрицанием |
высказывания A |
называется |
высказывание, |
|
|||||||||
которое принимает значение истина, если A ложно, и наоборот. |
|
|||||||||||||
Отрицание обозначается |
|
(ØА) и является унарной операцией. |
|
|||||||||||
A |
|
|||||||||||||
Пусть А и В- некоторые элементарные высказывания, введем |
|
|||||||||||||
бинарные операции над ними. |
|
|
|
|
|
|
|
|||||||
|
Конъюнкцией высказываний A и B называется |
|
||||||||||||
высказывание, |
которое |
принимает |
значение |
истина |
тогда |
и |
||||||||
только тогда, когда истинны оба высказывания A и B. |
|
|||||||||||||
Обозначается конъюнкция - A Ù B (А&В). |
|
|
|
|
|
|||||||||
|
Дизъюнкцией высказываний A и B называется |
|
||||||||||||
высказывание, которое принимает значение истина, если истинно |
|
|||||||||||||
хотя бы одно из высказываний A или B. Обозначается |
|
|||||||||||||
дизъюнкция - A Ú B. |
|
|
|
|
|
|
|
|
|
|||||
|
Импликацией высказываний A и B называется |
|
||||||||||||
высказывание, которое принимает значение ложь тогда и только |
|
|||||||||||||
тогда, когда A истинно, а B ложно. Обозначается А®В. |
|
|
|
|||||||||||
|
Эквиваленцией высказываний A и B называется |
|
||||||||||||
высказывание, |
которое |
принимает |
значение |
истина |
тогда |
и |
||||||||
18
только тогда, когда высказывания A и B имеют одинаковые значения. Обозначение операции - А~В (АºВ).
Логические операции определяются также с помощью таблиц, называемых таблицами истинности. Приведем сводную таблицу истинности для всех введенных логических операций.
A |
B |
ØA |
AÙB |
AÚB |
A®B |
A~B |
|
Л |
Л |
И |
Л |
Л |
И |
И |
|
Л |
И |
И |
Л |
И |
И |
Л |
|
И |
Л |
Л |
Л |
И |
Л |
Л |
|
И |
И |
Л |
И |
И |
И |
И |
|
Пропозициональной (высказывательной) переменной
называется переменная, значениями которой являются простые высказывания. Обозначим высказывательные переменные через
X1, X2, . . . , Xn.
Понятие формулы алгебры высказываний вводится по индукции. Формулами алгебры высказываний являются:
1)И, Л;
2)пропозициональные переменные;
3) если А и |
В формулы, то каждое из выражений |
|
ØА, |
|
|||
(А Ù В), (А Ú В), (А ® В), (А ~ В) есть формула; |
|
|
|
|
|||
4) других формул, кроме построенных по п. 1 - 3, нет. |
|
|
|
||||
Обозначим |
через M множество всех |
формул |
алгебры |
|
|||
высказываний, M является замкнутым относительно логических |
|
||||||
операций. Для формулы, построенной по п. 3, формулы A и B |
|
||||||
называются подформулами. Порядок выполнения операций в |
|
||||||
формуле |
определяется |
их приоритетом. Список логических |
|
||||
|
|
|
|
Ø, Ù , Ú , ®, |
~. |
|
|
операций в порядке убывания приоритета: |
|
|
|||||
Изменение |
порядка |
выполнения |
операций, как |
|
и |
в |
|
алгебраических операциях, производится с помощью круглых |
|
||||||
скобок. |
|
|
|
|
|
|
|
В соответствии с таблицами истинности операций можно построить таблицу истинности формулы. Перечислим, что для этого нужно.
1. Пронумеровать простые высказывания в алфавитном порядке.
19
2.Для каждого элементарного высказывания рассмотреть все возможные наборы значений истинности. Всего возможно 2n комбинаций, где n - число элементарных высказываний. Это количество строк в таблице.
3.Пронумеровать сложные высказывания, содержащие одну логическую операцию, затем сложные высказывания, содержащие две логических операции, т..д, увеличивая сложность высказываний в соответствии с порядком выполнения операций.
4.Вычислить значения истинности всех сложных высказываний. Столбец с последним номером будет содержать значение истинности для всей логической формулы.
Формулы А и В называются эквивалентными (обозначается
А ~ |
),В если |
при |
любых |
значениях |
высказывательных |
||||
переменных |
значение |
формулы |
А |
совпадает со |
значением |
||||
формулы В. |
называется выполнимой, |
|
|
|
|
||||
|
Формула |
если |
существует |
такой |
|||||
набор |
значений |
переменных, при |
|
которых |
эта |
формула |
|||
принимает значение И. |
|
|
|
|
|
|
|||
|
Формула |
называется опровержимой, |
если |
существует |
|||||
такой набор значений переменных, при которых эта формула |
|||||||||
принимает значение Л. |
|
|
|
|
|
|
|||
|
Формула |
|
называется тождественно |
|
истинной |
||||
(ТИ-формулой) или тавтологией, если эта формула принимает |
|||||||||
значение И при всех наборах значений переменных. |
|
|
|||||||
|
Формула |
|
|
называется тождественно |
|
ложной |
|||
(ТЛ-формулой) или противоречием, если эта формула принимает значение Л при всех наборах значений переменных.
Так как логические формулы используются в операторах языков программирования и языков баз данных, то актуальными являются задачи определения эквивалентности, выполнимости, опровержимости, тождественной истинности и ложности формул. Такие задачи могут решаться с помощью построения таблиц истинности.
20
