To see it a bit more generally: we can define a topology on a space $X$ by specifying for each $x \in X$ a non-empty collection $\mathcal{B}_x$ of subsets of $X$ that obey the following axioms:
- $\forall x \in X: \forall B \in \mathcal{B}_x: x \in B$.
- $\forall x \in X: \forall B_1, B_2 \in \mathcal{B}_x: \exists B_3 \in \mathcal{B}_x: B_3 \subseteq B_1 \cap B_2$.
- $\forall x \in X: \forall B \in \mathcal{B}_x: \exists O \subset X: O \text { is open and } x \in O \subset B$.
Here a subset $O \subseteq X$ is called "open" when $\forall x \in O: \exists B \in \mathcal{B}_x: B \subseteq O$.
If the collections $\mathcal{B}_x$ satisfy these axioms, the collection of "open" subsets (as defined above) does indeed form a topology $\mathcal{T}$ (as the name suggests) and the collections $\mathcal{B}_x$ form a local base at $x$ for the topology $\mathcal{T}$.
Now in the context of the set $Y^X$, where $X$ is any space (set, even) and $(Y,d)$ any metric space, we can define for each $f$, the collection $\mathcal{B}_f = \{B(f, \epsilon): \epsilon > 0 \}$, and verify that these obey the axioms. Axiom (1) is clear, as $d(f(x), f(x)) = 0 < \epsilon$, etc.
Axiom (2) is also clear, as $B(f, \epsilon_1) \cap B(f, \epsilon_2) = B(f, \min(\epsilon_1, \epsilon_2))$.
Axiom (3) is more interesting: we claim that $B(f, \epsilon)$ is "open" for every $\epsilon > 0$ and any $f$: suppose $g \in B(f, \epsilon)$, so $s := \sup_{x \in X} d(f(x), g(x)) < \epsilon$, so $t = \frac{\epsilon - s}{2} > 0$. Then $B(g, t) \subseteq B(f, \epsilon)$: take $h \in B(g,t)$, then for any $x \in X$: $d(h(x), f(x)) \le d(h(x), g(x)) + d(g(x), f(x)) \le t + s$, so $\sup_{x \in X} d(f(x), h(x)) \le t + s < (\epsilon -s ) + s = \epsilon$, and this implies that $h \in B(f, \epsilon)$ and the inclusion has been shown. As $g \in B(f, \epsilon)$ was arbitary, we have shown that $B(f, \epsilon)$ is itself open, so (3) is now trivial.
Note that for this we need no topology on $X$ at all. We do know now that the $B(f, \epsilon)$ form a local base for the topology at $f$ (which is a bit more informative that that they are in a subbase). This is the topology of uniform convergence (which you call the uniform topology).
Quite similarly, when $X$ is a topological space, we can define another set of collections $\mathcal{B}'_f = \{B_K(f, \epsilon): \epsilon> 0, K \subset X \text{ compact} \}$ and see that these also satisy the axioms (1)-(3).
The fact that (1) holds is almost the same as above, for (2) we note that $$B_{K_1 \cup K_2}(f, \min(\epsilon_1,\epsilon_2)) \subseteq B_{K_1}(f, \epsilon_1) \cap B_{K_2}(f, \epsilon_2)\text{,}$$
where we use that the collection of compact subsets of $X$ is closed under finite unions.
As to (3), the proof that each $B_K(f, \epsilon)$ is open is almost literally the same as above, except that we take the $\sup$ over members of $K$ only.
So again, the collections $\mathcal{B}'_f$ form a local base at $f$ for the so-called topology of uniform convergence on compacta (aka as the compact convergence topology).
Now we only need to remark that almost trivally (as $\sup_{x \in K} d(f(x), g(x)) \le \sup_{x \in X} d(f(x), g(x))$), $B(f, \epsilon) \subseteq B_K(f, \epsilon)$ for all $K \subset X$, so when $O$ is open in the topology of uniform convergence on compacta, and $f \in O$, it contains some $B_K(f, \epsilon) \subset O$, and so it also contains $B(f, \epsilon)$, and $f$ is an interior point for the topology of uniform convergence. So $O$ is open in that topology as well. So the uniform topology is a superset of the topology of compact convergence.
We could also take the collection of finite subsets and get the pointwise topology instead of the compact convergence topology, and as all finite substes are compact, we trivally have that the compact convergence topology is a superset of the pointwise topology.
So $\mathcal{T}_{pw} \subseteq \mathcal{T}_{cc} \subseteq \mathcal{T}_u$, where the last two coincide when $X$ is compact itself, and the first two when e.g. the only compact subsets of $X$ are the finite ones.
Your $(1)$ is fine.
$(2)$ is vacuously true: there is no $f\in\varnothing$, so there is nothing to be verified.
In $(3)$ you cannot assume that the collection of open sets is countable: the union of any collection of open sets must be open. Let $\Bbb E$ be a family of open sets, and let $\mathscr{U}=\bigcup\Bbb E$; we want to show that $\mathscr{U}$ is open. To that end let $f\in\mathscr{U}$; then there is an $\mathscr{E}\in\Bbb E$ such that $f\in\mathscr{E}$, which by definition means that there are a finite $F\subseteq S$ and $\epsilon>0$ such that
$$\{g\in C(S):|g(x)-f(x)|<\epsilon\text{ for each }x\in F\}\subseteq\mathscr{E}\;.$$
But $\mathscr{E}\subseteq\mathscr{U}$, so $\{g\in C(S):|g(x)-f(x)|<\epsilon\text{ for each }x\in F\}\subseteq\mathscr{U}$, and therefore $\mathscr{U}$ is open.
In $(4)$ your choice of $\epsilon$ is fine, but you want to take $F=\bigcup_{i=1}^nF_i$, the union of the finite sets $F_i$. Then for any $f\in C(S)$ and any $i\in\{1,\ldots,n\}$ you have
$$\begin{align*}
&\{f\in C(S):|f(x)-f_0(x)|<\epsilon\text{ for each }x\in F\}\tag{1}\\
\subseteq\;&\{f\in C(S):|f(x)-f_0(x)|<\epsilon_i\text{ for each }x\in F_i\}\tag{2}\\
\subseteq\;&\mathscr{E}_i\;,
\end{align*}$$
which is exactly what you want. The point is that by making $\epsilon$ at least as small as each $\epsilon_i$ and making $F$ at least as big as each $F_i$, you are ensuring that the restrictions defining the set in $(1)$ are at least as strong as those in $(2)$ that are needed to ensure that all of the functions in the set that you’re defining are also in the set $\mathscr{E}_i$.
Best Answer
I'm a little unsure of what you're asking, but here's my best interpretation.
Did you prove that $\mathcal{S}$ is a subbase? I'm not totally sure what you are asking here. The compact-open topology is generally defined to be the smallest topology containing the subsets you defined, so by definition it is a subbasis. Do you have a different definition of the compact-open topology that you are working with?
Did you prove $\mathcal{T}_p \subseteq \mathcal{T}_K$? Outside of some typos, it looks good to me.
Could your proof be improved? I think the following is a little faster, but a proof should be about understanding and not optimization.
Let $$\mathcal{B}_p := \{\pi_x^{-1}(B_\epsilon(y)) \ | \ x \in X, y \in Y, \epsilon > 0\}.$$ This is a subbasis for $\mathcal{T}_p$. Notice that $\pi_x^{-1}(B_\epsilon(y)) = S(\{x\}, B_\epsilon(y)),$ so $\mathcal{B}_p \subseteq \mathcal{S}$ and hence $\mathcal{T}_p \subseteq \mathcal{T}_K$.