47{
48 fmpz_t n;
49 fmpz_init(n);
51
52 fmpz_factor_t factor;
53 fmpz_factor_init(factor);
54 fmpz_factor(factor,n);
55 int len = factor->num;
58 __mpz_struct *tmp;
59
61 mpz_init(tmp);
62 mpz_set_si(tmp, factor->sign);
65 for (int i=0; i<len; i++) {
66
68 mpz_init(tmp);
69 fmpz_get_mpz(tmp,factor->p + i);
71 result->array[2*i+1] = tmp;
72
74 mpz_init(tmp);
75 fmpz_get_mpz(tmp,(fmpz *)(factor->exp + i));
77 result->array[2*i+2] = tmp;
78 }
79 fmpz_factor_clear(factor);
80 fmpz_clear(n);
82}
void mpz_reallocate_limbs(mpz_ptr _z)
VALGRIND_MAKE_MEM_DEFINED & result(result)
#define getmemarraytype(S, len)