I found this $f(n)=O(...)$ notation always a bit misleading. In this case $O(n^{-2/3})$ is used with two meanings:
1) As the class of all functions $g$ for which $n^{2/3}g(n) < C$ for some $C$ depending on $g$.
2) As a placeholder for some function out of this class.
The same holds for $o(n^{-1/2})$. In this case, using the second meaning which is used here, there are indeed functions $f$ for which $f(n) = O(n^{-2/3}) = o(n^{-1/2})$, in the sense that $f$ satisfies both conditions.
However using the first meaning $O(n^{-2/3}) \neq o(n^{-1/2})$, since for example $n^{-1/2-1/10}$ is $o(n^{-1/2})$ but not $O(n^{-2/3})$.
By the way, I'm also assuming that $f(n)\geq 1$ is a typo, otherwise both classes simply are empty...
0
user98186
On
The Big O notation is specific and the little o notation is more generic. For example, There may be infinitely many classes of functions that are $o (f)$ each of which has distinct $O (g_n)$.
I found this $f(n)=O(...)$ notation always a bit misleading. In this case $O(n^{-2/3})$ is used with two meanings:
1) As the class of all functions $g$ for which $n^{2/3}g(n) < C$ for some $C$ depending on $g$.
2) As a placeholder for some function out of this class.
The same holds for $o(n^{-1/2})$. In this case, using the second meaning which is used here, there are indeed functions $f$ for which $f(n) = O(n^{-2/3}) = o(n^{-1/2})$, in the sense that $f$ satisfies both conditions.
However using the first meaning $O(n^{-2/3}) \neq o(n^{-1/2})$, since for example $n^{-1/2-1/10}$ is $o(n^{-1/2})$ but not $O(n^{-2/3})$.
By the way, I'm also assuming that $f(n)\geq 1$ is a typo, otherwise both classes simply are empty...