  In this paper we study the maximum number of limit cycles that can bifurcate
from a focus singular point $p_0$ of an analytic, autonomous differential
system in the real plane under an analytic perturbation. We consider $p_0$
being a focus singular point of the following three types: non-degenerate,
degenerate without characteristic directions and nilpotent. In a neighborhood
of $p_0$ the differential system can always be brought, by means of a change to
(generalized) polar coordinates $(r, \theta)$, to an equation over a cylinder
in which the singular point $p_0$ corresponds to a limit cycle $\gamma_0$. This
equation over the cylinder always has an inverse integrating factor which is
smooth and non--flat in $r$ in a neighborhood of $\gamma_0$. We define the
notion of vanishing multiplicity of the inverse integrating factor over
$\gamma_0$. This vanishing multiplicity determines the maximum number of limit
cycles that bifurcate from the singular point $p_0$ in the non-degenerate case
and a lower bound for the cyclicity otherwise.
  Moreover, we prove the existence of an inverse integrating factor in a
neighborhood of many types of singular points, namely for the three types of
focus considered in the previous paragraph and for any isolated singular point
with at least one non-zero eigenvalue.
