Content
Boolean algebra
The Boolean algebra is a discipline that analyzes the digital circuits and other digital systems
It is named after the English mathematician George Boole, who proposed the basic principles of this algebra in 1854 in his treatise An investigation of the laws of thought on wich to found the mathematical theories of logic and probabilities
In 1938, Claude Shannon, an assistant researcher in the M.I.T. Department of Electrical Engineering, suggested that Boole algebra could be used to solve switching circuit problems
Shannon's techniques were used, consequently in the analysis and design of digital circuits. Boole algebra is a useful tool in two areas:
- Analysis
It is a concise way of discovering the operation of digital circuits - Design
Given a desired function, Boole algebra can be applied to develop a simplified complexity implementation of that function
Boole algebra uses variables and logical operations. A variable can take the value 1 when it is true or 0 when false. It has only three basic logical operations (AND, OR, and NOT), which are symbolically represented:
AND | OR | NOT |
A AND B | A OR B | NOT TO |
A\wedge B | A\vee B | \neg A |
Truth tables
The truth table defines the basic logical operations, listing the value for each possible combination of the operand values. In addition to the basic operators of Boole algebra, three useful operators are also typically listed: XOR, XNOR, NAND, and NOR. Which can be obtained by trading with basic traders
Table AND
The AND operation is true if and only if the two operands are true
A | B | A\wedge B |
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
Table OR
The OR operation is true if and only if one or both operands are true
A | B | A\vee B |
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
Table NOT
The NOT operation inverts the value of the operand
A | \neg A |
0 | 1 |
1 | 0 |
Table XOR
The XOR operation is true if and only one of the operands is true
It is equivalent to performing:
(A \wedge \neg B) \vee (\neg A \wedge B) \equiv (A \vee B) \wedge (\neg A \vee \neg B)
A | B | A\oplus B |
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
Table XNOR
The operation XNOR is the negation of the XOR operation
It is equivalent to performing:
(A \wedge B) \vee (\neg A \wedge \neg B)
A | B | \neg(A\oplus B) |
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
Table NAND
The operation NAND is the negation of the AND operation
It is equivalent to performing:
\neg(A \wedge B)
A | B | \neg(A \wedge B) |
0 | 0 | 1 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
Table NOR
The operation NOR is the negation of the OR operation
It is equivalent to performing:
\neg(A \vee B)
A | B | \neg(A \vee B) |
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 0 |
Basic identities
There are two kinds of identities:
- Basic rules (postulated)
You assert without demonstration - Other identities
Can be derived from the basic postulates
The postulates define the way in which boolean expressions are interpreted
Basic rules | ||
A \wedge B = B \wedge A | A \vee B = B \vee A | Law commutative |
A \wedge (B \vee C) = (A \wedge B) \vee (A \wedge C) | A \vee (B \wedge C) = (A \vee B) \wedge (A \vee C) | Law distributive |
1 \wedge A = A | 0 \vee A = A | Neutral element |
A \wedge \neg A = 0 | A \vee \neg A = 1 | Complementary element |
Other identities | 0 \wedge A = 0 | 1 \vee A = 1 | A \wedge A = A | A \vee A = A | A \wedge (B \wedge C) = (A \wedge B) \wedge C | A \vee (B \vee C) = (A \vee B) \vee C | Law associative | \neg (A \wedge B) = \neg A \vee \neg B | \neg (A \vee B) = \neg A \wedge \neg B | Theorem of Morgan |