Значки для обозначения логической операции дизъюнкция. Примеры

Именно она используется для вычисления логических операций. Рассмотрим ниже все самые элементарные логические операции в информатике. Ведь если задуматься, именно они используются при создании логики вычислительных машин и приборов.

Отрицание

Перед тем как начать подробно рассматривать конкретные примеры, перечислим основные логические операции в информатике:

  • отрицание;
  • сложение;
  • умножение;
  • следование;
  • равенство.

Также перед началом изучения логических операций стоит сказать, что в информатике ложь обозначается "0", а правда "1".

Для каждого действия, как и в обычной математике, используются следующие знаки логических операций в информатике: ¬, v, &, ->.

Каждое действие возможно описать либо цифрами 1/0, либо просто логическими выражениями. Начнём рассмотрение математической логики с простейшей операции, использующей всего одну переменную.

Логическое отрицание - операция инверсии. Суть заключается в том, что если исходное выражение - истина, то результат инверсии - ложь. И наоборот, если исходное выражение - ложь, то результатом инверсии станет - правда.

При записи этого выражения используется следующее обозначение "¬A".

Приведём таблицу истинности - схему, которая показывает все возможные результаты операции при любых исходных данных.

То есть, если у нас исходное выражение - истина (1), то его отрицание будет ложным (0). А если исходное выражение - ложь (0), то его отрицание - истина (1).

Сложение

Оставшиеся операции требуют наличия двух переменных. Обозначим одно выражение -

А, второе - В. Логические операции в информатике, обозначающие действие сложения (или дизъюнкция), при написании обозначаются либо словом "или", либо значком "v". Распишем возможные варианты данных и результаты вычислений.

  1. Е=1, Н=1 ,тогда Е v Н = 1. Если оба тогда и их дизъюнкция также истинна.
  2. Е=0, Н=1 ,в итоге Е v Н = 1. Е=1, Н=0 , тогда Е v Н= 1. Если хотябы одно из выражений истинно, тогда и результат их сложения будет истиной.
  3. Е=0, Н=0 ,результат Е v Н = 0. Если оба выражения ложны, то их сумма также - ложь.

Для краткости создадим таблицу истинности.

Дизъюнкция
Е х х о о
Н х о х о
Е v Н х х х о

Умножение

Разобравшись с операцией сложения, переходим к умножению (конъюнкции). Воспользуемся теми же обозначениями, которые были приведены выше для сложения. При письме логическое умножение обозначается значком "&", либо буквой "И".

  1. Е=1, Н=1 ,тогда Е & Н = 1. Если оба тогда их конъюнкция - истина.
  2. Если хотя бы одно из выражений - ложь, тогда результатом логического умножения также будет ложь.
  • Е=1, Н=0, поэтому Е & Н = 0.
  • Е=0, Н=1, тогда Е & Н = 0.
  • Е=0, Н=0, итог Е & Н = 0.
Конъюнкция
Е х х 0 0
Н х 0 х 0
Е & Н х 0 0 0

Следствие

Логическая операция следования (импликация) - одна из простейших в математической логике. Она основана на единственной аксиоме - из правды не может следовать ложь.

  1. Е=1, Н=, поэтому Е -> Н = 1. Если пара влюблена, то они могут целоваться - правда.
  2. Е=0, Н=1, тогда Е -> Н = 1. Если пара не влюблена, то они могут целоваться - также может быть истиной.
  3. Е=0, Н=0, из этого Е -> Н = 1. Если пара не влюблена, то они и не целуются - тоже правда.
  4. Е=1, Н=0, результатом будет Е -> Н = 0. Если пара влюблена, то они не целуются - ложь.

Для облегчения выполнения математических действий также приведём таблицу истинности.

Равенство

Последней рассмотренной операцией станет логическое тождественное равенство или эквивалентность. В тексте оно может обозначаться как "...тогда и только тогда, когда...". Исходя из этой формулировки, напишем примеры для всех исходных вариантов.

  1. А=1, В=1, тогда А≡В = 1. Человек пьёт таблетки тогда и только тогда, когда болеет. (истина)
  2. А=0, В=0, в итоге А≡В = 1. Человек не пьёт таблетки тогда и только тогда, когда не болеет. (истина)
  3. А=1, В=0, поэтому А≡В = 0. Человек пьёт таблетки тогда и только тогда, когда не болеет. (ложь)
  4. А=0, В=1 ,тогда А≡В = 0. Человек не пьёт таблетки тогда и только тогда, когда болеет. (ложь)

Свойства

Итак, рассмотрев простейшие в информатике, можем приступить к изучению некоторых их свойств. Как и в математике, у логических операций существует свой порядок обработки. В больших логических выражениях операции в скобках выполняются в первую очередь. После них первым делом подсчитываем все значения отрицания в примере. Следующим шагом станет вычисление конъюнкции, а затем дизъюнкции. Только после этого выполняем операцию следствия и, наконец, эквивалентности. Рассмотрим небольшой пример для наглядности.

А v В & ¬В -> В ≡ А

Порядок выполнения действий следующий.

  1. В&(¬В)
  2. А v(В&(¬В))
  3. (А v(В&(¬В)))->В
  4. ((А v(В&(¬В)))->В)≡А

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

Решение примера
А В

(А v(В&(¬В)))->В

((А v(В&(¬В)))->В)≡А

х о х о х х х
х х о о х х х
о о х о о х о
о х о о о х о

Как мы видим, результатом решения примера станет последний столбец. Таблица истинности помогла решить задачу с любыми возможными исходными данными.

Заключение

В этой статье были рассмотрены некоторые понятия математической логики, такие как информатика, свойства логических операций, а также - что такое логические операции сами по себе. Были приведены некоторые простейшие примеры для решения задач по математической логике и таблицы истинности, необходимые для упрощения этого процесса.

Операция дизъюнкция (лат. disjunctio - разделение) (логическое сложение ) - это логическая операция, которая каждым двум простым высказываниям ставит в соответствие составное высказывание, являющееся ложным тогда и только тогда, когда оба исходных высказывания ложны и истинным, когда хотя бы одно из двух образующих его высказываний истинно.

Условное обозначение на структурных схемах логического элемента ИЛИ с двумя входами представлено на Рис. 2.8. Знак 1 на схеме - от устаревшего обозначения дизъюнкции как >=1 (т.е. значение дизъюнкции равно единице, если сумма значений операндов больше или равна 1). Связь между выходом F этой схемы и входами A и B описывается соотношением: F = A v B (читается как A или B).

Рис. 2.8. Логический элемент электронной схемы ИЛИ

Рассмотрим таблицу истинности для операции дизъюнкции ИЛИ с двумя входами A и B.

Таблица 2.3

Операция дизъюнкции (логическое сложение)

А (вход) B(вход) A v B (выход)

Для обозначения дизъюнкции используют знаки Ú, + , или .

Операции дизъюнкции в электрических контактных схемах соответствует параллельное соединение контактов. Например, электрическая контактная схема на рисунке 2.9 соответствует дизъюнкции .

Рис. 2.9 Параллельное соединение контактов

Набор выше рассмотренных логических функций НЕ, И, ИЛИ (отрицание, конъюнкция, дизъюнкция) наиболее известный и называется функционально полным набором или базисом . С помощью этих логических функций можно выразить любые другие логические функции.

Дизъюнкция

Дизъю́нкция - (лат. disjunctio - разобщение) логическая операция , по своему применению максимально приближённая к союзу «или» в смысле «или то, или это, или оба сразу». Синонимы: логи́ческое «ИЛИ» , включа́ющее «ИЛИ» , логи́ческое сложе́ние , иногда просто «ИЛИ» .

Дизъюнкция может быть бинарной операцией, то есть, иметь два операнда, тернарной операцией, то есть иметь три операнда или n-арной операцией, то есть иметь n операндов.
Запись может быть префиксной - знак операции стоит перед операндами (польская запись), инфиксной - знак операции стоит между операндами или постфиксной - знак операции стоит после операндов. При числе операндов более 2-х префиксная и постфиксная записи экономичнее.
Чаще всего встречаются следующие варианты записи:
|| | .

Булева алгебра

Определение.
Логическая функция MAX в двухзначной (двоичной) логике называется дизъюнкция (логи́ческое "ИЛИ" , логи́ческое сложе́ние или просто "ИЛИ" ).
Правило: результат равен наибольшему операнду.
Описание.
В булевой алгебре дизъюнкция - это функция двух, трёх или более переменных (они же - операнды операции, они же - аргументы функции).
Правило: результат равен , если все операнды равны ; во всех остальных случаях результат равен .

Таблица истинности

Таблица истинности для тернарной (трёхоперандной) дизъюнкции:

X Y Z X Y Z
0 0 0 0
1 0 0 1
0 1 0 1
1 1 0 1
0 0 1 1
1 0 1 1
0 1 1 1
1 1 1 1

Многозначная логика

Операция, называемая в двоичной логике дизъюнкция , в многозначных логиках называется максимум : , где , а - значность логики. Возможны и другие варианты. Как правило, стараются сохранить совместимость с булевой алгеброй для значений операндов .

Следует отметить, что название этой операции максимум имеет смысл в логиках с любой значностью, в том числе и в двоичной логике, а названия дизъюнкция , логи́ческое "ИЛИ" , логическое сложе́ние и просто "ИЛИ" имеют смысл только в двоичной логике, а при переходе к многозначным логикам теряют смысл.

Классическая логика

В классическом исчислении высказываний свойства дизъюнкции определяются с помощью аксиом . Классическое исчисление высказываний может быть задано разными системами аксиом, и некоторые из них будут описывать свойства дизъюнкции. Один из самых распространённых вариантов включает 3 аксиомы для дизъюнкции:


С помощью этих аксиом можно доказать другие формулы, содержащие операцию дизъюнкции. Обратите внимание, что в классическом исчислении высказываний не происходит вычисления результата по значениям операндов (как в булевой алгебре), а требуется доказать формулу как единое целое на основе аксиом и правил вывода. Высоко летать-больно падать

Схемотехника

0 0 0
1 0 1
0 1 1
1 1 1

Мнемоническое правило для дизъюнкции с любым количеством входов звучит так: На выходе будет:

  • "1" тогда и только тогда, когда хотя бы на одном входе есть «1»,
  • "0" тогда и только тогда, когда на всех входах «0»


Программирование

В компьютерных языках используется два основных варианта дизъюнкции: логическое «ИЛИ» и побитовое «ИЛИ». Например, в языках C/C++ логическое «ИЛИ» обозначается символом "||", а побитовое - символом "|". В языках Pascal/Delphi оба вида дизъюнкции обозначаются с использованием ключевого слова «or », а результат действия определяется типом операндов. Если операнды имеют логический тип (например, Boolean) - выполняется логическая операция, если целочисленный (например, Byte) - поразрядная.

Логическое «ИЛИ» применяется в операторах условного перехода или в аналогичных случаях, когда требуется получение результата или . Например:

If (a || b) { /* какие-то действия */ } ;

Результат будет равен , если оба операнда равны или . В любом другом случае результат будет равен .

При этом применяется стандартное соглашение: если значение левого операнда равно , то значение правого операнда не вычисляется (вместо может стоять сложная формула). Такое соглашение ускоряет исполнение программы и служит полезным приёмом в некоторых случаях. Компилятор Delphi поддерживает специальную директиву, включающую

{$B-}

или выключающую

{$B+}

подобное поведение. Например, если левый операнд проверяет необходимость вычисления правого операнда:

If (a == NULL || a-> x == 0 ) { /* какие-то действия */ } ;

В этом примере, благодаря проверке в левом операнде, в правом операнде никогда не произойдёт разыменования нулевого указателя.

Побитовое «ИЛИ» выполняет обычную операцию булевой алгебры для всех битов левого и правого операнда попарно. Например,

если
a =
b =
то
a ИЛИ b =

Связь с естественным языком

Часто указывают на сходство между дизъюнкцией и союзом «или» в естественном языке, когда он употребляется в смысле «или то, или то, или оба сразу». В юридических документах часто пишут: «и/или», подразумевая «или то, или то, или оба сразу». Составное утверждение «A и/или B» считается ложным, когда ложны оба утверждения A и B, в противном случае составное утверждение истинно. Это в точности соответствует определению дизъюнкции в булевой алгебре, если «истину» обозначать как , а «ложь» как .

Неоднозначность естественного языка заключается в том, что союз «или» используется в двух значениях: то для обозначения дизъюнкции, то для другой операции -

Конъюнктивная x + y {\displaystyle x+y} Полином Жегалкина x ⊕ y ⊕ x y {\displaystyle x\oplus y\oplus xy} Принадлежность предполным классам Сохраняет 0 Да Сохраняет 1 Да Монотонна Да Линейна Нет Самодвойственна Нет

Дизъюнкция может быть операцией как бинарной (имеющей два операнда), так и n {\displaystyle n} -арной (имеющей n {\displaystyle n} операндов) для произвольного n {\displaystyle n} .

Запись может быть префиксной - знак операции стоит перед операндами (польская запись), инфиксной - знак операции стоит между операндами или постфиксной - знак операции стоит после операндов. При числе операндов более двух префиксная и постфиксная записи экономичнее.

Обозначения

Наиболее часто встречаются следующие обозначения для операции дизъюнкции:

a ∨ b , a {\displaystyle a\lor b,\;a} || b , a {\displaystyle b,\;a} | b , a OR b {\displaystyle b,\;a~{\mbox{OR}}\,\,b} , max (a , b) . {\displaystyle ,\;\max(a,b).}

При этом обозначение наиболее широко распространено в современной математике и математической логике . Появилось оно не сразу: Джордж Буль , положивший начало систематическому применению символического метода к логике, не работал с дизъюнкцией (используя вместо неё строгую дизъюнкцию , которую обозначал знаком + ), а Уильям Джевонс предложил для дизъюнкции знак ·|· . Эрнст Шрёдер и П. С. Порецкий вновь использовали знак + , но уже применительно к обычной дизъюнкции . Символ ∨ {\displaystyle \lor } как обозначение дизъюнкции впервые встречается в статье «Математическая логика, основанная на теории типов» Бертрана Рассела (1908); он образован от лат. vel что означает ‘или’ .

Обозначение ⋁ для дизъюнкции было использовано и в раннем языке программирования Алгол 60 . Однако из-за отсутствия соответствующего символа в стандартных наборах символов (например, в ASCII или EBCDIC), применявшихся на большинстве компьютеров , в получивших наибольшее распространение языках программирования были предусмотрены иные обозначения для дизъюнкции. Так, в Фортране IV и PL/I применялись соответственно обозначения.OR. и | (с возможностью замены последнего на ключевое слово OR) ; в языках Паскаль и Ада используется зарезервированное слово or ; в языках и C++ применяются обозначения | для побитовой дизъюнкции и || для логической дизъюнкции ).

Наконец, при естественном упорядочении значений истинности двузначной логики (когда полагают, что 0 < 1 {\displaystyle 0<1} ), оказывается, что (a ∨ b) = max (a , b) . {\displaystyle (a\lor b)\,=\,\max(a,b).} Таким образом, дизъюнкция оказывается частным случаем операции вычисления максимума ; это открывает наиболее естественный способ определить операцию дизъюнкции в системах многозначной логики .

Булева алгебра

Логическая функция MAX в двухзначной (двоичной) логике называется дизъюнкция (логи́ческое «ИЛИ» , логи́ческое сложе́ние или просто «ИЛИ» ). При этом результат равен наибольшему операнду.

В булевой алгебре дизъюнкция - это функция двух, трёх или более переменных (они же - операнды операции, они же - аргументы функции). Таким образом, результат равен , если все операнды равны ; во всех остальных случаях результат равен 1 {\displaystyle 1} .

Таблица истинности
a {\displaystyle a} b {\displaystyle b} a ∨ b {\displaystyle a\lor b}
1 {\displaystyle 1} 1 {\displaystyle 1}
1 {\displaystyle 1} 1 {\displaystyle 1}
1 {\displaystyle 1} 1 {\displaystyle 1} 1 {\displaystyle 1}

Таблица истинности для тернарной (трёхоперандной) дизъюнкции:

a {\displaystyle a} b {\displaystyle b} c {\displaystyle c} a ∨ b ∨ c {\displaystyle a\lor b\lor c}
0 0 0 0
0 0 1 1
0 1 0 1
0 1 1 1
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 1

Многозначная логика

Операция, называемая в двоичной логике дизъюнкция , в многозначных логиках называется максимум : m a x (a , b) {\displaystyle max(a,b)} , где a , b ∈ [ 0 , . . . , n − 1 ] {\displaystyle a,b\in } , а n {\displaystyle n} - значность логики. Возможны и другие варианты [чего? ] . Как правило, стараются сохранить совместимость с булевой алгеброй для значений операндов 0 , 1 {\displaystyle 0,1} .

Следует отметить, что название этой операции максимум имеет смысл в логиках с любой значностью, в том числе и в двоичной логике, а названия дизъюнкция , логи́ческое «ИЛИ» , логическое сложе́ние и просто «ИЛИ» характерны для двоичной логики, а при переходе к многозначным логикам используются реже.

Классическая логика

В классическом исчислении высказываний свойства дизъюнкции определяются с помощью аксиом . Классическое исчисление высказываний может быть задано разными системами аксиом, и некоторые из них будут описывать свойства дизъюнкции. Один из самых распространённых вариантов включает 3 аксиомы для дизъюнкции:

С помощью этих аксиом можно доказать другие формулы, содержащие операцию дизъюнкции. Обратите внимание, что в классическом исчислении высказываний не происходит вычисления результата по значениям операндов (как в булевой алгебре), а требуется доказать формулу как единое целое на основе аксиом и правил вывода.

Схемотехника

Мнемоническое правило для дизъюнкции с любым количеством входов звучит так: На выходе будет:

  • «1» тогда и только тогда, когда хотя бы на одном входе есть «1»,
  • «0» тогда и только тогда, когда на всех входах «0»

Теория множеств

Программирование

В компьютерных языках используется два основных варианта дизъюнкции: логическое «ИЛИ» и побитовое «ИЛИ». Например, в языках C/C++/Perl/PHP логическое «ИЛИ» обозначается символом "||", а побитовое - символом "|". В языках Pascal/Delphi оба вида дизъюнкции обозначаются с использованием ключевого слова «or », а результат действия определяется типом операндов. Если операнды имеют логический тип (например, Boolean) - выполняется логическая операция, если целочисленный (например, Byte) - поразрядная.

Логическое «ИЛИ» применяется в операторах условного перехода или в аналогичных случаях, когда требуется получение результата или . Например:

if (a || b ) { /* какие-то действия */ };

Результат будет равен f a l s e {\displaystyle false} , если оба операнда равны f a l s e {\displaystyle false} или . В любом другом случае результат будет равен t r u e {\displaystyle true} .

При этом применяется стандартное соглашение: если значение левого операнда равно t r u e {\displaystyle true} , то значение правого операнда не вычисляется (вместо b {\displaystyle b} может стоять сложная формула). Такое соглашение ускоряет исполнение программы и служит полезным приёмом в некоторых случаях. Компилятор Delphi поддерживает специальную директиву, включающую

Нестрогая и строгая дизъюнкция

Поскольку связка «или» употребляется в естественном языке в двух значениях – соединительно-разделительном и исключающе-разделительном, то следует различать два типа разделительных суждений: 1) нестрогую (слабую) дизъюнкцию и 2) строгую (сильную) дизъюнкцию.

Нестрогая дизъюнкция суждение, в котором связка «или» употребляется в соединительно-разделительном значении (символ ?). Напр.: «Холодное оружие может быть колющим или режущим» – символически р ? q. Связка «или» в данном случае разделяет, поскольку отдельно существуют такие виды оружия, и соединяет, ибо есть оружие, одновременно и колющее, и режущее.

Нестрогая дизъюнкция будет истинна при истинности хотя бы одного члена дизъюнкции и ложна, если оба ее члена будут ложны.

Строгая дизъюнкция суждение, в котором связка «или» употребляется в разделительном значении (символ двойная дизъюнкция). Напр.: «Деяние может быть умышленным или неосторожным», символически.

Члены строгой дизъюнкции, называемые альтернативами, не могут быть одновременно истинными. Если деяние совершено умышленно, то его нельзя считать неосторожным, и, наоборот, деяние, совершенное по неосторожности, не может быть отнесено к умышленным.

Строгая дизъюнкция будет истинна при истинности одного и ложности другого члена; она будет ложна, если оба члена истинны или оба ложны. Таким образом, суждение строгой дизъюнкции будет истинным при истинности одной альтернативы и ложным как при одновременной ложности, так и одновременной истинности альтернатив.

Разделительная связка в языке обычно выражается с помощью союзов «или», «либо». С целью усиления дизъюнкции до альтернативного значения нередко употребляют удвоенные союзы: вместо выражения «р или употребляют «или р, или q», а вместе «р либо – «либо р, либо q». Поскольку в грамматике отсутствуют однозначные союзы для нестрогого и строгого разделения, то вопрос о типе дизъюнкции в юридических и других текстах должен решаться содержательным анализом соответствующих суждений.

Полная и неполная дизъюнкция

Полным или закрытым называют дизъюнктивное суждение, в котором перечислены все признаки или все виды определенного рода.

Символически это суждение можно записать следующим образом: < р ? q ? r >. Напр.: «Леса бывают лиственные, хвойные или смешанные». Полнота этого разделения (в символической записи обозначается знаком < … >) определяется тем, что не существует помимо указанных, других видов лесов.

Неполным, или открытым, называют дизъюнктивное суждение, в котором перечислены не все признаки или не все виды определенного рода. В символической записи неполнота дизъюнкции может быть выражена многоточием: р ? q ? r ? В естественном языке неполнота дизъюнкции выражается словами: «и т. д.», «и др.», «и тому подобное», «иные» и др.