A Lemma of Helly I am asked to prove a lemma of Helly, and then to use it to obtain a proof of Goldstine's Theorem. 
Let $X$ be a Banach space, fix $f_i\in X^*,\  
c_i\in \mathbb C, \ 0\le i\le  n.$ Then the following properties are equivalent:
$1)$ For all $\epsilon >0$, there is an $x\in X$ such that $\left \| x \right \|\le 1, $ and $|f_ix-c_i|<\epsilon .$
$2)$ For all $(d_1,\cdots ,d_n)\in \mathbb C^n,\ \left | \sum_{i=1}^{n}d_ic_i \right |\le \left \|\sum_{i=1}^{n}d_if_i  \right \|.$ 
$1)\Rightarrow 2):$
$\left | \sum_{i=1}^{n}d_ic_i \right |=\left | \sum_{i=1}^{n}d_i(c_i-f_ix) \right |+\left | \sum_{i=1}^{n}d_ifx_i \right |<\epsilon\left | \sum_{i=1}^{n}d_i \right |+\left \|\sum_{i=1}^{n}d_if_i  \right \|.$
$2)\Rightarrow 1):$ (this is where I am having trouble. Is the following correct? Is there an easier way to do this?  
If $1)$ is false, then there is an $\epsilon >0$ such that for all $x\in X$ with $\left \| x \right \|\le 1,\ $ there is an $1\le i\le n$ such that $|f_ix-c_i|>\epsilon. $  This means that for each $x\in X; \left \| x \right \|\le 1$, there is a neighborhood $U_x$ of $(f_1(x),\cdots ,f_n(x))$ which does not contain $(c_1,\cdots, c_n).$ So there is a $\Lambda:\mathbb C^n\to \mathbb C$ and $r\in \mathbb R$ such that $\Re \Lambda u\le r\le \Re \Lambda (c_1,\cdots, c_n)$ for all $u\in \bigcup _{\left \| x \right \|\le 1}U_x.$ But since $\mathbb C^n$ is an inner product space, we can use Riesz to say that $\lambda x=\langle x,d\rangle$ for some $d=(d_1,\cdots, d_n).$ Then we have $\sup_{\left \| x \right \|\le 1} \Re \sum_{i=1}^{n}d_if_i(x))\le \Re \sum_{i=1}^{n}d_ic_i \le \left | \sum_{i=1}^{n}d_ic_i \right |$. Now we use the fact that $\left \{ \left \| x\le1 \right \| \right \}$ is balanced to prove that the left hand side of this inequality is $\left \|\sum_{i=1}^{n}d_if_i  \right \|,$ which would give the desired contradiction: in fact, in general, if $f$ is a continuous linear functional, then there is a sequence $(x_n)$ in $B(0,1)$ such that $|f(x_n)|\to \left \| f \right \|.$ Now choose $\beta_n\in \mathbb C$ so that $|\beta_n|=1$ and $\beta_nf(x_n)$ is real. Then, $|f(x_n)|=|\beta_nf(x_n)|=|f(\beta_nx_n)|\to \left \| f \right \|.$ Since $\beta_nx_n\in B(0,1),$ the result follows because now we have $\left \| f \right \|=\lim |f(\beta_nx_n)|\le\sup_{\left \| x\le 1 \right \|}\Re f(x)\le \sup_{\left \| x\le 1 \right \|}|f(x)|=\left \| f \right \|.$
From here Goldstine's Theorem follows because if we take a $\gamma \in X^{**}$ in the closed unit weak*- ball, consider the arbitrary neighborhood $U=\left \{ \eta\in X^{**}:|\eta f_i-\gamma f_i|<\epsilon ; 1\le i\le n \right \}$ and note that since $\left \| \gamma \right \|\le 1, $ and since for any $d_i\in \mathbb C$ we have $\left | \sum_{i=1}^{n}d_i \gamma (f_i) \right |=\left | \gamma \left ( \sum_{i=1}^{n}d_if_i \right ) \ \right |\le \left \|  \sum_{i=1}^{n}d_if_i \right \|, $ the lemma applies to show there is an $x\in X$ such that $\left \| x\right \|\le 1$ and $|f_ix-c_i|<\epsilon$ and all it remains to do is take $c_i=\gamma f_i$ to see that $f_ix\in U.$
 A: Your proof of Goldstine's theorem is perfectly fine.
In your argument for 2) $\implies$ 1), I don't follow how you
are able to separate the possibly non-convex union
$\bigcup_{\lVert x \rVert \leq 1} U_x$ from
$(c_1, \dots, c_n)$ using a linear functional $\Lambda$.
This can be fixed by being a bit more careful: the closure
of $\{(f_1 x, \dots, f_n x) : \lVert x \rVert \leq 1\}$ is compact,
convex and has positive distance from $(c_1, \dots, c_n)$.
Moreover, you only get a contradiction if you have strict separation,
which you'll surely manage to get, too.
Your argument is about as easy as it can be.
However, I find it more instructive to
prove the implication 2) $\implies$ 1) directly.
We first show that the equations $f_i y = c_i, 1 \leq i \leq n$
have an exact solution $y\in X$.
In a second step, we show that we can choose $y$ in such a way that
$\lVert y \rVert \leq 1 + \delta$, where $\delta > 0$ is arbitrary,
and after a bit more gymnastics we'll find the desired $x$ satisfying 1).
I'll ignore the boring case that all functionals are zero.
After renumbering, we can assume that the first $l$ functionals
$f_1, \dots, f_l$ are linearly independent and have the same span as
$f_1, \dots, f_N$.
Consider the linear operator $T\colon X \to \mathbb{C}^{l}$ given by
$T(x) = (f_1 x, \dots, f_l x)$. Since the functionals $f_1, \dots, f_l$ are 
linearly independent, $T$ is surjective.
Claim.
Let $y \in T^{-1}(c_1, \dots, c_l)$ be arbitrary.
Then $f_i y = c_i$ for all $1 \leq i \leq n$.
Proof.
If $l = n$, there is nothing to prove.
Otherwise, we have $l \lt n$, and $f_i y = c_i$ holds
by choice of $y$ for $1 \leq i \leq l$,
so suppose $l+1 \leq i \leq n$.
Since $f_i$ is in the linear span of $f_1, \dots, f_l$,
we can write $f_i = \sum\limits_{j = 1}^l d_j f_j$.
Moreover, we choose $d_i = -1$ and $d_k = 0$ for
$k \in \{l + 1, \dots, n \} \setminus \{i\}$.
Now compute
$$
\lvert f_i y - c_i \rvert = 
\left \lvert \sum_{j=1}^l d_j f_j y - c_i \right \rvert = 
\left \lvert \sum_{j=1}^n d_j c_j \right \rvert \leq
\left \lVert \sum_{j=1}^n d_j f_j \right \rVert = 0
$$
where the inequality is due to the assumption 2). Therefore $f_i y = c_i$.
$\qquad\Box$
Pick $y \in T^{-1}(c_1, \dots, c_l)$ and observe that
$T^{-1}(c_1, \dots, c_l) = y + K$, where
$$
K = \bigcap_{j=1}^l \ker f_j = \bigcap_{j=1}^n \ker f_j.
$$
The crucial observation now is:
Claim.
$d(y, K) \leq 1$.
Proof.
By Hahn-Banach, there is a linear functional
$f \colon X \to \mathbb{C}$ with
$\lVert f \rVert = 1$ such that $f(y) = d(y, K)$ and $f |_K = 0$.
In particular, $\ker f \supseteq K$, so $f$ is a linear combination
of $f_1, \dots, f_n$, say $f = \sum_{j=1}^n d_j f_j$.
Now another application of the inequality in 2) yields
$$
d(y, K) = f(y) =
\sum_{j=1}^n d_j f_j(y) =
\sum_{j=1}^n d_j c_j \leq
\left \lVert \sum_{j=1}^n d_j f_j \right \rVert =
\lVert f \rVert = 1,
$$
so indeed $d(y, K) \leq 1$, as claimed. $\qquad \Box$
Given $\epsilon > 0$, choose $\delta \gt 0$ such that
$\delta \lvert c_j\rvert < \epsilon$ for all $1 \leq j \leq n$.
Then choose $z_\epsilon \in K$ such that
$\lVert y - z_\epsilon \rVert \leq 1 + \delta$,
which is possible by the last claim.
Note that $f_j(y - z_\epsilon) = c_j$ for all $1 \leq j \leq n$.
Put $x = \frac{1}{1 + \delta} (y - z_\epsilon)$.
We have $\lVert x \rVert \leq 1$ and for $1 \leq j \leq n$ we see
$$
\lvert f_j(x) - c_j \rvert =
\left \lvert \frac{1}{1+\delta} c_j - c_j \right \rvert \leq
\delta \lvert c_j \rvert \lt \epsilon.
$$
Thus, we're done.
