Пример #1
0
 def test_x5_mul(self):
     x5 = x5__with_prec(5)
     x10 = x10_with_prec(4)
     es4 = eisenstein_series_degree2(4, 5)
     self.assertEqual(x10, x5 ** 2)
     self.assertEqual(x10 * x5, x5 ** 3)
     self.assertEqual(x5 * es4, es4 * x5)
     self.assertEqual((x5 + x5 * es4) * x5, x10 + x10 * es4)
Пример #2
0
    def test_vector_valued_rankin_cohen(self):
        prec = 5
        M4_10 = vvld_smfs(4, 10, prec)
        f4_10 = M4_10.basis()[0]
        f4_15 = vvld_smfs(4, 15, prec).basis()[0]
        e4 = eisenstein_series_degree2(4, prec)
        g4_15 = vector_valued_rankin_cohen(e4, f4_10)
        t = ((1, 1, 1), 0)
        self.assertEqual(f4_15 * g4_15[t], g4_15 * f4_15[t])

        es4, es6, _, _, _ = degree2_modular_forms_ring_level1_gens(5)
        f = es6
        x5 = x5__with_prec(5)
        f_even_sym2 = rankin_cohen_pair_sym(2, f, x5)
        f_odd_sym2 = vector_valued_rankin_cohen(es4 * x5, f_even_sym2)
        a = f_odd_sym2[(1, 0, 2)].vec[1]
        g_sym2_21 = vvld_smfs(2, 21, 4).basis()[0]
        b = g_sym2_21[(1, 0, 2)].vec[1]
        self.assertEqual(f_odd_sym2 * b, g_sym2_21 * a)
Пример #3
0
 def test_x5(self):
     d = load_from_data_dir("x5_fc_dct.sobj", "eigen_forms")
     self.assertEqual(d, x5__with_prec(10).fc_dct)
Пример #4
0
 def calc_form(self, prec):
     es4, es6, x10, x12, x35 = degree2_modular_forms_ring_level1_gens(prec)
     x5 = x5__with_prec(prec)
     d = {4: es4, 6: es6, 10: x10, 12: x12, 5: x5, 35: x35}
     return self._calc_from_gens_dict(d)