list coloring — generalization of graph coloring in which each vertex has a list of allowed colors