complete lattice distributive lattice semilattice sublattice boolean lattice lattice theory lattice bounded lattice frame hyperlattice