Programowanie

Alternatywa wykluczająca

Alternatywa wykluczająca

Symbol bramki logicznej alternatywy wykluczającej

Alternatywa wykluczająca (alternatywa rozłączna, różnica symetryczna, suma modulo 2, kontrawalencja, XOR, exclusive or, EOR) to logiczny funktor zdaniotwórczy (dwuargumentowa funkcja boolowska) . Różnica symetryczna zdań p \underline\or q jest prawdziwa wtedy i tylko wtedy, gdy dokładnie jedno ze zdań p,q jest prawdziwe:

p \underline\or q = (p \and \neg q) \or (\neg p \and q)

Innym oznaczniem jest p \dot\or q.

Tablica prawdy alternatywy wykluczającej:

p q p \underline\or q
0 0 0
0 1 1
1 0 1
1 1 0

Przy użyciu funkcji XOR dla więcej niż dwóch argumentów wynik jest prawdziwy gdy nieparzysta liczba argumentów jest prawdą.

Spis treści

[edytuj] Informatyka

W informatyce operację alternatywy wykluczającej stosuje się do par liczb naturalnych wykonując operacje na cyfrach zapisów binarnych tych liczb. Jest to zwykła logiczna alternatywa wykluczająca rozszerzona na ciągi bitów. Wykonuje się ją bit po bicie. Np.:

7 ^ 5 =      (w językach C/C++ alternatywę wykluczającą oznaczamy za pomocą symbolu ^)
= 00001112 ^ 00001012 =   (liczby w systemie binarnym)
= 00000102 =    (efekt operacji na kolejnych cyfrach)
= 2     (wynik w postaci dziesiętnej)

[edytuj] Własności

p \dot\or q = q \dot\or p
(p \dot\or q) \dot\or r = p \dot\or (q \dot\or r)
p \dot\or 0 = p
p \dot\or p = 0

Oznacza to, że alternatywa wykluczająca jako działanie dwuargumentowe zadaje na zbiorze w którym jest określona, strukturę grupy abelowej.

Ponadto:

p \dot\or q = (\lnot p\and q) \or (p\and\lnot q)

Przypisy

[edytuj] Zobacz też