# Modular Symbols with Character & Manin Symbols

1) Let $f= q + aq^2 + (a^3 + \frac{1}{2}a^2 +2)q^3 + a^2q^4 + O(5)$ be the level 28, weight 2 newform where $a$ satisfies $x^4 + 2x^3 + 2x^2 + 4x +4$. This modular form has an associated Dirichlet character (which we'll call eps) of conductor 28 mapping $15 \mapsto -1$ and $17 \mapsto (-\frac{1}{2}a^3 - \frac{1}{2}a^2 - a -1)$.

I want to create the space of Modular Symbols

ModularSymbols(eps,2,1)

When I attempt to do so, I receive this error:

TypeError: No compatible natural embeddings found for Complex Lazy Field and Number Field in a2 with defining polynomial x^4 + 2x^3 + 2x^2 + 4*x + 4

What's going on here? For many Dirichlet characters, the Modular Symbol space is created just fine. What's breaking in this case?

2) As a secondary question, is there any way to create the space of modular symbols

MS=f.modular_symbols()

in such a way that MS has a manin symbol list?

edit retag close merge delete

Can't help with the modular symbols, but the TypeError looks like ModularSymbols wants you to fix an embedding of your number field into the complex numbers. Try creating your number field like this: K. = NumberField(x^4+2*x^3+2*x^2+4*x+4, embedding = CDF(0.3 - 1.3*i)) this will take the embedding that maps the generator a to the root of the defining polynomial that lies closest to the value embedding.

Hi Daniels, Thanks for the suggestion! Unfortunately, I need to work with these algebraic objects with complete precision, so taking approximations like that won't work for me.

Hi. Please note that specifying an embedding in such a way does not necessarily imply that your computations will be inexact. By default a NumberField in sage is just an abstract quotient of a polynomial ring. By choosing one of the finitely many embeddings you allow sage e.g. to perform coercions between elements of different number fields. This seems to be happening here: The ModularSymbols code wants to convert an element of your number field to an element in a cylotomic field, but to do this in a canonical fashion an embedding into the complex numbers has to be selected. (Cyclotomic fields of order n by default use the embedding mapping their generator zeta to exp(2*pi*i/n) ). All computations in this coercion are exact.

Sort by » oldest newest most voted

The character is determined by the two values on (the classes of) $15$ and $17$. The first element has a clear image, the second one...

sage: R.<X> = QQ[]
sage: K.<a> = NumberField( X^4 + 2*X^3 + 2*X^2 + 4*X + 4 )
sage: b = ( -a^3/2 - a^2/2 - a - 1 )
sage: b.minpoly()
x^2 - x + 1
sage: b^3
-1
sage: b^6
1


goes to a primitive 6th root of unity. This is enough to identify the character, up to conjugation. The following code creates one of the two spaces of modular symbols related to the question:

sage: D28 = DirichletGroup( 28 )
sage: D28.order()
12

sage: D28.0
Dirichlet character modulo 28 of conductor 4 mapping 15 |--> -1, 17 |--> 1
sage: D28.1
Dirichlet character modulo 28 of conductor 7 mapping 15 |--> 1, 17 |--> zeta6
sage: ch = D28.0 * D28.1
sage: ch
Dirichlet character modulo 28 of conductor 28 mapping 15 |--> -1, 17 |--> zeta6

sage: MS = ModularSymbols( ch, 2, 1 )
sage: MS
Modular Symbols space of dimension 4 and level 28, weight 2, character [-1, zeta6], sign 1, over Cyclotomic Field of order 6 and degree 2

more