what is a lattice in discrete mathematics