Deny Lions Lemma I am working through the finite element book by Ciarlet and am currently looking at the Deny Lion's Lemma (Theorem 3.1.1 p. 115). 
The Lemma essentially wants to show that $\inf_{p \in P_{k}}\Vert v - p\Vert_{k+1,p,\Omega}  \leq C \vert v \vert_{k+1,p,\Omega}$. 
During the proof, we consider linear functionals $f_{i}$ on $P_{k}$ and then make use of the Hahn-Banach Theorem to extend these to functionals on $W^{k+1,p}(\Omega)$. The claim is then made that for each $v \in W^{k+1,p}(\Omega)$ we can select a $q \in P_{k}$ such that $f_{i}(v-q) = 0$ for all $i$. 
I am struggling to see how we reason this ability to choose such a polynomial $q$. Would anyone be able to point me in the right direction?  
 A: In the proof, we have $f_1, \dots, f_N$ chosen to be a basis for the dual $P_k^*$, where $N = \dim P_k$.  This means that the map $T : P_k \to \mathbb{R}^N$ defined by $T(p) = (f_1(p), \dots, f_N(p))$ is an isomorphism.  In particular, it is surjective.  So given $v \in W^{k+1, p}(\Omega)$ there exists $q \in P_k$ such that $T(q) = (f_1(v), \dots, f_N(v))$.  That is to say, we have $f_i(q) = f_i(v)$ for each $i$.  By linearity, $f_i(v-q) = 0$.
A: I think Nate's response answers your question; I'm just writing a bit of an explanation of what is going on in the proof.  We are looking for a polynomial $q$ which approximates $v$ well, up to the higher order derivatives (which we can estimate using $|v|_{k+1,p}$).  
Let's think about this abstractly for a moment.  We have some Banach space $B$ with a norm $\|\cdot\|_B$ and a seminorm $|\cdot|_B$, an element $v\in B$, and a finite-dimensional subspace $P$.  We want to show that 
$$
\min_{q\in P} \|v-q\|_B \leq C|v|_B.
$$
Now if we pretend that $B$ is actually a Hilbert space, then our next steps are geometrically intuitive.  We want to project $v$ onto this subspace to obtain $q$.  This means we want the error $v-q$ to be orthogonal to the space $V$.  Then if the seminorm is well behaved with respect to the inner product we should be able to establish the bound.  
The problem is that we don't have an inner product, so we don't have a notion of orthogonality.  But how did we use the inner product?  One way to use it goes like this: suppose $p_1,\cdots, p_K$ is a basis for $P$.  Define the functions $f'_i:V\to \mathbb{R}$ by
$$
f'_i(u) = \langle p_i, u\rangle.
$$
Then the projection $q = \pi_P(v)$ is the unique vector in $P$ satisfying
$f'_i(q) = f'_i(u)$ for all $i$.  So if we don't have the inner product, we can make do by defining some function $f_i$ which behaves like we would want $f'_i$ to on $P$, and then extending it using Hahn-Banach.
Finally, I want to point out that the use of the Hahn-Banach theorem isn't necessary for this Theorem.  It is sufficient to replace the Hilbert-space idea of orthogonality with the Banach-space idea of almost-orthogonality.  Pick some $0<\varepsilon <1$ ($\varepsilon = 1/2$ works just fine).  We say a vector $y\in B$ is almost orthogonal to $P$ if 
$$
\|y+p\|_B \geq (1-\varepsilon) \|y\|_B
$$
for all $p\in P$.  It is possible to choose $q\in P$ such that $v-q$ is almost orthogonal to $P$, and for the purposes of Theorem 3.1.1, this is enough (you need again to use a compactness and contradiction argument).
For a more in-depth treatment of this Theorem, I suggest doing exercise 3.1.1 in the book.
