| Welcome | Propositional Logic | Precedence/Order of Evaluation | Application Usage | Examples |
Truth Table Constructor uses the same order of precedence for connectives as most textbooks on this subject. By order of precedence, we mean the order in which the component propositions get evaluated. Here is that order:
| (1) ~, ! | not |
| (2) &, ^ | and |
| (3) v | or |
| (4) =>, -> | conditional |
| (5) <=>, <-> / + | biconditional / exclusive-or |
Notice that there are two connectives on line 1. Either the tilde (~) or the exclamation (!) may be used to symbolize a negation. There are also two symbols on line 2. However, the three symbols on line 5 represent two different connectives. <=> and <-> are used to signify a biconditional, but the + represents an exclusive-or. They are all on the same line simply because they have the same precedence. So, if there were a statement with nothing but <=> (or <->) and + connectives, they would be evaluated in order from left to right.
All binary connectives are left-associative except for the conditional (=> or ->), which is right-associative.
To better illustrate precedence, let's take a look at the compound statement P & Q v P. In this case, we would evaluate the & first and then use that result when evaluating the v. The order of evaluation is the standard left-to-right procedure.
| Pass #1: | ![]() |
| Pass #2: | ![]() |
Now let's change the statement to P v Q & P. We still must evaluate the & first, even though it is the rightmost connective. Then we can go back and evaluate the v.
| Pass #1: | ![]() |
| Pass #2: | ![]() |
Notice that the main connective was the v both times. Also, observe that the truth values under the main connective were the same in both cases. However, CHANGING THE ORDER OF THE CONNECTIVES WILL NOT ALWAYS YIELD THE SAME COLUMN UNDER THE MAIN CONNECTIVE. It worked out in this example because the two statements are identities.
Proof (Statement #1 <=> Statement #2):
Statement #1: P & Q v P <=> (P & Q) v P <=> // Grouping based on the order of precedence (Q & P) v P <=> // Commutative law of & P v (Q & P) <=> // Commutative law of v Statement #2: P v Q & P // Remove grouping for order of precedence
Proof (Changing the order of the connectives will not always yield the same column under the main connective):
We will assume that it does yield the same column. Then we can find a counterexample to prove our hypothesis is wrong and the original idea is correct.
Counterexample:
Statement #3:
Statement #4: Thus, in this example, Statement #3 is not biconditional to Statement #4.
If the order of precedence this program uses does not match what you are looking for, parenthesizing the statement can readjust the order in which connectives are evaluated. In fact, many textbooks emphasize using parentheses, even if they are not necessary, to make wff's (well-formed formulas). Using parentheses removes any ambiguity about how to evaluate the statement.