read("/where/you/saved/the/file/abgrp20200120.gp")
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
\\ Example: Ideal Class Group I
K = bnfinit(y^2 + 2020);
ClK = ag_clgp_of( K );
K.gen
G = ag_G(ClK)
type(ag_G(ClK))
K.cyc
ag_DG(ClK)
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
\\ Example: Ideal Class Group II
K = bnfinit(y^2 + 2020);
ClK = ag_clgp_of( K );
G = ag_G(ClK)
ag_id(ClK)
ag_funmul(ClK)
ag_mul(ClK, G[1,1], G[1,2])
elt = ag_mul(ClK, ag_pow(ClK, G[1,1], 23), ag_pow(ClK, G[1,2], -1));
ag_dlg(ClK, elt)
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
\\ Example: kernel of relative norm
K0 = bnfinit(z^2 + 584*z + 27508);
K0plus = bnrinit(K0, [1, [1, 1]], 1);
ClK0plus = ag_clgp_of( K0plus );
KoverK0 = rnfinit(K0, y^2 - z);
K = bnfinit(nfinit(KoverK0));
Km = bnrinit(K, m = 2, 1);
ClKm = ag_clgp_of( Km );
ag_DG(ClKm)
{ ker = agmor_kernel( ClKm, ClK0plus,
((x)->rnfidealnormrel(KoverK0, idealhnf(K, x))) )};
ker[1]
ker[2] == ClKm
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
\\ Example: SNF of subgroup
K0 = bnfinit(z^2 + 584*z + 27508);
K0plus = bnrinit(K0, [1, [1, 1]], 1);
ClK0plus = ag_clgp_of( K0plus );
KoverK0 = rnfinit(K0, y^2 - z);
K = bnfinit(nfinit(KoverK0));
Km = bnrinit(K, m = 2, 1);
ClKm = ag_clgp_of( Km );
ag_DG(ClKm)
{ ker = agmor_kernel( ClKm, ClK0plus,
((x)->rnfidealnormrel(KoverK0, idealhnf(K, x))) )};
kersnf = fag_snfofsubgrp(ker);
ag_DG(kersnf)
ag_DG(ClKm)
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
\\ ATTENTION: K0 is different from the previous slide.
\\ Example: $\calO_{K, 1 \mod \frakm}^\ast$
K0 = bnfinit(z^2 + 292*z + 14439);
K0plus = bnrinit(K0, [1, [1, 1]], 1);
ClK0plus = ag_clgp_of( K0plus );
KoverK0 = rnfinit(K0, y^2 - z);
K = bnfinit(nfinit(KoverK0));
OKstar = ag_OKstar_of(K);
OKmstar = ag_OKmstar_of(K, m = 2);
H_OKm1star = agmor_kernel(OKstar, OKmstar, ((x)->x) )[1];
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
\\ Example: $\frac{\calO_{K_0^+}^\times}{N_{K/K_0}\left(\calO_{K, 1 \mod m}^\times\right)}$
K0 = bnfinit(z^2 + 292*z + 14439);
K0plus = bnrinit(K0, [1, [1, 1]], 1);
ClK0plus = ag_clgp_of( K0plus );
KoverK0 = rnfinit(K0, y^2 - z);
K = bnfinit(nfinit(KoverK0));
OK0star = ag_OKstar_of(K0);
H_OK0plusstar = [2, 0; 0, 2];
H_relnorm_imageof_OK1star = [2, 0; 0, 6];
coker = ag_quogrp_oftwosubgroups(H_relnorm_imageof_OK1star, H_OK0plusstar, OK0star);
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\