УПП_Дискретная математика-1. Международный консорциум Электронный университет Московский государственный университет экономики, статистики и информатики
Скачать 6.65 Mb.
|
А), читается: не А. Истинностная таблица имеет вид: |
А | В | С | АВ | (АВ)С | | | | |
1 | 1 | 1 | 1 | 1 | 0 | 0 | 1 | 1 |
1 | 1 | 0 | 1 | 0 | 1 | 1 | 0 | 0 |
1 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 1 |
1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 |
0 | 1 | 1 | 1 | 1 | 0 | 1 | 0 | 1 |
0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 1 |
0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 1 |
0 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 1 |
Итак, формула S задает высказывание, которое истинно на следующих наборах значений элементарных высказываний:
А=1 | В=1 | С=1 | (все три элементарных высказывания истинны) |
А=1 | В=0 | С=1 | (А, С – истинны, В – ложно) |
А=0 | В=1 | С=1 | (А – ложно, В и С – истинны) |
А=0 | В=1 | С=0 | (В – истинно, А и С – ложны) |
А=0 | В=0 | С=1 | (С – истинно, А и В – ложно) |
А=0 | В=0 | С=0 | (все три высказывания ложны). |
Формулы алгебры высказываний
Будем пользоваться следующими символами A, B, C, ... , X, Y, Z ...
переменные высказывания, 0, 1, И, Л – const, , , , ,
символы соответствующих логических операций.
Дадим определение формулы алгебры высказываний:
отдельно стоящая буква A, B, C, ... , X, Y, Z ... – формула.
если А, В – формулы, то формулами являются и ( ), ( ), (АВ), (АВ), (АВ), (АВ).
Других формул нет.
Очевидно, сложное высказывание выше приведенного примера задано формулой S.
Две формулы алгебры высказываний называются равносильными, если на всех одинаковых наборах значений составляющих переменных высказываний они принимают одинаковые значения 1 или 0.
Упражнение 2.1.2
Следующие высказывания могут быть интерпретированы как составные. Указать элементарные высказывания их составляющие, написать формулы данных высказываний и построить истинностные таблицы. Указать, какие из высказываний равносильны.
S1: Х неверно сделал расчет или если Y считал задачу правильно, то и Z сделал это без ошибок.
S2: Если Х правильно просчитал задачу, то либо Y ошибся, либо Z сделал ее верно.
S3: Либо Х неверно просчитал задачу, либо Y решил ее верно в том и только в том случае, если Z решил ее верно.
Очевидно, данные сложные высказывания составлены из следующих элементарных.
А: Х правильно просчитал задачу
B: Y правильно просчитал задачу
C: Z правильно просчитал задачу
Используя основные логические связки, запишем формулы данных высказываний.
Составим истинностные таблицы данных высказываний:
Таблица 2.18
А | В | С | ВС | S1 | | S2 | ВС | S3 |
1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 0 |
1 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 |
0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
0 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | 1 |
0 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 1 |
0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 |
Из таблицы 2.1.8 видно, что высказывания S1 и S2 равносильны: S1=S2.
Приведем список основных равносильных формул алгебры высказываний:
| АА=А | идемпотентность |
| АА=А | |
| АВ=ВА | коммутативность |
| АВ=ВА | |
| (АВ)С=А(ВС) | ассоциативность |
| (АВ) С=А (ВС) | |
| А (ВС)=(АВ) (АС) | дистрибутивность |
| А (ВС)=(АВ) (АС) | |
| AИ=И | |
| AЛ=Л | |
| AИ=A | |
| AЛ=A | |
| A =И | закон исключенного третьего |
| A =Л | |
| | |
| | законы де Моргана |
| | |
| =И | |
| =Л | |
Отметим, что операции импликации и двойной импликации можно заменить дизъюнкцией, конъюнкцией, отрицанием, используя следующие равносильные формулы:
,
,
.
Рассмотрим множество всех логически возможных случаев, множество всех возможных логических ситуаций для высказываний, связанных с некоторой проблемой, – некоторое универсальное множество. Поставим в соответствие каждому переменному высказыванию некоторое подмножество универсального множества логических возможностей и назовем его множеством истинности данного высказывания. Множество истинности данного высказывания содержит в качестве своих элементов все те логически возможные случаи, когда данное высказывание является истинным.
Высказыванию, истинному во всех логически возможных случаях, т.е. логической константе, обозначаемой 1 или И, будет соответствовать универсальное множество. Высказыванию, ложному во всех логически возможных случаях, т.е. логической константе, обозначаемой 0 или Л, будет соответствовать пустое множество. Тогда дизъюнкции двух высказываний будет соответствовать объединение (сумма) их множеств истинности, конъюнкции – пересечение их множеств истинности, а отрицанию к высказыванию – дополнение к множеству истинности данного высказывания. Учитывая это и сравнивая список основных равносильных формул алгебры высказываний со списком свойств основных операций над множествами, убеждаемся в том, что операции алгебры высказываний образуют Булеву алгебру.
Заметим следующее: для того, чтобы убедиться в равносильности двух формул, можно построить их истинностные таблицы и убедиться в их совпадении. Равносильность формул можно установить также, убедившись в совпадении множеств истинности рассматриваемых высказываний. Так, в справедливости закона дистрибутивности №7 можно убедиться, изобразив на диаграммах Эйлера-Венна множества истинности левой и правой частей равенства (рис. 2.1.1).
.
Рис. 2.1.1
Установить равносильность формул можно также путем их преобразования. Так, заменяя импликацию равносильной ей формулой, получим равносильность формул S1 и S2 упражнения 2.1.2:
.
Рассмотрим некоторые упражнения на данную тему.
Упражнение 2.1.3
Указать множество наборов, удовлетворяющих уравнению
S=(xyyz) x y z=0.
Решение получим, построив истинностную таблицу данной формулы. Убеждаемся в том, что на всех 8ми наборах истинности и ложности данных высказываний x, y, z формула принимает значение 1, т.е. наборов , где бы S принимала значение 0 нет, формула S1, т.е. тождественно истинна, т.е. наборов где бы S=0 нет.
К тому же результату можно прийти, преобразовав S и используя список основных равносильных формул:
,
т.к. а) ,
б) .
Упражнение 2.1.4
Проверить равносильность двух формул и .
Преобразуем формулы, заменив импликацию равносильной формулой.
, .
Очевидно, =.
Упражнение 2.1.5
При составлении расписания на понедельник преподаватели просили, чтобы уроки проходили в следующем порядке:
математика первым или третьим уроком;
история – первым или вторым;
литература – вторым или третьим.
Можно ли удовлетворить просьбы всех трех преподавателей и, если это возможно, то каким образом ?
Введем следующие элементарные высказывания:
А – математика – Iый урок
В – математика – IIIий урок
С – история – IIой урок
D – история – Iый урок
E – литература – IIой урок
F – литература – IIIий урок
Просьбы всех преподавателей выражены высказываниями S1=АВ, S2=CD, S3=ED.
Высказывание, удовлетворяющее просьбы всех трех преподавателей, очевидно, есть конъюнкция S1, S2, S3, т.е. S = S1 S2 S3, и оно должно быть истинным, т.е. S=1. Применим дистрибутивный закон №7 в преобразованиях S:
S=(AB)(CD)(EF)=(ACBCADBD)(EF).
В данном случае конъюнкция AD=0, т.к. первым уроком математика и история одновременно быть не могут.
S=ACЕBCЕBDЕACFBCFBDF.
Очевидно, АСЕ=0, т.к. СЕ=0: второй урок не может быть одновременно уроком истории и литературы. Аналогично: ВСЕ=0, BCF=0, BDF=0, т.е. S= BDЕACF=1.
Дизъюнкция истинна, если одно из слагаемых истинно: BDЕ=1; ACF=1.
Конъюнкция высказываний истинна, если истинны все входящие в нее сомножители. В результате получаем два возможных варианта ответа:
BDЕ=1, т.е. история – Iый урок,
литература – IIой урок,
математика – IIIий урок.
ACF=1, т.е. математика – Iый урок
история – IIой урок,
литература – IIIий урок.
Варианты импликации
В математике весьма важными являются понятия: «необходимое условие», «достаточное условие», которые могут быть записаны с помощью связи импликации.
«А достаточное условие для В», очевидно выражается формулой: АВ, а «А необходимое условие для В» – формулой ВА, которую называют конверсией импликации. В конверсии импликации посылка А и заключение В меняются местами.
Достаточное условие может быть выражено формулой, равносильной формуле АВ, а именно , называемой контроппозицией, а необходимое условие – формулой , называемой конверсией контроппозиции.
В рассуждениях эти равносильные формулы заменяют друг друга. Кроме того, «А достаточно для В» может быть выражено в виде «А только, если В», (не путать с «А если и только если В»), т.к. это означает: «Если не В, то не А», т.е.
=АВ.
Итак, получим:
«А достаточно для В»: АВ= , «А только, если В»;
«А необходимо для В»: .
Очевидно, необходимое и достаточное условие выражается двойной импликацией
Упражнение 2.1.6
Написать формулы следующих высказываний.
S1: дифференцируемая функция непрерывна;
S2: функция дифференцируема только в случае ее непрерывности;
S3: функция непрерывна только в случае ее дифференцируемости;
S4: дифференцируемость функции есть необходимое условие ее непрерывности;
S5: дифференцируемость функции есть достаточное условие ее непрерывности;
S6: дифференцируемость функции есть необходимое и достаточное условие ее непрерывности.
Введем в качестве элементарных имен высказывания: А – данная функция дифференцируема, В – данная функция непрерывна.
Очевидно: S1=АВ; S2: «А только, если В», т.е. «Если , то «, т.е. =АВ; S3: «В только, если А», т.е. ; S4=ВА; S5=АВ; S6=АВ.
Итак, высказывания S1, S2, S5 выражают достаточность А для В, а высказывания S3, S4 – необходимость.
Функции алгебры высказываний
Основным понятием математической логики является понятие логической функции. Пусть областью определения аргумента является множество, состоящее из двух элементов, условно обозначаемых 1, 0. Если множество значений функции также состоит из двух элементов 1, 0, то такая функция называется логической функцией. В частности, элементом логической функции могут быть переменные высказывания, тогда сама функция также представляет собой некоторое высказывание, значение которого зависит от аргументов.
Пусть логическая функция зависит от n аргументов. Различных наборов значений истинности и ложности аргументов существует (строки истинностной таблицы). Зададимся вопросом, сколько существует различных логических функций, зависящих от n аргументов, т.е. сколько существует различных столбцов в истинностной таблице, содержащей строк. Так как каждой из строк может быть поставлено в соответствие одно из двух значений 1 или 0, то всего столбцов существует . Итак, число логических функций, зависящих от n аргументов N= , – конечное число. Различных формул алгебры высказываний, включающих в себя n переменных, существует бесчисленное множество. Оно разбивается на конечное число классов равносильных между собой формул.
Сформулируем определение логической функции. Пусть М – множество функций f(x1, ... xn), переменные которых xi определены на множестве Е2 (1,0), для которых f(1, ... n)Е2, если iЕ2. Функции из множества М есть функции алгебры логики, или Булевы функции.
Среди переменных логической функции есть существенные переменные и фиктивные. Функция f(x1, ... xi-1, xi, xi+1, ... xn) существенно зависит от переменной xi, если найдутся два набора =(1, ... i-1, 0, i+1, ... n) и =(1, ... i-1, 1, i+1, ... n) такие, что f()f( ). В этом случае переменная xi является существенной переменной и фиктивной в противном случае.
Если переменная xi – фиктивная, то функцию f(x1, ... xi-1, xi, xi+1, ... xn) можно свести к равной ей функции g(x1, ... xi-1, xi+1, ... xn) от (n-1)ой переменной. Для этого нужно в таблице функции f вычеркнуть все строки, где xi=1 (или xi=0), и столбец, соответствующий переменной xi.
Упражнение 2.1.7
Таблица 2.1.9
x1 | x2 | f |
1 | 1 | 0 |
1 | 0 | 0 |
0 | 1 | 1 |
0 | 0 | 1 |
Функция f(x1 x2) задана таблицей 2.1.9. Содержит ли f(x1 x2) фиктивные переменные? Если да, требуется свести функцию «f» к равной ей функции «g» от одной переменной.
Проверим переменную x1. Для этого сравниваем наборы переменных x1, x2, где x1 принимает различные значения, а значения x2 не меняются. Первая пара наборов – первая и третья строки данной таблицы, т.е. 1=(1,1) 1=(0,1) приводят к результату f(1,1)=0, f(0,1)=1, т.е. нашли пару наборов, где при перемене значений исследуемой переменной x1 и сохранении остальных переменных (в данном случае одна переменная x2) значение функции f меняется; f(1)f( 1), т.е. x1 – существенная переменная.
При исследовании x2 поступаем аналогично:
1=(1,1) 1=(1,0) f(1)=f( 1),
2=(0,1) 2=(0,0) f(2)=f( 2),
т.е. x2 – фиктивная переменная.
x1 | g |
1 | 1 |
0 | 0 |
Вычеркиваем в табл. 2.1.9 первую и третью строки: (1,1) (0,1), где x1=1 (или вторую и четвертую: (1,0) (0,0), где x1=0) и столбец, соответствующий фиктивной переменной x2, получим g(x1)= f(x1 x2).
Упражнение 2.1.8
Построить логическую функцию по формуле
.
Какие из переменных являются существенными?
Построив истинностную таблицу формулы S, получим функцию, соответствующую данной формуле (табл. 2.1.10).
При различных значениях истинности и ложности переменной х3 и фиксированных значениях переменных х1 и х2 значения функции одинаковы. Следовательно, х3 – фиктивная переменная. Существенными являются переменные х1 и х2. Сравнивая вторую и четвертые строки табл. 2.1.10, обнаруживаем, что при одинаковых значениях истинности переменных х1=1 х3=0 и разных значениях х2 (1,0), значения функции разные, т.е. f(1,1,0) ≠ f(1,0,0), следовательно, х2 – существенная переменная. Сравнивая четвертую и восьмую строки таблицы, получим f(1,0,0) не равно f(0,0,0), т.е. х1 – существенная переменная.
Таблица 2.1.10
х1 | х2 | х3 | | | | | f |
1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 |
1 | 1 | 0 | 1 | 1 | 0 | 0 | 0 |
1 | 0 | 1 | 1 | 1 | 1 | 1 | 1 |
1 | 0 | 0 | 1 | 1 | 1 | 1 | 1 |
0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 |
0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 |
0 | 0 | 1 | 0 | 1 | 1 | 0 | 0 |
0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 |
В том, что х3 – фиктивная переменная, можно убедиться преобразованием формулы S.
Таблица 2.1.11
x1 | x2 | g |
1 | 1 | 0 |
1 | 0 | 1 |
0 | 1 | 0 |
0 | 0 | 0 |
Этой формуле соответствует функция g, получаемая из f удалением фиктивной переменной х3 (табл. 2.1.11).
Выпишем все функции от двух переменных. Очевидно их будет =16 (табл. 2.1.12).
Таблица 2.1.12
х1 | х2 | f0 | f1 | f2 | f3 | f4 | f5 | f6 | f7 | f8 | f9 | f10 | f11 | f12 | f13 | f14 | f15 |
1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 |
0 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 |
0 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 |
Очевидно, введенные ранее связки , , , есть соответственно функции f8, f14, f11, f9. В качестве связок используются и другие функции, в частности
F7 – штрих Шеффера х1х2,
F1 – знак Лукашевича х1х2,
F6 – разделительная дизъюнкция , соответствующая разделительному союзу «или».
Полные системы связок
Система связок логики высказываний называется полной, если всякая формула логики высказываний равносильна некоторой формуле, содержащей лишь связки этой системы.
Используя формулы, равносильные импликации и двойной импликации, получим, что дизъюнкция, конъюнкция, отрицание образуют полную систему связок. Используя закон де Моргана, приходим к тому, что (-), (-) – полные системы связок.
В самом деле из трех связок , , можно исключить дизъюнкцию: или конъюнкцию: .
Более того, любую формулу алгебры высказываний можно записать одной связкой – штрихом Шеффера, что и предлагается сделать читателю.
Набор таких связок, как отрицание и двойная импликация – неполон, так же как и {, }{, , , }.
Упражнение 2.1.9
Проиллюстрировать полноту связок (, ) на примерах:
Очевидно, в данных формулах нужно заменить все связки, кроме (, ).
а) Преобразуем S1:
Применяя формулу поглощения, получим
, т.е. .
б) , где по закону де Моргана, так же как и
, т.е.
Формула S2 стала более громоздкой, но представлена только двумя связками: , .