예제 #1
0
    def test_wt_20_eigen(self):
        N20 = KlingenEisensteinAndCuspForms(20)
        pl = N20.hecke_charpoly(2)
        x = pl.parent().gens()[0]
        pl1 = ((x + Integer(840960)) *
               (x ** Integer(2) - Integer(1378464) * x + Integer(328189501440)))
        self.assertTrue(pl == (x - Integer(119538120)) * pl1)

        x = var("x")

        f20_1 = N20.eigenform_with_eigenvalue_t2(alpha20_1)
        f20_2 = N20.eigenform_with_eigenvalue_t2(alpha20_2)
        f20_3 = N20.eigenform_with_eigenvalue_t2(alpha20_3)

        l = [f20_1, f20_2, f20_3]

        l = [f.normalize(f[(1, 1, 1)]) for f in l]

        cons20[-1] = coerce_pol(cons20[-1], alpha20_3.parent())
        self.assertTrue(cons20 == [f._construction for f in l])
        self.assertTrue(all(polynomial_to_form(c, 4) == f
                            for c, f in zip(cons20, l)))

        dcts = [f20_1_dct, f20_2_dct, f20_3_dct]

        self.assertTrue(all(coerce_dict(d, f.base_ring) == f.fc_dct for d, f in zip(dcts, l)))
예제 #2
0
 def save_load_basis(self, wt):
     KS = KlingenEisensteinAndCuspForms(wt, 10)
     basis = KS.basis()
     KS.save_basis_as_binary("/tmp/basis_test.sobj")
     KS = KlingenEisensteinAndCuspForms(wt, 10)
     KS.load_basis_from("/tmp/basis_test.sobj")
     lbasis = KS.basis()
     dim = KS.dimension()
     self.assertTrue(all([lbasis[i].fc_dct == basis[i].fc_dct
                          for i in range(dim)]))
예제 #3
0
    def test_wt_47_eigen(self):
        KS47 = KlingenEisensteinAndCuspForms(47)
        lambda2 = (-ZZ(957874176) / ZZ(13) * a47 ** 2 - ZZ(818321817600) / ZZ(13) * a47 -
                   ZZ(34324755775488))
        x47 = KS47.eigenform_with_eigenvalue_t2(lambda2)
        x47 = x47.normalize(x47[(2, -1, 3)])
        _const47 = coerce_pol(cons47[0], a47.parent())
        self.assertTrue(_const47 == x47._construction)
        self.assertTrue(polynomial_to_form(_const47, x47.prec) == x47)

        _x47_fc_dct = coerce_dict(x47_fc_dct, a47.parent())
        self.assertTrue(x47.fc_dct == _x47_fc_dct)

        S47 = CuspFormsDegree2(47)
        x47 = S47.eigenform_with_eigenvalue_t2(lambda2)
        x47 = x47.normalize(x47[(2, -1, 3)])
        self.assertTrue(_const47 == x47._construction)

        self.assertTrue(x47.fc_dct == _x47_fc_dct)