  In $k$-hypergraph matching, we are given a collection of sets of size at most
$k$, each with an associated weight, and we seek a maximum-weight subcollection
whose sets are pairwise disjoint. More generally, in $k$-hypergraph
$b$-matching, instead of disjointness we require that every element appears in
at most $b$ sets of the subcollection. Our main result is a linear-programming
based $(k-1+\tfrac{1}{k})$-approximation algorithm for $k$-hypergraph
$b$-matching. This settles the integrality gap when $k$ is one more than a
prime power, since it matches a previously-known lower bound. When the
hypergraph is bipartite, we are able to improve the approximation ratio to
$k-1$, which is also best possible relative to the natural LP. These results
are obtained using a more careful application of the \emph{iterated packing}
method.
  Using the bipartite algorithmic integrality gap upper bound, we show that for
the family of combinatorial auctions in which anyone can win at most $t$ items,
there is a truthful-in-expectation polynomial-time auction that
$t$-approximately maximizes social welfare. We also show that our results
directly imply new approximations for a generalization of the recently
introduced bounded-color matching problem.
  We also consider the generalization of $b$-matching to \emph{demand
matching}, where edges have nonuniform demand values. The best known
approximation algorithm for this problem has ratio $2k$ on $k$-hypergraphs. We
give a new algorithm, based on local ratio, that obtains the same approximation
ratio in a much simpler way.
