Generalized versions of Hall's theorem