### Boolean Algebra Calculator

{{ '' + variable }} {{ '' + node }}
{{ cell }}

Enter a boolean expression such as `A ^ (B v C)` in the box and click Parse.

Supported operations are `AND`, `OR`, `NOT`, `XOR`, `IMPLIES`, `PROVIDED` and `EQUIV`.

## Instructions

Operations and constants are case-insensitive.

Variables are case sensitive, can be longer than a single character, can only contain alphanumeric characters, digits and the underscore character, and cannot begin with a digit.

### Operations

Operations are executed in order of precedence, from higher to lower. Operations with the same precedence are executed from left to right. To execute a particular operation first, surround it with parenthesis `( )`.

Operation Aliases Evaluates to true if Evaluates to false if Precedence
`NOT A` `~ ' ! ¬` A is false. A is true. first
`A AND B` `∧ ^ & · *` both A and B are true. either or both are false. second
`A EQUIV B` `⇔ ≡ ↔ =` both A and B are true; or both are false. one is true and the other is false. second
`A IMPLIES B` `⇒ → ⊂ <` A is false; or A is true and B is true. A is true and B is false. second
`A PROVIDED B` `⇐ ← ⊃ >` A is true and B is true; or B is false. A is false and B is true. second
`A OR B` `∨ v + ∥ |` A is true; B is true; or both are true. either or both are false. third
`A XOR B` `⊻ ⊕` A is true and B is false;
or A is false and B is true.
both are true or both are false. third

### Constants

Constant Aliases Description
`TRUE` `1 T ⊤ true` Always evaluates to true.
`FALSE` `0 F ⊥ false` Always evaluates to false.