1 | initial version |

You waste a lot of time in creating all polynomials and then selecting the good ones.

Ton generate only the polynomials with coefficients from a list, you can use the `product`

function of the `itertools`

standard module to make the product of your list `d+1`

times and construct your polynomials from its elements, with the additional trick that if `F`

is a polynomial ring, and `t`

is a tuple of elements of the base ring of `F`

, then `K(t)`

is the polynomial whose coefficients are the elements of `t`

. This leads to:

```
sage: L = [K(1), K(16)]
sage: d = 8
sage: from itertools import product
sage: P = product(L, repeat=d+1)
sage: SET = [F(coeffs) for coeffs in P]
```

Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.