Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Системный анализ. Логические методы. Часть вторая. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
4.1. Высказывания и логические операции над ними
x1 → x0= x1   x0.
В верности этого равенства можно убедиться, построив таблицу истинности (табл. 4.6) для правой его части и сравнив ее выход с вы­ходом (см. табл. 4.5). При построении табл. 4.6 следует использовать табл. 4.1 и табл. 4.3.
Таблица 4.6
x
1
x
0
 x
 x1   x
1
0
0 0 1 1
0 1 1 1
1 0 0 0
1 1 0 1
Равнозначность — многоместная операция. Для двух переменных она задается табл. 4.4.
Как видно, равнозначность истинна, когда все ее аргументы прини­мают одинаковые значения — или все одновременно ложны, или все одновременно истинны; равнозначность ложна, когда значение хотя бы одного из аргументов отлично от значений других.
Обозначают равнозначность символом «=»:
= x0).
y = (x
1
Правая часть этой записи читается так: x1 тогда и только тогда, когда x0.
Любое равенство, если его рассматривать как одно высказывание, яв­ляется равнозначностью. Например, «Все едино, что в лоб, что по лбу».
Равнозначность n переменных записывается следующим образом:
= x
y = (x
n-1
= … = x0).
n-2
Синонимы для равнозначности: «x1 в том, и только в том случае, когда x0; x1 есть необходимое и достаточное условие для x0; x0 есть не­обходимое и достаточное условие для x1; если x1, то x0, И если x0, то x1».
Последний из синонимов равнозначности позволяет составить для нее ещё и такое выражение:
= x0) = (x1 → x0)   (x0 → x1).
(x
1
Читателю предлагается проверить верность этой формулы самосто­ятельно.
141
Глава 4. Основы «символической логики»
В терминах функционально полной системы операций равнознач-
ность двух переменных записывается так:
= x0) =  x1     x0   x1   x0.
(x
1
Составив таблицу истинности для правой части этой формулы (табл. 4.8) и сравнив ее выход с выходом табл. 4.7, убедимся в верно­сти приведенной формулы.
Таблица 4.7 Таблица 4.8
x
x
0
y x
1
x0 x1     x0x1   x0 x1     x0   x1   x
1
0
0 0 1 0 0 1 0 1
0 1 0 0 1 0 0 0
1 0 0 1 0 0 0 0
1 1 1 1 1 0 1 1
Полезно бывает произвести анализ правовых норм средствами «ал­гебры логики» для обнаружения и устранения в них неясностей, неод­нозначностей. Возьмем, к примеру, такое высказывание: «Уголовной ответственности подлежит лицо, достигшее ко времени совершения преступления шестнадцатилетнего возраста» (ч. 1 ст. 20 УК РФ). Бук­вальное прочтение этого высказывания позволяет привлечь к уголов­ной ответственности любого из очевидцев и даже жертву преступления. По смыслу данное высказывание суть импликация, у которой заключе­ние (лицо подлежит уголовной ответственности) предшествует посылке (лицо достигло ко времени совершения преступления 16-летнего возра­ста). А в посылке нет основополагающего утверждения: лицо совершило преступление. Нужно было бы сначала сформулировать данную норму в соответствии с требованиями синтаксиса импликации в «символиче­ской логике»: если лицо совершило преступление и ко времени его со­вершения оно достигло 16-летнего возраста, то это лицо подлежит уго­ловной ответственности. И только после этого можно было бы изложить его так: уголовной ответственности подлежит лицо, совершившее пре­ступление и достигшее ко времени его совершения 16-летнего возраста.
До сих пор мы имели дело со сложными высказываниями, в кото­рых можно было выделить два-три простых утверждения. На практике
142
4.1. Высказывания и логические операции над ними
приходится оперировать с более сложными высказываниями. На­пример, приведем такое «сложное высказывание» (y): «Преступление признается совершенным с прямым умыслом, если лицо осознавало общественную опасность своих действий (бездействия), предвидело возможность или неизбежность наступления общественно опасных по­следствий и желало их наступления» (ч. 2 ст. 25 УК РФ).
«Простые высказывания» в нем:
• преступление признается совершенным с прямым умыслом (x0),
• лицо осознавало общественную опасность своих действий (без­действия) (x1),
•
лицо предвидело возможность наступления общественно опасных последствий своих действий (x2),
• лицо предвидело неизбежность наступления общественно опас­ных последствий своих действий (x3),
• лицо желало их наступления (x4).
Эти простые высказывания (булевы переменные) связаны таким на-
бором логических операций:
   (x2   x3)  x4) → x0.
y = (x
1
Как видно, в этой формуле пять логических переменных, и постро­ить для нее «таблицу истинности» непросто. Дело в том, что «таблица истинности» для n переменных будет иметь 2n строк для всех комби­наций (наборов), составляющих значения этих переменных (от на­бора «все — нули» до набора «все — единицы»). При n = 5 в таблице будет 32 строки. При ее заполнении нужно не пропустить ни одно­го из наборов, а какие-то наборы не повторить. Правда, существует простое правило заполнения таблицы наборами значений перемен­ных. Оно основано на том факте, что любая из логических перемен­ных на половине из 2n наборов имеет значение 0, а на другой поло­вине — значение 1.
Распределим логические переменные по колонкам слева направо в порядке убывания их индексов: x4 x3 x2 x1 x0. Правую колонку для x0 заполняем сверху вниз последовательностью: нуль, один, нуль, один и др. до единицы в последней строке таблицы. Колонку для x1 запол­няем последовательностью два нуля две единицы, колонку для x2 — последовательностью четыре нуля, четыре единицы. Продолжаем эту процедуру: частота смены нулей и единиц в каждой следующей колонке вдвое меньше, чем в предыдущей. В самой левой колонке для x4 первые 16 строк будут заполнены нулями, а остальные 16 строк — единицами. Именно по этому правилу заполняются таблицы истинности.
143
Глава 4. Основы «символической логики»
4.2. Аксиомы и теоремы «символической логики»
В «символической логике» («булевой алгебре») для любых выска­зываний A, B и C справедливы следующие аксиомы «алгебр логики» (табл. 4.9): 1…5 и 1ʹ…5ʹ, а также и теоремы 6…12 и 6ʹ…11ʹ. Для дизъюнк­ции и конъюнкции в «булевой алгебре» действуют законы коммутатив­ные 1, 1ʹ, ассоциативные 2, 2ʹ и дистрибутивные 3, 3ʹ. Коммутативность операции позволяет располагать операнды в ней в произвольном поряд­ке. Ассоциативность позволяет свести многоместную операцию к по­следовательности двуместных операций. Дистрибутивность позволяет выносить за скобки однородные члены или задает правило раскрытия скобок1.
Таблица 4.9
1 A   B = B   A 2 A   B   C = (A   B)   C
1
ʹ A   B = B   A 2ʹ A   B   C = (A   B)  C
3 A   (B   C) = (A   B)   (A   C) 4 A   0 = A
3
ʹ A   (B   C) = (A   B)   (A   C) 4ʹ A   1 = A
5 A     A = 1 6 A   1 = 1
5
ʹ A     A = 0 6ʹ A   0 = 0
7 A   A = A 8 A   (A   B) = A
7
ʹ A   A = A 8ʹ A   (A   B) = A
9 (A   B)   (A     B) = A 10  (A   B) =  A     B
9
ʹ (A   B)   (A     B) = A 10ʹ  (A   B) =  A     B
 0 = 1
11
11
ʹ
 1 = 0
12   A = A
Как видно, приведенная «система аксиом» и «теорем алгебры логи­ки» отвечает принципу двойственности.
1
Королев В. Т., Ловцов Д. А., Радионов В. В., Квачко В. Ю. Информатика и математика для юристов: Учебник / Под ред. Д. А. Ловцова. М.: Высшая школа, 2008.
144
4.2. Аксиомы и теоремы «символической логики»
Таблицы, которые задают операции «алгебры логики», тоже по сути своей аксиомы. Заменив в этих таблицах логические переменные про­извольными высказываниями A и B, их можно свести в одну общую таб­лицу (табл. 4.10). Приоритеты этих операций убывают в таком порядке: отрицание, конъюнкция, дизъюнкция, импликация, равнозначность.
Таблица 4.10
A B  A A   B A   B A → B (A = B)
0 0 1 0 0 1 1
0 1 1 0 1 1 0
1 0 0 0 1 0 0
1 1 0 1 1 1 1
Известны формулы, которые позволяют представить импликацию и равнозначность для высказываний A и B в терминах функционально полной системы операций «алгебры логики»:
A → B =  A   B (4.1)
(A = B) =  A     B   A   B (4.2)
Каждая из теорем легко доказывается с помощью табл. 4.9 и табл. 4.10. Так, утверждение 12, которое называется «законом двойного отрица­ния», доказывается непосредственной проверкой (табл. 4.11).
Таблица 4.11
A B =  A C =  B =   A
0 1 0
1 0 1
Например, высказывание: «Неправда, что математика юристу не нужна» не что иное, как двойное отрицание исходного утверждения «Математика юристу нужна».
Утверждения 9 и 9' называются «законами склеивания». Докажем второе из этих утверждений:
(A   B)   (A     B) = <3> = A   (B     B) = <5ʹ> = A   0 = <4> = A.
Читателю предлагается самостоятельно доказать утверждения 10 и 10', которые называются «правилами де Моргана» (по имени
145
Глава 4. Основы «символической логики»
шотландского математика и логика Огастеса де Моргана (1806–1871), первого президента Лондонского математического общества).
Пример (иллюстрирует одно из этих правил). Про кого-то говорят: «Ни рыба, ни мясо!». Средствами логики эта фраза строится так: «(он НЕ рыба) И (он НЕ мясо)». Легко видеть, что это правая часть тождест­ва 10. Ту же мысль можно сформулировать иначе: «НЕПРАВДА, что (он рыба ИЛИ он мясо)». А эта конструкция — суть левая часть тождества 10.
Приведенные тождества 1…11, 1'…11' и 12 можно использовать для эквивалентных преобразований аналитических выражений и для дока­зательства любых других утверждений «алгебры логики». Однако в таб­лице (см. табл. 4.9) нет операций импликации и равнозначности. Потому прежде чем воспользоваться этими тождествами, в исходном выражении необходимо с помощью формул (4.1) и (4.2) выразить импликации и рав­нозначности в терминах функционально полной системы операций.
Пример. Жюри из трех человек A, B, C принимает решение большин- ством голосов. При этом каждый член жюри может голосовать либо «за», либо «против». Опишем средствами «алгебры логики» все возмож­ные результаты голосования. Для этого каждому из членов жюри поста­вим в соответствие свою логическую переменную D (D = {A, B, C}), ко- торая принимает значение 0, если он голосует «против», и значение 1, когда он голосует «за». Логическая переменная R принимает значение 0, если решение не принимается, и значение 1, если оно принимается.
Составим «таблицу истинности» (табл. 4.12). Колонки для C, B и A заполняем по описанному выше правилу. Как видно, R равно 1 тог­да, когда хотя бы два из трех аргументов A, B и C равны 1 (хотя бы два из трех членов жюри голосуют «за»).
Таблица 4.12
146
A B C R
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
4.2. Аксиомы и теоремы «символической логики»
По данным «таблицы истинности» можно построить аналитическое выражение для R. Рассмотрим один из возможных способов получить из «таблицы истинности» аналитическое выражение для R, а именно, «построение формулы по единицам». Для этого выделим в табл. 4.11 те строки, в которых R = 1, и составим для каждой из этих строк конъ юнкцию всех аргументов. При этом переменная D (D = {A, B, C}) вхо­дит в такую конъюнкцию прямо, если в данной строке D = 1, если же здесь D = 0, то она входит в конъюнкцию под знаком инверсии. Полу­ченные конъюнкции объединим операцией дизъюнкции. В результате получим аналитическое выражение для R:
R = ( A   B   C)   (A     B   C)   (A   B     C)   (A   B   C).
Пользуясь эквивалентностями алгебры логики, это выражение мож­но упростить:
R = <7> = ( A   B   C)   (A     B   C)   (A   B     C)   (A   B   C)   
 (A   B   C)   (A   B   C) = <2, 9, 6> = (B   C)   (A   C)   (A   B).
Приведенные ранее выражения для импликации и равнозначности в терминах «булевой алгебры» были получены именно таким способом (построены по единицам).
Пример. Юридическая интерпретация закона достаточного основа­ния может быть такой: «если составлен перечень улик (A), достаточный
для заключения о виновности (B), и эти улики собраны (А), то обвиня­емый виновен (В)». На языке алгебры высказываний этот закон можно выразить такой равнозначностью:
-
(((A → B)  A) → B) = 1.
Покажем, что общая схема рассуждений в формулировке закона вер­на (аргументация обвинения логически корректна). Сначала упростим посылку второй импликации:
(A → B)  A = <(4.1)> = ( A   B)  A = <3ʹ> =
= ( A   A)   (B   A) = <5ʹ> = 0   B   A = <4, 1> = A   B.
Следовательно,
(((A → B)  A) → B) = ((A   B) → B) = <(4.1)> =
= ( (A   B)   B) = <10ʹ>=  A     B   B = <5, 6> = 1.
Значит, логически формулировка закона достаточного основания верна.
Итак, символическая логика развивает культуру логичных рассуждений, необходимую в любой области знаний (а в правоведении — особенно).
147
Глава 4. Основы «символической логики»
Однако нужно заметить, что применимость средств «алгебры логики» ог­раничена. Так, утверждения A   B и B   A в «алгебре логики» абсолютно оди- наковы в силу аксиомы 1'. А вот фразы: «У Маруси родился ребенок (A), и она вышла замуж (B)» и «Маруся вышла замуж (B), и у нее родился ребе­нок (A)» понимаются по-разному. Это обусловлено тем, что элементарные высказывания в приведенных фразах следуют одно за другим во времени.
А в «алгебре высказываний» «время» не является аргументом — эле­ментарные высказывания не распределяются во времени. Значит, стре миться перевести рассуждения на язык «алгебры логики» и анализи­ровать эти рассуждения ее средствами нужно, однако при этом следует быть аккуратным. К тому же есть случаи, когда это и вовсе невозможно сделать. Например, утверждение A     A = 0 абсолютно верно. Но непод­властны этому закону строки из стихотворения средневековой фран­цузской поэтессы Л. Лабе (1522–1566):
«От счастья я в тоске смертельной плачу,
Легка мне жизнь, легка и тяжела».
Это значит, что отнюдь не всякую гармонию можно проверить алге­брой (пусть это даже и «алгебра логики»).
4.3. Логические операции «нечеткой логики»
-
Логика нечетких множеств (нечеткая логика) — раздел «символиче­ской логики», являющийся обобщением классической логики и теории множеств, базирующийся на понятии «нечеткого множества» как объ­екта с функцией принадлежности элемента к множеству, принимающей любые значения в интервале [0, 1], а не только 0 или 1. На основе этого понятия вводятся различные логические операции над «нечеткими мно- жествами» и формулируется понятие «лингвистической переменной»1, в качестве значений которой выступают «нечеткие множества».
Предметом «нечеткой логики» является построение моделей прибли- женных рассуждений человека, способного принимать практически правильные решения в условиях неполной и нечеткой информации, и их применение в разных сферах науки, техники и производства2.
1
Заде Л. Понятие лингвистической переменной и его применение к принятию
приближенных решений. М.: Мир, 1976.
2
Ващекин А. Н. Применение математических методов теории нечетких множеств при моделировании принятия решений в экономической и правовой сфере // Эко­номика. Статистика. Информатика. Вестник УМО МЭСИ. 2013. № 3. С. 18–21; Круглов В. В., Дли М. И. Интеллектуальные информационные системы: компьютер ная поддержка систем нечеткой логики и нечеткого вывода. М.: Физматлит, 2002.
148
-
4.3. Логические операции «нечеткой логики»
«Нечеткая логика» — набор нестрогих правил, в которых для дости­жения поставленной цели могут использоваться радикальные идеи, интуитивные догадки, а также опыт специалистов, накопленный в со­ответствующей области. «Нечеткой логике» свойственно отсутствие строгих стандартов. Чаще всего она применяется в экспертных систе­мах, нейронных сетях и системах искусственного интеллекта. Вместо традиционных значений «Истина» и «Ложь» в «нечеткой логике» ис­пользуется более широкий диапазон значений, среди которых «Исти­на», «Ложь», «Возможно», «Иногда», «Не помню» («Как бы Да», «Поче­му бы и Нет», «Еще не решил», «Не скажу…»). «Нечеткая логика» просто незаменима в тех случаях, когда на поставленный вопрос нет четкого ответа («да» или «нет»; «0» или «1») или наперед неизвестны все воз­можные ситуации. Например, в «нечеткой логике» высказывание вида «X есть большое число» интерпретируется как имеющее неточное зна­чение, характеризуемое некоторым нечетким множеством.
В настоящее время практическое применение «нечеткой логики» можно обнаружить как в крупномасштабных системах оценки гло­бального загрязнения атмосферы и предвидения землетрясений, так и в бытовой технике (микрочипах): в стиральных машинах, видеокаме­рах, персональных компьютерах, моторных отсеках автомобилей и др. На Западе «нечеткая логика» широко применяется при анализе новых рынков, биржевой игре, оценке политических рейтингов, выборе оп­тимальной ценовой стратегии и др.
В области «нечеткой логики» можно также выделить два основных направления научных исследований:
•
«нечеткая логика» в широком смысле — теория приближенных вычислений;
•
«нечеткая логика» в узком смысле — символическая нечеткая логика.
4.3.1. Определение «нечеткого множества»
Обычное (четкое) подмножество A   U универсального множест ва U, элементы x   U которого удовлетворяют некоторому свойству С, определяется как множество упорядоченной пары A = {μA(х)/х}, где μA(х) — характеристическая функция, принимающая значение 1, когда x удовлетворяет свойству С, и 0 — в противном случае. Нечеткое под­множество N   U отличается от обычного подмножества A тем, что для x   U нет однозначного ответа относительно свойства С.
149
-
Глава 4. Основы «символической логики»
В связи с этим нечеткое подмножество» N   U универсального множе-
ства U определяется как множество упорядоченной пары N = {μN(х)/х},
где μN(х) — характеристическая функция принадлежности, принимаю­щая значение в некотором упорядоченном множестве M = [0;1] при­надлежностей. Если M = {0, 1}, т. е. включает только два элемента, тогда нечеткое подмножество N может рассматриваться как обычное (четкое) множество. Функция μN(х) принадлежности указывает степень принад­лежности элемента x к подмножеству N.
Пример. Построим нечеткое множество N — «молодые люди». Ниж­нюю границу возраста определить не трудно (задав, например, 0 лет), но верхнюю границу определить непросто. Поэтому сначала можно установить верхнюю границу в 20 лет. Таким образом, имеем множество N как четко ограниченный интервал лет: N = [0; 20]. Возникает вопрос: почему человек в свой 20-летний (25-летний и др.) день рождения еще молодой, а на следующий день уже нет?
Более естественный путь построения множества N состоит в осла­блении строгого деления на молодых и не молодых. Сделаем это, выно­ся не только четкие суждения: «Да, он принадлежит множеству моло­дых людей» или «Нет, он не принадлежит множеству молодых людей», но и гибкие формулировки: «Да, он принадлежит к довольно молодым людям», «Нет, он не очень молодой».
Рассмотрим, как с помощью нечеткого множества определить вы­ражение «он еще молодой».
Пусть:
1. M = [0;1], т. е. характеристическая функция принадлежности 0  μN(х)  1. Тогда число 1 соответствует элементу, принадлежащему множеству N; число 0 означает, что элемент точно не принадлежит множеству N; все другие значения определяют степень принадлежно­сти к множеству N.
2. U = {x1= 0; x2 = 20; x3 = 25; x4 = 30; x5 = 35; x6 = 50}, где приведены значения возрастов T в годах.
3. N — нечеткое множество «молодые люди», для которого эксперт­ным путем заданы следующие значения функции принадлежности: μN(х1) = 1; μN(х2) = 1; μN(х3) = 0,5; μN(х4) = 0,2; μN(х5) = 0,1; μN(х6) = 0 (рис. 4.1).
Тогда нечеткое множество N можно представить в виде:
N = {1/0; 1/20; 0,5/25; 0,2/30; 0,1/35; 0/50}.
Отсюда, человек в возрасте 25 лет принадлежит множеству «моло-
дые люди» со степенью принадлежности 0,5.
150
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]