*Quickly add a free MyWikiBiz directory listing!*

# Truth table

☞ This page belongs to resource collections on Logic and Inquiry.

A **truth table** is a tabular array that illustrates the computation of a *logical function*, that is, a function of the form \(f : \mathbb{A}^k \to \mathbb{A},\) where \(k\!\) is a non-negative integer and \(\mathbb{A}\) is the domain of logical values \(\{ \operatorname{false}, \operatorname{true} \}.\) The names of the logical values, or *truth values*, are commonly abbreviated in accord with the equations \(\operatorname{F} = \operatorname{false}\) and \(\operatorname{T} = \operatorname{true}.\)

In many applications it is usual to represent a truth function by a boolean function, that is, a function of the form \(f : \mathbb{B}^k \to \mathbb{B},\) where \(k\!\) is a non-negative integer and \(\mathbb{B}\) is the boolean domain \(\{ 0, 1 \}.\!\) In most applications \(\operatorname{false}\) is represented by \(0\!\) and \(\operatorname{true}\) is represented by \(1\!\) but the opposite representation is also possible, depending on the overall representation of truth functions as boolean functions. The remainder of this article assumes the usual representation, taking the equations \(\operatorname{F} = 0\) and \(\operatorname{T} = 1\) for granted.

## Contents

## Logical negation

**Logical negation** is an operation on one logical value, typically the value of a proposition, that produces a value of *true* when its operand is false and a value of *false* when its operand is true.

The truth table of \(\operatorname{NOT}~ p,\) also written \(\lnot p,\!\) appears below:

\(p\!\) | \(\lnot p\!\) |

\(\operatorname{F}\) | \(\operatorname{T}\) |

\(\operatorname{T}\) | \(\operatorname{F}\) |

The negation of a proposition \(p\!\) may be found notated in various ways in various contexts of application, often merely for typographical convenience. Among these variants are the following:

\(\text{Notation}\!\) | \(\text{Vocalization}\!\) |

\(\bar{p}\!\) | \(p\!\) bar |

\(\tilde{p}\!\) | \(p\!\) tilde |

\(p'\!\) | \(p\!\) prime \(p\!\) complement |

\(!p\!\) | bang \(p\!\) |

## Logical conjunction

**Logical conjunction** is an operation on two logical values, typically the values of two propositions, that produces a value of *true* if and only if both of its operands are true.

The truth table of \(p ~\operatorname{AND}~ q,\) also written \(p \land q\!\) or \(p \cdot q,\!\) appears below:

\(p\!\) | \(q\!\) | \(p \land q\) |

\(\operatorname{F}\) | \(\operatorname{F}\) | \(\operatorname{F}\) |

\(\operatorname{F}\) | \(\operatorname{T}\) | \(\operatorname{F}\) |

\(\operatorname{T}\) | \(\operatorname{F}\) | \(\operatorname{F}\) |

\(\operatorname{T}\) | \(\operatorname{T}\) | \(\operatorname{T}\) |

## Logical disjunction

**Logical disjunction**, also called **logical alternation**, is an operation on two logical values, typically the values of two propositions, that produces a value of *false* if and only if both of its operands are false.

The truth table of \(p ~\operatorname{OR}~ q,\) also written \(p \lor q,\!\) appears below:

\(p\!\) | \(q\!\) | \(p \lor q\) |

\(\operatorname{F}\) | \(\operatorname{F}\) | \(\operatorname{F}\) |

\(\operatorname{F}\) | \(\operatorname{T}\) | \(\operatorname{T}\) |

\(\operatorname{T}\) | \(\operatorname{F}\) | \(\operatorname{T}\) |

\(\operatorname{T}\) | \(\operatorname{T}\) | \(\operatorname{T}\) |

## Logical equality

**Logical equality** is an operation on two logical values, typically the values of two propositions, that produces a value of *true* if and only if both operands are false or both operands are true.

The truth table of \(p ~\operatorname{EQ}~ q,\) also written \(p = q,\!\) \(p \Leftrightarrow q,\!\) or \(p \equiv q,\!\) appears below:

\(p\!\) | \(q\!\) | \(p = q\!\) |

\(\operatorname{F}\) | \(\operatorname{F}\) | \(\operatorname{T}\) |

\(\operatorname{F}\) | \(\operatorname{T}\) | \(\operatorname{F}\) |

\(\operatorname{T}\) | \(\operatorname{F}\) | \(\operatorname{F}\) |

\(\operatorname{T}\) | \(\operatorname{T}\) | \(\operatorname{T}\) |

## Exclusive disjunction

**Exclusive disjunction**, also known as **logical inequality** or **symmetric difference**, is an operation on two logical values, typically the values of two propositions, that produces a value of *true* just in case exactly one of its operands is true.

The truth table of \(p ~\operatorname{XOR}~ q,\) also written \(p + q\!\) or \(p \ne q,\!\) appears below:

\(p\!\) | \(q\!\) | \(p ~\operatorname{XOR}~ q\) |

\(\operatorname{F}\) | \(\operatorname{F}\) | \(\operatorname{F}\) |

\(\operatorname{F}\) | \(\operatorname{T}\) | \(\operatorname{T}\) |

\(\operatorname{T}\) | \(\operatorname{F}\) | \(\operatorname{T}\) |

\(\operatorname{T}\) | \(\operatorname{T}\) | \(\operatorname{F}\) |

The following equivalents may then be deduced:

\(\begin{matrix} p + q & = & (p \land \lnot q) & \lor & (\lnot p \land q) \\[6pt] & = & (p \lor q) & \land & (\lnot p \lor \lnot q) \\[6pt] & = & (p \lor q) & \land & \lnot (p \land q) \end{matrix}\) |

## Logical implication

The **logical implication** relation and the **material conditional** function are both associated with an operation on two logical values, typically the values of two propositions, that produces a value of *false* if and only if the first operand is true and the second operand is false.

The truth table associated with the material conditional \(\text{if}~ p ~\text{then}~ q,\!\) symbolized \(p \rightarrow q,\!\) and the logical implication \(p ~\text{implies}~ q,\!\) symbolized \(p \Rightarrow q,\!\) appears below:

\(p\!\) | \(q\!\) | \(p \Rightarrow q\!\) |

\(\operatorname{F}\) | \(\operatorname{F}\) | \(\operatorname{T}\) |

\(\operatorname{F}\) | \(\operatorname{T}\) | \(\operatorname{T}\) |

\(\operatorname{T}\) | \(\operatorname{F}\) | \(\operatorname{F}\) |

\(\operatorname{T}\) | \(\operatorname{T}\) | \(\operatorname{T}\) |

## Logical NAND

The **logical NAND** is an operation on two logical values, typically the values of two propositions, that produces a value of *false* if and only if both of its operands are true. In other words, it produces a value of *true* if and only if at least one of its operands is false.

The truth table of \(p ~\operatorname{NAND}~ q,\) also written \(p \stackrel{\circ}{\curlywedge} q\!\) or \(p \barwedge q,\!\) appears below:

\(p\!\) | \(q\!\) | \(p \stackrel{\circ}{\curlywedge} q\!\) |

\(\operatorname{F}\) | \(\operatorname{F}\) | \(\operatorname{T}\) |

\(\operatorname{F}\) | \(\operatorname{T}\) | \(\operatorname{T}\) |

\(\operatorname{T}\) | \(\operatorname{F}\) | \(\operatorname{T}\) |

\(\operatorname{T}\) | \(\operatorname{T}\) | \(\operatorname{F}\) |

## Logical NNOR

The **logical NNOR** (“Neither Nor”) is an operation on two logical values, typically the values of two propositions, that produces a value of *true* if and only if both of its operands are false. In other words, it produces a value of *false* if and only if at least one of its operands is true.

The truth table of \(p ~\operatorname{NNOR}~ q,\) also written \(p \curlywedge q,\!\) appears below:

\(p\!\) | \(q\!\) | \(p \curlywedge q\!\) |

\(\operatorname{F}\) | \(\operatorname{F}\) | \(\operatorname{T}\) |

\(\operatorname{F}\) | \(\operatorname{T}\) | \(\operatorname{F}\) |

\(\operatorname{T}\) | \(\operatorname{F}\) | \(\operatorname{F}\) |

\(\operatorname{T}\) | \(\operatorname{T}\) | \(\operatorname{F}\) |

## Translations

## Syllabus

### Focal nodes

### Peer nodes

- Truth Table @ InterSciWiki
- Truth Table @ MyWikiBiz
- Truth Table @ Subject Wikis
- Truth Table @ Wikiversity
- Truth Table @ Wikiversity Beta

### Logical operators

### Related topics

### Relational concepts

### Information, Inquiry

### Related articles

## Document history

Portions of the above article were adapted from the following sources under the GNU Free Documentation License, under other applicable licenses, or by permission of the copyright holders.