Дисјункција — разлика између измена
Садржај обрисан Садржај додат
Прошириванје |
|||
Ред 2:
[[Слика:Venn 0111 1111.svg|220px|мини|Венов дијаграм за<br><math>~A \or B \or C</math>]]
У [[логика|логици]] и [[математика|математици]], '''
Из овог разлога се ова операција зове '''ИЛИ''' операција (на енглеском '''-{OR}-''').
На пример, израз '''А''' или '''Б''' вратиће да је израз тачан ако ''А'' има вредност тачно, ако ''Б'' има вредност тачно или ако и ''А'' и ''Б'' имају вредноси тачно.
У граматици '''ИЛИ''' је незавицни раставни везник.
Поред дисјункције постоји и [[Ексклузивна дисјункција]]. Разликујемо их по томе што, код ''ексклузивне дисјункције'' ако су обе вредности тачне решење ће бити нетачно ,док ће код ''дисјункције'' решење бити тачно.
== Обележавање ==
Линија 10 ⟶ 13:
== Дефиниција ==
'''Дисјункција''' је логичка операција над две логичке вредности,обично
=== Табела истинитости ===
[[Табела истинитости]] за <math>~A \or B</math>:
Линија 29 ⟶ 31:
| T || T || T
|}
==Properties==
* ''Еквивалентност'':
{| style="text-align: center; border: 1px solid darkgray;"
|-
|<math>A \or B</math>
| <math>\Leftrightarrow</math>
|<math>B \or A</math>
|-
|[[File:Venn0111.svg|50px]]
| <math>\Leftrightarrow</math>
|[[File:Venn0111.svg|50px]]
|}
[[
* [[Асоцијативност|Асоцијативност]]:
{| style="text-align: center; border: 1px solid darkgray;"
|-
|<math>~A</math>
|<math>~~~\or~~~</math>
|<math>(B \or C)</math>
| <math>\Leftrightarrow</math>
|
|
|<math>(A \or B)</math>
|<math>~~~\or~~~</math>
|<math>~C</math>
|-
|[[File:Venn 0101 0101.svg|50px]]
|<math>~~~\or~~~</math>
|[[File:Venn 0011 1111.svg|50px]]
| <math>\Leftrightarrow</math>
|[[File:Venn 0111 1111.svg|50px]]
| <math>\Leftrightarrow</math>
|[[File:Venn 0111 0111.svg|50px]]
|<math>~~~\or~~~</math>
|[[File:Venn 0000 1111.svg|50px]]
|}
* [[Дистрибутивност|Дистрибутивност]] са различитим операцијама, посебно са ''коњуктивношћу'':
{| style="text-align: center; border: 1px solid darkgray;"
|-
|<math>~A</math>
|<math>\or</math>
|<math>(B \and C)</math>
| <math>\Leftrightarrow</math>
|
|
|<math>(A \or B)</math>
|<math>\and</math>
|<math>(A \or C)</math>
|-
|-
|[[File:Venn 0101 0101.svg|50px]]
|<math>\or</math>
|[[File:Venn 0000 0011.svg|50px]]
| <math>\Leftrightarrow</math>
|[[File:Venn 0101 0111.svg|50px]]
| <math>\Leftrightarrow</math>
|[[File:Venn 0111 0111.svg|50px]]
|<math>\and</math>
|[[File:Venn 0101 1111.svg|50px]]
|}
{| class="collapsible collapsed" style="width: 100%; border: 1px solid #aaaaaa;"
! bgcolor="#ccccff"|others
|-
|
са еквивалентношћу:
{| style="text-align: center; border: 1px solid darkgray;"
|-
|<math>~A</math>
|<math>\or</math>
|<math>(B \leftrightarrow C)</math>
| <math>\Leftrightarrow</math>
|
|
|<math>(A \or B)</math>
|<math>\leftrightarrow</math>
|<math>(A \or C)</math>
|-
|-
|[[File:Venn 0101 0101.svg|50px]]
|<math>\or</math>
|[[File:Venn 1100 0011.svg|50px]]
| <math>\Leftrightarrow</math>
|[[File:Venn 1101 0111.svg|50px]]
| <math>\Leftrightarrow</math>
|[[File:Venn 0111 0111.svg|50px]]
|<math>\leftrightarrow</math>
|[[File:Venn 0101 1111.svg|50px]]
|}
са импликацијом:
{| style="text-align: center; border: 1px solid darkgray;"
|-
|<math>~A</math>
|<math>\or</math>
|<math>(B \rightarrow C)</math>
| <math>\Leftrightarrow</math>
|
|
|<math>(A \or B)</math>
|<math>\rightarrow</math>
|<math>(A \or C)</math>
|-
|-
|[[File:Venn 0101 0101.svg|50px]]
|<math>\or</math>
|[[File:Venn 1100 1111.svg|50px]]
| <math>\Leftrightarrow</math>
|[[File:Venn 1101 1111.svg|50px]]
| <math>\Leftrightarrow</math>
|[[File:Venn 0111 0111.svg|50px]]
|<math>\rightarrow</math>
|[[File:Venn 0101 1111.svg|50px]]
|}
са собом:
{| style="text-align: center; border: 1px solid darkgray;"
|-
|<math>~A</math>
|<math>\or</math>
|<math>(B \or C)</math>
| <math>\Leftrightarrow</math>
|
|
|<math>(A \or B)</math>
|<math>\or</math>
|<math>(A \or C)</math>
|-
|-
|[[File:Venn 0101 0101.svg|50px]]
|<math>\or</math>
|[[File:Venn 0011 1111.svg|50px]]
| <math>\Leftrightarrow</math>
|[[File:Venn 0111 1111.svg|50px]]
| <math>\Leftrightarrow</math>
|[[File:Venn 0111 0111.svg|50px]]
|<math>\or</math>
|[[File:Venn 0101 1111.svg|50px]]
|}
|}
* са [[Идемпотенција|Идемпотенцијом]]:
{| style="text-align: center; border: 1px solid darkgray;"
|-
|<math>~A~</math>
|<math>~\or~</math>
|<math>~A~</math>
| <math>\Leftrightarrow</math>
|<math>A~</math>
|-
|[[File:Venn01.svg|36px]]
|<math>~\or~</math>
|[[File:Venn01.svg|36px]]
| <math>\Leftrightarrow</math>
|[[File:Venn01.svg|36px]]
|}
* са [[Монотоност функције|Монотоношћу функције]]:
{| style="text-align: center; border: 1px solid darkgray;"
|-
|<math>A \rightarrow B</math>
| <math>\Rightarrow</math>
|
|
|<math>(A \or C)</math>
|<math>\rightarrow</math>
|<math>(B \or C)</math>
|-
||[[File:Venn 1011 1011.svg|50px]]
| <math>\Rightarrow</math>
|[[File:Venn 1011 1111.svg|50px]]
| <math>\Leftrightarrow</math>
||[[File:Venn 0101 1111.svg|50px]]
|<math>\rightarrow</math>
||[[File:Venn 0011 1111.svg|50px]]
|}
*[[Ваљаност (логика)|Доказивање ваљаности]] :
Када су сви искази тачни, цео исказ је тачан.
{| style="text-align: center; border: 1px solid darkgray;"
|-
|<math>A \and B</math>
| <math>\Rightarrow</math>
|<math>A \or B</math>
|-
|[[File:Venn0001.svg|50px]]
| <math>\Rightarrow</math>
|[[File:Venn0111.svg|60px]]
|-
|
|
|<small>(to be tested)</small>
|}
* [[Ваљаност (логика)|Доказивање неваљаности]]
Када су сви изрази нетачни, цео исказ је нетачан.
{| style="text-align: center; border: 1px solid darkgray;"
|-
|<math>A \or B</math>
| <math>\Rightarrow</math>
|<math>A \or B</math>
|-
|[[File:Venn0111.svg|60px]]
| <math>\Rightarrow</math>
|[[File:Venn0111.svg|50px]]
|-
|<small>(to be tested)</small>
|
|
|}
== Симбол ==
Линија 38 ⟶ 254:
: <math>A \or \neg B \or \neg C \or D \or \neg E.</math>
==Дисјункција у програмирању==
Оператори који одговарају логичкој дисјункцији постоје у већини програмских језика.
[[Слика:Or-gate-en.svg|мини|десно|150px|ИЛИ [[логичка капија]]]]
===Операције над битовима===
Дисјункција се често користи за операције над битовима. Примери:
* 0 + 0 = 0
* 0 + 1 = 1
* 1 + 0 = 1
* 1 + 1 = 1
* 1010 + 1100 = 1110
ИЛИ оператер може да се користи за подешавање битова у битном пољу на 1, дисјункцијом области са константним областима, са релевантним битовима подешеним на 1. На пример, к = к | 0б00000001 ће приморати коначну бит на 1, а остали битови остављајући непромењен.
===Логичне операције===
Многи језици праве разлику између ''битовне'' и ''логичке дисјункције'' пружањем два различита оператера, у језицима који користе C, битовна дисјункција врши се са једноцевним (|) а логичка дисјункција са двоцевним (||) операторима.
Логичка дисјункција је обично кратког споја, то јест, ако је први (леви) операнд тачан тада се други (десни) операнд не оцењује. Логичка дисјункција оператора дакле обично представља тачку секвенце.
У паралелном језику, могућ је кратки споја обе стране: процењују се паралелно, и ако се једна заврши са вредношћу тачно, друга се прекида. Овај оператер је зато назван ''паралелно ИЛИ''.
Иако је у већини језика логичка дисјункција боолеан израз и на тај начин може само да има вредност тачно или нетачно, у неким (као што је ЈаваСкипт) оператер логицке дисјункције враћа један од својих операнада: први операнд ако се испостави да је вредност тачна, или други операнд у супротном случају.
{{клица-мат}}
|