Boolesche Algebra: Unterschied zwischen den Versionen

Aus EINI
Wechseln zu: Navigation, Suche
K (Verlinkung boolean)
Zeile 1: Zeile 1:
Die '''boolesche Algebra''' ist eine algebraische Struktur und beschreibt die Operationen '''UND''', '''ODER''' und '''NICHT''', die auf logische Aussagen angewendet werden können. Die Kenntniss dieser Strucktur ist hilfreich für den Umgang mit dem Datentyp [[boolean]].
+
Die '''boolesche Algebra''' ist eine algebraische Struktur und beschreibt die Operationen '''UND''', '''ODER''' und '''NICHT''', die auf logische Aussagen angewendet werden können. Die Kenntnis dieser Struktur ist hilfreich für den Umgang mit dem [[Datentyp]] [[boolean]].
  
 
==Die booleschen Operatoren==
 
==Die booleschen Operatoren==
Zeile 116: Zeile 116:
 
(1') ''A'' ∨ ''B'' ≡ ''B'' ∨ ''A''
 
(1') ''A'' ∨ ''B'' ≡ ''B'' ∨ ''A''
  
====Erläuterung====
+
Das Vertauschen der Argumente ''A'' und ''B'' ist hier möglich, ohne dass sich das Ergebnis der Operation ändert.
 
+
Vertauschen der Argumente ''A'' und ''B'', ohne dass sich das Ergebnis der Operation ändert.
+
  
 
===Assoziativgesetze===
 
===Assoziativgesetze===
Zeile 126: Zeile 124:
 
(2') (''A'' ∨ ''B'') ∨ ''C'' ≡ ''A'' ∨ (''B'' ∨ ''C'')
 
(2') (''A'' ∨ ''B'') ∨ ''C'' ≡ ''A'' ∨ (''B'' ∨ ''C'')
  
====Erläuterung====
 
 
Die Klammerung der oben durchgeführten Operationen hat keinen Einfluss auf das Ergebnis.
 
Die Klammerung der oben durchgeführten Operationen hat keinen Einfluss auf das Ergebnis.
  
Zeile 135: Zeile 132:
 
(3') ''A'' ∨ ''A'' ≡ ''A''
 
(3') ''A'' ∨ ''A'' ≡ ''A''
  
====Erläuterung====
+
Die Eigenschaften des Arguments ''A'' bleiben bestehen, auch wenn dieses mit sich selbst verknüpft wird.
  
Die Eigenschaften des Arguments ''A'' bleiben, auch wenn dieses mit sich selbst verknüft wird, bestehen.
+
===Distributivgesetze===
  
===Distributivgesetze===
 
 
(4) ''A'' ∧ (''B'' ∨ ''C'') ≡ (''A'' ∧ ''B'') ∨ (''A'' ∧ ''C'')
 
(4) ''A'' ∧ (''B'' ∨ ''C'') ≡ (''A'' ∧ ''B'') ∨ (''A'' ∧ ''C'')
  
 
(4') ''A'' ∨ (''B'' ∧ ''C'') ≡ (''A'' ∨ ''B'') ∧ (''A'' ∨ ''C'')
 
(4') ''A'' ∨ (''B'' ∧ ''C'') ≡ (''A'' ∨ ''B'') ∧ (''A'' ∨ ''C'')
  
====Erläuterung====
+
Auswirkung des Auflösens von Klammern um Verknüpfungen von Operationen; ähnlich dem "Ausmultiplizieren" in der Schulmathematik.
 
+
Auswirkung des Aufösens von Klammern um Verknüfungen von Operationen: ähnlich dem "Ausmultiplizieren" in der Schulmathematik.
+
  
 
===Neutralitätsgesetze===
 
===Neutralitätsgesetze===
Zeile 154: Zeile 148:
 
(5') ''A'' ∨ ''false'' ≡ ''A''
 
(5') ''A'' ∨ ''false'' ≡ ''A''
  
====Erläuterung====
+
Der Wert des Argumentes ''A'' wird durch die oben ausgeführten Operationen nicht verändert.
 
+
Der Wert des Argument ''A'' wird durch die oben ausgeführten Operationen nicht verändert.
+
  
 
===Extremalgesetze===
 
===Extremalgesetze===
Zeile 163: Zeile 155:
  
 
(6') ''A'' ∨ ''true'' ≡ ''true''
 
(6') ''A'' ∨ ''true'' ≡ ''true''
 
====Erläuterung====
 
  
 
Das Ergebnis der oben beschriebenen Operationen ist unabhängig vom Wert des Arguments ''A''.
 
Das Ergebnis der oben beschriebenen Operationen ist unabhängig vom Wert des Arguments ''A''.
Zeile 172: Zeile 162:
 
(7) ¬(¬''A'') ≡ ''A''
 
(7) ¬(¬''A'') ≡ ''A''
  
====Erläuterung====
+
"Doppelte Verneinung": Der Wert von ''A'' wird durch zweimaliges Ausführen des ¬ -Operators nicht beeinflusst.
"Doppelte Verneinung": der Wert von ''A'' wird durch zweimaliges Ausführen des ¬ -Operators nicht beeinflusst.
+
  
 
===De Morgansche Gesetze===
 
===De Morgansche Gesetze===
 +
 
(8) ¬(''A'' ∧ ''B'') ≡ ¬''A'' ∨ ¬''B''
 
(8) ¬(''A'' ∧ ''B'') ≡ ¬''A'' ∨ ¬''B''
  
 
(8') ¬(''A'' ∨ ''B'') ≡ ¬''A'' ∧ ¬''B''
 
(8') ¬(''A'' ∨ ''B'') ≡ ¬''A'' ∧ ¬''B''
  
====Ein Beispiel zur Anwendung aus dem Alltag====
+
Alltagsbeispiel:
Peter trinkt Tee nur mit Zirtonensaft und Zucker. Dann stimmen die Aussagen:  
+
 
 +
Peter trinkt Tee nur mit Zitronensaft und Zucker. Dann stimmen die Aussagen:  
 
"Wenn Zitronensaft und Zucker im Tee sind, wird Peter ihn trinken " und  
 
"Wenn Zitronensaft und Zucker im Tee sind, wird Peter ihn trinken " und  
 
"Sind weder Zitronensaft noch Zucker im Tee, so trinkt Peter ihn nicht" überein.
 
"Sind weder Zitronensaft noch Zucker im Tee, so trinkt Peter ihn nicht" überein.
  
 
===Komplementärgesetze===
 
===Komplementärgesetze===
 +
 
(9) ''A'' ∧ ¬''A'' ≡ ''false''
 
(9) ''A'' ∧ ¬''A'' ≡ ''false''
  
 
(9') ''A'' ∨ ¬''A'' ≡ ''true''
 
(9') ''A'' ∨ ¬''A'' ≡ ''true''
  
====Erläuterung und Beispiel====
+
Es können nicht gleichzeitig ''A'' und die Negation von ''A'' gelten: Beispielsweise kann der Himmel nicht gleichzeitig blau und nicht-blau sein (9).
 +
Allerdings ist der Himmel entweder blau oder nicht-blau gefärbt (9').
  
Es können nicht gleichzeitig ''A'' und die Negation von ''A'' gelten: Beispielsweise kann der Himmel nicht gleichzeitig blau und nicht-blau sein.
+
===Dualitätsgesetze===
Allerdings ist der Himmel entweder blau oder nicht-blau gefärbt. Dieses Beispiel illustriert das Gesetz (9').
+
  
===Dualitätsgesetze===
 
 
(10) ¬false ≡ true
 
(10) ¬false ≡ true
  
 
(10') ¬true ≡ false
 
(10') ¬true ≡ false
 
====Erläuterung====
 
  
 
Der Wert '''true''' ist das Komplement zu '''false'''. Ist eine Aussage nicht-wahr, so ist sie falsch. Umgekehrt gilt für eine nicht-falsche Aussage, dass sie wahr sein muss.
 
Der Wert '''true''' ist das Komplement zu '''false'''. Ist eine Aussage nicht-wahr, so ist sie falsch. Umgekehrt gilt für eine nicht-falsche Aussage, dass sie wahr sein muss.

Version vom 29. August 2016, 12:31 Uhr

Die boolesche Algebra ist eine algebraische Struktur und beschreibt die Operationen UND, ODER und NICHT, die auf logische Aussagen angewendet werden können. Die Kenntnis dieser Struktur ist hilfreich für den Umgang mit dem Datentyp boolean.

Die booleschen Operatoren

Konjunktion (AND)

Die Konjunktion ist eine der grundlegenden logischen Verknüpfungen der Aussagenlogik. Die Konjunktion zweier Aussagen A und B ist genau dann wahr, wenn A und B (sowohl als auch) wahr sind. Das mathematische Symbol ist . In Java wird das AND durch && repräsentiert.

Venn and.png
A B A ∧ B
false false false
false true false
true false false
true true true

Disjunktion (OR)

Die Disjunktion ist eine der grundlegenden logischen Verknüpfungen der Aussagenlogik. Die Disjunktion zweier Aussagen A und B ist genau dann wahr, wenn mindestens eine der Aussagen A oder B wahr ist. Das mathematische Symbol ist . In Java wird das OR durch || repräsentiert.

A B A ∨ B
false false false
false true true
true false true
true true true

Venn-Diagramm?

Negation (NOT)

Die Negation ist eine wichtige Operation in der Aussagenlogik. Die Negation einer Aussage A führt zur ihrer Verneinung. Das heißt aus einer wahren Aussage wird eine falsche Aussage und umgekehrt. Das mathematische Symbol ist ¬. In Java wird das NOT durch ! repräsentiert.

A ¬A
false true
true false

Kontravalenz (XOR)

Die Kontravalenz ist eine erweiterte logische Verknüpfung in der Aussagenlogik. Die Kontravalenz zweier Aussagen A und B ist genau dann wahr, wenn entweder A oder B, aber nicht beide wahr sind. Das mathematische Symbol ist . In Java wird das XOR durch ^ repräsentiert.

A B A ⊕ B
false false false
false true true
true false true
true true false

Venn-Diagramm?

Implikation

Die Implikation ist eine erweiterte logische Verknüpfung in der Aussagenlogik. Die Implikation zweier Aussagen A und B ist genau dann wahr, wenn A falsch oder B wahr ist. Das mathematische Symbol ist . Die Implikation ist semantisch äquivalent zu ¬A ∨ B. In Java gibt es keinen Implikationsoperator.

Eine Implikation wird im Deutschen meistens durch "wenn A, dann B" ausgedrückt. Es handelt sich hierbei um eine einfache Folgerung. Aus einer falschen Ausgangsaussage A lässt sich alles folgern, daher kann die Gesamtaussage nicht falsch werden.

A B A ⇒ B
false false true
false true true
true false false
true true true

Venn-Diagramm?

Äquivalenz (XNOR)

Die Äquivalenz ist eine erweiterte logische Verknüpfung in der Aussagenlogik. Die Äquivalenz zweier Aussagen A und B ist genau dann wahr, wenn A und B wahr oder A und B falsch sind. Das mathematische Symbol ist . Die Äquivalenz ist semantisch äquivalent zu A ∧ B ∨ ¬A ∧ ¬B. In Java gibt es keinen Operator hierfür.

Die Äquivalenz wird im Deutschen meistens durch "genau dann A, wenn B" ausgedrückt. "Genau" heißt immer und nur unter dieser Bedingung. A gilt genau dann, wenn B gilt. A und B sind äquivalent, also austauschbar. Das heißt die vorherige Aussage gilt auch anders herum: B gilt genau dann, wenn A gilt.

A B A ⇔ B
false false true
false true false
true false false
true true true

Venn-Diagramm?

Peano-Axiome (erweitertes Wissen)

Kommutativgesetze

(1) ABBA

(1') ABBA

Das Vertauschen der Argumente A und B ist hier möglich, ohne dass sich das Ergebnis der Operation ändert.

Assoziativgesetze

(2) (AB) ∧ CA ∧ (BC)

(2') (AB) ∨ CA ∨ (BC)

Die Klammerung der oben durchgeführten Operationen hat keinen Einfluss auf das Ergebnis.

Idempotenzgesetze

(3) AAA

(3') AAA

Die Eigenschaften des Arguments A bleiben bestehen, auch wenn dieses mit sich selbst verknüpft wird.

Distributivgesetze

(4) A ∧ (BC) ≡ (AB) ∨ (AC)

(4') A ∨ (BC) ≡ (AB) ∧ (AC)

Auswirkung des Auflösens von Klammern um Verknüpfungen von Operationen; ähnlich dem "Ausmultiplizieren" in der Schulmathematik.

Neutralitätsgesetze

(5) AtrueA

(5') AfalseA

Der Wert des Argumentes A wird durch die oben ausgeführten Operationen nicht verändert.

Extremalgesetze

(6) Afalsefalse

(6') Atruetrue

Das Ergebnis der oben beschriebenen Operationen ist unabhängig vom Wert des Arguments A.

Doppelnegationsgesetz

(7) ¬(¬A) ≡ A

"Doppelte Verneinung": Der Wert von A wird durch zweimaliges Ausführen des ¬ -Operators nicht beeinflusst.

De Morgansche Gesetze

(8) ¬(AB) ≡ ¬A ∨ ¬B

(8') ¬(AB) ≡ ¬A ∧ ¬B

Alltagsbeispiel:

Peter trinkt Tee nur mit Zitronensaft und Zucker. Dann stimmen die Aussagen: "Wenn Zitronensaft und Zucker im Tee sind, wird Peter ihn trinken " und "Sind weder Zitronensaft noch Zucker im Tee, so trinkt Peter ihn nicht" überein.

Komplementärgesetze

(9) A ∧ ¬Afalse

(9') A ∨ ¬Atrue

Es können nicht gleichzeitig A und die Negation von A gelten: Beispielsweise kann der Himmel nicht gleichzeitig blau und nicht-blau sein (9). Allerdings ist der Himmel entweder blau oder nicht-blau gefärbt (9').

Dualitätsgesetze

(10) ¬false ≡ true

(10') ¬true ≡ false

Der Wert true ist das Komplement zu false. Ist eine Aussage nicht-wahr, so ist sie falsch. Umgekehrt gilt für eine nicht-falsche Aussage, dass sie wahr sein muss.