Диз'юнкція (логіка)
Диз'юнкція (лат. disjunctio — розділення) (операція OR) — двомісна логічна операція, що має значення «істина», якщо хоча б один з операндів має значення «істина». Операція відображає вживання сполучника «або» в логічних висловлюваннях. Диз'юнкція є бінарною операцією, тобто, має два операнда. Запис може бути префіксним — знак операції стоїть перед операндами, інфіксним — знак операції стоїть між операндами або постфіксним — знак операції стоїть після операндів. При числі операндів більше 2-х префіксна і постфіксна записи економніше.
Позначається: в математиці та логіці як
, в програмуванні як | чи or. Найчастіше зустрічаються такі варіанти запису: a||b, a|b, a
b, a+b, a or b.
Зміст |
Визначення[ред.]
В булевій алгебрі диз'юнкція — це функція двох, трьох або більше змінних (вони ж — операнди операції, вони ж — аргументи функції). Правило: результат дорівнює 0, Якщо всі операнди рівні 0; У всіх інших випадках результат дорівнює1 .
Таблиця істинності виглядає таким чином:
![]() |
![]() |
![]() |
|---|---|---|
| хибність | хибність | хибність |
| хибність | істина | істина |
| істина | хибність | істина |
| істина | істина | істина |
Відповідною операцією в теорії множин є об'єднання множин.
Властивості[ред.]
Функціональна повнота[ред.]
Множина операцій
є функціонально повною:
Двійкові операції[ред.]
Диз'юнкція часто використовується для двійкових операцій. Наприклад: Логічний елемент 2ІЛІ AB f (A B)
- 0
0 = 0 - 0
1 = 1 - 1
0 = 1 - 1
1 = 1 - 1010
1110 = 1110
Мнемонічне правило для диз'юнкції з будь-якою кількістю входів звучить так: На виході буде: «1» тоді і тільки тоді, коли хоча б на одному вході є «1», «0» тоді і тільки тоді, коли на всіх входах «0»
Багатозначна логіка[ред.]
В багатозначній логіці операція диз'юнкції може визначатися іншими способами. Найчастіше застосовується схема: a
b= max(a, b), де a, b € [0,1]. Можливі й інші варіанти. Як правило, намагаються зберегти сумісність з булевою алгеброю для значень операндів 0, 1.
Програмування[ред.]
У комп'ютерних мовах використовуються два основні варіанти диз'юнкції: логічне «АБО» і побітове «АБО». Наприклад, у мовах C / C++ логічне «АБО» позначається символом "||«, а побітове — символом »|". У мовах Pascal / Delphi обидва види диз'юнкції позначаються з використанням ключового слова «or», а результат дії визначається типом операндів. Якщо операнди мають логічний тип (наприклад, Boolean) — виконується логічна операція, якщо цілочисельний (наприклад, Byte) — порозрядне. Логічне «АБО» застосовується в операторах умовного переходу або в аналогічних випадках, коли потрібне отримання результату false або true. Наприклад:
if (a || b) {/* Якісь дії */};
Результат буде дорівнювати false, якщо обидва операнда рівні false або 0. У будь-якому іншому випадку результат буде дорівнювати true. При цьому застосовують стандартну угоду: якщо значення лівого операнда є true, то значення правого операнда не обчислюється (замість b може стояти будь-яка складна формула). Така угода прискорює виконання програми і служить корисним прийомом в деяких випадках. Побітове «АБО» виконує звичайну операцію булевої алгебри для всіх бітів лівого і правого операнда попарно. Наприклад, якщо a = 01100101 b = 00101001, то a АБО b = 01101101
Див. також[ред.]
|
|
|||||||||||||||||||
















)
)
)
)
)
)
)
)
)
)
)
)