operátor pro manipulaci s logickými hodnotami From Wikipedia, the free encyclopedia
Booleova logika se zabývá logickými operacemi konjunkce (značená též "*", AND, "&" nebo ), disjunkce (značena též "+", OR, "|", "." nebo ) a negace (značena též pruhem nad částí výrazu, NOT) na množině hodnot { 0, 1 }. Jejím rozšířením je pak Booleova algebra.
A | ID | NOT | |
---|---|---|---|
0 | 0 | 1 | |
1 | 1 | 0 |
ID – vrací stejnou hodnotu, jako měl vstup. Platí:
NOT – vrací opačnou hodnotu, než měl vstup. Platí:
A | B | OR | NOR | AND | NAND | XOR | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 0 | 0 | 1 | 0 | 1 | 1 | 1 | 0 | ||||
0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | ||||
1 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | ||||
1 | 1 | 1 | 0 | 1 | 0 | 1 | 1 | 0 |
OR – vrací součet hodnot vstupů. Platí:
AND – vrací součin hodnot vstupů. Platí:
Párová pravidla platí i po vzájemné záměně "+" za "*", zde jsou tyto operace vzájemně symetrické.
Ve výrazu (A+B) jeho část +B už nemůže rozšířit limitující A, proto je zbytečné.
Dodatečné (A*B) nemůže zúžit šíři faktu A, proto je zbytečné.
Obě tato pravidla se dají na sebe vzájemně převést:
A*(A+B) = A*A + A*B = A + (A*B).
Z věty "Příjde Karel (A), nebo příjde se ženou(B)." vyplývá, že můžeme bez obav ohlásit: "Karel příjde!(A)".
Odvození je poměrně snadné: ~A*(A+B) = ~A*A + ~A*B = ~A*B. Výraz B v závorce je rozšiřován o A, ale množina daná výrokem ~A*A je prázdná.
"Zítra příjde Karel nebo Monika. (A+B)" "Ne ne, pozor, Karel nepříjde. (~A)" "Aha, tak to příjde jen Monika. (~A*B)"
Odvození je zajímavé, protože Booleova algebra jinak roznásobovává závorky než běžná aritmetika:
A+(~A*B)=(A+~A)*(A+B)=(A+B)
Vedoucí přemýšlí: "Kdo zítra maže turbínu?" Na stole mu podřízení nechali dva lístečky: "Příjde Karel. (A)" a na druhém je napsáno: "Nepříjde Karel, příjde Jana. (~A*B)". Vedoucí teď neví, který lísteček je časově poslední, který platí, jestli tedy příjde nebo nepříjde Karel, pak si řekne: "To je jedno. Prostě jeden z nich přijde (A+B)."
Logický součet a součin lze vyjádřit jeden pomocí druhého, při použití negace.
De Morganovy zákony tedy definují negace logického součtu a součinu:
NOR – negace součtu vstupů:
NAND – negace součinu vstupů:
NOR – Buď při splněném předpokladu A vrací B, nebo z nesplněného předpokladu vyplývá cokoli a vrací 1:
EQ – porovnává shodnost hodnot všech vstupů:
XOR – porovnává unikátnost hodnoty každého vstupu:
Obecně jsou XOR a nonekvivalence rozdílné funkce, ale pro dvě dvouhodnotové proměnné dále platí:
nebo jinak,
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.