We present new static analysis methods for proving liveness properties of programs. We generalize an existing abstract interpretation framework for termination. We reuse existing abstract domains based on piecewise-defined ranking functions. The static analyses methods infer sufficient preconditions for the liveness properties. We provide a prototype implementation of these static analyses.