Function: mfsymboleval
Section: modular_forms
C-Name: mfsymboleval
Prototype: GGDGb
Help: mfsymboleval(fs,path,{ga=id}): evaluation of the modular
symbol fs output by mfsymbol on the given path, where path is either a vector
[s1,s2] or an integral matrix [a,b;c,d] representing the path [a/c,b/d].
In both cases, s1 or s2 (or a/c or b/d) can also be elements of the upper
half-plane. The result is the polynomial equal to the integral between s1 and
s2 of (X-tau)^{k-2}F(tau). If ga in GL_2+(Q) is given, replace F by F|_k ga.
If the integral diverges, the result will be a rational function.
Doc: evaluation of the modular symbol $fs$ (corresponding to the modular
form $f$) output by \kbd{mfsymbol} on the given path \kbd{path}, where
\kbd{path} is either a vector $[s_1,s_2]$ or an integral matrix $[a,b;c,d]$
representing the path $[a/c,b/d]$. In both cases $s_1$ or $s_2$ (or $a/c$ or
$b/d$) can also be elements of the upper half-plane.
To avoid possibly lengthy \kbd{mfsymbol} computations, the program also
accepts $fs$ of the form \kbd{[mf,F]}, but in that case $s_1$ and $s_2$
are limited to \kbd{oo} and elements of the upper half-plane.
The result is the polynomial equal to
$\int_{s_1}^{s_2}(X-\tau)^{k-2}F(\tau)\,d\tau$, the integral being
computed along a geodesic joining $s_1$ and $s_2$. If \kbd{ga} in $GL_2^+(\Q)$
is given, replace $F$ by $F|_{k}\gamma$. Note that if the integral diverges,
the result will be a rational function.
If the field of definition $\Q(f)$ is larger than $\Q(\chi)$ then $f$ can be
embedded into $\C$ in $d=[\Q(f):\Q(\chi)]$ ways, in which case a vector of
the $d$ results is returned.
\bprog
? mf=mfinit([35,2],1);f=mfbasis(mf)[1];fs=mfsymbol(mf,f);
? mfsymboleval(fs,[0,oo])
%1 = 0.31404011074188471664161704390256378537*I
? mfsymboleval(fs,[1,3;2,5])
%2 = -0.1429696291... - 0.2619975641...*I
? mfsymboleval(fs,[I,2*I])
%3 = 0.00088969563028739893631700037491116258378*I
? E2=mfEk(2);E22=mflinear([E2,mfbd(E2,2)],[1,-2]);mf=mfinit(E22);
? E2S = mfsymbol(mf,E22);
? mfsymboleval(E2S,[0,1])
%6 = (-1.00000...*x^2 + 1.00000...*x - 0.50000...)/(x^2 - x)
@eprog
The rational function which is given in case the integral diverges is
easy to interpret. For instance:
\bprog
? E4=mfEk(4);mf=mfinit(E4);ES=mfsymbol(mf,E4);
? mfsymboleval(ES,[I,oo])
%2 = 1/3*x^3 - 0.928067...*I*x^2 - 0.833333...*x + 0.234978...*I
? mfsymboleval(ES,[0,I])
%3 = (-0.234978...*I*x^3 - 0.833333...*x^2 + 0.928067...*I*x + 0.333333...)/x
@eprog\noindent
\kbd{mfsymboleval(ES,[a,oo])} is the limit as $T\to\infty$ of
$$\int_a^{iT}(X-\tau)^{k-2}F(\tau)\,d\tau + a(0)(X-iT)^{k-1}/(k-1)\;,$$
where $a(0)$ is the $0$th coefficient of $F$ at infinity. Similarly,
\kbd{mfsymboleval(ES,[0,a])} is the limit as $T\to\infty$ of
$$\int_{i/T}^a(X-\tau)^{k-2}F(\tau)\,d\tau+b(0)(1+iTX)^{k-1}/(k-1)\;,$$
where $b(0)$ is the $0$th coefficient of $F|_{k} S$ at infinity.