List of rules of inference#Rules of classical predicate calculus

{{Transformation rules}}

{{Short description|None}}

This is a list of rules of inference, logical laws that relate to mathematical formulae.

Introduction

Rules of inference are syntactical transform rules which one can use to infer a conclusion from a premise to create an argument. A set of rules can be used to infer any valid conclusion if it is complete, while never inferring an invalid conclusion, if it is sound. A sound and complete set of rules need not include every rule in the following list, as many of the rules are redundant, and can be proven with the other rules.

Discharge rules permit inference from a subderivation based on a temporary assumption. Below, the notation

: \varphi \vdash \psi

indicates such a subderivation from the temporary assumption \varphi to \psi.

Rules for [[propositional calculus]]

=Rules for negations=

;Reductio ad absurdum (or Negation Introduction):

: \varphi \vdash \psi

: \underline{\varphi \vdash \lnot \psi}

: \lnot \varphi

;Reductio ad absurdum (related to the law of excluded middle):

: \lnot \varphi \vdash \psi

: \underline{\lnot \varphi \vdash \lnot \psi}

: \varphi

;Ex contradictione quodlibet:

: \varphi

: \underline{\lnot \varphi}

: \psi

=Rules for conditionals=

;Deduction theorem (or Conditional Introduction):

: \underline{\varphi \vdash \psi}

: \varphi \rightarrow \psi

;Modus ponens (a type of Conditional Elimination):

: \varphi \rightarrow \psi

: \underline{\varphi \quad \quad \quad}

: \psi

;Modus tollens (a type of Conditional Elimination):

: \varphi \rightarrow \psi

: \underline{\lnot \psi \quad \quad \quad}

: \lnot \varphi

=Rules for conjunctions=

;Adjunction (or Conjunction Introduction):

: \varphi

: \underline{\psi \quad \quad \ \ }

: \varphi \land \psi

;Simplification (or Conjunction Elimination):

: \underline{\varphi \land \psi}

: \varphi

: \underline{\varphi \land \psi}

: \psi

=Rules for disjunctions=

;Addition (or Disjunction Introduction):

: \underline{\varphi \quad \quad \ \ }

: \varphi \lor \psi

: \underline{\psi \quad \quad \ \ }

: \varphi \lor \psi

;Case analysis (or Proof by Cases or Argument by Cases or Disjunction elimination)

: \varphi \rightarrow \chi

: \psi \rightarrow \chi

: \underline{\varphi \lor \psi}

: \chi

;Disjunctive syllogism:

: \varphi \lor \psi

: \underline{\lnot \varphi \quad \quad}

: \psi

: \varphi \lor \psi

: \underline{\lnot \psi \quad \quad}

: \varphi

;Constructive dilemma

: \varphi \rightarrow \chi

: \psi \rightarrow \xi

: \underline{\varphi \lor \psi}

: \chi \lor \xi

=Rules for biconditionals=

;Biconditional introduction:

: \varphi \rightarrow \psi

: \underline{\psi \rightarrow \varphi}

: \varphi \leftrightarrow \psi

;Biconditional elimination:

: \varphi \leftrightarrow \psi

: \underline{\varphi \quad \quad}

: \psi

: \varphi \leftrightarrow \psi

: \underline{\psi \quad \quad}

: \varphi

: \varphi \leftrightarrow \psi

: \underline{\lnot \varphi \quad \quad}

: \lnot \psi

: \varphi \leftrightarrow \psi

: \underline{\lnot \psi \quad \quad}

: \lnot \varphi

: \varphi \leftrightarrow \psi

: \underline{\psi \lor \varphi}

: \psi \land \varphi

: \varphi \leftrightarrow \psi

: \underline{\lnot \psi \lor \lnot \varphi}

: \lnot \psi \land \lnot \varphi

Rules of classical [[First-order logic|predicate calculus]]

In the following rules, \varphi(\beta / \alpha) is exactly like \varphi except for having the term \beta wherever \varphi has the free variable \alpha.

;Universal Generalization (or Universal Introduction):

: \underline{\varphi{(\beta / \alpha)}}

: \forall \alpha\, \varphi

Restriction 1: \beta is a variable which does not occur in \varphi.


Restriction 2: \beta is not mentioned in any hypothesis or undischarged assumptions.

;Universal Instantiation (or Universal Elimination):

: \forall \alpha\, \varphi

: \overline{\varphi{(\beta / \alpha)}}

Restriction: No free occurrence of \alpha in \varphi falls within the scope of a quantifier quantifying a variable occurring in \beta.

;Existential Generalization (or Existential Introduction):

: \underline{\varphi(\beta / \alpha)}

: \exists \alpha\, \varphi

Restriction: No free occurrence of \alpha in \varphi falls within the scope of a quantifier quantifying a variable occurring in \beta.

;Existential Instantiation (or Existential Elimination):

: \exists \alpha\, \varphi

: \underline{\varphi(\beta / \alpha) \vdash \psi}

: \psi

Restriction 1: \beta is a variable which does not occur in \varphi.


Restriction 2: There is no occurrence, free or bound, of \beta in \psi.


Restriction 3: \beta is not mentioned in any hypothesis or undischarged assumptions.

Rules of [[substructural logic]]

The following are special cases of universal generalization and existential elimination; these occur in substructural logics, such as linear logic.

;Rule of weakening (or monotonicity of entailment) (aka no-cloning theorem)

: \alpha\vdash\beta

: \overline{\alpha,\alpha\vdash\beta}

;Rule of contraction (or idempotency of entailment) (aka no-deleting theorem)

: \underline{\alpha,\alpha,\gamma\vdash\beta}

: \alpha,\gamma\vdash\beta

Table: Rules of Inference

The rules above can be summed up in the following table.Kenneth H. Rosen: Discrete Mathematics and its Applications, Fifth Edition, p. 58. The "Tautology" column shows how to interpret the notation of a given rule.

class="wikitable"
Rules of inference

! Tautology

! Name

\begin{align}

p\\

p \rightarrow q\\

\therefore \overline{q \quad \quad \quad} \\

\end{align}

| (p \wedge (p \rightarrow q)) \rightarrow q

| Modus ponens

\begin{align}

\neg q\\

p \rightarrow q\\

\therefore \overline{\neg p \quad \quad \quad} \\

\end{align}

| (\neg q \wedge (p \rightarrow q)) \rightarrow \neg p

| Modus tollens

\begin{align}

p \rightarrow q\\

q \rightarrow r\\

\therefore \overline{p \rightarrow r} \\

\end{align}

| ((p \rightarrow q) \wedge (q \rightarrow r)) \rightarrow (p \rightarrow r)

| Hypothetical syllogism

\begin{align}

p \rightarrow q\\

\therefore \overline{p \rightarrow (p \wedge q)} \\

\end{align}

| (p \rightarrow q) \rightarrow (p \rightarrow (p \wedge q))

| Absorption

\begin{align}

p\\

q\\

\therefore \overline{p \wedge q} \\

\end{align}

| ((p) \wedge (q)) \rightarrow (p \wedge q)

| Conjunction introduction

\begin{align}

p \wedge q \\

\therefore \overline{p \quad \quad \quad} \\

\end{align}

| (p \wedge q) \rightarrow p

| Conjunction elimination

\begin{align}

p \\

\therefore \overline{p \vee q} \\

\end{align}

| p \rightarrow (p \vee q)

| Disjunction introduction

\begin{align}

p \rightarrow q\\

r \rightarrow q\\

p \vee r\\

\therefore \overline{q \quad \quad \quad} \\

\end{align}

| ((p \rightarrow q) \wedge (r \rightarrow q) \wedge (p \vee r)) \rightarrow q

| Disjunction elimination

\begin{align}

p \vee q \\

\neg p \\

\therefore \overline{q \quad \quad \quad} \\

\end{align}

| ((p \vee q) \wedge \neg p) \rightarrow q

| Disjunctive syllogism

\begin{align}

p \vee p \\

\therefore \overline{p \quad \quad \quad} \\

\end{align}

| (p \vee p) \rightarrow p

| Disjunctive simplification

\begin{align}

p \vee q \\

\neg p \vee r \\

\therefore \overline{q \vee r} \\

\end{align}

| ((p \vee q) \wedge (\neg p \vee r)) \rightarrow (q \vee r)

| Resolution

\begin{align}

p \rightarrow q\\

q \rightarrow p\\

\therefore \overline{p \leftrightarrow q} \\

\end{align}

| ((p \rightarrow q) \wedge (q \rightarrow p)) \rightarrow (p \leftrightarrow q)

| Biconditional introduction

?

|?

|{{See|List of rules of inference#Rules for propositional calculus}}

?

|?

|{{See|List of rules of inference#Rules for negations}}

?

|?

|{{See|List of rules of inference#Rules for conditionals}}

?

|?

|{{See|List of rules of inference#Rules for conjunctions}}

?

|?

|{{See|List of rules of inference#Rules for disjunctions}}

?

|?

|{{See|List of rules of inference#Rules for biconditionals}}

?

|?

|{{See|List of rules of inference#Rules of classical predicate calculus}}

?

|?

|{{See|List of rules of inference#Rules of substructural logic}}

All rules use the basic logic operators. A complete table of "logic operators" is shown by a truth table, giving definitions of all the possible (16) truth functions of 2 boolean variables (p, q):

class="wikitable" style="margin:1em auto 1em auto; text-align:center;"
p || q

|

!  0  ||  1  ||  2  ||  3  ||  4  ||  5  ||  6  ||  7 

|

!|  8  ||  9  || 10 || 11 || 12 || 13 || 14 || 15

T || T

| || F || F || F || F || F || F || F || F || || T || T || T || T || T || T || T || T

T || F

| || F || F || F || F || T || T || T || T || || F || F || F || F || T || T || T || T

F || T

| || F || F || T || T || F || F || T || T || || F || F || T || T || F || F || T || T

F || F

| || F || T || F || T || F || T || F || T || || F || T || F || T || F || T || F || T

where T = true and F = false, and, the columns are the logical operators:

Each logic operator can be used in an assertion about variables and operations, showing a basic rule of inference. Examples:

  • The column-14 operator (OR), shows Addition rule: when p=T (the hypothesis selects the first two lines of the table), we see (at column-14) that pq=T.
  • : We can see also that, with the same premise, another conclusions are valid: columns 12, 14 and 15 are T.
  • The column-8 operator (AND), shows Simplification rule: when pq=T (first line of the table), we see that p=T.
  • : With this premise, we also conclude that q=T, pq=T, etc. as shown by columns 9–15.
  • The column-11 operator (IF/THEN), shows Modus ponens rule: when pq=T and p=T only one line of the truth table (the first) satisfies these two conditions. On this line, q is also true. Therefore, whenever p → q is true and p is true, q must also be true.

Machines and well-trained people use this look at table approach to do basic inferences, and to check if other inferences (for the same premises) can be obtained.{{Citation needed|date=September 2024}}

= Example 1 =

Consider the following assumptions: "If it rains today, then we will not go on a canoe today. If we do not go on a canoe trip today, then we will go on a canoe trip tomorrow. Therefore (Mathematical symbol for "therefore" is \therefore), if it rains today, we will go on a canoe trip tomorrow".

To make use of the rules of inference in the above table we let p be the proposition "If it rains today", q be "We will not go on a canoe today" and let r be "We will go on a canoe trip tomorrow". Then this argument is of the form:

\begin{align}

p \rightarrow q\\

q \rightarrow r\\

\therefore \overline{p \rightarrow r} \\

\end{align}

= Example 2 =

Consider a more complex set of assumptions: "It is not sunny today and it is colder than yesterday". "We will go swimming only if it is sunny", "If we do not go swimming, then we will have a barbecue", and "If we will have a barbecue, then we will be home by sunset" lead to the conclusion "We will be home by sunset."

Proof by rules of inference: Let p be the proposition "It is sunny today", q the proposition "It is colder than yesterday", r the proposition "We will go swimming", s the proposition "We will have a barbecue", and t the proposition "We will be home by sunset". Then the hypotheses become \neg p \wedge q, r \rightarrow p, \neg r \rightarrow s and s \rightarrow t. Using our intuition we conjecture that the conclusion might be t. Using the Rules of Inference table we can prove the conjecture easily:

class="wikitable"
Step

! Reason

1.\neg p \wedge q

| Hypothesis

2. \neg p

| Simplification using Step 1

3. r \rightarrow p

| Hypothesis

4. \neg r

| Modus tollens using Step 2 and 3

5. \neg r \rightarrow s

| Hypothesis

6. s

| Modus ponens using Step 4 and 5

7. s \rightarrow t

| Hypothesis

8. t

| Modus ponens using Step 6 and 7

See also

References