When does a function NOT have an antiderivative? I know this question may sound naïve but why can't we write $\int e^{x^2} dx$ as $\int e^{2x} dx$? The former does not have an antiderivative, while the latter has.
In light of this question, what are sufficient conditions for a function NOT to have an antiderivative. That is, do we need careful examination of a function to say it does not have an antiderivative or is there any way that once you see the function, you can right away say it does not have an antiderivative?
 A: As you might have realised, exponentiation is not associative:
$$\left(a^b\right)^c \ne a^\left(b^c\right)$$
So what should $a^{b^c}$ mean? The convention is that exponentiation is right associative:
$$a^{b^c} = a^\left(b^c\right)$$
Because the otherwise left-associative exponentiation is just less useful and redundant, as it can be represented by multiplication inside the power (again as you might have realised):
$$a^{bc} = \left(a^b\right)^c$$
Wikipedia on associativity of exponentiation.
A: To answer the titular question, there's a result in real analysis that shows that derivatives have the intermediate value property (just like continuous functions). It follows that a function that skips values cannot be the derivative of anything in the usual sense. This implies that functions with jump discontinuities (like the Heaviside step, for example) cannot be the derivative of anything. 
A: Liouville's theorem:

In mathematics, Liouville's theorem, originally formulated by Joseph Liouville in 1833 to 1841, places an important restriction on antiderivatives that can be expressed as elementary functions.
The antiderivatives of certain elementary functions cannot themselves be expressed as elementary functions.  A standard example of such a function is $e^{-x^2}$, whose antiderivative is (with a multiplier of a constant) the error function, familiar from statistics.  Other examples include the functions $\frac{ \sin ( x ) }{ x }$ and $ x^x $.

From wikipedia. See the article for more details.
A: The exponential expression $a^{b^c}$ is equal to $a^{(b^c)}$. It is not equal to $(a^b)^c=a^{b\cdot c}$ as you seem to think it is. In general an exponential is evaluated from right to left with the highest term evaluated first. That is to say
$$\large{x_0^{x_1^{x_2^{\dots^{x_n}}}}=x_0^{\left(x_1^{\left(x_2^{\left(\dots^{(x_n)}\right)}\right)}\right)}}$$
For the second part of your question see this duplicate.
