def METHOD_NAME(self, combination_matrix, t_value):
    for constraint in self.constraints:
        if len(constraint) > t_value:
            continue
        parameters_in_constraint = []
        for pair in constraint:
            parameters_in_constraint.append(pair[self.CON_NAME])
        for c in itertools.combinations(range(len(self.data)), t_value):
            if set(parameters_in_constraint).issubset(c):
                value_array = []
                counter = 0
                for value in c:
                    if value == constraint[counter][self.CON_NAME]:
                        value_array.append([constraint[counter][self.CON_VAL]])
                        if (counter + 1) != len(constraint):
                            counter += 1
                    else:
                        value_array.append(list(range(0, self.data[value])))
                for key in itertools.product(*value_array):
                    combination_matrix.del_cell(c, key)