| Logische Verknüpfungen | ||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||
| Verwandte Konzepte | ||||||||||||||||||||||||||
| Anwendungen | ||||||||||||||||||||||||||

Das exklusive Oder (XOR) , auch exklusive Disjunktion , exklusive Alternation , logische Nichtäquivalenz oder logische Ungleichheit genannt , ist ein logischer Operator , dessen Negation die logische Bikonditionalaussage ist . Bei zwei Eingaben ist XOR genau dann wahr, wenn sich die Eingaben unterscheiden (eine ist wahr, die andere falsch). Bei mehreren Eingaben ist XOR genau dann wahr, wenn die Anzahl der wahren Eingaben ungerade ist . [ 1 ]
Die Bezeichnung „exklusives Oder“ rührt daher, dass die Bedeutung von „oder“ mehrdeutig ist, wenn beide Operanden wahr sind. XOR schließt diesen Fall aus. Umgangssprachlich lässt sich XOR beispielsweise so beschreiben: „entweder das eine oder das andere, aber nicht beides“, „entweder das eine oder das andere“ und „A oder B, aber nicht A und B“.
Es wird symbolisiert durch den Präfixoperator [ 2 ] : 16 und durch die Infixoperatoren XOR ( / ˌ ɛ k s ˈ ɔː r / oder / ˈ k s ɔː r / ), EOR , EXOR , , , , ⩛ , , , , und ^.
Definition

Die Wahrheitstabelle zeigt , dass die Funktion immer dann „wahr“ ausgibt, wenn sich die Eingaben unterscheiden:
| F | F | F |
| F | T | T |
| T | F | T |
| T | T | F |
Äquivalenzen, Elimination und Einführung
Exklusive Disjunktion bedeutet im Wesentlichen „entweder das eine, aber nicht beide und keines von beiden“. Anders ausgedrückt: Die Aussage ist genau dann wahr, wenn eine der beiden Aussagen wahr und die andere falsch ist. Wenn beispielsweise zwei Pferde ein Rennen veranstalten, wird eines der beiden gewinnen, aber nicht beide. Die exklusive Disjunktion , auch als „ oder“ bezeichnet , lässt sich mithilfe der logischen Konjunktion („und“ ), der Disjunktion („oder“ ) und der Negation wie folgt ausdrücken:
Die exklusive Disjunktion lässt sich auch folgendermaßen ausdrücken:
Diese Darstellung der XOR-Verknüpfung kann beim Aufbau von Schaltungen oder Netzwerken nützlich sein, da sie nur eine Operation und wenige UND - Operationen erfordert. Ein Beweis dieser Identität folgt unten:
Manchmal ist es hilfreich, folgendermaßen zu schreiben:
oder:
Diese Äquivalenz kann hergestellt werden, indem man die De Morganschen Gesetze zweimal auf die vierte Zeile des obigen Beweises anwendet.
Das exklusive Oder ist auch äquivalent zur Negation einer logischen Bikonditionalität , nach den Regeln der materialen Implikation (eine materiale Konditionalität ist äquivalent zur Disjunktion der Negation ihres Antezedens und ihrer Konsequenz) und der materialen Äquivalenz .
Zusammenfassend ergibt sich in mathematischer und ingenieurwissenschaftlicher Notation Folgendes:
Negation des Operators
Wendet man den Geist der De Morganschen Gesetze an , erhält man:
Bezug zur modernen Algebra
Obwohl die Operatoren ( Konjunktion ) und ( Disjunktion ) in logischen Systemen sehr nützlich sind, gelingt ihnen eine allgemeinere Struktur in folgender Weise nicht:
Die Systeme und sind Monoide , aber keines von beiden ist eine Gruppe . Dies verhindert leider die Kombination dieser beiden Systeme zu größeren Strukturen, wie etwa einem mathematischen Ring .
Das System, das das exklusive Oder verwendet, ist jedoch eine abelsche Gruppe . Die Kombination der Operatoren und über den Elementen ergibt den bekannten zweielementigen Körper . Dieser Körper kann jede mit dem System erzielbare Logik darstellen und bietet zusätzlich den Vorteil, dass er über das gesamte Spektrum der algebraischen Analysemethoden für Körper verfügt.
Genauer gesagt, wenn man 0 und 1 miteinander assoziiert, kann man die logische "AND"-Operation als Multiplikation mit und die "XOR"-Operation als Addition mit interpretieren :
Die Beschreibung einer Booleschen Funktion als Polynom in , unter Verwendung dieser Basis, wird als algebraische Normalform der Funktion bezeichnet . [ 3 ]
Exklusiv oder in natürlicher Sprache
Disjunktionen werden in natürlichen Sprachen oft ausschließlich verstanden . Im Englischen wird das disjunktive Wort „or“ häufig als ausschließlich verstanden, insbesondere in Verbindung mit dem Partikel „either“. Das folgende englische Beispiel würde im Gespräch normalerweise so verstanden werden, dass Mary nicht gleichzeitig Sängerin und Dichterin ist. [ 4 ] [ 5 ]
- 1. Mary ist Sängerin oder Dichterin.
Disjunktion kann jedoch auch inklusiv verstanden werden, sogar in Kombination mit „entweder“. Das erste Beispiel unten zeigt beispielsweise, dass „entweder“ sinnvoll mit der Aussage kombiniert werden kann, dass beide Disjunktionen wahr sind. Das zweite Beispiel zeigt, dass die exklusive Schlussfolgerung in Kontexten mit abwärtsgerichteter Implikation verschwindet . Würde Disjunktion in diesem Beispiel als exklusiv verstanden, bliebe die Möglichkeit offen, dass manche Menschen sowohl Reis als auch Bohnen aßen. [ 4 ]
- 2. Mary ist entweder Sängerin oder Dichterin oder beides.
- 3. Niemand aß Reis oder Bohnen.
Beispiele wie die oben genannten haben Analysen der Exklusivitätsfolgerung als pragmatische Konversationsimplikaturen angeregt , die auf der Grundlage einer inklusiven Semantik berechnet werden . Implikaturen sind typischerweise annullierbar und treten in Kontexten mit abwärtsgerichteten Implikationen nicht auf, wenn ihre Berechnung von der Maxime der Quantität abhängt . Einige Forscher haben Exklusivität jedoch als echte semantische Implikation betrachtet und nichtklassische Logiken vorgeschlagen, die diese bestätigen würden. [ 4 ]
Dieses Verhalten des englischen „or“ findet sich auch in anderen Sprachen. Viele Sprachen verfügen jedoch über disjunktive Konstruktionen, die strikt exklusiv sind, wie beispielsweise das französische „ soit… soit“ . [ 4 ]
Alternative Symbole
Das Symbol für die exklusive Disjunktion variiert je nach Anwendungsgebiet und hängt sogar davon ab, welche Eigenschaften im jeweiligen Diskussionskontext hervorgehoben werden. Neben der Abkürzung „XOR“ können auch folgende Symbole verwendet werden:
- wurde 1847 von George Boole verwendet . [ 6 ] Obwohl Boole es hauptsächlich auf Klassen anwandte, berücksichtigte er auch den Fall von Aussagen in , und damals war es eine Konjunktion. Darüber hinaus verwendete Boole es ausschließlich. Obwohl diese Verwendung den Zusammenhang zwischen inklusiver Disjunktion (für die heutzutage fast ausschließlich verwendet wird) und exklusiver Disjunktion nicht verdeutlicht und auch zu Verwechslungen mit anderen Verwendungen führen kann, wird sie in einigen klassischen und modernen Lehrbüchern weiterhin beibehalten. [ 7 ] [ 8 ]
- wurde von Christine Ladd-Franklin im Jahr 1883 verwendet . [ 9 ] Streng genommen verwendete Ladd den Begriff, um " ist nicht " oder "Nein ist " auszudrücken, also als Ausschluss, während er implizit die Bedeutung einer exklusiven Disjunktion hat, da der Artikel den Titel "Über die Algebra der Logik" trägt.
- Der Begriff , der die Negation der Äquivalenz bezeichnet, wurde 1890 von Ernst Schröder verwendet , [ 10 ] : 307 Obwohl die Verwendung von als Äquivalenz bis zu George Boole im Jahr 1847 zurückverfolgt werden kann , [ 6 ] verwendeten seine Nachfolger, wie Charles Sanders Peirce , Hugh MacColl , Giuseppe Peano und andere, in den 40 Jahren nach Boole nicht wörtlich als Nicht-Äquivalenz, was möglicherweise daran liegt, dass es sich leicht aus Negation und Äquivalenz definieren lässt.
- wurde von Giuseppe Peano im Jahr 1894 verwendet : " . Das Zeichen entspricht dem lateinischen aut ; das Zeichen vel . " [ 11 ] : 10 Beachten Sie, dass das lateinische Wort "aut" "ausschließendes Oder" und "vel" "einschließendes Oder" bedeutet und dass Peano es als inklusive Disjunktion verwendet.
- wurde 1936 von Izrail Solomonovich Gradshtein (Израиль Соломонович Градштейн) verwendet. [ 12 ] : 76
- wurde 1938 von Claude Shannon verwendet . [ 13 ] Shannon entlehnte das Symbol als exklusive Disjunktion von Edward Vermilye Huntington im Jahr 1904. [ 14 ] Huntington wiederum entlehnte das Symbol 1890 von Gottfried Wilhelm Leibniz (das genaue Entstehungsdatum ist nicht bekannt, aber es wurde mit ziemlicher Sicherheit nach 1685 verfasst; 1890 ist das Veröffentlichungsjahr). [ 15 ] Sowohl Huntington im Jahr 1904 als auch Leibniz im Jahr 1890 verwendeten das Symbol als algebraische Operation. Darüber hinaus nutzte Huntington das Symbol 1904 auch als inklusive Disjunktion (logische Summe) und 1933 erneut als inklusive Disjunktion. [ 16 ]
- , das auch die Negation der Äquivalenz bezeichnet, wurde 1944 von Alonzo Church verwendet . [ 17 ]
- (als Präfixoperator , ) wurde 1949 von Józef Maria Bocheński verwendet . [ 2 ] : 16 Jemand [ 18 ] könnte fälschlicherweise annehmen, dass Jan Łukasiewicz als Erster den Operator für die exklusive Disjunktion verwendet hat (dieser Irrtum scheint weit verbreitet zu sein), obwohl Łukasiewicz ihn weder 1929 [ 19 ] noch in anderen Arbeiten verwendete. Tatsächlich führte Bocheński 1949 ein System polnischer Notation ein, das alle 16 binären Konnektive der klassischen Logik benennt. Dieses System ist eine kompatible Erweiterung der Notation von Łukasiewicz aus dem Jahr 1929, und in dem der Operator für die exklusive Disjunktion erstmals auftauchte. Bocheńskis Verwendung von als exklusive Disjunktion hat keine Beziehung zum polnischen "alternatywa rozłączna" von "exklusivem oder" und ist ein Zufall, zu dem die Tabelle auf Seite 16 des Buches von 1949 führt.
- ^Das Caret-Zeichen wird in verschiedenen Programmiersprachen verwendet, um den bitweisen Exklusiv-Oder-Operator zu bezeichnen, angefangen mit C [ 20 ] und einschließlich C++ , C# , D , Java , Perl , Ruby , PHP , Python und Rust .
- Die symmetrische Differenz zweier Mengen und , die als deren elementweises exklusives Oder interpretiert werden kann, wurde unterschiedlich als , , oder bezeichnet . [ 21 ]
Eigenschaften
- Kommutativität : ja


- Assoziativität : ja





- Distributivität :
- Das exklusive Oder distributivgesetz distributiv über keine binäre Funktion (nicht einmal über sich selbst), die logische Konjunktion hingegen schon . (Konjunktion und exklusives Oder bilden die Multiplikations- und Additionsoperationen eines Körpers GF(2) , und wie in jedem Körper gehorchen sie dem Distributivgesetz.)
- Idempotenz : nein




- Monotonie : nein




- Wahrheitserhaltend: nein
- Wenn alle Eingaben wahr sind, ist die Ausgabe nicht wahr.


- Falschheitserhaltend: ja
- Wenn alle Eingaben falsch sind, ist die Ausgabe falsch.


- Walsh-Spektrum : (2,0,0,−2)
- Nichtlinearität : 0
- Die Funktion ist linear.
- Involution:
- Exklusiv oder mit einem festgelegten Eingang als Funktion des anderen Eingangs ist eine Involution oder selbstinverse Funktion; die zweimalige Anwendung lässt den variablen Eingang unverändert.



Bei Verwendung von Binärwerten für wahr (1) und falsch (0) funktioniert das exklusive Oder genau wie die Addition modulo 2.
Informatik

Bitweise Operation

Die exklusive Disjunktion wird häufig für bitweise Operationen verwendet. Beispiele:
- 1 XOR 1 = 0
- 1 XOR 0 = 1
- 0 XOR 1 = 1
- 0 XOR 0 = 0
- 1110 2 XOR 1001 2 = 0111 2 (dies entspricht einer Addition ohne Übertrag )
Wie bereits erwähnt, ist die exklusive Disjunktion identisch mit der Addition modulo 2. Daher ist die bitweise exklusive Disjunktion zweier n- Bit-Zeichenketten identisch mit der Standardvektoraddition im Vektorraum .
In der Informatik hat die exklusive Disjunktion verschiedene Anwendungsgebiete:
- Es zeigt an, ob zwei Bits ungleich sind.
- Es handelt sich um einen steuerbaren Bit-Flipper (der Steuereingang bestimmt, ob die Eingangsdaten invertiert werden sollen oder nicht).
- Es gibt an, ob eine ungerade Anzahl von 1-Bits vorhanden ist ( ist genau dann wahr, wenn eine ungerade Anzahl der Variablen wahr ist), was dem Paritätsbit entspricht, das von einer Paritätsfunktion zurückgegeben wird .
In logischen Schaltungen kann ein einfacher Addierer mit einem XOR-Gatter zur Addition der Zahlen und einer Reihe von AND-, OR- und NOT-Gattern zur Erzeugung des Übertragsausgangs realisiert werden .
Bei einigen Computerarchitekturen ist es effizienter, eine Null in einem Register zu speichern, indem man das Register mit sich selbst per XOR verknüpft (Bits, die mit sich selbst per XOR verknüpft werden, sind immer null), als den Wert Null zu laden und zu speichern.
In der Kryptographie wird XOR mitunter als einfache, selbstinverse Mischfunktion verwendet, beispielsweise in One-Time-Pad- oder Feistel- Netzwerksystemen. XOR findet auch breite Anwendung in Blockchiffren wie AES (Rijndael) oder Serpent sowie in deren Implementierungen (CBC, CFB, OFB oder CTR).
Bei einfachen schwellenwertaktivierten künstlichen neuronalen Netzen erfordert die Modellierung der XOR-Funktion eine zweite Schicht, da XOR keine linear trennbare Funktion ist.
XOR kann analog dazu zur Erzeugung von Entropiepools für Hardware-Zufallszahlengeneratoren verwendet werden . Die XOR-Operation erhält die Zufälligkeit, d. h., die XOR-Verknüpfung eines Zufallsbits mit einem nicht-zufälligen Bit ergibt wieder ein Zufallsbit. Mehrere Quellen potenziell zufälliger Daten können mittels XOR kombiniert werden, und die Unvorhersagbarkeit des Ergebnisses ist garantiert mindestens so gut wie die der besten einzelnen Quelle. [ 22 ]
XOR wird in RAID 3–6 zur Erzeugung von Paritätsinformationen verwendet . Beispielsweise kann RAID die Bytes 100111002 und 011011002 von zwei (oder mehr) Festplatten sichern, indem die genannten Bytes per XOR verknüpft werden. Das Ergebnis ist ( 111100002 ) . Dieses Byte wird dann auf eine andere Festplatte geschrieben. Fällt eine der drei Festplatten aus, kann das verlorene Byte durch XOR-Verknüpfung von Bytes der verbleibenden Festplatten wiederhergestellt werden. Geht beispielsweise die Festplatte mit dem Byte 011011002 verloren , können 100111002 und 111100002 per XOR verknüpft werden , um das verlorene Byte wiederherzustellen. [ 23 ]
Die XOR-Verknüpfung dient auch dazu, einen Überlauf im Ergebnis einer binären Rechenoperation mit Vorzeichen zu erkennen. Stimmt das linke Bit des Ergebnisses nicht mit der unendlichen Anzahl der Ziffern links davon überein, so ist ein Überlauf aufgetreten. Die XOR-Verknüpfung dieser beiden Bits ergibt im Falle eines Überlaufs eine „1“.
XOR kann verwendet werden, um zwei numerische Variablen in Computern mithilfe des XOR-Swap-Algorithmus zu vertauschen ; dies wird jedoch eher als Kuriosität betrachtet und in der Praxis nicht empfohlen.
XOR-verkettete Listen nutzen die Eigenschaften von XOR, um Speicherplatz bei der Darstellung von doppelt verketteten Listendatenstrukturen zu sparen.
In der Computergrafik werden häufig XOR-basierte Zeichenmethoden verwendet, um Elemente wie Begrenzungsrahmen und Cursor auf Systemen ohne Alphakanäle oder Überlagerungsebenen zu verwalten.
Kodierungen
\nleftrightarrowIn LaTeX -basiertem Markdown wird es auch als „nicht Links-Rechts-Pfeil“ ( ) bezeichnet . Neben den ASCII-Codes ist der Operator auch als U+22BB ⊻ XOR ( ⊻ ) und U+2295 ⊕ CIRCLED PLUS ( ⊕, ⊕ ) kodiert, beides Blockoperatoren .
Siehe auch
Anmerkungen
- ^ Germundsson, Roger; Weisstein, Eric. "XOR" . MathWorld . Wolfram Research . Abgerufen am 17. Juni 2015 .
- ^ Bocheński , JM (1949) . Précis de logique mathématique (PDF) (auf Französisch). Niederlande: FG Kroonder, Bussum, Pays-Bas.Übersetzt als Bocheński, JM (1959). Eine Einführung in die mathematische Logik . Übersetzt von Bird, O. Dordrecht, Niederlande: D. Reidel Publishing Company. doi : 10.1007/978-94-017-0592-9 . ISBN 978-90-481-8329-6Die
{{cite book}}: ISBN / Date incompatibility (help) - ^ Joux, Antoine (2009). „9.2: Algebraische Normalformen Boolescher Funktionen“ . Algorithmische Kryptoanalyse . CRC Press. S. 285–286 . ISBN 9781420070033Die
- ^ a b c d Aloni, Maria (2016). „Disjunction“ . In: Zalta, Edward N. (Hrsg.). The Stanford Encyclopedia of Philosophy (Winterausgabe 2016). Metaphysics Research Lab, Stanford University . Abgerufen am 3. September 2020 .
- Jennings zitiert zahlreiche Autoren, die behaupten, das Wort „oder“ habe eine exklusive Bedeutung. Siehe Kapitel 3, „Der erste Mythos von ‚oder‘“: Jennings, R. E. (1994). Die Genealogie der Disjunktion . New York: Oxford University Press.
- ^ a b Boole, G. (1847). Die mathematische Analyse der Logik, ein Versuch zu einem Kalkül des deduktiven Denkens . Cambridge/London: Macmillan, Barclay & Macmillan/George Bell. S. 17.
- ^ Enderton, H. (2001) [1972]. Mathematische Einführung in die Logik (2. Aufl.). San Diego, New York, Boston, London, Toronto, Sydney und Tokio: Harcourt Science and Technology Company. S. 51.
- ^ Rautenberg, W. (2010) [2006]. Kurze Einführung in die mathematische Logik (3. Aufl.). New York, Dordrecht, Heidelberg und London: Springer. S. 3.
- ^ Ladd, Christine (1883). „Über die Algebra der Logik“ . In: Peirce, C. S. (Hrsg.). Studien zur Logik von Mitgliedern der Johns Hopkins University . Boston: Little, Brown & Company. S. 17–71 .
- ^ Schröder, E. (1890). Vorlesungen über die Algebra der Logik (Exakte Logik), Erster Band (auf Deutsch). Leipzig: Druck und Verlag BG Teubner.Nachdruck durch Thoemmes Press im Jahr 2000.
- ^ Peano, G. (1894). Notations de logique mathématique. Einführung in die Formel der Mathematik . Turin: Fratelli Boccna.Nachdruck in Peano, G. (1958). Opere Scelte, Band II . Rom: Edizioni Cremonese. S. 123–176 .
- ^ ГРАДШТЕЙН, И. C. (1959) [1936]. ПРЯМАЯ И ОБРАТНАЯ ТЕОРЕМЫ: ЭЛЕМЕНТЫ АЛГЕБРЫ ЛОГИКИ (auf Russisch) (3. Aufl.). МОСКВА: ГОСУДАРСТВЕННОЕ ИЗДАТЕЛЬСТВО ФИЗИКа-МАТЕМАТИЧЕСКОЙ ЛИТЕРАТУРЫ.Gradshtein, IS (1963). Direkte und Umkehrsätze : Die Elemente der symbolischen Logik . Übersetzt von Boddington, T. Oxford, London, New York und Paris: Pergamon Press.
- ^ Shannon, CE (1938). „Eine symbolische Analyse von Relais- und Schaltkreisen“ (PDF) . Transactions of the American Institute of Electrical Engineers . 57 (12): 713–723 . doi : 10.1109/T-AIEE.1938.5057767 . hdl : 1721.1/11173 . S2CID 51638483 .
- ^ Huntington, E. V. (1904). „Sets of Independent Postulates for the Algebra of Logic“. Transactions of the American Mathematical Society . 5 (3): 288–309 . doi : 10.1090/S0002-9947-1904-1500675-4 .
- ^ Leibniz, GW (1890) [16??/17??]. Gerhardt, CI (Hrsg.). Die philosophischen Schriften, Siebter Band (auf Deutsch). Berlin: Weidmann. P. 237 . Abgerufen am 7. Juli 2023 .
- ^ Huntington, E. V. (1933). „Neue Mengen unabhängiger Postulate für die Algebra der Logik, mit besonderer Bezugnahme auf Whiteheads und Russells Principia Mathematica“. Transactions of the American Mathematical Society . 35 (1): 274–304 .
- ^ Church, A. (1996) [1944]. Einführung in die mathematische Logik . New Jersey: Princeton University Press. S. 37.
- ^ Craig, Edward (1998). Routledge Encyclopedia of Philosophy, Band 8. Taylor & Francis . S. 496. ISBN 978-0-41507310-3Die
- ^ Łukasiewicz, Jan (1929). Elementy logiki matematycznej [ Elemente der mathematischen Logik ] (auf Polnisch) (1. Aufl.). Warschau, Polen: Państwowe Wydawnictwo Naukowe .
- ^ Kernighan, Brian W.; Ritchie , Dennis M. (1978). „2.9: Bitweise logische Operatoren“ . Die Programmiersprache C. Prentice-Hall. S. 44–46 .
- ^ Weisstein, Eric W. „Symmetrische Differenz“ . MathWorld .
- ^ Davies, Robert B (28. Februar 2002). „Exklusives ODER (XOR) und Hardware-Zufallszahlengeneratoren“ (PDF) . Abgerufen am 28. August 2013 .
- ^ Nobel, Rickard (26. Juli 2011). „Wie RAID 5 tatsächlich funktioniert“ . Abgerufen am 23. März 2017 .