Commutative algebra and combinatorics