# How to compute a cyclic subgroup of a class group?

Hello, I am quite new to computing in Sage and I am stuck at this point. Please help me out. I am going to use algebraic number theory notation without explaining them in detail. All computations are in quadratic fields.

What I have :

• $\Delta_p=p^2\Delta_K$ where $p$ is a prime, $\Delta_K=-pq$ and $\Delta_K\equiv 1$ mod $4$
• I computed the class group, $C(\Delta_p)$ in Sage

What I want :

• Set $f=[(p^2,p)]$ in $C(\Delta_p)$ where $(p^2,p)$ is the standard representation of an ideal of norm $p^2$
• Set $F=\langle f \rangle$

My question is :

• How to get that cyclic subgroup $F$?

I have been looking at AbelianGroup and ClassGroup in Sage but I am not quite understanding how to use these to actually get what I want.

Any help in this matter would be greatly appreciated.

edit retag close merge delete

( 2017-07-09 03:30:08 -0600 )edit

Let us see if your notation matches the guess of my sage and number theory impressions. The following code initializes the imaginary quadratic number field of discriminant $-pq$, $p$ prime. (And $q$ too in my case.)

sage: p = 17
sage: q = 23
sage: DK = -p*q
sage: DK
-391

We initialize the quadratic field with the above discriminant and some order...

sage: K.<a> = QuadraticField( DK )
sage: K.discriminant()
-391
sage: Order = K.order( p*a )
sage: Order.discriminant().factor()
-1 * 2^2 * 17^3 * 23
sage: p
17
sage: Order.discriminant() == 4 * p^2 * DK
True

Well, we've got some factor four. If you do not expect it, please give us some explicit values for $p,q$.

Note: The class group is so far implemented only for the max order.

( 2017-07-09 06:20:18 -0600 )edit