Big O notation times zero Consider a real-valued sequence $\{h_n\}_n$ such that $$(\star) \lim_{n\rightarrow \infty}h_n=0$$ In order to show that $0*O(h_n^2)=0$ do we need to use assumption $(\star)$? Why?

By definition, $O\!\left(h_n^2\right)$ is a set of sequences
$$
O\!\left(h_n^2\right)=\left\{\left\{a_n:n\in\mathbb{N}\right\}:\exists A,N_a\gt0:\forall n\ge N_a,\left|a_n\right|\le A\left|h_n^2\right|\right\}
$$
If by $0$ you mean a sequence $\left\{b_n:n\in\mathbb{N}\right\}$ such that $\lim\limits_{n\to\infty}b_n=0$, then for some $N_b$, we have by definition $n\ge N_b\implies\left|b_n\right|\le1$. Then, for $n\ge\max(N_a,N_b)$
$$
\left|a_nb_n\right|\le A\left|h_n^2\right|
$$
Therefore,
$$
\left\{a_nb_n:n\in\mathbb{N}\right\}\in O\!\left(h_n^2\right)
$$
