This is the proof I came across:
$L=\{a^{x^j}|j\ge 0, 2\le x\in \mathbb N\}$ is a non-context-free language. Suppose otherwise, then let $n$ be the constant promised in the pumping lemma. Let's choose $z=a^{x^n}, 1<x, z\in L$ therefore exists a decomposition of $z$ into the following form: $z=uvwxy, u=a^{k_1},v=a^{k_2},w=a^{k_3},x=a^{k_4},y=a^{x^n-k_1-k_2-k_3-k_4}$
For $i=2: a^{x^n+k_2+k_4}\quad$ *
$$ x^n< x^n+k_2+k_4\le x^n+n<x^n+x^n\le x^{n+1}\quad ** $$ which means that the language is not context-free.
$L$ is contained in the union of all non-context-free languages and the union can be represented by the regular expression $a^+$ therefore the union is a context-free language (because it can be represented by reg. expression).
1) First I don't understand why we needed to bother with proving that $L$ is not context-free. Why couldn't we say from the very beginning that the union of all non-context-free languages is $a^+$ and therefore it's context-free?
2) Why for $i=2: a^{x^n+k_2+k_4}$? Is it because the length of $a^{x^n}$ without $k_2, k_4$ is $a^{x^n-k_2-k_4}$ and because $i=2$ then $a^{x^n-k_2-k_4+(2k_2+2k_4)}=a^{x^n+k_2+k_4}$?
3) In point ** we found an accurate upper bound for $x^n$ which is $x^{n+1}$. But it doesn't necessarily mean than the power of $x$ will be $n+1$ it's just an upper bound. Why is it enough for the proof?