@WilliamGodwin : the f in John's example is not surjective (nothing maps to 22), but that doesn't seem to be a real problem: f*(sets of elements of Y not "reached" from X via f) = empty set and we can simply disregard the empty set when we look at the induced partition on X.