One question I've had regarding ZFC is how to define substitution. I cannot see how it's possible, despite the frequent use of substitution within both pure and applied mathematics.
Just to be clear, I define substitution as follows: for all well-defined mathematical objects $a$ and $b$ that are equal, and any function $f$ such that $f(a)$ and $f(b)$ are well-defined, $f(a) = f(b)$. $$ \forall a \forall b \forall f [(a = b \, \wedge f(a),f(b) \text{ are defined}) \Rightarrow f(a) = f(b)]$$
Any ideas?
Substitution is "governed" by the axioms for equality.
We can substitute equals into a formula $\varphi$ :
or we can substitute into a function $f$ :
Example in $\mathsf {ZF}$, using the formula $(z \in x)$ as $φ(x)$ :