small o(1) notation

This should be a comment to chazisop's answer; I don't have enough rep to make it.

Chazisop, your quantifiers in 1 are the wrong way round, in fact there are two problems. Firstly, saying $\forall k>0 : f(n) \le k$ is simply equivalent to saying $f(n) \leq 0$. The right definition for o(1) is that $\forall k >0\ \exists N\ \forall n \geq N : |f(n)| \leq k$. Note that the $k$-quantifier appears at the start, this is non-negotiable! Secondly, notice the mod signs around $f(n)$. If you are only thinking of nonnegative functions (e.g. the running time of an algorithm) you can omit them, but not for arbitrary functions.

To the OP, no, that's not what o(1) means. There are two problems with what you've written: firstly, what is $\epsilon$? Secondly, what are the $n$ and $N$ supposed to be (I don't mean the $n$ in your limit)? You need to think about this statement more carefully.

The definition of $f(n)$ being $o(1)$ is that $\lim _{n \to \infty} f(n) = 0$. That means that for all $\epsilon>0$ there exists $N_\epsilon$, depending on $\epsilon$, such that for all $n \geq N_\epsilon$ we have $|f(n)| \leq \epsilon$. I guess this definition is probably where your $n>N$ comes from.


It probably means $$\lim_{n \to \infty} \frac{f(n)}{1} = 0$$