diff options
| -rw-r--r-- | src/cm/cm.c | 9 | ||||
| -rw-r--r-- | src/gen/gens.c | 1 |
2 files changed, 8 insertions, 2 deletions
diff --git a/src/cm/cm.c b/src/cm/cm.c index 79e0e0e..04b988a 100644 --- a/src/cm/cm.c +++ b/src/cm/cm.c @@ -181,10 +181,15 @@ static int cm_init(exhaustive_t *setup) { for (long j = 1; j <= len; ++j) { GEN factor = gel(factors, j); if (isprime(factor)) { + debug_log("Adding prime factor %Pi", factor); addprimes(gtovec(factor)); } else { - GEN factored = Z_factor(order); - addprimes(gel(factored, 1)); + GEN factored = Z_factor(factor); + GEN primes = gel(factored, 1); + for (long k = 1; k <= glength(primes); ++k) { + debug_log("Adding prime factor %Pi", gel(primes, k)); + addprimes(gel(primes, k)); + } } order = mulii(order, factor); } diff --git a/src/gen/gens.c b/src/gen/gens.c index a32f8b8..329149a 100644 --- a/src/gen/gens.c +++ b/src/gen/gens.c @@ -38,6 +38,7 @@ GENERATOR(gens_gen_any) { GENERATOR(gens_gen_one) { pari_sp ltop = avma; GEN group = ellff_get_group(curve->curve); + debug_log("Group structure %Ps.", group); long len = glength(group); if (len == 2) { avma = ltop; |
