  We present a general approximation framework for weighted integer covering
problems. In a weighted integer covering problem, the goal is to determine a
non-negative integer solution $x$ to system $\{ Ax \geq r \}$ minimizing a
non-negative cost function $c^T x$ (of appropriate dimensions). All
coefficients in matrix $A$ are assumed to be non-negative. We analyze the
performance of a very simple primal-dual greedy algorithm and discuss
conditions of system $(A,r)$ that guarantee feasibility of the constructed
solutions, and a bounded approximation factor. We call system $(A,r)$ a
\emph{greedy system} if it satisfies certain properties introduced in this
work. These properties highly rely on monotonicity and supermodularity
conditions on $A$ and $r$, and can thus be seen as a far reaching
generalization of contra-polymatroids. Given a greedy system $(A,r)$, we
carefully construct a truncated system $(A',r)$ containing the same integer
feasible points. We show that our primal-dual greedy algorithm when applied to
the truncated system $(A',r)$ obtains a feasible solution to $(A,r)$ with
approximation factor at most $2\delta + 1$, or $2\delta$ if $r$ is
non-negative. Here, $\delta$ is some characteristic of the truncated matrix
$A'$ which is small in many applications. The analysis is shown to be tight up
to constant factors. We also provide an approximation factor of $k (\delta +
1)$ if the greedy algorithm is applied to the intersection of multiple greedy
systems. The parameter $k$ is always bounded by the number of greedy systems
but may be much smaller. Again, we show that the dependency on $k$ is tight. We
conclude this paper with an exposition of classical approximation results based
on primal-dual algorithms that are covered by our framework. We match all of
the known results. Additionally, we provide some new insight in a
generalization of the flow cover on a line problem.
