Имеется N параметров, описывающих состояние системы. Каждый параметр является целым числом из интервала 1..X[i], где i — номер этого параметра. Назовем множество состояний системы полным, если для каждой пары параметров каждое возможное сочетание из значений встречается в нем хотя бы по одному разу. Надо получить одно их наименьших (по количеству состояний в нем) полных множеств. Это нужно для pairwise testing, при котором проверяются все возможные сочетания каждой пары параметров (хотя бы с одним набором значений остальных параметров).
Для начала хочется хотя бы посчитать количество состояний в таком множестве.