UI, EG, EI, and UG
Strengthened Versions
Peter Suber, Philosophy Department, Earlham College

These notes restate the strengthened or final version of the rules of inference for predicate logic that Copi introduces in Section 4.5.

In this hand-out I will dispense with Greek letters. In fact, dispensing with Greek letters is the primary reason for writing this hand-out. If you're comfortable with the use of a new alphabet or font to introduce variables that range over expressions in our default alphabet or font, then Copi's exposition is clear and helpful. But my experience is that most students are not comfortable with that kind of notation.

The price for avoiding Greek letters may be steep. To do without them, you'll have to accept expressions with Roman letters, like "(x)Ax" and "(x)Ax", as standing for an indefinitely large class of expressions. "Ax" may be hiding hideous complexity: a compound proposition with many additional components, quantifiers, variables, and constants; "x" may be a variable other than x.

The Convention

A single rule or convention restricts each of the four rules of inference. Therefore it deserves some close study. To state it without the generality permitted by Greek letters, we must introduce some new terms.

First let's introduce an operation similar to instantiation but more limited. Let's call it decapitation. When we decapitate a quantified statement, we simply drop one of its quantifiers. That's it. The variables it formerly bound are thereby made free. But in decapitation they are not otherwise changed. By contrast, in full-blooded instantiation, those variable letters might change from one variable letter to another or from variables to constants.

Clearly decapitation is the first step in instantiation. Similarly, "un-decapitation" or "recapitation" (adding a quantifier without changing any constants or variables) is the first step in generalization. If an expression has more than one quantifier, we know which one to drop in decapitation only if we have a particular instance of instantiation or generalization in mind. Drop the quantifier that's missing in the instantiation, or the one to be added in the generalization.

When we instantiate, we move from a quantified to an unquantified statement. Let's call the quantified statement we start with the general statement, and the unquantified statement we end with the instantiating or instantiated statement. Similarly, we'll call the variable in the quantified statement the general variable, and the variable (if any) in the unquantified statement the instantiating variable. The constant (if any) in the unquantified statement will be called the instantiating constant.

• Example. In "(x)Ax Ay", the general statement is "(x)Ax" and the instantiating statement is "Ay", the decapitated statement is "Ax", the general variable is "x", and the instantiating variable is "y".

• Example. In "(x)Ax Aa", the general statement is "(x)Ax", the instantiating statement is "Aa", the decapitated statement is "Ax", the general variable is "x", and the instantiating constant is "a".

When we generalize, we move from an unquantified to a quantified statement. But let's give the statements and their variables and constants the same names we gave them for the purposes of instantiation.

• Example. In "Ax (y)Ay", the general statement is "(y)Ay", the instantiating statement is "Ax", the decapitated statement is "Ay", the general variable is "y", and the instantiating variable is "x".

• Example. In "Aa (x)Ax", the general statement is "(x)Ax", the instantiating statement is "Aa", the decapitated statement is "Ax", the general variable is "x", and the instantiating constant is "a".

Note that in instantiation, the general statement is the premise and the instantiating statement is the conclusion. In generalization, the instantiating statement is the premise and tahe general statement is the conclusion.

The point of these new terms is to make the following convention as general, and as easy to state and understand, as possible. Our terms allow us to use one version of the convention for both instantiations and generalizations.

 The convention: The instantiating variable must be free, or the instantiating constant must occur, in the instantiating statement in at least those places where the general variable is free in the decapitated general statement.

• Example. In instantiating "(x)Ax" to "Ay", "y" must be free in "Ay" in at least those places where "x" is free in "Ax". (Note that we say "in Ax", not "in (x)Ax", because the convention tells us to look at the decapitated general statement.)

• Example. In generalizing from "Ax" to "(y)Ay", "x" must be free in "Ax" in at least those places where "y" is free in "Ay". (Note that we say "in Ay", not "in (y)Ay".)

• Example. Performing UI on "(x)(y)(Px ~Py)" to get "(y)(Py ~Py)" violates the convention; the instantiating variable "y" is not free in the instantiating statement (here, the conclusion) at all, let alone in all the places where the general variable "x" is free in the decapitated general statement (the premise).

• Example. Performing EG on "Px · ~Py" to get "(x)(Px · ~Px)" violates the convention; the instantiating variable "y" we are choosing to generalize is not free in the instantiating statement, "Px · ~Py", in all the places where "x" is free in the decapitated general statement, "Px · ~Px".

• Example. Performing EI on "(x)(Px · Qx)" to get "Px · Qy" violates the convention; the instantiating variable "y" is not free in the instantiating statement, "Px · Qy", in all the places where the general variable "x" is free in the decapitated general statement, "Px · Qx".

• Example. Performing UG on "Px ~Py" to get "(x)(Px ~Px)" violates the convention; the instantiating variable we are choosing to generalize, "y", is not free in the instantiating statement in all the places where "x" is free in the decapitated general statement.

• Example. Performing UI on "(x)(Px Qx)" to get "Pa Qx" or even "(x)(Pa Qx)" violates the convention; the instantiating constant "a" does not occur in the instantiating statement wherever the general variable "x" occurs free in the decapitated general statement, "Px Qx".

The Four Rules of Inference

 Generalization (adding quantifiers) From constants From variables UG Illegal Ax (y)Ay Restrictions: 1. must generalize from a variable (here "x") 2. the variable to be generalized (here "x") must not be free in (y)Ay 3. if an assumption contains a free occurrence of the variable to be generalized (here "x"), then UG is not permitted within the scope of that assumption 4. the convention EG Aa (x)Ax Restriction: the convention Ax (y)Ay Restriction: the convention

Instantiation (removing quantifiers)
To constantsTo variables
UI (x)Ax
Aa

Restriction:
the convention
(x)Ax
Ay

Restriction:
1. don't instantiate a negated quantifier
2. the convention
EI
Illegal
(x)Ax
...
 Ay ... p (where p is any statement with no free "y" in it)
p

Restrictions:
1. don't instantiate a negated quantifier
2. must instantiate to a variable (here "y")
3. must instantiate to an assumption
4. y must not be free in the proof prior to the assumption (unless it was free in the scope of an assumption since discharged)
5. y must not be free in p
6. the convention
7. the converse of the convention
NB. I haven't yet figured out a good way to represent the scope of an assumption in HTML. I can't use the high-ASCII "line-drawing" characters because they are not supported. So in the lower right cell of the last table, I represented the scope of an assumption with a light yellow box. "Ay" is the assumption, "p" is the last statement inside the scope of the assumption, and we discharge with "p", so it is also the first statement after the scope comes to an end.

In the last restriction to EI we refer to the converse of the convention —namely: the general variable must be free in the decapitated general statement in at least those places where the instantiating variable is free in the instantiating statement.

Together, the convention and its converse say that in the instantiating statement and the decapitated general statement, the instantiating and general variables must be free in exactly the same places.

The convention says the instantiating variable must be free in at least those places where the general variable is free. Except in EI where the converse of the convention restrains us, the convention permits the instantiating variable to be free in more places than the general variable.

For example, in UI:

 1. (x)(Ax Bx) given premise 2. Az Bx 1 UI. Invalid. The instantiating variable, "z", is not free in all those places where the general variable, "x", is free in the decapitated general statement.

Or again,

 1. (x)(Ax By) given premise 2. Ay By 1 UI. Valid. Here our instantiating variable, "y", is free in at least those places where the general variable, "x", is free in the decapitated general statement. It is also free in more places, but the convention permits this.

These rules are more complex than the rules we are used to. Moreover, there are eight possibilities to think about: four rules and two situations for each rule (constants and variables). But not all eight possibilities are equally difficult. Here is a tally. Of the eight possible cases:

• 2 are illegal: UG from constants and EI to constants.
• 4 are easy: EG from constants or variables, UI to constants or variables. These are easy in the sense that they are unrestricted except for the convention.
• Only 2 are complex: UG from variables, and EI to variables. These are the only two with restrictions beyond the convention.

This file is an electronic hand-out for the course, Symbolic Logic.

I thank Marya Bower for helping me clarify this hand-out.

Most of the logic symbols in this file are GIFs. See my Notes on Logic Notation on the Web.

Peter Suber, Department of Philosophy, Earlham College, Richmond, Indiana, 47374, U.S.A.