148{
149 const int n = 7;
151 const int q = 2;
152 const int n_choose_p = 35;
154
159
160 int sign;
161 if ((
p % 2 == 1) && (q % 2 == 1))
162 sign = -1;
163 else
164 sign = 1;
165 for (size_t i = 0; i < n_choose_p; i++)
166 {
167 C.decode(i, a);
168 EXPECT_TRUE(C.isValid(a));
169 for (size_t j = 0; j < n_choose_p; j++)
170 {
171 C.decode(j, b);
172 EXPECT_TRUE(C.isValid(b));
175 if (ret1 == 0 || ret2 == 0)
176 {
177 EXPECT_EQ(ret1, ret2);
178 break;
179 }
180 EXPECT_EQ(ret1, sign * ret2);
182 }
183 }
184}
bool sameSubset(const Subset &a, const Subset &b)
static int concatenateSubsets(const Subset &s, const Subset &t, Subset &result)
Bijective integer encoding of q-subsets of {0, ..., n-1} via binomial(a_0, 1) + binomial(a_1,...
std::vector< size_t > Subset