def resolve!
      if @reduced_characteristics.empty?
        IMPOSSIBLE
      elsif (current = @active_record_relation.where(CohortScope.conditions_for(@reduced_characteristics))).count >= @minimum_cohort_size
        current.constraints.inject(:and).to_sql
      else
        reduce!
        resolve!
      end
    end
def resolve!
      if @reduced_characteristics.empty?
        IMPOSSIBLE
      elsif (current = @active_record_relation.where(CohortScope.conditions_for(@reduced_characteristics))).count >= @minimum_cohort_size
        current.constraints.inject(:and).to_sql
      else
        reduce!
        resolve!
      end
    end
Recursively look for a scope that meets the characteristics and is at least <tt>minimum_cohort_size</tt>.