Questions on the definition of polynomial time
You seem to be struggling with a lot of the fundamental concepts, here. All the NP-completeness stuff is cool and fascinating and I can absolutely see why you're attracted to it. But you really aren't going to get anywhere with this stuff until you have a good grasp of the basics. If you want to work on NP-completeness, you need first to get a good book on basic discrete mathematics and you need to study it until you understand it. I know that's kind of dull but there is no other way. There might be a question here already about recommendations for discrete maths books.

This is a technical, precise subject where every little part of every little sentence has some special meaning. It's not like, say, the rules of some sport that you can pick up more or less just by watching people play.  Yes, you can get a general, intuitive understanding of why, say, an NP-complete problem seems to be very hard to solve, in just the same way that you can get a general, intuitive understanding of how quantum tunnelling allows radioactive decay to happen.  But, if you want to discover new things about it, you need to understand the underlying mathematics.  There is no other way.



If all you want to do is talk about the running time of algorithms, you don't need to worry about polynomial expressions; just about polynomials. Polynomial expressions are generalizations of polynomials to be functions of things other than numbers.  Over numbers (integers, reals, complex, anything else), the polynomials are the functions of the form
$$f(x) = a_kx^k + a_{k-1}x^{k-1} + \dots + a_1x + a_0\,,$$
where $k$&nbsp;is an integer constant and the $a_{i}$&nbsp;are constants of the same kind of number as $x$&nbsp;will be.

1. Why do we have addition and multiplication but not division?The unhelpful answer is "Because that's the definition," just like CNF is defined using AND and OR rather than, say, XOR and NOR. The reason for forbidding division is that you might want to have a polynomial in a situation where division doesn't make sense (e.g., if you're working mod&nbsp;2, or $x$&nbsp;is an integer and you want to guarantee that $f(x)$ is also an integer). The kind of function you can make by dividing one polynomial by another is called a rational function and these are also widely studied and very useful in many situations. Why don't we use rational functions instead of polynomials in complexity theory? It's mostly because we don't need that level of detail: we already say that $4x^3 + 2x + 1$ is basically just some constant times&nbsp;$x^3$ so we wouldn't gain anything by bringing division to the party.

2. Why do we have both multiplication and addition, couldn't we express one with the other?Because there's no way to express all the multiplications in a polynomial as repeated addition, while still keeping the form of a polynomial. Sure, you could write $3x$ as $x+x+x$ but that would be hard to read and wouldn't gain anything. But there's no way to write $x^2$ using a fixed number of additions: there's nothing in the definition of a polynomial that lets you write
$$\underbrace{x + \dots + x}_{x \text{ times}}\,.$$

3. What is the difference between polynomial time and exponential time by definition?An exponential function is one of the form&nbsp;$k^x$ for some constant&nbsp;$k$. Note that this is different to a polynomial: polynomials are "variable-to-the-constant" and exponentials are "constant-to-the-variable". Exponentials grow much faster than polynomials. For example, see this plot. As G. Bach points out in his comment, if you're defining complexity classes around exponential functions, you need to take $k&gt;1$.