L = lfuncreate(1); \\ '1' = Riemann zeta function lfun(L, 2) lfunzeros(L,30) \pb 32 L = lfuninit(L, [1/2, 0, 30]); ploth(t = 0, 30, lfunhardy(L,t)) \\\\\\\\\\\\\\\\\ L = lfuncreate('x^3-2); \\ Q(2^(1/3)) lfun(L, 2) lfunzeros(L,30) \ pb 32 L = lfuninit(L, [1/2, 0, 30]); ploth(t = 0, 30, lfunhardy(L,t)) \\\\\\\\\\\\\\\\\ E = ellinit([0,0,1,-7,6]); L = lfuncreate(E); \\ L(E,s) lfun(L, 1) lfun(E, 1) lfun(L, 1, 1)\\ L' lfun(L, 1, 2)\\ 2nd derivative lfun(L, 1, 3)\\ 3rd derivative ellanalyticrank(E) lfunzeros(L,30) \ pb 32 Lbad = lfuninit(L, [1/2, 0, 30]); \\ BUG !!! ploth(t = 0, 30, lfunhardy(Lbad,t)) L = lfuninit(L, [1, 0, 30]); \\ Better ploth(t = 0, 30, lfunhardy(L,t)) \\\\\\\\\\\\\\\\\ G = idealstar(, 100); G.cyc chi = [2,0]; \\ in terms of SNF gens. m = znconreyexp(G, chi) c = znconreylog(G, m) s = ideallog(, m, G) znconreylog(G, chi) znconreychar(G, m) znconreychar(G, c) \\ Bad input ! znconreychar(G, s) \\ OK \\\\\\\\\\\\\\\\\ N = 100; G = idealstar(, N); \\ (Z/100Z)^* G.cyc chi = [2, 0] L = lfuncreate([G, chi]); znconreyconductor(G, chi) \\ not primitive ! lfun(L, 1) lfunlambda(L, 1) lfuntheta(L, 1) N = znconreyconductor(G, chi, \&chi0) G0 = idealstar(,N); \\\\\\\\\\\\\\\\\ K = bnfinit(x^3-7); G = bnrinit(K, [11, [1]]); G.cyc chi = [1] L = lfuncreate([G, chi]); lfun(L, 0) L = lfuninit(L, [1/2,1/2,30]); lfun(L, 0) lfun(L, 1) lfunzeros(L,30) ploth(t = 0, 30, lfunhardy(L,t))