I am currently reading from multiple books and I am finding seeming contradictions regarding the rules by which HOW to use UI to a given of the form ∀x(P(x) → Q(x)).
From "How to Prove it" by Daniel Velleman. "you won’t be able to apply universal instantiation to a given of the form ∀x P(x) unless you have a particular value a to plug in for x, so you might want to wait until a likely choice for a pops up in the proof. For example, consider a given of the form ∀x(P(x) → Q(x)). You can use this given to conclude that P(a) → Q(a) for any a, but according to our rule for using givens that are conditional statements,this conclusion probably won’t be very useful unless you know either P(a) or ¬Q(a)."
From "Symbolic Logic" by Hardegree. "Example 3: ∀x(Fx → Gx) To obtain a substitution instance, we replace both occurrences of x by a name, the same name for both occurrences. Thus, all of the following follow by ∀O. Fa → Ga, Fb → Gb, Fc → Gc, etc."
what am I not understanding here? thanks!
See Velleman, page 55:
Thus $P(x)$ must be true for every value of $x$ in the universe $U$.
Regarding universal instantiation (page 155) :
What is $a$ ? It seems that a "value" for a variable must be an object of the domain $U$: e.g. a number.
All this is quite "informal". In a formal settings, see some mathematical logic textbook, the universal instantiation rule "operates" with substitution of a term in place of the quantified variable $x$.
A term can be:
In this case, the rule licenses the derivation of $P(t)$ from $\forall x P(x)$, for every term $t$ of the language.
The same in Velleman; see page 118:
Thus, if no "already given" (name of) objects are available, we can use variables.