check_criterion is now really smart.