I want to understand the Primitive Element Theorem in a form: every finite seaparable extension is simple. I don't want to use ideas from Galois theory (at least a biection between subgroups of Galois group and intermediate subfields). I consider Serge Lang's proof (Th. 4.6, p.243 in 2002 ed.).
Let $s_i$ are $n$ different embeddings of outer field $E=F(a,b)$ in algebraic closure $F^{alg}$. Let
$$ P(X) = \prod_{i\neq j} (s_i(a) - s_j(a) + Xs_i(b) - Xs_j(b)). $$
This polynomial is obviously not equal to zero polynomial. But this leads Lang to conclude that there is a $c \in F$ such that $P(c) \neq 0$. I can't see how this can be true in any field $F$. That is obvious if $|F| = \infty$. But it is not clear in the case of finite fields (there are non-zero polynomials over finite fields which evaluate to zero everywhere, e.g. $x^{p^n} - x$ over $F_{p^n}$).
I'm aware about separate proof of the Primitive Element Theorem for finite fields. But the question is: can we make above mentioned conclusion without considering cardinality of $F$? If we can't, does it mean that Lang's proof has this shortcoming.
As noted by @Hoot, the first paragraph of Lang's proof says that everything is easy when $k$ is finite, so assume it is not.