Proving Peano's Existence Theorem by approximating with $C^{\infty}$ functions using Weierstrass' Theorem. 
Let $f:B_r(x_0)\to\mathbb{R}^n$ be continuous. Prove there always exists a local solution $x:[0,\delta)\to\mathbb{R}^n$  satisfying
  $$x(0)=x_0, \hspace{1cm} x'(t)=f(x(t)), \quad \forall t \in (0,\delta),$$ by approximating $f$ uniformly by $C^{\infty}$ functions. 

I am looking for proof verification of the following and any suggestions for improvement. I do not feel confident with this proof because I did not use Ascoli-Arzela, which is used in the typical proof of Peano's Existence Theorem. 
Consider, instead of the open ball $B_r(x_0)$, a closed ball contained in it (since we're showing a local solution, this makes no difference), say $\overline{B_r(x_0)}$. Consider polynomials $P_n(x)$ which converge uniformly to $f$ on the closed ball. These exist because of the Weierstrass' theorem.
Now the problems $$\begin{cases} x_n'(t)=P_n(x_n(t))\\
x_n(0)=x_0\end{cases}$$ have a unique local solution in $B_r(x_0)$, since $P_n$ is a polynomial, hence locally Lipschitz on the open ball. Call this solution $x_n$.
Moreover, we may extract a convergent subsequence of $x_n$ such that the function $P_n$ has a uniform limit $f$, and therefore the functions $t \mapsto x_n'(t)$ have a uniform limit, which we shall denote by $g(t)$. 
Now we have a sequence of functions $x_n$ which take the same value at $0$, which are $C^1(B_r(x_0))$ and whose derivatives converge uniformly to a function $g$. Therefore $\exists \lim x_n$ and it is differentiable in a neighborhood of $0$ and its derivative is $g$ because:

If $\exists a.f_n(a)\to L$ and $f'_n\to g$ uniformly then $f_n$
  has a limit $f$ satisfying $f(a)=L$, $f'=g$.

In other words, there is some local solution $x:[0,\delta)\to\mathbb{R}^n$ satisfying $x(0)=x_0$ where $x'(t) = f(x(t))$ for all $t\in[0,\delta)$. 
 A: Here is an extract of a work I did for University. I don't think that I can include all the details here without making a huge answer. Thus, do check the link at the end for notations or concepts you don't fully understand. I commit myself to maintain the link. 
The proof of Peano theorem will be done using Weierstrass approximation theorem. A good account of the different approaches that have been followed to prove this theorem can be found in Flett's Differential Analysis. In particular, the idea of using Weierstrass approximation can be attributed to Romanian mathematician Constantin Corduneanu. 
Modified Weierstrass approximation
If $\exists M \geq 0.
 \forall (t,x) \in \mathcal{R}_{a,b}.\|f(t,x)\| \leq M
$ then $\exists f_{n}:D\to \mathbb{R}^d$ a sequence of locally Lipschitz functions with respect to the second variable such that $\forall n \in \mathbb{N}, (t,x) \in \mathcal{R}_{a,b}.\|f_n(t,x)\| \leq M 
$ and $f_{n} \stackrel{\|\cdot\|_{\infty}}{\longrightarrow} f$ in $\mathcal{R}_{a,b}$.
Proof:
Let's first consider the scalar case. 
Given that $\mathcal{R}_{a,b}$ is a compact set, by Weierstrass approximation theorem, we have that there exists a sequence of polynomials with real coefficients such that  $g_n  \stackrel{\|\cdot\|_{\infty}}{\longrightarrow} f$ in $\mathcal{R}_{a,b}$.
In principle we do not know that, $\|g_n\|_{\infty} \le \|f\|_{\infty}$. To have this, we can multiply by an adequate sequence $a_n$. This sequence should verify that $\|a_nf_n\|_{\infty} \le \|f\|_{\infty}$, so that $|a_n| \le \frac{\|f\|_{\infty}}{\|g_n\|_{\infty}}$. Directly, we may set $a_n = \frac{\|f\|_{\infty}}{\|g_n\|_{\infty} +  \frac 1 n}$, so that the denominator is always positive. Then, if we define $f_n = a_n g_n$ we would have that $f_n =  a_n g_n \stackrel{\|\cdot\|_{\infty}}{\longrightarrow} f$ and $\forall n \in \mathbb{N}. \|f_n\|_{\infty} = \|a_ng_n\|_{\infty} \le \|f\|_{\infty} \le M$. 
In summary, we have obtained an adequate sequence of polynomials $f_n$ which of course are locally Lipschitz with respect to the second variable in all $D$. This completes the proof of the scalar case.
In the vector setting let $f = (f^1,\ldots,f^d)$. Then, by the previous reasoning, there exist sequence $f_n^i \stackrel{\|\cdot\|_{\infty}}{\longrightarrow} f^i$ for $i = 1, \ldots, d$ and $\forall n \in \mathbb{N}.\|f^i_n\|_{\infty} \le M$ in $\mathcal{R}_{a,b}$. If we set $f_n = (f_n^1,\ldots,f_n^d)$ and use the maximum norm in $\mathbb{R}^d$, we have:


*

*$f_n$ is a sequence of locally Lipschitz functions with respect to the second variable.


Given $(t,x),(t,y) \in \mathcal{R}_{a,b}$, we need want that if $\|x-y\| < \delta$ for some $\delta$, then $\|f_n(t,x)-f_n(t,y)\| < \epsilon$. But this is easy since $\|f_n(t,x)-f_n(t,y)\| = \max \|f_n^i(t,x)-f_n^i(t,y)\|$ and if we choose $\delta = \min{\delta^i}$ where $\delta_i$ is the $\delta$ given for $\epsilon$ in the definition of local Lipschitz in the second variable for $f^i_n$ then indeed $\|f_n(t,x)-f_n(t,y)\| < \epsilon$.


*$\forall n \in \mathbb{N}, (t,x) \in \mathcal{R}_{a,b}.\|f_n(t,x)\| \le M$


Since $\|f_n^i\| \le M$, we would have that $\|f_n\|_{\infty} = \max \|f_n^i\|_{\infty} \le M$. 


*$f_n \stackrel{\|\cdot\|_{\infty}}{\longrightarrow} f$ in $\mathcal{R}_{a,b}$


Given $\epsilon > 0$ by the convergence of each component there exist $n_0^i$ such that if $n \ge n_0^i$ then $\|f_n^i - f^i\|_{\infty} < \epsilon$. Taking $n_0 = \min n_0^i$ we would have that $\|f_n - f\|_{\infty} = \max \|f_n^i - f^i\|_{\infty} < \epsilon$. 
This concludes the vector setting and the proof. 
Existence of a solution in a basic rectangle
If $\exists M \geq 0.
 \forall (t,x) \in \mathcal{R}_{a,b}.\|f(t,x)\| \leq M 
$ and $M a \leq b$ then $\exists \varphi:[t_{0}-a,t_{0}+a] \to \mathbb{R}^d$  solution of $(V)$. 
Proof:
By the above lemma and the hypothesis we have that $\exists f_n:D \to \mathbb{R}^d$ locally Lipschitz with respect to the second variable such that  $f_{n} \stackrel{\|\cdot\|_{\infty}}{\longrightarrow} f$ in $\mathcal{R}_{a,b}$. We define Volterra equation problems $(V_n) \;\; x_n(t) = x_0+\int_{t_0}^t f_n(s,x(s)) \; ds$. Thus, by the third part of the lemma to Picard theorem, we have that $(V_n)$ has a unique solution in $\mathcal{R}_{a,b}$. Let's write this solution: $$\varphi_n(t) = x_0+\int_{t_0}^t f_n(s,\varphi_n(s)) \; ds \;\; \forall t \in [t_0-a,t_0+a]$$ Then we have the following properties:


*

*$\varphi_n$ is uniformly bounded:


$\|\varphi_n\|_{\infty} \le \|x_0\|_{\infty} + \|\int_{t_0}^t f_n(s,\varphi_n(s)) \; ds\|_{\infty} \le \|x_0\| + M |t-t_0| \le \|x_0\|+Ma$
and this holds for any $n \in \mathbb{N}$ using the previous lemma.


*$\varphi_n$ is equicontinuous:


$\|\varphi_n(t)-\varphi_n(u)\|_{\infty} \le \|\int_{u}^t f_n(s,\varphi_n(s)) \; ds\|_{\infty} \le M |t-u| < \epsilon$
where we have taken $\delta = \frac \epsilon M$.
\end{enumerate}
By Ascoli-Arzelà theorem, there exists a subsequence $\varphi_{\sigma(n)} \longrightarrow \varphi$ uniformly in $\mathcal{R}_{a,b}$. 
We have that $f_n(s,\varphi_n(s)) \to f(s,\varphi(s))$. Indeed, given $\epsilon > 0$, by uniform convergence of $f_n$ there exists $n_0 \in \mathbb{N}$ such that $\|f_n-f\|_{\infty} < \epsilon$. So, for this choice, we would have that $\varphi$ lies in $\mathcal{R}_{a,b}$ since $\mathcal{R}_{a,b}$ is compact and $\varphi$ is a limit of functions in this compact set. Therefore: $$\|f_n(s,\varphi_n(s)) - f(s,\varphi(s))\| \le \|f_n-f\|_{\infty} < \epsilon$$ Using the corollary to the dominated convergence theorem, since $f_n$ is uniformly bounded by the above lemma, we would have that $\int_{t_0}^t f_n(s,\varphi_n(s)) \; ds \to \int_{t_0}^t f(s,\varphi(s)) \; ds$ and thus: $$\varphi_n(t) = x_0 + \int_{t_0}^t f_n(s,\varphi_n(s)) \; ds \to x_0 + \int_{t_0}^t f(s,\varphi(s)) \; ds$$ and since the limits must be equal, we have that $\varphi$ is a solution of $(V)$ in $\mathcal{R}_{a,b}$.
Cauchy-Peano existence theorem
The initial value problem $(P)$ has a solution defined in an interval containing $t_0$. 
Proof:
Let $a',b \in \mathbb{R}^{+}$ be such that $\mathcal{R}_{a',b}(t_0,x_0) \subseteq D$.
By Weierstrass theorem, $\exists M \ge 0.\forall (t,x) \in \mathcal{R}_{a',b}.\|f(t,x)\| \le M$. 
We set $a \in \mathbb{R}^+$ such that $aM \le b$ and $a \le a'$ and write $\mathcal{R}_{a,b} = \mathcal{R}_{a,b}(t_0,x_0)$.
Applying the previous proposition, we have that $\exists \varphi:[t_{0}-a,t_{0}+a] \to \mathbb{R}^d$  solution of $(V)$ so the theorem holds. 
References
My notes
