Domain of a Polynomial function A polynomial function is given as, 
$P(x)= a_nx^n+a_{n-1}x^{n-1}+.....+a_1x+a_0$
Notice the last but one term $a_1x$. This term is a simplified form of $a_{n-(n-1)}x^{n-(n-1)}$. 
Now let us take the last term of the Polynomial. The term $a_0$ is a simplified form of $a_{n-n}x^{n-n}$. Notice that $x^{n-n} = x^0 = 1$ only when $x\neq0$. This is because $0^0$ is indeterminate. It is evident that $x=0$ is clearly not in the domain of $P(x)$. But by definition, the polynomial function given above is defined for all values of $x$, $x\in(-\infty,\infty)$. 
Was I right to frame the last term of the polynomial the way I did above? If no, I would like to know why. 
 A: Formally, you are absolutely correct. $0^0$ is an indeterminate form. But consider a seemingly unrelated case:
$$f(x)=\frac{x}{x}.$$
This used to drive me nuts, because it is clearly just the same as the function $g(x)=1$... right? The answer is no, but only in a way that is disgustingly technical. Similar to your case, $f(0)$ is technically an indeterminate form. The problem is division of $0$ by $0$. So the functions $f(x)$ and $g(x)$ can't really be equal because they have different domains. However, there is a way around this. Consider instead defining a new function $h$ in this way:
$h(x)= \frac{x}{x}$ if $x\neq 0$, and $h(x)=1$ if $x=0$. Now, we have removed the problem with $0$ and defined a function truly equal to $g(x)=1$ everywhere.
In your problem, $a_0$ is not really equal to $a_0x^0$ because those expressions have different domains. Specifically, $0$ is in the domain of the first, but not of the second. However, when people speak of $a_0$ as being "the $0$-order term", they are doing that for reasons that are intuitively helpful, not reasons that are mathematically formal. And it is always helpful to remember that $a_0\neq a_0x^0$ in general, but that $a_0= a_0x^0$ when $x\neq 0$. 
Does this help? Please do ask for clarification if you need it, as this is not only an important point but demonstrates great mathematical insight on your part. I enjoyed thinking about it.
A: I finished my M.Sc. Mathematics two years ago and in the branches I have studied, I have never encountered the notion that $0^0$ should be undefined.
I always consider $0^0$ to be $1$.
For further explanation, see the question linked to by Hans Lundmark in his comment:
Zero to the zero power - is $0^0=1$?
A: The general form of a polynomial ($p(x)$) of degree $n$ can indeed be written as:
\begin{align}
p(x)=a_nx^n +a_{n-1}x^{n-1} + \cdots +a_1x +a_0 , \qquad a_n \ne 0
\end{align}
Now I believe you saw some trends and tried to write it in a more compact way:
\begin{align}
p(x) =  a_{n-0} x^{n-0}+a_{n-1} x^{n-1}+\cdots +  a_{n-(n-1)}x^{n-(n-1)} + a_{n-(n)}x^{n-(n)}= \sum_{i=0}^{n} a_{n-i}x^{n-i} 
\end{align}
And you are running into problems with that last term. The first equation above is the proper way to think of a polynomial and the one you proposed is just a compacted way to write it that is almost always equivalent except for the last term.
It is not the right way to frame a polynomial. The reason why you could say is exactly the reason you noticed: it isn't equivalent to the definition of the polynomial (because $x^0$ is not
well defined when $x=0$ so our form isn't well defined when $x=0$ however the definition does not have issues when $x=0$)
A: This is one area where a little computer science can be helpful.  Asked to test the value of $0^0$ by implementing the function $x^y$, one person writes this program
def powernat(real x, nat y) 
 if y = 0 : 
   return 1
 else: 
   return x * powernat(x,y-1)

and another person writes this program
def powerreal(real x, real y) 
 return exp(y * log(x))

Here "nat" is a data type for natural numbers and "real" is a data type for real numbers. 
We can see immediately that something different will happen with $0^0$. The powernat function will return 1, but the powerreal function will cause an error, because $\log(0)$ is not defined. 
The situation in mathematics is not so different - we often define exponentiation for natural numbers as in powernat, and exponentiation for real numbers as in powerreal. But we have no notation to distinguish powernat from powerreal: we write both of them as $x^y$ and rely on context only to tell them apart. 
This causes trouble when we write expressions such as $0^0$. If we mean for this to be treated as the powernat function - which is the case in the definition of a power series - then we read $0^0 = 1$. But if we want this to be treated as the powerreal function - which is also used, essentially, to treat complex exponentiation - then $0^0$ is undefined (as is $0^1$, actually...).  
For the more basic arithmetical operations, this does not cause any issues. For example $1 + 1 = 2$ is true regardless of whether we think of the numbers $1$ and $2$ as natural numbers or as Dedekind cuts representing real numbers. In each of these cases the "+" means something different, but it causes no confusion.  In the case of $x^y$, though, it does matter which definition we use. 
A: 
This is because $0^0$ is indeterminate.

This is an extremely common misconception. There is a vast difference between $0^0$ and the form of a limit, which may be labelled as "$0^0$" (note the quotes!), just as there is a difference between $\frac00$ and the form "$\frac00$" of some limits.
Here are the facts under standard mathematical conventions:

$0^0 = 1$ in contexts where the exponent is a natural number.
"$0^0$" is a label referring to an indeterminate form of some limits.
$\frac00$ is undefined.
"$\frac00$" is a label referring to another indeterminate form of some limits.
Limits with form "$0^0$" or "$\frac00$" may have a value or may not. That is precisely why we call their form indeterminate, because we cannot determine the value so easily by their form alone.
$0^0$ is not a limit, and if the exponent is a natural number (like for rings or in combinatorics or in the binomial theorem or in power series or ...) then its value is always $1$.

If you do not believe this, see the conventional statement of the binomial theorem here and here (equation 4) and the definition of power series here and here.
A: The problem is essentially of your own making in that, for your own convenience, you decided to rewrite $a_0$ as $a_0x^0$ and then ran into problems with the case $x=0$.  Since the problem is of your own making, the power to solve it is also yours. You're in a context where it makes a huge amount of sense to just adopt the convention that $0^0=1$, so you should do that. This allows you to keep the convenience of writing $a_0x^0$ without the problems associated with evaluating $x^0$ at $x=0$.
A: When I took an undergraduate course in Abstract Algebra, the text introduced an alternate interpretation of polynomials that you might find more helpful: Forget about the 'x' entirely and use -just- the coefficients!  SO: a polynomial P is simply a sequence of values drawn from a field F: { $a_0$, $a_1$, $a_2$, ... } [where all but finitely many of the $a_i$ are non-zero].  Arithmetic of polynomials is defined in the expected manner directly in terms of their coefficient sequences.  Evaluating a polynomial is then reintroduced by means of the Evaluation Homomorphism: The map $V_P$: F -> F defined by $V_P(c)$ = $a_0$ + $a_1 c$ + $a_2 c^2$ + ... .  The book also suggests that, if you still feel the need for 'x', think of it as the polynomial { 0, 1, 0, 0, 0, ...} (personally I don't find that suggestion too helpful).
A: On pondering this good question further, I think that part of the problem is that we have no name for the functions $x\mapsto x^n$. A clean way of getting around the difficulty might be the following:
Define functions $P_n$ for nonnegative integers $n$ inductively as follows:
for all $x$, $P_0(x)=1$, and for $n\ge0$, define $P_{n+1}(x)=xP_n(x)$. You see that this makes $P_0$ the constant function $1$, and for $n>0$, $P_n(x)=x^n$.
Then your function can be written $\sum_{i=0}^na_iP_i\>$.
A: Why are you thinking of your polynomial in that way ..
Just think of it as sum of n+1 functions 
$P_0, P_1, P_2 , P_3, ... P_n$
where 
$P_0 = a_0$
$P_1 = a_1 x$
.
.
.
$P_n = a_n x^n$
Domain of all these functions is $R$
Therefore domain of their sum will be $R$  ... That is the domain of your polynomial will be $R$
