void randpoly(zmod_poly_t poly, long length, unsigned long n) { if (length == 0) { zmod_poly_fit_length(poly, 1); poly->length = 0; return; } zmod_poly_fit_length(poly, length); for (unsigned long i = 0; i < length; i++) poly->coeffs[i] = randint(n); poly->length = length; __zmod_poly_normalise(poly); }
void F_mpz_mod_poly_to_zmod_poly(zmod_poly_t zpol, const F_mpz_mod_poly_t fpol) { if (fpol->length == 0) { zmod_poly_zero(zpol); return; } zmod_poly_fit_length(zpol, fpol->length); for (ulong i = 0; i < fpol->length; i++) zpol->coeffs[i] = F_mpz_get_ui(fpol->coeffs + i); zpol->length = fpol->length; __zmod_poly_normalise(zpol); }