aboutsummaryrefslogtreecommitdiff
path: root/src/gen/metadata.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gen/metadata.c')
-rw-r--r--src/gen/metadata.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/gen/metadata.c b/src/gen/metadata.c
index 99e7dfc..b857ec7 100644
--- a/src/gen/metadata.c
+++ b/src/gen/metadata.c
@@ -21,13 +21,13 @@ GENERATOR(metadata_gen) {
} else {
return -7;
}
- GEN frobenius = negi(subii(curve->order, addis(q, 1)));
+ GEN frobenius = subii(addis(q, 1), curve->order);
GEN conductor;
GEN cm_disc;
if (typ(curve->field) == t_INT) {
- GEN full_disc = subii(mulis(q, 4), sqri(frobenius));
- cm_disc = core(full_disc);
- conductor = sqrti(diviiexact(full_disc, cm_disc));
+ GEN d_f = coredisc2(subii(sqri(frobenius), mulis(q, 4)));
+ cm_disc = gcopy(gel(d_f, 1));
+ conductor = gcopy(gel(d_f, 2));
gerepileall(ltop, 6, &j, &disc, &embedding_degree, &frobenius, &cm_disc, &conductor);
} else if (typ(curve->field) == t_FFELT) {
cm_disc = NULL;