Boolean algebra, a logic algebra, allows the rules used in the algebra of numbers to be applied to logic. It formalizes the rules of logic. Boolean algebra is used to simplify Boolean expressions which represent combinational logic circuits. It helps to reduce an expression to an equivalent expression that has fewer operators.

Boolean Expression Calculator

Use the calculator to find the reduced boolean expression or to check your own answers.

Your answer

Notes:

Use ~ * + to represent NOT AND OR respectively. Do not omit the * operator for an AND operation.

(~AB)+(B~C)+(AB) will return an error

(~A*B)+(B*~C)+(A*B) is OK

Boolean operations follows a precedence order of NOT AND OR. Expressions inside brackets () are always evaluated ﬁrst, overriding the precedence order.

Please enter variables only, constants like 0,1 are not allowed.

Variables E, I, N, O, Q, S are not allowed

Boolean Expression Simplification

The following shows an example of using algebraic techniques to simplify the boolean expression
~(A * B) * (~A + B) * (~B + B) = ~A

~(A * B) * (~A + B) * (~B + B)

~(A * B) * (~A + B)Complement law, Identity law.

(~A + ~B) * (~A + B) DeMorgan's Law

~A + ~B * B Distributive law.

~A Complement, Identity.

Each line gives a form of the expression, and the rule or rules used to derive it from the previous one. Usually there are several ways to reach the result.

Theorems of Boolean Algebra

The following are the basic Boolean theorems. They are used to simplify boolean expression.

Idempotent Law

A * A = A

A + A = A

Associative Law

(A * B) * C = A * (B * C)

(A + B) + C = A + (B + C)

Commutative Law

A * B = B * A

A + B = B + A

Distributive Law

A * (B + C) = A * B + A * C

A + (B * C) = (A + B) * (A + C)

Identity Law

A * 0 = 0 A * 1 = A

A + 1 = 1 A + 0 = A

Complement Law

A * ~A = 0

A + ~A = 1

Involution Law

~(~A) = A

DeMorgan's Law

~(A * B) = ~A + ~B

~(A + B) = ~A * ~B

Each theorem is described by two parts that are duals of each other. The Principle of duality is

Interchanging the + (OR) and * (AND) operations of the expression.

Interchanging the 0 and 1 elements of the expression.