182{
183 int k;
184 npure = 0;
185 int nvars = I.
topvar() + 1;
186 for (k = 0; k < nvars; k++) pure[k] = -1;
187
190 for (k = 0; k < nvars; k++) hits[k] = 0;
191 for (k = 0; k < nvars; k++) minnonzero[k] =
MAX_EXP;
192
193 non_pure_power = nullptr;
194
196 {
202 ++j;
204 {
205 non_pure_power = m;
206 for (; j.
valid(); ++j)
207 {
210 if (minnonzero[v] > e) minnonzero[v] = e;
211 hits[v]++;
212 }
213 }
214 else
215 {
216 if (pure[v] == -1)
217 {
218 npure++;
219 pure[v] = e;
220 }
221 else if (pure[v] > e)
222 pure[v] = e;
223 }
224 }
225
226 int popular = 0;
227 for (k = 1; k < nvars; k++)
228 if (hits[k] > hits[popular]) popular = k;
229 nhits = hits[popular];
230 exp_of_popular = minnonzero[popular];
233 return popular;
234}
varpower::ConstExponents const_varpower
ExponentListIterator< int, true > index_varpower
exponents::Exponents exponents_t
#define newarray_atomic_clear(T, len)
#define newarray_atomic(T, len)