A b-coloring is a coloring of the vertices of a graph such that each color class contains a vertex that has a neighbor in all other color classes, and the b-chromatic number of a graph G is the largest integer k such that G admits a b-coloring with k colors. A graph is b-perfect if the b-chromatic number is equal to the chromatic number for every induced subgraph of G. We prove that a graph is b-perfect if and only if it does not contain as an induced subgraph a member of a certain list of twenty-two graphs. This entails the existence of a polynomial-time recognition algorithm and of a polynomial-time algorithm for coloring exactly the vertices of every b-perfect graph.
Chính T. Hoàng, Frédér