* Polynomial iterator constructor.
*/
@SuppressWarnings("unchecked")
public GenPolynomialMonomialIterator(GenPolynomialRing<C> fac) {
ring = fac;
LongIterable li = new LongIterable();
li.setNonNegativeIterator();
List<Iterable<Long>> tlist = new ArrayList<>(ring.nvar);
for (int i = 0; i < ring.nvar; i++) {
tlist.add(li);
}
CartesianProductInfinite<Long> ei = new CartesianProductInfinite<>(tlist);