I am beginning to learn axiomatic set theory from Krysztof Cieselski's Set Theory for the Working Mathematician. In laying out the axiom schemata of comprehension and replacement, Cieselski makes use of parameters. For example, the axiom of comprehension is:
For every formula $\phi(s,t)$ with free variables $s$ and $t$, for every $x$, and for every parameter $p$ there exists a set $y = \{u \in x \colon \phi(u,p) \}$ that contains all those $u \in X$ that have the property $\phi$: $$\forall x \forall p \exists y [\forall u (u \in y \leftrightarrow (u \in x \& \phi(u,p)))].$$ I'm trying to understand the function of the parameter $p$ here. Halmos' book simply has:
To every set $A$ and to every condition $S(x)$ there corresponds a set $B$ whose elements are exactly those elements $x$ of $A$ for which $S(x)$ holds.
The parameter $p$ could be absorbed into $\phi$ to create a new property $\phi_p(x) = \phi(x,p)$, so it is not strictly necessary. My guess is that the parameter is used to keep the schema countable, as there are countably many formulas with free variables, but there are potentially uncountably many parameters $p$. Is this accurate? Or is there something more subtle going on?
There is indeed something more subtle going on: there might be sets in the universe (that is, things we could use as parameters) which aren't definable! Indeed, if you think about it for a bit, there should be - there are only countably many definitions, but uncountably many sets. (Interestingly this argument doesn't hold as much water as it really should, but I'd argue that it's still "morally" true; however, my ethics have been questioned before.)
So we can't write an axiom for each parameter, because (probably) "most" parameters aren't definable, so we'd miss them. Instead, we write a single axiom saying $$\mbox{For every parameter $p$, [stuff happens]},$$ and this covers our bases without having to name every $p$ specifically.