I am having trouble understanding the usage of big-O and little-o notation when $x \rightarrow 0$ rather than $x \rightarrow \infty$. Most definitions i have found online pertain to the case of $x \rightarrow \infty$.
One definition given in a university course on mine is:
Big-O: $f(x) =O(1)$ if as $x\rightarrow \infty$ we have $|f(x)|\leq C$ for some constant $C$, implying that $f(x) = O(g(x))$ if $f(x)/g(x)=O(1)$.
Little-o: $f(x) = o(1)$ if as $x\rightarrow \infty$ we have $f(x)\rightarrow 0$, implying that $f(x) = (g(x))$ if $f(x)/g(x)=o(1)$ (i.e. $f(x)/g(x))\rightarrow 0$ as $x\rightarrow \infty$)
Are these definitions also applicable if i just replace $\infty$ with $0$? I have realized that when $x\rightarrow 0$ and we use O-notation we would keep the lowest order terms as opposed to when $x\rightarrow \infty$ where we keep higher order terms. This however have lead me to conclusions that is find questionable.
Consider the following for example:
let $x\rightarrow 0$ and $f(x) = x^n$. We have $|f(x)/x^n|=1\Rightarrow f(x) = O(x^n)$. Similarly we have $|f(x)/x^{n-1}|=x\rightarrow 0 \leq C$ for any non-negative $C$. Does this mean that if $f(x)=O(x^n)$ then we also have $f(x)=O(x^{n-1})$, $f(x)=O(x^{n-2}),...,f(x)=O(x)$. Moreover it would also seem that since $|f(x)|\rightarrow 0$ as $x\rightarrow 0$ we always have $f(x) = o(1)$.
I hope the example demonstrates how I might have misunderstood this concept. Most of all I think I am just in the need of a clear definition of for big-O and little-o notation in the case where $x\rightarrow 0$.
Any help or references would be greatly appreciated!