Via jupytext this file can be shown as a jupyter notebook.

In [1]:
)cd ..
)read input/jfricas-test-support.input )quiet
The current FriCAS default directory is /home/hemmecke/backup/git/qeta 
All user variables and function definitions have been cleared.
All )browse facility databases have been cleared.
Internally cached functions and constructors have been cleared.
 )clear completely is finished.
The current FriCAS default directory is /home/hemmecke/backup/git/qeta/tmp 
In [ ]:
)set output algebra on
)set output formatted off

Problem formulation¶

Let $p(n)$ denote the number of partitions of the natural number $n$. Show that for every natural number $k$ the expression $p(11k+6)$ is divisible by 11.

The solution is described in the article (http://www.sciencedirect.com/science/article/pii/S0747717117300147):

@Article{Hemmecke_DancingSambaRamanujan_2018,
  author =       {Ralf Hemmecke},
  title =        {Dancing Samba with {R}amanujan Partition
                  Congruences},
  journal =      {Journal of Symbolic Computation,
  year =         2018,
  JournalUrl =   {http://www.sciencedirect.com/science/journal/07477171},
  URL =          {http://www.sciencedirect.com/science/article/pii/S0747717117300147},
  DOI =          {10.1016/j.jsc.2017.02.001},
  volume =       {84},
  pages =        {14--24},
  ISSN =         {0747-7171},
  keywords =     {Partition identities, Number theoretic algorithm,
                  Subalgebra basis},
  abstract =     {The article presents an algorithm to compute a
                  $C[t]$-module basis $G$ for a given subalgebra $A$
                  over a polynomial ring $R=C[x]$ with a Euclidean
                  domain $C$ as the domain of coefficients and $t$ a
                  given element of $A$. The reduction modulo $G$
                  allows a subalgebra membership test. The algorithm
                  also works for more general rings $R$, in particular
                  for a ring $R\subset C((q))$ with the property that
                  $f\in R$ is zero if and only if the order of $f$ is
                  positive. As an application, we algorithmically
                  derive an explicit identity (in terms of quotients
                  of Dedekind eta-functions and Klein's
                  $j$-invariant) that shows that $p(11n+6)$ is
                  divisible by 11 for every natural number $n$ where
                  $p(n)$ denotes the number of partitions of $n$.}
 }

The article is also available as RISC report 16-06.

Explanation of the session¶

Let X be an algebra that can be used with the algorithm samba, but which has a polynomial attached to record the operations that have been done with the original element. This somehow simulates a similar idea as attaching a unit matrix to a matrix and then computing the row echelon form of the matrix. The unit matrix turns into the transformation matrix.

Since we want to show divisibility by 11 of $p(11k+6)$ for every $k$ where $p$ is the partition function, the main computation is done with a coefficient ring $C=\mathbb{Z}_{(11)}$ being integers localized at 11, i.e. rational numbers that have no denominator divisible by 11.

In [2]:
-------------------------------------------------------------------
--setup
-------------------------------------------------------------------
In [3]:
C ==> IntegerLocalizedAtPrime 11
L ==> A1 C
X ==> X1 C
ORBIT ==> modularOrbit $ QMOD0
In [4]:
PolC ==> Pol C; LC ==> A1 C
PolZ ==> Pol ZZ; LZZ ==> A1 ZZ
PolQ ==> Pol QQ; LQQ ==> A1 QQ
In [5]:
smaller11(x: PolC, y: PolC):Boolean == _
  exponent leadingCoefficient x < exponent leadingCoefficient y
smallerT(x: PolC, y: PolC):Boolean == degree(x, 'T) < degree(y, 'T)
Function declaration smaller11 : (Polynomial(IntegerLocalizedAtPrime(11)), 
Polynomial(IntegerLocalizedAtPrime(11))) -> Boolean has been added to 
workspace.
Function declaration smallerT : (Polynomial(IntegerLocalizedAtPrime(11)), 
Polynomial(IntegerLocalizedAtPrime(11))) -> Boolean has been added to 
workspace.
In [6]:
)set mess type on
)set mess time on
In [7]:
-------------------------------------------------------------------
--endsetup
-------------------------------------------------------------------

Relations in terms of the $M_i$'s¶

In [8]:
-------------------------------------------------------------------
--test:Hemmecke
-------------------------------------------------------------------

The generators of the eta-quotients of level 22 are given by these exponents for the eta-functions (with arguments being the divisors of 22). The variable rgens corresponds to the generators of $R^\infty(22)$.

In [9]:
nn := 22;
idxs := etaFunctionIndices nn
mspecs := mSPECSInfM0(nn, idxs);
rgensExpected: List List ZZ := [_
    [- 4, 8, 4, - 8], [- 1, 1, 11, - 11], [7, - 3, 3, - 7],_
    [- 2, 6, 6, - 10], [0, 4, 8, - 12], [2, 2, 10, - 14], [4, 0, 12, - 16]];
rgens := [pureExponents x for x in mspecs]
assertEquals(rgens, rgensExpected)
Out[9]:
PositiveInteger
Time: 0 sec
Out[9]:
\[ \left[\left[1\right], \left[2\right], \left[11\right], \left[22\right]\right] \]
List(List(Integer))
Time: 0.01 (OT) = 0.01 sec
Out[9]:
List(QEtaSpecification)
Time: 0.01 (EV) + 0.02 (OT) = 0.03 sec
Out[9]:
List(List(Integer))
Time: 0 sec
Out[9]:
\[ \left[\left[-4, 8, 4, -8\right], \left[-1, 1, 11, -11\right], \left[7, -3, 3, -7\right], \left[-2, 6, 6, -10\right], \left[0, 4, 8, -12\right], \left[2, 2, 10, -14\right], \left[4, 0, 12, -16\right]\right] \]
List(List(Integer))
Time: 0 sec
Out[9]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [10]:
eqgensZ := [specEQI(ZZ)(b) for b in mspecs]
assertEquals(removeDuplicates [one? denom eulerExponent x for x in eqgensZ], [true])
Out[10]:
\[ \left[{q}^{-5}\, \left(1+4\, q+6\, {q}^{2}+8\, {q}^{3}+13\, {q}^{4}+12\, {q}^{5}+14\, {q}^{6}+24\, {q}^{7}+18\, {q}^{8}+20\, {q}^{9}+32\, {q}^{10}+O\left({q}^{11}\right)\right), {q}^{-5}\, \left(1+q+{q}^{2}+2\, {q}^{3}+2\, {q}^{4}+3\, {q}^{5}+4\, {q}^{6}+5\, {q}^{7}+6\, {q}^{8}+8\, {q}^{9}+10\, {q}^{10}+O\left({q}^{11}\right)\right), {q}^{-5}\, \left(1-7\, q+17\, {q}^{2}-14\, {q}^{3}+2\, {q}^{4}-21\, {q}^{5}+36\, {q}^{6}+13\, {q}^{7}-26\, {q}^{8}-24\, {q}^{9}+10\, {q}^{10}+O\left({q}^{11}\right)\right), {q}^{-6}\, \left(1+2\, q-{q}^{2}-2\, {q}^{3}-{q}^{4}-6\, {q}^{5}+4\, {q}^{7}-5\, {q}^{8}+4\, {q}^{9}+6\, {q}^{10}+O\left({q}^{11}\right)\right), {q}^{-7}\, \left(1-4\, {q}^{2}+2\, {q}^{4}+8\, {q}^{6}-5\, {q}^{8}-4\, {q}^{10}+O\left({q}^{11}\right)\right), {q}^{-8}\, \left(1-2\, q-3\, {q}^{2}+6\, {q}^{3}+2\, {q}^{4}-{q}^{6}-10\, {q}^{7}-2\, {q}^{9}+10\, {q}^{10}+O\left({q}^{11}\right)\right), {q}^{-9}\, \left(1-4\, q+2\, {q}^{2}+8\, {q}^{3}-5\, {q}^{4}-4\, {q}^{5}-10\, {q}^{6}+8\, {q}^{7}+9\, {q}^{8}+14\, {q}^{10}+O\left({q}^{11}\right)\right)\right] \]
List(EtaQuotientQSeriesInfinity(Integer))
Time: 0.02 (OT) = 0.03 sec
Out[10]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [11]:
egensZ := [expansion x for x in eqgensZ];
rfegensZ := [_
  (12*q^5+13*q^4+8*q^3+6*q^2+4*q+1)/q^5,_
  (3*q^5+2*q^4+2*q^3+q^2+q+1)/q^5,_
  (-21*q^5+2*q^4-14*q^3+17*q^2-7*q+1)/q^5,_
  (-6*q^5-q^4-2*q^3-q^2+2*q+1)/q^6,_
  (8*q^6+2*q^4-4*q^2+1)/q^7,_
  (-10*q^7-q^6+2*q^4+6*q^3-3*q^2-2*q+1)/q^8,_
  (9*q^8+8*q^7-10*q^6-4*q^5-5*q^4+8*q^3+2*q^2-4*q+1)/q^9];
assertEquals([rationalFunction(x, 0) for x in egensZ], rfegensZ)
Out[11]:
List(QEtaLaurentSeries(Integer))
Time: 0 sec
Out[11]:
List(Fraction(Polynomial(Integer)))
Time: 0.01 (OT) = 0.02 sec
Out[11]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [12]:
egens := [specM0A1(C)(x) for x in mspecs];
assertEquals([qetaGrade x for x in egens], [5, 5, 5, 6, 7, 8, 9])
Out[12]:
List(ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)))
Time: 0 sec
Out[12]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [13]:
msyms := indexedSymbols("M", #egens)
assertEquals(msyms, [M1, M2, M3, M4, M5, M6, M7])
Out[13]:
\[ \left[M1, M2, M3, M4, M5, M6, M7\right] \]
List(Symbol)
Time: 0 sec
Out[13]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [14]:
xgens := [toX1(C, x, s) for x in egens for s in msyms]; -- List X
Out[14]:
List(QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11)))))
Time: 0 sec

We take a minimal (in terms the order in $q$) element from the generators and make it special. Then we compute an algebra basis for $C[M_1,\ldots,M_7]$.

19-Feb-2020: Interestingly, it does not work for the element corresponding to $[- 1, 1, 11, - 11]$. We choose the vector corresponding to $[- 4, 8, 4, - 8]$.

In [15]:
xab := samba(xgens)$QSAMBA(C,X1,QTOPRED)
-- numOfGaps:=[216, -1]
-- numOfGaps:=[216, -1]
-- numOfGaps:=[162, -1]
-- numOfGaps:=[162, -1]
-- numOfGaps:=[109, -1]
-- numOfGaps:=[109, -1]
-- numOfGaps:=[56, -1]
-- numOfGaps:=[56, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
Out[15]:
\[ \left[mul=\left[{q}^{-5}+4\, {q}^{-4}+6\, {q}^{-3}+8\, {q}^{-2}+13\, {q}^{-1}+12+14\, q+24\, {q}^{2}+18\, {q}^{3}+20\, {q}^{4}+32\, {q}^{5}+O\left({q}^{6}\right), M1\right], be=\texttt{table}\left(4=\left[\left[{q}^{-4}+\frac{5}{3}\, {q}^{-3}+2\, {q}^{-2}+11\, \frac{1}{3}\, {q}^{-1}+3+\frac{10}{3}\, q+\frac{19}{3}\, {q}^{2}+4\, {q}^{3}+4\, {q}^{4}+11\, \frac{2}{3}\, {q}^{5}+\frac{19}{3}\, {q}^{6}+O\left({q}^{7}\right), -\frac{1}{3}\, M2+\frac{1}{3}\, M1\right]\right], 3=\left[\left[11\, {q}^{-3}+11\, {q}^{-1}+11\, 2\, q+11\, 2\, {q}^{2}+11\, 2\, {q}^{5}+11\, 2\, {q}^{6}+11\, {q}^{7}+O\left({q}^{8}\right), \frac{3}{8}\, M3+11\, \left(-\frac{1}{8}\right)\, M2+M1\right], \left[{q}^{-8}-2\, {q}^{-7}-3\, {q}^{-6}+6\, {q}^{-5}+2\, {q}^{-4}-{q}^{-2}-10\, {q}^{-1}-2\, q+10\, {q}^{2}+O\left({q}^{3}\right), M6\right]\right], 2=\left[\left[{q}^{-7}-4\, {q}^{-5}+2\, {q}^{-3}+8\, {q}^{-1}-5\, q-4\, {q}^{3}+O\left({q}^{4}\right), M5\right]\right], 1=\left[\left[{q}^{-6}+2\, {q}^{-5}-{q}^{-4}-2\, {q}^{-3}-{q}^{-2}-6\, {q}^{-1}+4\, q-5\, {q}^{2}+4\, {q}^{3}+6\, {q}^{4}+O\left({q}^{5}\right), M4\right]\right]\right)\right] \]
QEtaAlgebraBasis(QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11)))))
Time: 0.01 (EV) + 0.01 (OT) = 0.03 sec

Due to another critical element selection strategy, the resulting polynomial is a bit different.

In [16]:
bas := sort(smallerGrade?, basis xab);
xabExpectedArticle := [1/128*M7-5/128*M6+21/128*M5_
  +(-1/1024*M1+11*213/1024)*M4-85/128*M3+1/1024*M1^2+505/1024*M1,_
  1/8*M4-1/8*M1, M3, M5, M6] -- LPol C
xabExpected := [3/8*M3+11*(-1/8)*M2+M1, -1/3*M2+1/3*M1, M4, M5, M6]
assertEquals([x1Pol(C,x) for x in bas], xabExpected)
assertEquals(# bas, 5)
Compiling function smallerGrade? with type (QEtaExtendedAlgebra(
IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(
IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),
Polynomial(IntegerLocalizedAtPrime(11)))), QEtaExtendedAlgebra(
IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(
IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),
Polynomial(IntegerLocalizedAtPrime(11))))) -> Boolean 
Out[16]:
List(QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11)))))
Time: 0 sec
Out[16]:
\[ \left[\frac{1}{128}\, M7-\frac{5}{128}\, M6+\frac{21}{128}\, M5+\left(-\frac{1}{1024}\, M1+\frac{2343}{1024}\right)\, M4-\frac{85}{128}\, M3+\frac{1}{1024}\, {M1}^{2}+\frac{505}{1024}\, M1, \frac{1}{8}\, M4-\frac{1}{8}\, M1, M3, M5, M6\right] \]
List(Polynomial(Fraction(Integer)))
Time: 0.01 sec
Out[16]:
\[ \left[\frac{3}{8}\, M3-\frac{11}{8}\, M2+M1, -\frac{1}{3}\, M2+\frac{1}{3}\, M1, M4, M5, M6\right] \]
List(Polynomial(Fraction(Integer)))
Time: 0 sec
Out[16]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
Out[16]:
\[ \texttt{true} \]
Boolean
Time: 0 sec

Relation for divisibility of $p(11k+6)$ by 11¶

Let's first define $F$ as on top of page 30 of \cite{Radu_RamanujanKolberg_2015}, i.e. $$ F(\tau) = q^{\frac{13}{24}} \frac{\eta(\tau)^{10}\eta(2\tau)^2\eta(11\tau)^{11}} {\eta(22\tau)^{22}} \sum_{k=0}^{\infty}p(11k+6)q^k $$

First we define the partion series.

In [17]:
ps := partitionSeries(1)$QFunctions(ZZ, LZZ) --: LZZ
Out[17]:
\[ 1+q+2\, {q}^{2}+3\, {q}^{3}+5\, {q}^{4}+7\, {q}^{5}+11\, {q}^{6}+15\, {q}^{7}+22\, {q}^{8}+30\, {q}^{9}+42\, {q}^{10}+O\left({q}^{11}\right) \]
ModularFunctionQSeriesInfinity(Integer)
Time: 0 sec

Then we select the sub-series given by the (11n+6)-th term.

In [18]:
r11 := choose(11, 6, ps) --: LZZ
r11Expected := _
  1188908248*q^10+342325709*q^9+92669720*q^8+23338469*q^7+5392783*q^6_
  +1121505*q^5+204226*q^4+31185*q^3+3718*q^2+297*q+11 --: Fraction PolZ
assertEquals(rationalFunction(r11, 10), r11Expected)
Out[18]:
\[ 11+297\, q+3718\, {q}^{2}+31185\, {q}^{3}+204226\, {q}^{4}+1121505\, {q}^{5}+5392783\, {q}^{6}+23338469\, {q}^{7}+92669720\, {q}^{8}+342325709\, {q}^{9}+1188908248\, {q}^{10}+O\left({q}^{11}\right) \]
ModularFunctionQSeriesInfinity(Integer)
Time: 0 sec
Out[18]:
\[ 1188908248\, {q}^{10}+342325709\, {q}^{9}+92669720\, {q}^{8}+23338469\, {q}^{7}+5392783\, {q}^{6}+1121505\, {q}^{5}+204226\, {q}^{4}+31185\, {q}^{3}+3718\, {q}^{2}+297\, q+11 \]
Polynomial(Integer)
Time: 0 sec
Out[18]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [19]:
rspec := eqSPEC(1,[-1]); nn := 22; m := 11; t := 6;
sspec := cofactInfM0(nn, idxs, rspec, m, t)
assertEquals(sspec, eqSPEC(nn,[10,2,11,-22]))
Out[19]:
PositiveInteger
Time: 0 sec
-- == z:=[zinhom=[], zhom=[], zfree=[]]
-- >= z:=[zinhom=[[4, -1, 1], [5, -1, 2], [4, -1, 2]], zhom=[[3, -1, 0], [4, -1, 1], [1, -1, 1], [2, -1, 1], [3, -1, 1], [0, -1, 1], [2, 0, 1]], zfree=[]]
Out[19]:
\[ \left[\left[1, 10\right], \left[2, 2\right], \left[11, 11\right], \left[22, -22\right]\right] \]
QEtaSpecification
Time: 0.07 (EV) + 0.02 (OT) = 0.09 sec
Out[19]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [20]:
fZ := specM0A1(ZZ)(sspec,rspec,m,t)
fZExpected := _
  1272909*q^14+944328*q^13+689282*q^12+485254*q^11+327415*q^10+214500*q^9+_
  135608*q^8+79211*q^7+44396*q^6+22286*q^5+10164*q^4+3696*q^3+1111*q^2+187*q+11
  --: PolZ
assertEquals(numer rationalFunction(fZ, 0), fZExpected)
assertEquals(qetaGrade fZ, 14)
Out[20]:
\[ 11\, {q}^{-14}+187\, {q}^{-13}+1111\, {q}^{-12}+3696\, {q}^{-11}+10164\, {q}^{-10}+22286\, {q}^{-9}+44396\, {q}^{-8}+79211\, {q}^{-7}+135608\, {q}^{-6}+214500\, {q}^{-5}+327415\, {q}^{-4}+O\left({q}^{-3}\right) \]
ModularFunctionQSeriesInfinity(Integer)
Time: 0 sec
Out[20]:
\[ 1272909\, {q}^{14}+944328\, {q}^{13}+689282\, {q}^{12}+485254\, {q}^{11}+327415\, {q}^{10}+214500\, {q}^{9}+135608\, {q}^{8}+79211\, {q}^{7}+44396\, {q}^{6}+22286\, {q}^{5}+10164\, {q}^{4}+3696\, {q}^{3}+1111\, {q}^{2}+187\, q+11 \]
Polynomial(Integer)
Time: 0 sec
Out[20]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
Out[20]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [21]:
xf := toX1(C, specM0A1(C)(sspec,rspec,m,t), F) --: X
Out[21]:
\[ \left[11\, {q}^{-14}+11\, 17\, {q}^{-13}+11\, 101\, {q}^{-12}+11\, 336\, {q}^{-11}+{11}^{2}\, 84\, {q}^{-10}+11\, 2026\, {q}^{-9}+11\, 4036\, {q}^{-8}+11\, 7201\, {q}^{-7}+11\, 12328\, {q}^{-6}+11\, 19500\, {q}^{-5}+11\, 29765\, {q}^{-4}+O\left({q}^{-3}\right), F\right] \]
QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11))))
Time: 0 sec

Now we can reduce this element xf by the respective algebra basis, taking into account that xt=xgens.1 is our special $t$ that we used in the construction of the algebra basis of the eta-quotients of level 22.

As can be seen from the sorted monomials of the representaion, $F$ can be expressed as $F=11p(M_1,\ldots, M_7)$ where $p$ is a polynomial having coefficient denominators not divisible by 11.

In [22]:
xr := reduce(xf, xab)$QTOPRED(C,X1)
assertTrue(zero? xr)
Out[22]:
\[ \left[O\left({q}^{22}\right), \left(11\, M1+{11}^{3}\, 7\right)\, M5+\left(11\, 3\, M1+{11}^{3}\, 5\right)\, M4+\left(11\, \left(-\frac{1}{4}\right)\, {M1}^{2}+11\, \left(-\frac{245}{8}\right)\, M1+{11}^{3}\, \left(-\frac{1}{8}\right)\right)\, M3+\left(11\, \frac{5}{4}\, {M1}^{2}+{11}^{2}\, \left(-\frac{49}{8}\right)\, M1+{11}^{5}\, \frac{1}{8}\right)\, M2+11\, \left(-1\right)\, {M1}^{3}+11\, 3\, {M1}^{2}+{11}^{2}\, \left(-13\right)\, M1+F+{11}^{4}\, \left(-1\right)\right] \]
QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11))))
Time: 0.01 (OT) = 0.02 sec
Out[22]:
\[ \texttt{true} \]
Boolean
Time: 0 sec

Due to a different reduction strategy in a newer implementation of Samba, we don't get exactly the same result as in \cite{Hemmecke_DancingSambaRamanujan_2018}.

In [23]:
mxr := [(inv(unitPart leadingCoefficient x)::C)*x _
        for x in monomials(x1Pol(C,xr))]
mxrExpectedArticle := _
  [F, 11*M1^2, 11*M1^3, 11*M1*M3, 11*M1^2*M4, 11*M1*M5, 11^2*M1, 11^2*M3,_
  11^2*M1*M4, 11^2*M5, 11^2*M1*M6, 11^2*M6, 11^2*M7, 11^3, 11^3*M4]$LPol(C)
mxrExpected := _
  [F, 11*M1^2, 11*M1^3, 11*M1^2*M2, 11*M1*M3, 11*M1^2*M3, 11*M1*M4, _
  11*M1*M5, 11^2*M1, 11^2*M1*M2, 11^3*M3, 11^3*M4, 11^3*M5, 11^4, 11^5*M2]$LPol(C)
assertEquals(sort(smaller11, mxr), mxrExpected)
Out[23]:
\[ \left[11\, M1\, M5, {11}^{3}\, M5, 11\, M1\, M4, {11}^{3}\, M4, 11\, {M1}^{2}\, M3, 11\, M1\, M3, {11}^{3}\, M3, 11\, {M1}^{2}\, M2, {11}^{2}\, M1\, M2, {11}^{5}\, M2, 11\, {M1}^{3}, 11\, {M1}^{2}, {11}^{2}\, M1, F, {11}^{4}\right] \]
List(Polynomial(IntegerLocalizedAtPrime(11)))
Time: 0 sec
Out[23]:
\[ \left[F, 11\, {M1}^{2}, 11\, {M1}^{3}, 11\, M1\, M3, 11\, {M1}^{2}\, M4, 11\, M1\, M5, {11}^{2}\, M1, {11}^{2}\, M3, {11}^{2}\, M1\, M4, {11}^{2}\, M5, {11}^{2}\, M1\, M6, {11}^{2}\, M6, {11}^{2}\, M7, {11}^{3}, {11}^{3}\, M4\right] \]
List(Polynomial(IntegerLocalizedAtPrime(11)))
Time: 0.01 sec
Out[23]:
\[ \left[F, 11\, {M1}^{2}, 11\, {M1}^{3}, 11\, {M1}^{2}\, M2, 11\, M1\, M3, 11\, {M1}^{2}\, M3, 11\, M1\, M4, 11\, M1\, M5, {11}^{2}\, M1, {11}^{2}\, M1\, M2, {11}^{3}\, M3, {11}^{3}\, M4, {11}^{3}\, M5, {11}^{4}, {11}^{5}\, M2\right] \]
List(Polynomial(IntegerLocalizedAtPrime(11)))
Time: 0 sec
Compiling function smaller11 with type (Polynomial(IntegerLocalizedAtPrime(11
)), Polynomial(IntegerLocalizedAtPrime(11))) -> Boolean 
Out[23]:
\[ \texttt{true} \]
Boolean
Time: 0 sec

Let's normalize the leading coefficient of $F$ to 1.

In [24]:
xrq := x1Pol(C,xr);
cxfq := coefficient(xrq, 'F, 1)
lcxfq := leadingCoefficient cxfq
lcfxqArticle := -1/1360
assertEquals(lcxfq, 1)
ilcxfq := (inv lcxfq)::C
xrq := ilcxfq * xrq
xrqExpectedArticle := _
  (11^2*(-3068)*M7+(11^2*(-3)*M1+11^2*(-4236))*M6+(11*(-285)*M1_
  +11^2*(-5972))*M5+(11*(-1/8)*M1^2+11^2*(-4497/8)*M1+11^3*(-789/2))*M4_
  +(11*(-1867)*M1+11^2*(-2476))*M3+11*1/8*M1^3+11*1011/8*M1^2_
  +11^2*1647/2*M1+F+11^3*1360)$PolC
xrqExpected := (11*(_
  (M1+11^2*7)*M5 _
  +(3*M1+11^2*5)*M4 _
  +((-1/4)*M1^2 + (-245/8)*M1+11^2*(-1/8))*M3 _
  +(5/4*M1^2+11*(-49/8)*M1+11^4*1/8)*M2 _
  +(-1)*M1^3+3*M1^2+11*(-13)*M1+11^3*(-1)) _
  +F)$PolC
assertEquals(xrq, xrqExpected)
Out[24]:
Polynomial(IntegerLocalizedAtPrime(11))
Time: 0 sec
Out[24]:
\[ 1 \]
Polynomial(IntegerLocalizedAtPrime(11))
Time: 0 sec
Out[24]:
\[ 1 \]
IntegerLocalizedAtPrime(11)
Time: 0 sec
Out[24]:
\[ -\frac{1}{1360} \]
Fraction(Integer)
Time: 0 sec
Out[24]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
Out[24]:
\[ 1 \]
IntegerLocalizedAtPrime(11)
Time: 0 sec
Out[24]:
\[ \left(11\, M1+{11}^{3}\, 7\right)\, M5+\left(11\, 3\, M1+{11}^{3}\, 5\right)\, M4+\left(11\, \left(-\frac{1}{4}\right)\, {M1}^{2}+11\, \left(-\frac{245}{8}\right)\, M1+{11}^{3}\, \left(-\frac{1}{8}\right)\right)\, M3+\left(11\, \frac{5}{4}\, {M1}^{2}+{11}^{2}\, \left(-\frac{49}{8}\right)\, M1+{11}^{5}\, \frac{1}{8}\right)\, M2+11\, \left(-1\right)\, {M1}^{3}+11\, 3\, {M1}^{2}+{11}^{2}\, \left(-13\right)\, M1+F+{11}^{4}\, \left(-1\right) \]
Polynomial(IntegerLocalizedAtPrime(11))
Time: 0 sec
Out[24]:
\[ {11}^{2}\, \left(-3068\right)\, M7+\left({11}^{2}\, \left(-3\right)\, M1+{11}^{2}\, \left(-4236\right)\right)\, M6+\left(11\, \left(-285\right)\, M1+{11}^{2}\, \left(-5972\right)\right)\, M5+\left(11\, \left(-\frac{1}{8}\right)\, {M1}^{2}+{11}^{2}\, \left(-\frac{4497}{8}\right)\, M1+{11}^{3}\, \left(-\frac{789}{2}\right)\right)\, M4+\left(11\, \left(-1867\right)\, M1+{11}^{2}\, \left(-2476\right)\right)\, M3+11\, \frac{1}{8}\, {M1}^{3}+11\, \frac{1011}{8}\, {M1}^{2}+{11}^{2}\, \frac{1647}{2}\, M1+F+{11}^{3}\, 1360 \]
Polynomial(IntegerLocalizedAtPrime(11))
Time: 0.02 (IN) = 0.03 sec
Out[24]:
\[ \left(11\, M1+{11}^{3}\, 7\right)\, M5+\left(11\, 3\, M1+{11}^{3}\, 5\right)\, M4+\left(11\, \left(-\frac{1}{4}\right)\, {M1}^{2}+11\, \left(-\frac{245}{8}\right)\, M1+{11}^{3}\, \left(-\frac{1}{8}\right)\right)\, M3+\left(11\, \frac{5}{4}\, {M1}^{2}+{11}^{2}\, \left(-\frac{49}{8}\right)\, M1+{11}^{5}\, \frac{1}{8}\right)\, M2+11\, \left(-1\right)\, {M1}^{3}+11\, 3\, {M1}^{2}+{11}^{2}\, \left(-13\right)\, M1+F+{11}^{4}\, \left(-1\right) \]
Polynomial(IntegerLocalizedAtPrime(11))
Time: 0.01 sec
Out[24]:
\[ \texttt{true} \]
Boolean
Time: 0 sec

Let's plug in the original eta-quotients into xrq.

In [25]:
sers := cons(first xf, egens) --: List L
-- Note that after some changes to the sorting order in the
-- implementation, the old Mi correspond to other new Mi.
sersArticle:=cons(first xf, [egens.i for i in [3,1,4,2,5,6,7]])
ezArticle := eval(xrqExpectedArticle, c+->c::L, cons('F,msyms), sersArticle)_
      $ PolynomialEvaluation(C, L)
assertTrue(zero? ezArticle)
ez := eval(xrq, c+->c::L, cons('F,msyms), sers)_
      $ PolynomialEvaluation(C, L)
assertTrue(zero? ez)
Out[25]:
\[ \left[11\, {q}^{-14}+11\, 17\, {q}^{-13}+11\, 101\, {q}^{-12}+11\, 336\, {q}^{-11}+{11}^{2}\, 84\, {q}^{-10}+11\, 2026\, {q}^{-9}+11\, 4036\, {q}^{-8}+11\, 7201\, {q}^{-7}+11\, 12328\, {q}^{-6}+11\, 19500\, {q}^{-5}+11\, 29765\, {q}^{-4}+O\left({q}^{-3}\right), {q}^{-5}+4\, {q}^{-4}+6\, {q}^{-3}+8\, {q}^{-2}+13\, {q}^{-1}+12+14\, q+24\, {q}^{2}+18\, {q}^{3}+20\, {q}^{4}+32\, {q}^{5}+O\left({q}^{6}\right), {q}^{-5}+{q}^{-4}+{q}^{-3}+2\, {q}^{-2}+2\, {q}^{-1}+3+4\, q+5\, {q}^{2}+6\, {q}^{3}+8\, {q}^{4}+10\, {q}^{5}+O\left({q}^{6}\right), {q}^{-5}-7\, {q}^{-4}+17\, {q}^{-3}-14\, {q}^{-2}+2\, {q}^{-1}-21+36\, q+13\, {q}^{2}-26\, {q}^{3}-24\, {q}^{4}+10\, {q}^{5}+O\left({q}^{6}\right), {q}^{-6}+2\, {q}^{-5}-{q}^{-4}-2\, {q}^{-3}-{q}^{-2}-6\, {q}^{-1}+4\, q-5\, {q}^{2}+4\, {q}^{3}+6\, {q}^{4}+O\left({q}^{5}\right), {q}^{-7}-4\, {q}^{-5}+2\, {q}^{-3}+8\, {q}^{-1}-5\, q-4\, {q}^{3}+O\left({q}^{4}\right), {q}^{-8}-2\, {q}^{-7}-3\, {q}^{-6}+6\, {q}^{-5}+2\, {q}^{-4}-{q}^{-2}-10\, {q}^{-1}-2\, q+10\, {q}^{2}+O\left({q}^{3}\right), {q}^{-9}-4\, {q}^{-8}+2\, {q}^{-7}+8\, {q}^{-6}-5\, {q}^{-5}-4\, {q}^{-4}-10\, {q}^{-3}+8\, {q}^{-2}+9\, {q}^{-1}+14\, q+O\left({q}^{2}\right)\right] \]
List(ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)))
Time: 0 sec
Out[25]:
\[ \left[11\, {q}^{-14}+11\, 17\, {q}^{-13}+11\, 101\, {q}^{-12}+11\, 336\, {q}^{-11}+{11}^{2}\, 84\, {q}^{-10}+11\, 2026\, {q}^{-9}+11\, 4036\, {q}^{-8}+11\, 7201\, {q}^{-7}+11\, 12328\, {q}^{-6}+11\, 19500\, {q}^{-5}+11\, 29765\, {q}^{-4}+O\left({q}^{-3}\right), {q}^{-5}-7\, {q}^{-4}+17\, {q}^{-3}-14\, {q}^{-2}+2\, {q}^{-1}-21+36\, q+13\, {q}^{2}-26\, {q}^{3}-24\, {q}^{4}+10\, {q}^{5}+O\left({q}^{6}\right), {q}^{-5}+4\, {q}^{-4}+6\, {q}^{-3}+8\, {q}^{-2}+13\, {q}^{-1}+12+14\, q+24\, {q}^{2}+18\, {q}^{3}+20\, {q}^{4}+32\, {q}^{5}+O\left({q}^{6}\right), {q}^{-6}+2\, {q}^{-5}-{q}^{-4}-2\, {q}^{-3}-{q}^{-2}-6\, {q}^{-1}+4\, q-5\, {q}^{2}+4\, {q}^{3}+6\, {q}^{4}+O\left({q}^{5}\right), {q}^{-5}+{q}^{-4}+{q}^{-3}+2\, {q}^{-2}+2\, {q}^{-1}+3+4\, q+5\, {q}^{2}+6\, {q}^{3}+8\, {q}^{4}+10\, {q}^{5}+O\left({q}^{6}\right), {q}^{-7}-4\, {q}^{-5}+2\, {q}^{-3}+8\, {q}^{-1}-5\, q-4\, {q}^{3}+O\left({q}^{4}\right), {q}^{-8}-2\, {q}^{-7}-3\, {q}^{-6}+6\, {q}^{-5}+2\, {q}^{-4}-{q}^{-2}-10\, {q}^{-1}-2\, q+10\, {q}^{2}+O\left({q}^{3}\right), {q}^{-9}-4\, {q}^{-8}+2\, {q}^{-7}+8\, {q}^{-6}-5\, {q}^{-5}-4\, {q}^{-4}-10\, {q}^{-3}+8\, {q}^{-2}+9\, {q}^{-1}+14\, q+O\left({q}^{2}\right)\right] \]
List(ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)))
Time: 0 sec
Out[25]:
\[ O\left({q}^{6}\right) \]
ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11))
Time: 0 sec
Out[25]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
Out[25]:
\[ O\left({q}^{6}\right) \]
ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11))
Time: 0 sec
Out[25]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [26]:
-------------------------------------------------------------------
--endtest
-------------------------------------------------------------------

Checking modularity¶

In [27]:
-------------------------------------------------------------------
--test:modularity
-------------------------------------------------------------------

We are looking for an expression of $S=\sum_{k=0}^{\infty}p(11k+6)q^k$ in terms of Dedekind eta-functions.

Note that the partition series is (up to a factor of $q^{1/24}$) given by $\eta(\tau)^{-1}$. Thus for the divisors $\{1,11\}$ of $M=11$, that gives us the vector $s=(-1, 0)$. The cofactor exponent from the $F$ given at the beginning of the previous section is $r=(10,2,11,-22)$ and corresponds to the divisors $\{1,2,11,22\}$ of $N=22$.

The following function, checks whether all the data corresponding to $F$ from above indeed leads to a modular function for $\Gamma_0(22)$.

In [28]:
sspec := eqSPEC(22, [10,2,11,-22])
rspec := eqSPEC(1, [-1])
assertTrue(modular?(sspec,rspec,11,6)$QMOD0)
Out[28]:
\[ \left[\left[1, 10\right], \left[2, 2\right], \left[11, 11\right], \left[22, -22\right]\right] \]
QEtaSpecification
Time: 0 sec
Out[28]:
\[ \left[\left[1, -1\right]\right] \]
QEtaSpecification
Time: 0 sec
Out[28]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [29]:
-------------------------------------------------------------------
--endtest
-------------------------------------------------------------------

Express in Klein's J-invariant¶

In [ ]:
-----------------------------------------------------------------
--NONWORKING test:Klein
-----------------------------------------------------------------

The test is currently disabled, because for some reason it takes too long in newer versions (2.0) of QEta.

Let $$ U(v):=t^v q \prod_{n=1}^{\infty}(1-q^{11n})\sum_{k=0}^{\infty}p(11k+6)q^k. $$

Below, we show that $U(7)=11 t^2 h(t, j, j_p)$ where $j$, $j_p$, and $t$ are Laurent series with integer coefficients and $h$ is a polynomial with rational coefficients having no denominator that is divisible by 11. In other words, we can give a relation $z U(7) = 11 t^2 k(t, j, j_p)$ with an integer polynomial $k$ and an integer $z$ such that $\gcd(z,11)=1$.

We choose Klein's $j$-invariant (https://en.wikipedia.org/wiki/J-invariant#The_q-expansion_and_moonshine) expressed as a Laurent series in terms of $q = \exp(2\pi i \tau)$ as the series $j$ above.

The series $j_p$ is given by replacing $q$ by $q^{11}$ in $j$.

The series $t$ is given by $$ t = \left(\frac{\eta(\tau)}{\eta(11\tau)}\right)^{12} $$ (again in terms of $q = \exp(2\pi i \tau)$) where $\eta$ is Dedekind's eta-function (https://en.wikipedia.org/wiki/Dedekind_eta_function#Definition).

Construction of Klein's $j$-invariant¶

Klein's $j$-invariant can be given by the expression $$j(\tau) = E_4^3/\Delta$$ where $$\Delta=\frac{E_4^3-E_6^2}{1728}=\eta(\tau)^{24}$$ and the normalize Eisenstein series $E_4$ and $E_6$ are given by $$E_4=1+240 \sum_{n=1}^\infty \sigma_3(n)q^n$$ and $$E_6=1-504 \sum_{n=1}^\infty \sigma_5(n)q^n$$ where $q = \exp(2\pi i\tau)$ and $\sigma_k(n)$ denotes the sum of the $k$-th power of the positive divisors of $n$.

All the above are series with integers coefficients. For our computation, however, we compute with integers localized at the prime 11, i.e. these are rational numbers with denominators not divisible by 11.

The following function simply maps the integer coefficients of the series into the localized coefficient domain and eventually creates an object that attaches the indeterminate $J$ to the series.

In [ ]:
i := kleinJInvariant()$QFunctions(C, L); --: L
j := toX1(C, i, J); --: X
x1A1(C,j)
x1Pol(C,j)
In [ ]:
ip := multiplyExponents(i, 11)$L; --: L
jp := toX1(C, ip, Jp); --: X
x1A1(C,jp)
x1Pol(C,jp)

The series $t$¶

The value $t$ is given by $$t = \left(\frac{\eta(\tau)}{\eta(11\tau)}\right)^{12}$$ in terms of $q = \exp(2\pi i \tau)$.

In [ ]:
tt := specM0A1(C)(eqSPEC([[1,12],[11,-12]])); --: L
t := toX1(C, tt, T); --: X
x1A1(C,t)
x1Pol(C,t)

Construct elements suitable for the samba algorithm¶

In [ ]:
m1 := t; --: X

We need some auxiliary values $m_2$ and $m_3$.

In [ ]:
m2 := j*t^3; --: X
m3 := jp*t;  --: X

We want yet another value to end up in an algebra basis of orders -2 and -3.

We ignore this for now, because with the data that produces a relation among $F$, $J$, $J_p$, and $T$, the computation did not finish.

In [ ]:
m := jp; mp := j;
while (d := qetaGrade(m)$X) > 0 repeat (_
    c := qetaLeadingCoefficient(m)$X;_
    e := d::NN;_
    m := m-c*j^e;_
    mp := mp-c*jp^e)

mp

[-q^(-121)+O(q^(-110)),_
-Jp^11_
+11*744*Jp^10_
+11(-2570796)*Jp^9_
+11*4880620256*Jp^8_
+11*(-5550817150590)*Jp^7_
+11^2*351821430873072*Jp^6_
+11^2*(-147929969197380488)*Jp^5_
+11^2*35519316022933293120*Jp^4_
+11^2*(-4373015221856525734395)*Jp^3_
+11^2*224874476512864841450600*Jp^2_
+11^2*(-3096214928567780111700972)*Jp_
+J]
In [ ]:
mgens := [m1,m2,m3]

The algebra basis computation¶

Then we compute the algebra basis for the elements $t=m_1$, $m_2$, and $m_3$.

Since we compute in an extended algebra. The second component of each entry in the basis gives its expression in terms of the original generators.

In [ ]:
--approx. 75 seconds
ab := samba(mgens)$QSAMBA(C,X1,QTOPRED);
In [ ]:
assertEquals(# basis ab, 12)

Show the powers of 11 in the coefficients of the representation (in terms of J, Jp, T) of the algebra basis elements.

In [ ]:
pows := [[exponent(x) for x in coefficients second ab.n] for n in 2..#ab]
powsExpected := [_
  [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,_
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0,_
   1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1,_
   1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 2, 2, 3, 0, 0,_
   1, 1, 1, 0, 3, 3, 0, 0, 0, 3, 1, 3, 4, 4, 4, 5, 4, 6, 6, 6, 8, 8],_
  [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,_
   0, 0, 0, 0, 1, 0, 0, 2, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 1, 0,_
   0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 3, 2, 0, 1, 0, 1,_
   0, 2, 2, 3, 0, 1, 0, 1, 0, 3, 3, 1, 2, 3, 1, 3, 4, 1, 1, 1, 4, 4, 2, 2,_
   4, 4],_
  [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,_
   1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 2, 0, 0,_
   0, 0, 0, 2, 2, 0, 0, 2, 0, 2, 3, 0, 0, 0, 3, 4, 3, 4, 3],_
  [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1,_
   0, 2, 1, 1, 1, 1, 1, 1, 2, 3, 0, 2, 0, 3, 3, 1, 3, 1, 3, 3, 1, 1, 3, 3,_
   2, 2, 3],_
  [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,_
   0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 1, 0, 1, 2, 0, 0, 0, 0, 0, 2, 2, 2, 0, 1,_
   0, 1, 0, 2, 3, 0, 0, 3, 0, 3, 4, 1, 1, 1, 3, 3, 2, 2, 3],_
  [0, 0, 0],_
  [0],_
  [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 3, 2, 0, 2,_
   0, 2, 2, 0, 2, 0, 2, 2, 2, 2, 1, 1],_
  [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 2, 1, 0, 1, 0,_
   1, 1, 0, 0, 1, 1],_
  [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],_
  [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]$List(List NN)
assertEquals(pows, powsExpected)

The (absolute value of the) order and the power of 11 in the leading coefficient of the elements in the algebra basis.

In [ ]:
gl := [[qetaGrade i, unitCanonical qetaLeadingCoefficient i] for i in basis ab]
glExpected := [[7, 11^18], [8, 11^8], [9, 11^4], [11, 11^3],_
  [12, 11^3], [13, 11^3], [14, 1], [16, 1], [17, 11^2], [18, 11],_
  [11*2, 1], [23, 1]]$List(List C)
assertEquals(gl, glExpected)

We define $$ U(v):=t^v q \prod_{n=1}^{\infty}(1-q^{11n})\sum_{k=0}^{\infty}p(11k+6)q^k. $$

Let's do this step by step. We take the partition series.

In [ ]:
ps := partitionSeries(1)$QFunctions(ZZ, LZZ) --: LZZ

We also take the sub-series given by the (11n+6)-th term of ps as defined earlier. The coefficients of the series r11 we want to check for divisibility by 11.

In [ ]:
r11 := choose(11, 6, ps) --: LZZ

The following function simply maps the integer coefficients of the series into the localized coefficient domain or into the rational number domain Q.

In [ ]:
abfmap(A, B, f, x) ==> map(f, x)$QEtaLaurentSeriesFunctions2(A, B)
abffmap(A, B, f, x) ==> abfmap(A, B, f, x::L1(A))::A1(B)
abmap(A, B, x) ==> abffmap(A, B, (c: A): B +-> c::B, x)
zcmap(x) ==> abmap(ZZ, C, x)
cqmap(x) ==> abmap(C, QQ, x)
zqmap(x) ==> abmap(ZZ, QQ, x)

Putting all together (except the factor $t^v$) gives the following expression.

In [ ]:
q := monomial(1, 1)$LZZ
fz := q*eulerFunction(11)$QFunctions(ZZ, LZZ)*r11; --: LZZ
f := embed(zcmap fz, F)$X

Now let's check what the smallest $v>0$ is such that $U(v)=t^v f$ is in the $\mathbb{Q}[t]$-module generated by $\{1, z_1, \ldots, z_{12}\}$ where the $z_i$ are given by the list ab.

Although for the coefficient domain $\mathbb{Q}$ we find $v=3$, with the coefficients being in $C=\mathbb{Z}_{(11)}$, the reduction to zero only starts to work with $v=7$.

In [ ]:
qab := [cqmap first x for x in basis ab];
qt := cqmap first t
qreds := [zero? reduce(cqmap(first(t^v * f)), qt, qab)$QEtaTopReduction(QQ, LQQ)_
          for v in 1..7]
qredsExpected := [false, false, true, true, true, true, true]
assertEquals(qreds, qredsExpected)

With $v=3$ the reduction does not lead to 0 in case the coefficients are non-rational, but rather lie in $\mathbb{Z}_{(11)}$.

In [ ]:
assertFalse(zero? reduce(t^3*f, t, ab)$QTOPRED(C,CA1))
In [ ]:
assertEquals(_
  [zero? reduce(t^v * f, t, ab)$QEtaTopReduction(C, X) for v in 1..10],_
  [false, false, false, false, false, false, true, true, true, true])

Since all involved series in the algebra basis ab have their representation in terms of $J$, $Jp$, and $T$ attached, we have found a relation in $F$, $J$, $Jp$, and $T$.

In [ ]:
result := reduce(t^7 * f, t, ab)$QEtaTopReduction(C, X);
assertTrue(zero? result)
res := second result;
assertEquals(variables res, [T, Jp, J, F])

The leading coefficient is a rational number whose numerator and denominator are not divisible by 11, i.e., the exponent (of 11) of the coefficient is zero.

In [ ]:
cf := coefficient(res, 'F, 1);
lcf := leadingCoefficient cf
assertTrue(zero? exponent lcf)

Let's normalize the coefficient in front of the variable $F$ such that it becomes 1, i.e., we multiply by the inverse of the coefficient.

In [ ]:
r := (inv(unitPart lcf)::C)*res;

Let us investigate the coefficients of all monomials of $r$.

In [ ]:
mr := [(inv(unitPart leadingCoefficient x)::C)*x for x in monomials r];
sort(smaller11, mr)
sort(smallerT, mr)

The above shows that we have found a relation $$ U(7):=t^7 q \prod_{n=1}^{\infty}(1-q^{11n}) \sum_{k=0}^{\infty}p(11k+6)q^k = 11 t^2 h(t,j,j_p) $$ where $h$ is a polynomial in $\mathbb{Z}_{(11)}[t,j,j_p]$.

Let us create output that can directly pasted into a journal paper.

In [ ]:
tups := [(d:=degree(x, [T,J,Jp]); [d.1-2,d.2,d.3]) for x in rest sort(smaller11, mr)];
assertEquals(#tups, 161)
In [ ]:
tupsExpected: List List ZZ := [_
  [0, 0, 0], [0, 0, 1], [0, 0, 2],_
  [1, 0, 0], [1, 0, 1], [1, 0, 2], [1, 0, 3],_
  [2, 0, 0], [2, 0, 1], [2, 0, 2], [2, 0, 3], [2, 0, 4],_
  [2, 1, 0], [2, 1, 1],_
  [3, 0, 0], [3, 0, 1], [3, 0, 2], [3, 0, 3], [3, 0, 4],_
  [3, 1, 0], [3, 1, 1], [3, 1, 2],_
  [4, 0, 0], [4, 0, 1], [4, 0, 2], [4, 0, 3], [4, 0, 4],_
  [4, 1, 0], [4, 1, 1], [4, 1, 2], [4, 1, 3],_
  [4, 2, 0],_
  [5, 0, 0], [5, 0, 1], [5, 0, 2], [5, 0, 3], [5, 0, 4],_
  [5, 1, 0], [5, 1, 1], [5, 1, 2], [5, 1, 3],_
  [5, 2, 0], [5, 2, 1],_
  [6, 0, 0], [6, 0, 1], [6, 0, 2], [6, 0, 3], [6, 0, 4],_
  [6, 1, 0], [6, 1, 1], [6, 1, 2], [6, 1, 3],_
  [6, 2, 0], [6, 2, 1], [6, 2, 2],_
  [7, 0, 0], [7, 0, 1], [7, 0, 2], [7, 0, 3], [7, 0, 4],_
  [7, 1, 0], [7, 1, 1], [7, 1, 2], [7, 1, 3],_
  [7, 2, 0], [7, 2, 1], [7, 2, 2],_
  [7, 3, 0],_
  [8, 0, 0], [8, 0, 1], [8, 0, 2], [8, 0, 3], [8, 0, 4],_
  [8, 1, 0], [8, 1, 1], [8, 1, 2], [8, 1, 3],_
  [8, 2, 0], [8, 2, 1], [8, 2, 2],_
  [8, 3, 0], [8, 3, 1],_
  [9, 0, 0], [9, 0, 1], [9, 0, 2], [9, 0, 3],_
  [9, 1, 0], [9, 1, 1], [9, 1, 2], [9, 1, 3],_
  [9, 2, 0], [9, 2, 1], [9, 2, 2],_
  [9, 3, 0], [9, 3, 1],_
  [10, 0, 0], [10, 0, 1], [10, 0, 2], [10, 0, 3],_
  [10, 1, 0], [10, 1, 1], [10, 1, 2], [10, 1, 3],_
  [10, 2, 0], [10, 2, 1], [10, 2, 2],_
  [10, 3, 0], [10, 3, 1],_
  [10, 4, 0],_
  [11, 0, 0], [11, 0, 1], [11, 0, 2],_
  [11, 1, 0], [11, 1, 1], [11, 1, 2],_
  [11, 2, 0], [11, 2, 1], [11, 2, 2],_
  [11, 3, 0], [11, 3, 1],_
  [11, 4, 0],_
  [12, 0, 0], [12, 0, 1], [12, 0, 2],_
  [12, 1, 0], [12, 1, 1], [12, 1, 2],_
  [12, 2, 0], [12, 2, 1], [12, 2, 2],_
  [12, 3, 0], [12, 3, 1],_
  [12, 4, 0],_
  [13, 0, 0], [13, 0, 1],_
  [13, 1, 0], [13, 1, 1],_
  [13, 2, 0], [13, 2, 1],_
  [13, 3, 0], [13, 3, 1],_
  [13, 4, 0],_
  [14, 0, 0], [14, 0, 1],_
  [14, 1, 0], [14, 1, 1],_
  [14, 2, 0], [14, 2, 1],_
  [14, 3, 0], [14, 3, 1],_
  [14, 4, 0],_
  [15, 0, 0], [15, 1, 0], [15, 2, 0], [15, 3, 0], [15, 4, 0],_
  [16, 0, 0], [16, 1, 0], [16, 2, 0], [16, 3, 0], [16, 4, 0]];
In [ ]:
assertEquals(sort tups, tupsExpected)

Size of numerator and denominators of the coefficients of the linear combination of the powerproducts.

In [ ]:
sz(x) ==> floor((log(abs(numer(x::QQ)::Float))/log(10.0))::Float)::ZZ
sizes := remove(0, sort [sz x for x in coefficients r])
assertEquals(min sizes, 2324)
assertEquals(max sizes, 2395)
degs := sort [degree(x, T) for x in mr]
degsExpected: List NN := _
  [2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6,_
   6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8,_
   8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 10, 10,_
   10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11,_
   11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,_
   12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14,_
   14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15,_
   16, 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18]
assertEquals(degs, degsExpected)

Check the relation¶

Plugging in the series $f$, $j$, $j_p$, $t$, for the indeterminates $F$, $J$, $J_p$, $T$ in $r$ should result in the zero series.

In [ ]:
-- approx. 45 seconds
fjjpt: List Symbol := [F, J, Jp, T];
z := eval(r, c+->c::A1, fjjpt, [first f, first j, first jp, first t])_
     $ PolynomialEvaluation(C, A1)
assertTrue(zero? z)

Let's check whether the relation interpreted with rational coefficients also yields zero. This checks against bugs in IntegerLocalizedAtPrime.

In [ ]:
-- approx. 30 seconds
rq := r::Polynomial(Fraction Integer);
zq := eval(rq, c+->c::LQQ, fjjpt, [cqmap first f, cqmap i, cqmap ip, zqmap tz])_
      $ PolynomialEvaluation(QQ, LQQ)
assertTrue(zero? zq)
In [ ]:
-------------------------------------------------------------------
--endtest
-------------------------------------------------------------------

The same algorithm can be used over the rational numbers $\mathbb{Q}$¶

In [30]:
-------------------------------------------------------------------
--test:Klein_rational
-------------------------------------------------------------------

However, that computation leads to only 5 elements in the algebra basis.

In [31]:
nn := 11
idxs := etaFunctionIndices nn
Out[31]:
\[ 11 \]
PositiveInteger
Time: 0 sec
Out[31]:
\[ \left[\left[1\right], \left[11\right]\right] \]
List(List(Integer))
Time: 0 sec
In [32]:
LQQ ==> A1 QQ
XQ ==> X1 QQ
i0 := kleinJInvariant()$QFunctions(QQ, LQQ); --: LQQ
i1 := multiplyExponents(i0, 11); --: LQQ
xj0 := toX1(QQ, i0, J0); --: XQ
xj1 := toX1(QQ, i1, J1); --: XQ
tt := specM0A1(QQ) eqSPEC(nn,[12,-12])
xt := toX1(QQ, tt,  T); --: XQ
xgens := [xt, xj0*xt^3, xj1*xt]; --: List XQ
xab := samba(xgens)$QSAMBA(QQ,X1,QRED);
assertEquals(# basis xab, 4)
Out[32]:
Void
Time: 0 sec
Out[32]:
Void
Time: 0 sec
Out[32]:
ModularFunctionQSeriesInfinity(Fraction(Integer))
Time: 0 sec
Out[32]:
ModularFunctionQSeriesInfinity(Fraction(Integer))
Time: 0 sec
Out[32]:
QEtaExtendedAlgebra(Fraction(Integer),ModularFunctionQSeriesInfinity(Fraction(Integer)),QEtaLazyAlgebra(Fraction(Integer),Polynomial(Fraction(Integer))))
Time: 0 sec
Out[32]:
QEtaExtendedAlgebra(Fraction(Integer),ModularFunctionQSeriesInfinity(Fraction(Integer)),QEtaLazyAlgebra(Fraction(Integer),Polynomial(Fraction(Integer))))
Time: 0 sec
Out[32]:
\[ {q}^{-5}-12\, {q}^{-4}+54\, {q}^{-3}-88\, {q}^{-2}-99\, {q}^{-1}+540-418\, q-648\, {q}^{2}+594\, {q}^{3}+836\, {q}^{4}+1056\, {q}^{5}+O\left({q}^{6}\right) \]
ModularFunctionQSeriesInfinity(Fraction(Integer))
Time: 0 sec
Out[32]:
QEtaExtendedAlgebra(Fraction(Integer),ModularFunctionQSeriesInfinity(Fraction(Integer)),QEtaLazyAlgebra(Fraction(Integer),Polynomial(Fraction(Integer))))
Time: 0 sec
Out[32]:
List(QEtaExtendedAlgebra(Fraction(Integer),ModularFunctionQSeriesInfinity(Fraction(Integer)),QEtaLazyAlgebra(Fraction(Integer),Polynomial(Fraction(Integer)))))
Time: 0 sec
-- numOfGaps:=[384, -1]
-- numOfGaps:=[291, -1]
-- numOfGaps:=[197, -1]
-- numOfGaps:=[106, -1]
-- numOfGaps:=[15, -1]
-- numOfGaps:=[14, -1]
-- numOfGaps:=[13, -1]
-- numOfGaps:=[12, -1]
-- numOfGaps:=[11, -1]
-- numOfGaps:=[10, -1]
-- numOfGaps:=[9, -1]
-- numOfGaps:=[8, -1]
-- numOfGaps:=[7, -1]
-- numOfGaps:=[6, -1]
-- numOfGaps:=[5, -1]
-- numOfGaps:=[5, -1]
-- numOfGaps:=[5, -1]
-- numOfGaps:=[5, -1]
-- numOfGaps:=[5, -1]
-- numOfGaps:=[5, -1]
-- numOfGaps:=[5, -1]
-- numOfGaps:=[5, -1]
-- numOfGaps:=[5, -1]
-- numOfGaps:=[5, -1]
-- numOfGaps:=[5, -1]
-- numOfGaps:=[5, -1]
Out[32]:
QEtaAlgebraBasis(QEtaExtendedAlgebra(Fraction(Integer),ModularFunctionQSeriesInfinity(Fraction(Integer)),QEtaLazyAlgebra(Fraction(Integer),Polynomial(Fraction(Integer)))))
Time: 0.21 (EV) = 0.21 sec
Out[32]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [33]:
bas := sort(smallerGrade?, basis xab);
degs := [[qetaGrade i, unitCanonical qetaLeadingCoefficient i] for i in bas]
degsExpected := [[7, 1], [8, 1], [9, 1], [11, 1]]$List(List QQ)
assertEquals(degs, degsExpected)
Compiling function smallerGrade? with type (QEtaExtendedAlgebra(Fraction(
Integer),ModularFunctionQSeriesInfinity(Fraction(Integer)),QEtaLazyAlgebra(
Fraction(Integer),Polynomial(Fraction(Integer)))), QEtaExtendedAlgebra(
Fraction(Integer),ModularFunctionQSeriesInfinity(Fraction(Integer)),
QEtaLazyAlgebra(Fraction(Integer),Polynomial(Fraction(Integer))))) -> Boolean
 
Out[33]:
List(QEtaExtendedAlgebra(Fraction(Integer),ModularFunctionQSeriesInfinity(Fraction(Integer)),QEtaLazyAlgebra(Fraction(Integer),Polynomial(Fraction(Integer)))))
Time: 0 sec
Out[33]:
\[ \left[\left[7, 1\right], \left[8, 1\right], \left[9, 1\right], \left[11, 1\right]\right] \]
List(List(Fraction(Integer)))
Time: 0 sec
Out[33]:
\[ \left[\left[7, 1\right], \left[8, 1\right], \left[9, 1\right], \left[11, 1\right]\right] \]
List(List(Fraction(Integer)))
Time: 0 sec
Out[33]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [34]:
rspec := eqSPEC(1,[-1]); m := 11; t := 6;
sspec := cofactInfM0(nn, idxs, rspec, m, t)
xf := toX1(QQ, specM0A1(QQ)(sspec,rspec,m,t), F) --: X
Out[34]:
PositiveInteger
Time: 0 sec
-- == z:=[zinhom=[[0]], zhom=[], zfree=[]]
Out[34]:
\[ \left[\left[1, 12\right], \left[11, -11\right]\right] \]
QEtaSpecification
Time: 0.04 (EV) = 0.04 sec
Out[34]:
\[ \left[11\, {q}^{-4}+165\, {q}^{-3}+748\, {q}^{-2}+1639\, {q}^{-1}+3553+4136\, q+6347\, {q}^{2}+3586\, {q}^{3}+7414\, {q}^{4}-4444\, {q}^{5}+583\, {q}^{6}+O\left({q}^{7}\right), F\right] \]
QEtaExtendedAlgebra(Fraction(Integer),ModularFunctionQSeriesInfinity(Fraction(Integer)),QEtaLazyAlgebra(Fraction(Integer),Polynomial(Fraction(Integer))))
Time: 0 sec

As we have seen above, $U(3)$ lies in the $\mathbb{Q}[t]$-module generated by 1 and the elements of the algebra basis.

In [35]:
qreds := [zero? reduce(xt^v * xf, xab)$QTOPRED(QQ,X1) for v in 1..7]
qredsExpected := [false, true, true, true, true, true, true]
assertEquals(qreds, qredsExpected)
Out[35]:
\[ \left[\texttt{false}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}\right] \]
List(Boolean)
Time: 0.13 (EV) = 0.13 sec
Out[35]:
\[ \left[\texttt{false}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}\right] \]
List(Boolean)
Time: 0 sec
Out[35]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [36]:
xr := reduce(xt^2 * xf, xab)$QTOPRED(QQ,X1);
assertTrue(zero? xr)
pol := x1Pol(QQ,xr);
cfq := coefficient(pol, 'F, 1)
lcfq := leadingCoefficient cfq
rq := inv(lcfq)*pol - F*T^2
fl := factors factor rq;
assertEquals(fl.1.factor, T)
assertEquals(fl.1.exponent, 2)
cfs := coefficients fl.2.factor
Out[36]:
QEtaExtendedAlgebra(Fraction(Integer),ModularFunctionQSeriesInfinity(Fraction(Integer)),QEtaLazyAlgebra(Fraction(Integer),Polynomial(Fraction(Integer))))
Time: 0 sec
Out[36]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
Out[36]:
Polynomial(Fraction(Integer))
Time: 0.04 (IN) = 0.04 sec
Out[36]:
\[ -\frac{377}{15797171629998}\, {T}^{2} \]
Polynomial(Fraction(Integer))
Time: 0 sec
Out[36]:
\[ -\frac{377}{15797171629998} \]
Fraction(Integer)
Time: 0 sec
Out[36]:
\[ \left(\frac{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}{14291452238531994355130293720977422217461910181149972915321956889133110260852886590459673387035400054802019248521925674160715596624103190749900911411200000000}\, {J0}^{2}-\frac{189753762252959744196104033897917525472504226759523418410425040837250517640142178784735342565965128076817}{9924619610091662746618259528456543206570770959131925635640247839675771014481171243374773185441250038056957811473559495944941386544516104687431188480000000}\, J0-\frac{576291199618072743284408400029034433233986765963800420102156550006016977633017050240898859367260745143059}{68920969514525435740404580058725994490074798327305039136390609997748409822785911412324813787786458597617762579677496499617648517670250726996049920000000}\right)\, {T}^{17}+\left(\frac{2203602608731576910218467952157266108416230074723912152858078409704735837054408210872221510179121025649406529}{155341872157956460381851018706276328450672936751630140383934314012316415878835723809344275946036957117413252701325279066964299963305469464672835993600000000}\, {J0}^{2}+\frac{44576738352283432703803818392006782510948791251795487437386631955925960885374361516337072165369816565850010621}{5050182989055395250670801714052790151928949195568860999206313779602977312477697559217775893263408323863707414753490482365632702292141311157862400000000}\, J0-\frac{11450194746555084574915392489904986188854280305564046961236523852276288933960224907708189792403433886585936551321}{310454817632997458290110720985252227432769361834707383497254999989857701904441042397859521566605669358638570178727461709989407737253381653135360000000}\right)\, {T}^{16}+\left(\left(\frac{1861103109538848055747192188998557612380226693790297185746321311866259254689351848540731969071372081227}{19577331833605471719356566741064961941728644083767086185372543683743986658702584370492703269911506924386327737701268046795500817293292042123151933440000000}\, J0-\frac{4348100583310137217102014713272799410661153233376440418369467831063933091690712893361309210592136555027}{79396956880733301972946076227652345652566167673055405085121982717406168115849369946998185483530000304455662491788475967559531092356128837499449507840000}\right)\, J1-\frac{211439618536437516325288092953470633596080158422852221398610550040809221875234888924611624421180740020793310308765817}{71457261192659971775651468604887111087309550905749864576609784445665551304264432952298366935177000274010096242609628370803577983120515953749504557056000000000}\, {J0}^{2}+\frac{543814075900373806024769785528088946350645239273014530313366608416974074748472157894385846033801000302729397631119611}{76343227769935867281678919449665716973621315070245581812617291074429007803701317256729024503394231061976598549796611507268779896496277728364855296000000}\, J0+\frac{1390862548762209163846490152114182930761982001984370346194710903195686724568281532811280109278454863112932355200436477501}{68920969514525435740404580058725994490074798327305039136390609997748409822785911412324813787786458597617762579677496499617648517670250726996049920000000}\right)\, {T}^{15}+\left(\left(-\frac{372268131413316544566585754444244861744583903451713957267785348870009019518613115646786504470015679655711520448911}{1786431529816499294391286715122177777182738772643746614415244611141638782606610823807459173379425006850252406065240709270089449578012898843737613926400000000}\, J0-\frac{30403047277783607066775855157585255427906838701430486266848084338447240028930634417120080712067524229482440075808773}{24811549025229156866545648821141358016426927397829814089100619599189427536202928108436932963603125095142394528683898739862353466361290261718577971200000000}\right)\, J1+\frac{2044650096176766610695166265588908482351815176626967687008804179304959776079814925049666817844581600640315651431009499451}{35728630596329985887825734302443555543654775452874932288304892222832775652132216476149183467588500137005048121304814185401788991560257976874752278528000000000}\, {J0}^{2}-\frac{1745025138235175729967251079625293585520416003709598151968578067206279599100166560346814850385904325476500719757883410861}{41770284554257839842669442459833936054590786865033357052357945453180854438052067522621099265325126422798643987683331211889483950103182258785484800000000}\, J0+\frac{5082434529329283626173333744482245679654562303275583230296588291239528246918565816919403381197033715773254434853719361117893}{3132771341569337988200208184487545204094309014877501778926845908988564082853905064196582444899384481709898299076249840891711296257738669408911360000000}\right)\, {T}^{14}+\left(-\frac{1412568970148406436681581022041490980323931124165036943504015798551426782063094715172266162601033007103047}{14291452238531994355130293720977422217461910181149972915321956889133110260852886590459673387035400054802019248521925674160715596624103190749900911411200000000}\, {J1}^{2}+\left(-\frac{977708900529262072323387378054033175694187888483962168151377452575115305288117044406341415816143216378483858826068771773}{3248057326939089626165975845676686867604979586624993844391353838439343241102928770559016678871681830636822556482255835036526271960023452443159298048000000000}\, J0+\frac{5480341108301319413087754682347573772259156115584195462953816166495622365412154296561085899918759500298155682855729400097}{381716138849679336408394597248328584868106575351227909063086455372145039018506586283645122516971155309882992748983057536343899482481388641824276480000000}\right)\, J1-\frac{571954277075025612895651032570339402614292015175656252120137950089355096640077053834314203170210524878434596716682112584719}{3248057326939089626165975845676686867604979586624993844391353838439343241102928770559016678871681830636822556482255835036526271960023452443159298048000000000}\, {J0}^{2}-\frac{121499337496090465270879044006741016428920981269772512224396500707530393392075917965149682029140122379106935428075646928909089}{69402934336305333892435381317877924521473922791132347102379355522208188912455742960662749548540210056342362317996919552062527178632979753058959360000000}\, J0-\frac{1557659800940077570529035717860120278518449421515514875233255308420501253976537592010747135413039650439746010727877327406492163}{160654940593299384010267086383976677133041487942435988662915174819926363223277182779311920251250486241533246106474350814959553654243008687636480000000}\right)\, {T}^{13}+\left(-\frac{17758677464292680754010096855311288147726175445574405864872955560722865976789434957844882792215945734636938757856293}{714572611926599717756514686048871110873095509057498645766097844456655513042644329522983669351770002740100962426096283708035779831205159537495045570560000000}\, {J1}^{2}+\left(\frac{32548590488294131680069885659463370063910328026380075181251603607881532198301220806476810024032053412967205766732996411873799}{1624028663469544813082987922838343433802489793312496922195676919219671620551464385279508339435840915318411278241127917518263135980011726221579649024000000000}\, J0-\frac{13164713802594498783817274650128872029384957033286072136879059290102227708930793490442338782011497939895248006645908014710503}{19977092612905923403015820306877099852195593718059431633736408694999539079068380119514438779068538723947177559326810579599318410918913254201753600000000}\right)\, J1+\frac{434239901904851079202897055343907622179812919960181588008669861453785721734638003792170362907030908638971799974738405555097767}{1624028663469544813082987922838343433802489793312496922195676919219671620551464385279508339435840915318411278241127917518263135980011726221579649024000000000}\, {J0}^{2}-\frac{35092666241515514381693343830489080665123740754910368221410151758878802048888706593440451066096120125529380076391935392291180427}{68351374725149192469822724025182804452966742142781856994767547105205034534994292309743616979622934146397781070754541983091882827441570968921702400000000}\, J0+\frac{18262291742359215208673930585203083003746606636829895984289574262267832578570887061401299448050173511635468561319642682181943}{2615435570323733231313221632380959110982800160358441660114531469742105811277420092483294340962634429016087229077492706127070603762844303360000000}\right)\, {T}^{12}+\left(-\frac{1966275739335255208007417210720955347574393159275976505493636835102278016126384975741336125711121050362414301768647744975177}{71457261192659971775651468604887111087309550905749864576609784445665551304264432952298366935177000274010096242609628370803577983120515953749504557056000000000}\, {J1}^{2}+\left(-\frac{3753926049007967543789697769960709958598078494454089027646575126994965424264259483043167888156130684087461500581869388840858401}{13421724491483841430437916717672259783491651184400801009881627431567534054144333762640564788725957977838109737529982789407133355206708481170079744000000000}\, J0-\frac{122813975965574220250185122845719328972597924051589251698723737970455200280473774966083336068356039914472811998864862958851595079}{665590477505979662438351520921235544669758631824285804817936277893888472569322731096155401075799747706857877504765575477495901451580450988359680000000}\right)\, J1-\frac{58631064168557507630436786390399463687112022761295969029522209764781041032133760382641028431464651381565200536277066533640168559}{295277938812644511469634167788789715236816326056817622217395803494485749191175342778092425351971075512438414225659621366956933814547586585741754368000000000}\, {J0}^{2}+\frac{516742120670190388524347795548463355310886328664357456439326496834256330747457368826219557099667769532699518733576925840843187433401}{102527062087723788704734086037774206679450113214172785492151320657807551802491438464615425469434401219596671606131812974637824241162356453382553600000000}\, J0+\frac{4154242982909966162540876440062989839836061917495678726517434147612067534623201070528855785476400200921184742757021581029159464085629}{113918957875248654116371206708638007421611236904636428324612578508675057558323820516239361632704890243996301784590903305153138045735951614869504000000}\right)\, {T}^{11}+\left(\frac{363408959434640751905489181678235931553808903641117205843751861950465858515837818735889338368211713578946894187408602493664698051}{295277938812644511469634167788789715236816326056817622217395803494485749191175342778092425351971075512438414225659621366956933814547586585741754368000000000}\, {J1}^{2}+\left(\frac{68972724435920474496126678693561864385297822899210051365045216713960423922104402844181342636975348907014195881238796288801}{91896458915985373844990156991702418606826042066970054931907492606278162289731352762830000533683844391416206254348725394797833933851459584000000000}\, J0+\frac{23405199435887417044161934334604896977393995191318292186100852708398326111802690571127516169886256638958659218280059153910885258591}{15267226876289745916869047135399330903052656274912186060926412129820199806788986443990086437262214462005311831752187175137789329336960234291200000000}\right)\, J1+\frac{37378415860986624843644530082406552767080856810675051356561560340890448474530983676511896721017866173736004942742740637065646717}{1011225817851522299553541670509553819304165500194580898004780148953718319147860762938672689561544779152186350087875415640263471967628721184047104000000000}\, {J0}^{2}-\frac{4864723216787659261808925489497945746318257443136696107957863989628410106564684991509333712276705874241976888249104864474572297493997}{4660321003987444941124276638080645758156823327916944795097787302627615991022338112027973884974290964527121436642355135210810192780107111517388800000000}\, J0-\frac{6603327126117480656681438876779573225271623196984503020550619287767476163421655858287693360930057346629131253276133374619393}{73568927185724705224462323858401512048585996060293884917689877191999212532928249163827428143564274499528440130019008033931988566016000000}\right)\, {T}^{10}+\left(-\frac{261436504833287894937283558220835960737693128056984274574654391618651417051257415814048238277250026346490146944311477948701106519}{5410894775845128575060639676545962420274803944527635964475560343304790991390580029284646155503309001345740672255586691960142453217782092791808000000000}\, {J1}^{2}+\left(-\frac{3825895216371138649778533378836853100090560574418959241516178143233096588160266866717774662820286019283761593756854756529864794559}{3824942858787073647887693564454904469504602788372984043853413346129248804258858296563284351304063259571989095904811282247686906584983893180416000000000}\, J0+\frac{9535627581147483767225817350504181804909213626106561037770719087013739166535197014148396330487682691719481014504659942427354737852079}{7002736294496536350299438975327792273714234902955589474226577464504306522948667335879750390645065311085081046795424696034275270894225562009600000000}\right)\, J1-\frac{781426434268609798329884148432847958452930549745209252955772475295490346145584111971997836464635631090282793154640050481173713497}{443693371619300543154972453476768918462533923451266149086995948150992861294027562401340984751271338110350735124958108740731681163858131608928256000000000}\, {J0}^{2}-\frac{214708308022651859133208375362873720083714829025800687365676757158644443066761775915301199252157836106410471732700029918012988133}{105447412382918718265005348993600973858721571801664506706117361750410241311684915782392651540550375676539680495641448673339009270389145600000000}\, J0+\frac{7691100831597693238723386649836506103466178785748489417142115067447096349476589772293135701794378485635134797275253700259650835820587}{64304281859472326449030660930466412063491596905010004354697681033097396904946440182550508637695732884160523845688013737688478153298673664000000}\right)\, {T}^{9}+\left(\frac{139680539099668773655298740954636697365133324778171772479718533358331876182450132106157953550091036500003945780980902980101183}{299585336383681496726725369513458852157370288874763967242991723382765149018475824834316965674812512151787298480516738517444766451367936000000000}\, {J1}^{2}+\left(\frac{10373341301241868499651636352606370985002375259461750311209150422509033165937842877904978326103488634714122453448265072268430569}{15653333826047358203971400557078225025222597593706417288446317546749479036215361847593061456508953759930886345606999587536489047083974656000000000}\, J0-\frac{6301995368999795000090604756192300427929987215913888036543698279119549513711304697360103545998591859575106055734495068157579680123}{530261985977214031299844192312948002209437587862683512481243819334331945671252095108166038499625804875707532032757438602184588315852800000000}\right)\, J1+\frac{679960706889992440879822297448736018628136806220927385178222278602516119867350144404250023783135009761873915082118970557947}{118378337059483146417533716712904076753245894302404780743875276447292935211378673972422527264848962809477327988652934380744698418572558336000000000}\, {J0}^{2}+\frac{294415215081267201367995180098016459404914163178360479961272705797323381294887547813097330568951542461019340837316938285011985659}{666193026257159559171516818756450785428558372494276139390807366310255342190587310878534148020675813355716382757710580033032666700840960000000}\, J0-\frac{2088147709184465513741841404917765789642502089441151445086389405564773575259783387236873042719954302570984683605873177609339024668347}{24156379361184194759215124316478742322874379002633360013034440658564010858357039888260897309427397777671120903714505536321742356611072000000}\right)\, {T}^{8}+\left(-\frac{867777149493819381800848764157153092515089521131381840312767904489467964064348892930417995270051146476906985232515350678912999}{777559099964476256786801724029194480020495251502016990317169967115980852585348087132302759076762206254211962451993447419090302926848000000000}\, {J1}^{2}+\left(-\frac{66820545757840831962157812973512265739539635153782017825701968722719788360534096051214539590308006994267413156941594523433253}{777559099964476256786801724029194480020495251502016990317169967115980852585348087132302759076762206254211962451993447419090302926848000000000}\, J0+\frac{216886002998564915043810264347437690965852330162904762170991688891223671948620764375756450548156356046824414105386694541760514777}{98176654035918719291262843943080111113698895391668811908733581706563238962796475648018025135954824021996459905554728209481098854400000000}\right)\, J1-\frac{3274724134487388027210860148426321705569393244378300110304188904758713454630287294980231140611403896953096897779618411}{684252007968739105972385517145691142418035821321774951479109571062063150275106316676426427987550741503706526957754233728799466575626240000000}\, {J0}^{2}+\frac{47160348379929765354137189084140094656364940183400545420356296488439010447071547983998888070674239309302799654023222266789421}{36892469373745854143611192910287867840862007274509087704834668902155751287262029668975717520032713374725377790596652525923021619200000000}\, J0-\frac{1306382925206108076058975366394952346942928255379000001233351184857766570766413426690107261674624282673552325405088942416509553337}{45452154646258666338547612936611162552638377496142968476265547086371869890183553540749085711090196306479842548867929726611619840000000}\right)\, {T}^{7}+\left(\frac{3493745337039841917429452226528017588167904232919510880758999510050705888937234169937228351631146660846991792479920048861}{2676291713451377464346214812086403170949151112789508147558778866924805824015353660375609623503881488829907505893808078323712000000000}\, {J1}^{2}+\left(\frac{4307860016466131268701459705319898143108409231915453996631728722909863539149642190915932290700580404680379555078632153}{1714499378929788688096793863992852031389299931630778657029842711623703731009835938678124915057174078781659495963220800176128000000000}\, J0+\frac{118362624181083324659310463923595398684520958986349157645278148039911433633302890593703609120259704104261635407613564118533}{9140797408532553276202896260937216141759983641089771417496370732236803684096357947668315636498820499660636089172633845760000000}\right)\, J1+\frac{40848885283602744395225920444274431166417083897023969303298233515382265034776538026686428501831209433}{34859868438513205209297948966670017999812550733749586759687133023264518183381167300201332968618713486487052637403139276800000000}\, {J0}^{2}-\frac{974843919029237139962196690756375300701016939108715787077454753758899120701967462349939316604788956132587803530122101981}{8596919962724866356268823933411451781325264614444930018155336673668713864892624649782050856127140679930828241866862131937280000000}\, J0+\frac{259815057421784212094589547477054420198676004583602597761298438823151351159666159017112511385280233029227414517359864770434073}{3618232307544135671830313103287648056113326857931367852758980081510401458288141687618708272780783114449001785297500897280000000}\right)\, {T}^{6}+\left(-\frac{4112458048644272163725122655576782604911760326118613919393623273903642754900749843201757074655153781229053886328155733697}{5450594420475823238015029142099957405240088946948225545940599365116244607466181523884980264073325395906946631397315444736000000000}\, {J1}^{2}+\left(-\frac{146613978669062331367487932312765670755518502171997593941414560920758329702798642030921885383604081708629277076059}{28687339055135911779026469168947144238105731299727502873371575605874971618243060652026211916175396820562877007354291814400000000}\, J0+\frac{12384550852910833184602613947515584688012557288143176276584558600311922619894823787545637406689204940082519564030115341127}{24578798793631959045883067920724916149170675265819920391146281408352473879266691575960408838714490421658309124266393600000000}\right)\, J1+\frac{550520332787030840408191468936699167761135219818459411762354928647396254889788795330602508930006599811462715179245587}{1261711671406440564355330819930545695657427996978755913412175778962093659135690167565967653720677174978459868379008204800000000}\, J0-\frac{10280503400151476921040997136629266206365572145065690282763543250310964809149979706176696980090195770791867386219756485692301}{477921087653954759225504098458540036233874241279831785383399916273520325430185669532563505197226202643356010749624320000000}\right)\, {T}^{5}+\left(\frac{856297070107132269023240327706636612378648481356294121728234482205368832261011789402842364805130330473571472321687}{12018431459590544454013272806484201568119357701494053006828704329111631209941273022874010071646659261386715037696000000000}\, {J1}^{2}+\left(-\frac{5087886970414485777298769214435063677168038953440981800904049382590914365692595554272197037320223}{1383241393006092402417840828991601941495577959495645677702732039205276107458483889967784713538246132367360000000}\, J0-\frac{26940885260785098220005600520903942020154849653560437283531425524104784284923465251723778764218083627763512095454643}{161131978677265553263124153597911199170361759027907531514378472654421065325172086782289392614669472249193431040000000}\right)\, J1+\frac{149279624869049639718092256604445093277463389431729413467333634981875066004409242287407703804032653}{61707935476882899952307010315569797723386061193055748844182990415657595238286809091340618053956202460610560000}\, J0-\frac{196259433355388201111353090428652970516889199897697426595589291599489623282588073444360850851212239094871649696689988681}{494585656773273434321533860349144097453471510349549506453856145230931325511986544151193830108916018987107614720000000}\right)\, {T}^{4}+\left(-\frac{12365648862625629663175034687378442996949519246184293912261308911137199944468933401916827438601379207290174001}{15101977019162782477675843082726406144139476165652667311106828621530746734192961161546703619951899315693158400000000}\, {J1}^{2}+\frac{80244392560255472197692211924862642814174625971133158660224067373356688357867751169290782023390818110340280746213}{402020221574935181697389341322577941337046240520846467772519743397230526488932993883766415808904727153868800000000}\, J1+\frac{4989617377280807444340788015249516257734572462991363153316407992138805657732658737441813833480429152936336939833937}{1675084256562229923739122255510741422237692668836860282385498930821793860370554141182360065870436363141120000000}\right)\, {T}^{3}+\left(\frac{1102730502447904230015254983629551598228648470099906674222592752835110442744173351189591962979541621107}{569986704885943782779720148029827602488298122634118353657025859465099738843140732764202215381191884800000000}\, {J1}^{2}+\frac{283621438555364650902947726943295091413610023693571965754686950633251870952011916238680939174811434598613}{395824100615238738041472325020713612839095918495915523372934624628541485307736619975140427348049920000000}\, J1-\frac{35430664594528061000407857237764185352654118242576244464958495982227667948861366180581943276915092930396449}{2748778476494713458621335590421622311382610545110524467867601559920426981303726527605141856583680000000}\right)\, {T}^{2} \]
Polynomial(Fraction(Integer))
Time: 0.01 sec
Out[36]:
List(Record(factor: Polynomial(Fraction(Integer)),exponent: NonNegativeInteger))
Time: 0.11 (EV) = 0.11 sec
Out[36]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
Out[36]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
Out[36]:
\[ \left[1, -\frac{65921760}{13019}, -\frac{28829882880}{13019}, \frac{202731440003305075740099051598468481974293166874599918062943213692835697009005555400244378936479134359745400668}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{126147176942266658807301980021719289746343852977961028353211181132491405597990281162744084475914059461900154856240448}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{527097348947337038914889184648886941818822831243910892689805240093778502682810276583446192248316283260386076328586808320}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{327770}{13019}, -\frac{188820000}{13019}, -\frac{211439618536437516325288092953470633596080158422852221398610550040809221875234888924611624421180740020793310308765817}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, \frac{101801995008549976487836903850858250756840788791908320074662229095657546792913987957829030377527547256670943236545591179200}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{288409258111331692215208197942396972522804587931479034986935252886657599206478858643747043459980400415097653174362507974607360}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{2978145051306532356532686035553958893956671227613711658142282790960072156148904925174292035760125437245692163591288}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{17512155232003357670462892570769107126474339092023960089704496578945610256664045424261166490150893956181885483665853248}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{4089300192353533221390332531177816964703630353253935374017608358609919552159629850099333635689163201280631302862018998902}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, -\frac{597049880896335964953915153387316448524297213173216750107137174226225327154527387623300620170434849535831862260841261725625984}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{23185659728037845559912654675628446210929740862558948649954612057571428700182743771520964672750372048660324871447879427870938434560}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{340789}{13019}, -\frac{21509595811643765591114522317188729865272133546647167699330303956652536716338574976939511147955150760326644894173512979006}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, \frac{205183971094801398826005535307093162033382804967472278132990877273596101361031056863247056092958355691162948766118508739631680}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{12582994095650563483704322716547466857514424333864437546643034901965812126081695184354912469744631547325561127767006476863818}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, -\frac{25019143577194948608579412741868110103043408463071555717247727425694658607296273027383622523440534000305700143349337215600959606880}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{138565428282538894075682463129398578069088253307501123582669795103498235070542604249040517653677349921614679364564503680123382200542720}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{355173549285853615080201937106225762954523508911488117297459111214457319535788699156897655844318914692738775157125860}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{1432137981484941793923074969016388282812054433160723307975070558746787416725253715484979641057410350170557053736251842122447156}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, -\frac{9417930936665683673952607746504994018845763181956589718146183983664812885147418216714525625940769534217541261970429426459776162176}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{19106555683813447484927470435131935375911768478247989872381473903966571756324072166855495967909359980114759198888489844424301748}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, -\frac{7337455399105995871039497874829300898109392706962699070678205810960450962798041884209277032507905564806687021412636987303378333120576}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{99790135594798299184757119341763444122874286366697084107424411544363708765318683135451557126323127199885998118356742799385345203418178560}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{1966275739335255208007417210720955347574393159275976505493636835102278016126384975741336125711121050362414301768647744975177}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, -\frac{19985902284918419203136350927270819819576169904473569983190365976121195918782917487721825836543239762081645029097872626188730126924}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, -\frac{2637042041696655165336734928123630116606987009567876158194724305903538787590288020267746818725969952077173903589706519074388033281075360}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{14188717528790916846565702306476670212281109508233624505144374763077011929776370012599128880414445634338778529779050101140920791278}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, \frac{72029717684459178637185887917091404023495067125182114567990599046720658455549577555424396503236889730702051315310754846806813582716632192}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{521161414086407402996008063859934251778985508523201884142046362633547186007577519260842439084213739126125205296148077000534936416041597811200}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{87944968183183061961128381966133095436021754681150363814187950592012737760832752134085219885107234686105148393352881803466856928342}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, \frac{53632120794695830912206227533065148958531099918206497766701158662650798676606239382856270042889635922426294688769460375084675329149784}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, \frac{21909302362616758097320403565590870166360285319199681585971576442825998893459218525390469521859928241122735096654304494485559155197427210816}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{2641308378400758857951297073743176644733001665669541829060066099928682651004257430517036669894006495300881053273973024377606859610088}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, -\frac{14918276969958238796085534320306148376357479913301627565370176699330233514633820547402318986076840874891428132950022955914470797230231056128}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{1282758058984207389063585666629860027836905558460982387683925404792699667912339480336716007090944104743175171144675829335869415377823073139737600}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{3452578064272279598938645255471955889646829709269840701170858482815185208136808762089999191468730307436543941753321242479533476291300458}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, -\frac{71475053057047437079515979186626267320231445044206745357428952712916678879896700141604661957736906508233614258591684985691385583308495044}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, \frac{19460673715144570548653187315390572723504760653582168116186521073738537080890411701534172718683623261853094342378497132851062128729049897967488}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{125849508665393876630826171989258596556802917967015695397780112918814015737092466817202223560466033022721134120347934770043507732405347}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, -\frac{29099751809735313465617939359361506908545257867053435867346033871485651818033037929116829671211371659440698421907303363483585846895561573291616}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{1709326300178886760339902636722338237240103741114595584650406480772187227059352630554482063544847434316403041583038768722946831001529285539006809600}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{33316679936542660650014671785267740432756345791354748572139604693250398307863477120619059636625900344180460609929908187055420781653653831668}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, \frac{47354165383606433769836551028511717917009044977282665055123709863616780012994117313291159454949323079128604889410409366855465169223220922544}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, -\frac{169849372961426211936662144056786093531356309062630777687954510162957343239765540549462274979401837548695289028757044280672713450703514692388212992}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{410447815368188279546887934658447945214143531484352041922472152400783767457663359817348586026531399938373902822659200515688476249696512}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, \frac{6315918688417575634719611145267828889724296194411423271887074292838904194591511866800340313080878841263185365381164597064405140872970601198092480}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{1235394709058205388074979662584023668475868047325940685713751594754609107637109940718015058504945039689228953909393411159151783314736057480444195251200}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{79748251202043352046988384736898273819904663235631103659551082412485662948700043317845678530521645610798055746462368370548774340177973354841678}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, -\frac{6140772053818497906187359425928131122955307809551325838134558308514841779874866881564709312326661153078064887470250657999054116650912864939466}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, \frac{31571823092749503807812305516077714453622520259145346892253921914522875738640540487058348028134928061903075120026220178041187005276451661477951571296}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{68396676980643468757414525264135709037741270378809237752598779772907487938009480905153334838807982614465296681509714257637178155752805}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{18269036414893222224088492136848146816251892242769217116350862231413907649365163965625732567483861587469669711728055924744535636937552164612792256}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{410764007253803828724825846689932874732828181523100300592599627450931791441614887921687801616244895984912797681678279942634409373983781670233590809500160}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{93283356158338119305550891466366455908188104940470504149832570439861578910077553522879389613889316251948453913770213253861258696077582921576580968}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, \frac{179543884448757703857429386153383704323388343288756988287188632320269351854715373231651886515356980213808523043389106651483282859264566891577856}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, \frac{185057573722425008395667027976476897275973072577091775523796006478637006057415012960815913962170251835936948311157264681872311735545917832079539334384960}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{16746761223657104536760538428033843516856715104616580990771162303497048328673522113735273188585692254194293223657018801310856305722}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{1620572876011032312283832430146862073584888862037974385551652138795988905384750147972287421379732476753834909214351936570528674203846183221277338240}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{1026228878740833400953107591254701546539221843663211957309835877162135731738943658916474908271852934841759395881645160102791892773053174737548546977922769920}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{53914301130513546153642946968024711375393060247784300680558884917479251912762153052461971509376928423043150536139555057422214620340015755937794821587}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, -\frac{73040119532275870521047874588342446689596701653883928831260756868488316084555212144680348984779857733928332249668766914495432218059956491599782}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{7201052358014438167079286576980308190464302805419687655058844973806285051142791838474542339396525822669344698659208779289795543733028307854060011893445184}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{6235763067481463703303197072852968997507774980887871613883060475893289445678145365515987946930552273368117333669804403132218153303355303855442719328}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{307421721130900228589719373934705836156991774018661550594199596392383243556275769428423217629549507038568109962009974162880622828138932659066859166903221404160}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{5091233710729124692807598192675197289555598293972987089450682995766513171963883788645935871887853391044050803623896388943274877797882115021344620543232}{269818500925236779930653620362719616431828188490599989546006204445287630699339328687659125894656939036685}, -\frac{52567320498344578115797908871589631859500613108375455982982191659102602143685025199811465194156867379891494317993827387944216159677146480384660}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{2389496970923777876301175592866182359398685398158451474005958930923247077940444247450306704054859526119246749957194841714748438373432808031584146241475399040}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{34572905616024395538457258468533256752563016817407427613240833698704830379286768052514182358939665107813360146077715825924315565501757384675560000}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{5671074928575348494343658731191545886040041382348418773431155118935585876027569273120472141406755624811526874973607837498773550004585943175598709565275797877760}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{11701983117470587325146787061658141630385685028044506614391809035837381521772942323743798097276097060927705578298578287634395927186894067365366390722293}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{2852614973426509493423483010436790242048397249204821078700768583366485314235621469482843679238789513299710196931208769755225144863526317761143129649638999712}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{42570323347378906135870223283181081865213041316742088897999716924865308822735188488081261703464801173427988708985214014685194767577572259156239646854960484933120}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{27649101588887347338673768336410051400382813491556908717874019563467839772412096192351616440173290489413349957534591250412143090045281840102808080045658}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, \frac{10240311887622542610382813921552329947433463558442127537984191062686056626903700056727884125599039172022481482636090196651644254377425239480136029381135391680}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}, -\frac{184211152394447298918388404653507343813772831617715917205111144787241152517894538158123375245848507096543449997939923221090395134726190405494624192766075007708160}{53963700185047355986130724072543923286365637698119997909201240889057526139867865737531825178931387807337}\right] \]
List(Fraction(Integer))
Time: 0 sec

No denominator is divisible by 11.

In [37]:
zdens := [zero? positiveRemainder(denom x, 11) for x in cfs]
assertEquals(removeDuplicates zdens, [false])
Out[37]:
\[ \left[\texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}\right] \]
List(Boolean)
Time: 0 sec
Out[37]:
\[ \texttt{true} \]
Boolean
Time: 0 sec

There are, however, some numerators that are not divisible by 11, so the relation does not reveal a divisibility by 11 for p(11n+6).

In [38]:
znums := [zero? positiveRemainder(numer x, 11) for x in cfs]
assertTrue(member?(false, znums))
Out[38]:
\[ \left[\texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{false}, \texttt{true}, \texttt{true}, \texttt{false}, \texttt{true}, \texttt{false}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{false}, \texttt{true}, \texttt{false}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{false}, \texttt{true}, \texttt{false}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}, \texttt{true}\right] \]
List(Boolean)
Time: 0 sec
Out[38]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [39]:
-------------------------------------------------------------------
--endtest
-------------------------------------------------------------------

The relation in $M_i$'s with integer coefficients¶

In [40]:
-----------------------------------------------------------------
--test:integer
-----------------------------------------------------------------

Here $\mathbb{Z}$ is considered as a Euclidean domain wrt the absolute value as the Euclidean size function.

In [41]:
C ==> ZZ
--LZ ==> A1 ZZ
--XZ ==> X1 ZZ
nn := 22;
idxs := etaFunctionIndices nn;
mspecs := mSPECSInfM0(nn,idxs);
egens := [specM0A1(C)(spec) for spec in mspecs]
msyms := indexedSymbols("M", #egens)
xgens := [toX1(C, x, s) for x in egens for s in msyms]
 -- We only achieve a relation that shows divisibility by 11 with xgens.3.
xt := xgens.3
xab := samba(cons(xt, xgens))$QSAMBA(C,X1,QTOPRED)
assertEquals(# basis xab, 5)
Out[41]:
Void
Time: 0 sec
Out[41]:
PositiveInteger
Time: 0 sec
Out[41]:
List(List(Integer))
Time: 0 sec
Out[41]:
List(QEtaSpecification)
Time: 0.02 (EV) = 0.02 sec
Out[41]:
\[ \left[{q}^{-5}+4\, {q}^{-4}+6\, {q}^{-3}+8\, {q}^{-2}+13\, {q}^{-1}+12+14\, q+24\, {q}^{2}+18\, {q}^{3}+20\, {q}^{4}+32\, {q}^{5}+O\left({q}^{6}\right), {q}^{-5}+{q}^{-4}+{q}^{-3}+2\, {q}^{-2}+2\, {q}^{-1}+3+4\, q+5\, {q}^{2}+6\, {q}^{3}+8\, {q}^{4}+10\, {q}^{5}+O\left({q}^{6}\right), {q}^{-5}-7\, {q}^{-4}+17\, {q}^{-3}-14\, {q}^{-2}+2\, {q}^{-1}-21+36\, q+13\, {q}^{2}-26\, {q}^{3}-24\, {q}^{4}+10\, {q}^{5}+O\left({q}^{6}\right), {q}^{-6}+2\, {q}^{-5}-{q}^{-4}-2\, {q}^{-3}-{q}^{-2}-6\, {q}^{-1}+4\, q-5\, {q}^{2}+4\, {q}^{3}+6\, {q}^{4}+O\left({q}^{5}\right), {q}^{-7}-4\, {q}^{-5}+2\, {q}^{-3}+8\, {q}^{-1}-5\, q-4\, {q}^{3}+O\left({q}^{4}\right), {q}^{-8}-2\, {q}^{-7}-3\, {q}^{-6}+6\, {q}^{-5}+2\, {q}^{-4}-{q}^{-2}-10\, {q}^{-1}-2\, q+10\, {q}^{2}+O\left({q}^{3}\right), {q}^{-9}-4\, {q}^{-8}+2\, {q}^{-7}+8\, {q}^{-6}-5\, {q}^{-5}-4\, {q}^{-4}-10\, {q}^{-3}+8\, {q}^{-2}+9\, {q}^{-1}+14\, q+O\left({q}^{2}\right)\right] \]
List(ModularFunctionQSeriesInfinity(Integer))
Time: 0 sec
Out[41]:
\[ \left[M1, M2, M3, M4, M5, M6, M7\right] \]
List(Symbol)
Time: 0 sec
Out[41]:
\[ \left[\left[{q}^{-5}+4\, {q}^{-4}+6\, {q}^{-3}+8\, {q}^{-2}+13\, {q}^{-1}+12+14\, q+24\, {q}^{2}+18\, {q}^{3}+20\, {q}^{4}+32\, {q}^{5}+O\left({q}^{6}\right), M1\right], \left[{q}^{-5}+{q}^{-4}+{q}^{-3}+2\, {q}^{-2}+2\, {q}^{-1}+3+4\, q+5\, {q}^{2}+6\, {q}^{3}+8\, {q}^{4}+10\, {q}^{5}+O\left({q}^{6}\right), M2\right], \left[{q}^{-5}-7\, {q}^{-4}+17\, {q}^{-3}-14\, {q}^{-2}+2\, {q}^{-1}-21+36\, q+13\, {q}^{2}-26\, {q}^{3}-24\, {q}^{4}+10\, {q}^{5}+O\left({q}^{6}\right), M3\right], \left[{q}^{-6}+2\, {q}^{-5}-{q}^{-4}-2\, {q}^{-3}-{q}^{-2}-6\, {q}^{-1}+4\, q-5\, {q}^{2}+4\, {q}^{3}+6\, {q}^{4}+O\left({q}^{5}\right), M4\right], \left[{q}^{-7}-4\, {q}^{-5}+2\, {q}^{-3}+8\, {q}^{-1}-5\, q-4\, {q}^{3}+O\left({q}^{4}\right), M5\right], \left[{q}^{-8}-2\, {q}^{-7}-3\, {q}^{-6}+6\, {q}^{-5}+2\, {q}^{-4}-{q}^{-2}-10\, {q}^{-1}-2\, q+10\, {q}^{2}+O\left({q}^{3}\right), M6\right], \left[{q}^{-9}-4\, {q}^{-8}+2\, {q}^{-7}+8\, {q}^{-6}-5\, {q}^{-5}-4\, {q}^{-4}-10\, {q}^{-3}+8\, {q}^{-2}+9\, {q}^{-1}+14\, q+O\left({q}^{2}\right), M7\right]\right] \]
List(QEtaExtendedAlgebra(Integer,ModularFunctionQSeriesInfinity(Integer),QEtaLazyAlgebra(Integer,Polynomial(Integer))))
Time: 0 sec
Out[41]:
\[ \left[{q}^{-5}-7\, {q}^{-4}+17\, {q}^{-3}-14\, {q}^{-2}+2\, {q}^{-1}-21+36\, q+13\, {q}^{2}-26\, {q}^{3}-24\, {q}^{4}+10\, {q}^{5}+O\left({q}^{6}\right), M3\right] \]
QEtaExtendedAlgebra(Integer,ModularFunctionQSeriesInfinity(Integer),QEtaLazyAlgebra(Integer,Polynomial(Integer)))
Time: 0 sec
-- numOfGaps:=[216, -1]
-- numOfGaps:=[216, -1]
-- numOfGaps:=[216, -1]
-- numOfGaps:=[216, -1]
-- numOfGaps:=[216, -1]
-- numOfGaps:=[162, -1]
-- numOfGaps:=[162, -1]
-- numOfGaps:=[109, -1]
-- numOfGaps:=[109, -1]
-- numOfGaps:=[56, -1]
-- numOfGaps:=[56, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
Out[41]:
\[ \left[mul=\left[{q}^{-5}-7\, {q}^{-4}+17\, {q}^{-3}-14\, {q}^{-2}+2\, {q}^{-1}-21+36\, q+13\, {q}^{2}-26\, {q}^{3}-24\, {q}^{4}+10\, {q}^{5}+O\left({q}^{6}\right), M3\right], be=\texttt{table}\left(4=\left[\left[{q}^{-4}+31\, {q}^{-3}+2\, {q}^{-2}+33\, {q}^{-1}+3+62\, q+65\, {q}^{2}+4\, {q}^{3}+4\, {q}^{4}+66\, {q}^{5}+65\, {q}^{6}+O\left({q}^{7}\right), M3-4\, M2+3\, M1\right]\right], 3=\left[\left[88\, {q}^{-3}+88\, {q}^{-1}+176\, q+176\, {q}^{2}+176\, {q}^{5}+176\, {q}^{6}+88\, {q}^{7}+O\left({q}^{8}\right), 3\, M3-11\, M2+8\, M1\right], \left[{q}^{-8}-2\, {q}^{-7}-3\, {q}^{-6}+6\, {q}^{-5}+2\, {q}^{-4}-{q}^{-2}-10\, {q}^{-1}-2\, q+10\, {q}^{2}+O\left({q}^{3}\right), M6\right]\right], 2=\left[\left[{q}^{-7}-4\, {q}^{-5}+2\, {q}^{-3}+8\, {q}^{-1}-5\, q-4\, {q}^{3}+O\left({q}^{4}\right), M5\right]\right], 1=\left[\left[{q}^{-6}+2\, {q}^{-5}-{q}^{-4}-2\, {q}^{-3}-{q}^{-2}-6\, {q}^{-1}+4\, q-5\, {q}^{2}+4\, {q}^{3}+6\, {q}^{4}+O\left({q}^{5}\right), M4\right]\right]\right)\right] \]
QEtaAlgebraBasis(QEtaExtendedAlgebra(Integer,ModularFunctionQSeriesInfinity(Integer),QEtaLazyAlgebra(Integer,Polynomial(Integer))))
Time: 0.01 sec
Out[41]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [42]:
rspec := eqSPEC(1,[-1]); nn := 22; m := 11; t := 6;
sspec: SPEC := cofactInfM0(nn, idxs, rspec, m, t)
assertEquals(sspec, eqSPEC(nn,[10,2,11,-22]))
xf := toX1(C, specM0A1(C)(sspec,rspec,m,t), F)
Out[42]:
PositiveInteger
Time: 0 sec
-- == z:=[zinhom=[], zhom=[], zfree=[]]
-- >= z:=[zinhom=[[4, -1, 1], [5, -1, 2], [4, -1, 2]], zhom=[[3, -1, 0], [4, -1, 1], [1, -1, 1], [2, -1, 1], [3, -1, 1], [0, -1, 1], [2, 0, 1]], zfree=[]]
Out[42]:
\[ \left[\left[1, 10\right], \left[2, 2\right], \left[11, 11\right], \left[22, -22\right]\right] \]
QEtaSpecification
Time: 0.08 (EV) = 0.08 sec
Out[42]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
Out[42]:
\[ \left[11\, {q}^{-14}+187\, {q}^{-13}+1111\, {q}^{-12}+3696\, {q}^{-11}+10164\, {q}^{-10}+22286\, {q}^{-9}+44396\, {q}^{-8}+79211\, {q}^{-7}+135608\, {q}^{-6}+214500\, {q}^{-5}+327415\, {q}^{-4}+O\left({q}^{-3}\right), F\right] \]
QEtaExtendedAlgebra(Integer,ModularFunctionQSeriesInfinity(Integer),QEtaLazyAlgebra(Integer,Polynomial(Integer)))
Time: 0 sec

Interestingly, we have to multiply by 4, because otherwise the reduction would not return 0.

In [43]:
xr := reduce(4*xf, xab)$QTOPRED(ZZ,X1)
assertTrue(zero? xr)
Out[43]:
\[ \left[O\left({q}^{22}\right), \left(-19800\, M3-19081216\right)\, M5+\left(-51656\, M3+71554560\right)\, M4-44\, {M3}^{3}+\left(176\, M2-132\, M1-137819\right)\, {M3}^{2}+\left(556963\, M2-814880\, M1-16417280\right)\, M3-413227584\, M2+113124352\, M1+4\, F-524733440\right] \]
QEtaExtendedAlgebra(Integer,ModularFunctionQSeriesInfinity(Integer),QEtaLazyAlgebra(Integer,Polynomial(Integer)))
Time: 0 sec
Out[43]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [44]:
pol := x1Pol(C,xr)
polExpected := (11*(_
    (-1800*M3-1734656)*M5_
    + (-4696*M3+6504960)*M4_
    - 4*M3^3_
    + (16*M2-12*M1-12529)*M3^2_
    + (50633*M2-74080*M1-1492480)*M3_
    - 37566144*M2_
    + 10284032*M1_
    - 47703040)_
  + 4*F)$PolZ
assertEquals(pol, polExpected)
Out[44]:
\[ \left(-19800\, M3-19081216\right)\, M5+\left(-51656\, M3+71554560\right)\, M4-44\, {M3}^{3}+\left(176\, M2-132\, M1-137819\right)\, {M3}^{2}+\left(556963\, M2-814880\, M1-16417280\right)\, M3-413227584\, M2+113124352\, M1+4\, F-524733440 \]
Polynomial(Integer)
Time: 0 sec
Out[44]:
\[ \left(-19800\, M3-19081216\right)\, M5+\left(-51656\, M3+71554560\right)\, M4-44\, {M3}^{3}+\left(176\, M2-132\, M1-137819\right)\, {M3}^{2}+\left(556963\, M2-814880\, M1-16417280\right)\, M3-413227584\, M2+113124352\, M1+4\, F-524733440 \]
Polynomial(Integer)
Time: 0 sec
Out[44]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [45]:
lcxr := [leadingCoefficient x for x in monomials(pol-4*F)];
divisibility11 := removeDuplicates [positiveRemainder(x, 11) for x in lcxr]
assertEquals(divisibility11, [0])
Out[45]:
List(Integer)
Time: 0 sec
Out[45]:
\[ \left[0\right] \]
List(Integer)
Time: 0 sec
Out[45]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [46]:
e := eval(pol, c+->c::LZZ, cons('F, msyms), cons(first xf, egens))_
     $ PolynomialEvaluation(ZZ, A1(ZZ))
assertTrue(zero? e)
Out[46]:
\[ O\left({q}^{6}\right) \]
ModularFunctionQSeriesInfinity(Integer)
Time: 0 sec
Out[46]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [47]:
-------------------------------------------------------------------
--endtest
-------------------------------------------------------------------

Paule's proof via computation in $C[t,F]$¶

In [48]:
-----------------------------------------------------------------
--test:Paule
-----------------------------------------------------------------
In [49]:
rspec := eqSPEC(1,[-1]); nn := 11; m := 11; t := 6;
idxs := etaFunctionIndices nn
sspec := cofactInfM0(nn, idxs, rspec, m, t)
xf := toX1(C, specM0A1(C)(sspec,rspec,m,t), 'F)
xt := toX1(C, specM0A1(C) eqSPEC(11,[12,-12]), 'T)
xab := samba([xt, xf])$QSAMBA(C,X1,QTOPRED);
assertEquals(# basis xab, 4)
pols := sort((x,y)+->degree x < degree y, [x1Pol(C,x) for x in basis xab])
polsExpected := [F, F^2, F^3, F^4]$List(PolC)
assertEquals(pols, polsExpected)
Out[49]:
PositiveInteger
Time: 0 sec
Out[49]:
\[ \left[\left[1\right], \left[11\right]\right] \]
List(List(Integer))
Time: 0 sec
-- == z:=[zinhom=[[0]], zhom=[], zfree=[]]
Out[49]:
\[ \left[\left[1, 12\right], \left[11, -11\right]\right] \]
QEtaSpecification
Time: 0.03 (EV) = 0.03 sec
Out[49]:
\[ \left[11\, {q}^{-4}+165\, {q}^{-3}+748\, {q}^{-2}+1639\, {q}^{-1}+3553+4136\, q+6347\, {q}^{2}+3586\, {q}^{3}+7414\, {q}^{4}-4444\, {q}^{5}+583\, {q}^{6}+O\left({q}^{7}\right), F\right] \]
QEtaExtendedAlgebra(Integer,ModularFunctionQSeriesInfinity(Integer),QEtaLazyAlgebra(Integer,Polynomial(Integer)))
Time: 0 sec
Out[49]:
\[ \left[{q}^{-5}-12\, {q}^{-4}+54\, {q}^{-3}-88\, {q}^{-2}-99\, {q}^{-1}+540-418\, q-648\, {q}^{2}+594\, {q}^{3}+836\, {q}^{4}+1056\, {q}^{5}+O\left({q}^{6}\right), T\right] \]
QEtaExtendedAlgebra(Integer,ModularFunctionQSeriesInfinity(Integer),QEtaLazyAlgebra(Integer,Polynomial(Integer)))
Time: 0 sec
-- numOfGaps:=[120, -1]
-- numOfGaps:=[120, -1]
-- numOfGaps:=[120, -1]
-- numOfGaps:=[120, -1]
-- numOfGaps:=[120, -1]
-- numOfGaps:=[120, -1]
-- numOfGaps:=[120, -1]
-- numOfGaps:=[120, -1]
-- numOfGaps:=[120, -1]
-- numOfGaps:=[120, -1]
-- numOfGaps:=[120, -1]
-- numOfGaps:=[120, -1]
Out[49]:
QEtaAlgebraBasis(QEtaExtendedAlgebra(Integer,ModularFunctionQSeriesInfinity(Integer),QEtaLazyAlgebra(Integer,Polynomial(Integer))))
Time: 0 sec
Out[49]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
Out[49]:
\[ \left[F, {F}^{2}, {F}^{3}, {F}^{4}\right] \]
List(Polynomial(Integer))
Time: 0 sec
Out[49]:
\[ \left[F, {F}^{2}, {F}^{3}, {F}^{4}\right] \]
List(Polynomial(Integer))
Time: 0 sec
Out[49]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [50]:
xr := reduce(xf^5, xab)$QTOPRED(C,X1)
assertTrue(zero? xr)
Out[50]:
\[ \left[O\left({q}^{22}\right), -161051\, {T}^{4}+\left(-1800843\, F-28100500582\right)\, {T}^{3}+\left(-5447783\, {F}^{2}+301427561028\, F-310989720965990\right)\, {T}^{2}+\left(-3674891\, {F}^{3}-199353759330\, {F}^{2}-533532824042570\, F+918994597271443220\right)\, T+{F}^{5}-73205\, {F}^{4}+2143588810\, {F}^{3}-31384283767210\, {F}^{2}+229748649317860805\, F-672749994932560009201\right] \]
QEtaExtendedAlgebra(Integer,ModularFunctionQSeriesInfinity(Integer),QEtaLazyAlgebra(Integer,Polynomial(Integer)))
Time: 0 sec
Out[50]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [51]:
pol := x1Pol(C,xr)
c := coefficient(pol, F, 5)
polExpected := (-F^5_
  + 5*11^4*F^4_
  + 11^4*(251*T-2*5*11^4)*F^3_
  + 11^3*(4093*T^2+2*3*5*11^5*31*T+2*5*11^9)*F^2_
  + 11^4*(3*41*T^3-2^2*3*11^3*1289*T^2+2*5*11^8*17*T-5*11^12)*F_
  + 11^5*(T+11^4)*(T^3+11^2*1321*T^2-3*7*11^7*T+11^11))$PolZ
assertEquals(-pol, polExpected)
Out[51]:
\[ -161051\, {T}^{4}+\left(-1800843\, F-28100500582\right)\, {T}^{3}+\left(-5447783\, {F}^{2}+301427561028\, F-310989720965990\right)\, {T}^{2}+\left(-3674891\, {F}^{3}-199353759330\, {F}^{2}-533532824042570\, F+918994597271443220\right)\, T+{F}^{5}-73205\, {F}^{4}+2143588810\, {F}^{3}-31384283767210\, {F}^{2}+229748649317860805\, F-672749994932560009201 \]
Polynomial(Integer)
Time: 0 sec
Out[51]:
\[ 1 \]
Polynomial(Integer)
Time: 0 sec
Out[51]:
\[ 161051\, {T}^{4}+\left(1800843\, F+28100500582\right)\, {T}^{3}+\left(5447783\, {F}^{2}-301427561028\, F+310989720965990\right)\, {T}^{2}+\left(3674891\, {F}^{3}+199353759330\, {F}^{2}+533532824042570\, F-918994597271443220\right)\, T-{F}^{5}+73205\, {F}^{4}-2143588810\, {F}^{3}+31384283767210\, {F}^{2}-229748649317860805\, F+672749994932560009201 \]
Polynomial(Integer)
Time: 0.01 sec
Out[51]:
\[ \texttt{true} \]
Boolean
Time: 0 sec

The above polynomial agrees with the relation that Peter Paule has on his Slide 32 of hia talk at "The 2016 International Number Theory Conference in honor of Krishna Alladi's 60th birthday" (Gainesville, March 17-21, 2016). Compare with formula (8) in \cite{Hemmecke::DancingSambaRamanujan:2018}.

In [52]:
-------------------------------------------------------------------
--endtest
-------------------------------------------------------------------

With $\mathbb{Z}_{(11)}$ and division by 11¶

In [53]:
-----------------------------------------------------------------
--test:Hemmecke2
-----------------------------------------------------------------

TODO: Introduce vectors in the second component so that we can track whether the just reduced element is divisible by 11.

In [54]:
C ==> IntegerLocalizedAtPrime 11
nn := 22::PP; -- level
idxs := etaFunctionIndices nn
m := 11::PP;
rspec: SPEC := eqSPEC(1,[-1])
orbs := [orb for tt in 0..m-1 | (orb := ORBIT(rspec,m,tt); one? # orb)]
t := first(first orbs) :: NN
Out[54]:
Void
Time: 0 sec
Out[54]:
PositiveInteger
Time: 0 sec
Out[54]:
\[ \left[\left[1\right], \left[2\right], \left[11\right], \left[22\right]\right] \]
List(List(Integer))
Time: 0 sec
Out[54]:
PositiveInteger
Time: 0 sec
Out[54]:
\[ \left[\left[1, -1\right]\right] \]
QEtaSpecification
Time: 0 sec
Out[54]:
\[ \left[\left[6\right]\right] \]
List(List(NonNegativeInteger))
Time: 0 sec
Out[54]:
\[ 6 \]
NonNegativeInteger
Time: 0 sec

Let's compute the expansion (at $\infty$) of $$ F(\tau) = g_r(\tau) q^{\frac{e}{24}} \sum_{k=0}^{\infty}p(m k + t)q^k. $$

Create modular series for p(11n+6)¶

In [55]:
sspec := cofactInfM0(nn, idxs, rspec, m, t)
xf := toX1(C, specM0A1(C)(sspec,rspec,m,t), 'F)
-- == z:=[zinhom=[], zhom=[], zfree=[]]
-- >= z:=[zinhom=[[4, -1, 1], [5, -1, 2], [4, -1, 2]], zhom=[[3, -1, 0], [4, -1, 1], [1, -1, 1], [2, -1, 1], [3, -1, 1], [0, -1, 1], [2, 0, 1]], zfree=[]]
Out[55]:
\[ \left[\left[1, 10\right], \left[2, 2\right], \left[11, 11\right], \left[22, -22\right]\right] \]
QEtaSpecification
Time: 0.06 (EV) = 0.07 sec
Out[55]:
\[ \left[11\, {q}^{-14}+11\, 17\, {q}^{-13}+11\, 101\, {q}^{-12}+11\, 336\, {q}^{-11}+{11}^{2}\, 84\, {q}^{-10}+11\, 2026\, {q}^{-9}+11\, 4036\, {q}^{-8}+11\, 7201\, {q}^{-7}+11\, 12328\, {q}^{-6}+11\, 19500\, {q}^{-5}+11\, 29765\, {q}^{-4}+O\left({q}^{-3}\right), F\right] \]
QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11))))
Time: 0 sec

The generators of the eta-quotients of level 22 are given by these exponents for the eta-functions (with arguments being the divisors of 22). The variable mspecs corresponds to the generators of $R^\infty(22)$.

In [56]:
mspecs := mSPECSInfM0(nn, idxs);
egens := [specM0A1(C)(spec) for spec in mspecs]
msyms := indexedSymbols("M", #mspecs)
xgens := [toX1(C, x, sym) for x in egens for sym in msyms];
xgens := cons(toX1(C, egens.1, 'T), rest xgens);
Out[56]:
List(QEtaSpecification)
Time: 0.02 (EV) = 0.02 sec
Out[56]:
\[ \left[{q}^{-5}+4\, {q}^{-4}+6\, {q}^{-3}+8\, {q}^{-2}+13\, {q}^{-1}+12+14\, q+24\, {q}^{2}+18\, {q}^{3}+20\, {q}^{4}+32\, {q}^{5}+O\left({q}^{6}\right), {q}^{-5}+{q}^{-4}+{q}^{-3}+2\, {q}^{-2}+2\, {q}^{-1}+3+4\, q+5\, {q}^{2}+6\, {q}^{3}+8\, {q}^{4}+10\, {q}^{5}+O\left({q}^{6}\right), {q}^{-5}-7\, {q}^{-4}+17\, {q}^{-3}-14\, {q}^{-2}+2\, {q}^{-1}-21+36\, q+13\, {q}^{2}-26\, {q}^{3}-24\, {q}^{4}+10\, {q}^{5}+O\left({q}^{6}\right), {q}^{-6}+2\, {q}^{-5}-{q}^{-4}-2\, {q}^{-3}-{q}^{-2}-6\, {q}^{-1}+4\, q-5\, {q}^{2}+4\, {q}^{3}+6\, {q}^{4}+O\left({q}^{5}\right), {q}^{-7}-4\, {q}^{-5}+2\, {q}^{-3}+8\, {q}^{-1}-5\, q-4\, {q}^{3}+O\left({q}^{4}\right), {q}^{-8}-2\, {q}^{-7}-3\, {q}^{-6}+6\, {q}^{-5}+2\, {q}^{-4}-{q}^{-2}-10\, {q}^{-1}-2\, q+10\, {q}^{2}+O\left({q}^{3}\right), {q}^{-9}-4\, {q}^{-8}+2\, {q}^{-7}+8\, {q}^{-6}-5\, {q}^{-5}-4\, {q}^{-4}-10\, {q}^{-3}+8\, {q}^{-2}+9\, {q}^{-1}+14\, q+O\left({q}^{2}\right)\right] \]
List(ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)))
Time: 0 sec
Out[56]:
\[ \left[M1, M2, M3, M4, M5, M6, M7\right] \]
List(Symbol)
Time: 0 sec
Out[56]:
List(QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11)))))
Time: 0 sec
Out[56]:
List(QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11)))))
Time: 0 sec
In [57]:
xt := xgens.1
xab := samba(xgens)$QSAMBA(C,X1,QTOPRED)
Out[57]:
\[ \left[{q}^{-5}+4\, {q}^{-4}+6\, {q}^{-3}+8\, {q}^{-2}+13\, {q}^{-1}+12+14\, q+24\, {q}^{2}+18\, {q}^{3}+20\, {q}^{4}+32\, {q}^{5}+O\left({q}^{6}\right), T\right] \]
QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11))))
Time: 0 sec
-- numOfGaps:=[216, -1]
-- numOfGaps:=[216, -1]
-- numOfGaps:=[162, -1]
-- numOfGaps:=[162, -1]
-- numOfGaps:=[109, -1]
-- numOfGaps:=[109, -1]
-- numOfGaps:=[56, -1]
-- numOfGaps:=[56, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
Out[57]:
\[ \left[mul=\left[{q}^{-5}+4\, {q}^{-4}+6\, {q}^{-3}+8\, {q}^{-2}+13\, {q}^{-1}+12+14\, q+24\, {q}^{2}+18\, {q}^{3}+20\, {q}^{4}+32\, {q}^{5}+O\left({q}^{6}\right), T\right], be=\texttt{table}\left(4=\left[\left[{q}^{-4}+\frac{5}{3}\, {q}^{-3}+2\, {q}^{-2}+11\, \frac{1}{3}\, {q}^{-1}+3+\frac{10}{3}\, q+\frac{19}{3}\, {q}^{2}+4\, {q}^{3}+4\, {q}^{4}+11\, \frac{2}{3}\, {q}^{5}+\frac{19}{3}\, {q}^{6}+O\left({q}^{7}\right), \frac{1}{3}\, T-\frac{1}{3}\, M2\right]\right], 3=\left[\left[11\, {q}^{-3}+11\, {q}^{-1}+11\, 2\, q+11\, 2\, {q}^{2}+11\, 2\, {q}^{5}+11\, 2\, {q}^{6}+11\, {q}^{7}+O\left({q}^{8}\right), T+\frac{3}{8}\, M3+11\, \left(-\frac{1}{8}\right)\, M2\right], \left[{q}^{-8}-2\, {q}^{-7}-3\, {q}^{-6}+6\, {q}^{-5}+2\, {q}^{-4}-{q}^{-2}-10\, {q}^{-1}-2\, q+10\, {q}^{2}+O\left({q}^{3}\right), M6\right]\right], 2=\left[\left[{q}^{-7}-4\, {q}^{-5}+2\, {q}^{-3}+8\, {q}^{-1}-5\, q-4\, {q}^{3}+O\left({q}^{4}\right), M5\right]\right], 1=\left[\left[{q}^{-6}+2\, {q}^{-5}-{q}^{-4}-2\, {q}^{-3}-{q}^{-2}-6\, {q}^{-1}+4\, q-5\, {q}^{2}+4\, {q}^{3}+6\, {q}^{4}+O\left({q}^{5}\right), M4\right]\right]\right)\right] \]
QEtaAlgebraBasis(QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11)))))
Time: 0 sec

Due to another critical element selection strategy, the resulting polynomial is a bit different.

In [58]:
be := basisElements xab
bas := sort(smallerGrade?, basis xab);
Out[58]:
\[ \texttt{table}\left(4=\left[\left[{q}^{-4}+\frac{5}{3}\, {q}^{-3}+2\, {q}^{-2}+11\, \frac{1}{3}\, {q}^{-1}+3+\frac{10}{3}\, q+\frac{19}{3}\, {q}^{2}+4\, {q}^{3}+4\, {q}^{4}+11\, \frac{2}{3}\, {q}^{5}+\frac{19}{3}\, {q}^{6}+O\left({q}^{7}\right), \frac{1}{3}\, T-\frac{1}{3}\, M2\right]\right], 3=\left[\left[11\, {q}^{-3}+11\, {q}^{-1}+11\, 2\, q+11\, 2\, {q}^{2}+11\, 2\, {q}^{5}+11\, 2\, {q}^{6}+11\, {q}^{7}+O\left({q}^{8}\right), T+\frac{3}{8}\, M3+11\, \left(-\frac{1}{8}\right)\, M2\right], \left[{q}^{-8}-2\, {q}^{-7}-3\, {q}^{-6}+6\, {q}^{-5}+2\, {q}^{-4}-{q}^{-2}-10\, {q}^{-1}-2\, q+10\, {q}^{2}+O\left({q}^{3}\right), M6\right]\right], 2=\left[\left[{q}^{-7}-4\, {q}^{-5}+2\, {q}^{-3}+8\, {q}^{-1}-5\, q-4\, {q}^{3}+O\left({q}^{4}\right), M5\right]\right], 1=\left[\left[{q}^{-6}+2\, {q}^{-5}-{q}^{-4}-2\, {q}^{-3}-{q}^{-2}-6\, {q}^{-1}+4\, q-5\, {q}^{2}+4\, {q}^{3}+6\, {q}^{4}+O\left({q}^{5}\right), M4\right]\right]\right) \]
XHashTable(Integer,List(QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11))))))
Time: 0 sec
Out[58]:
List(QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11)))))
Time: 0 sec

We show that the basis element of degree 3 has coefficients that are all divisible by 11. So we can divide it by 11. The method is to multiply by t and track the cofactors of the basis elements used in this reduction. That this reduction should give 0 is clear, since xab is an algebra basis.

In [59]:
x3 := xt*be.3.1 - 11*(be.3.2 + 6*be.2.1 +10*be.1.1 + 10*xt - 11*be.4.1 - ((1/3)::C)*be.3.1 -11::C*1$X)
assertTrue(zero? x3)
Out[59]:
\[ \left[O\left({q}^{13}\right), {T}^{2}+\left(\frac{3}{8}\, M3+11\, \left(-\frac{1}{8}\right)\, M2+11\, \left(-6\right)\right)\, T+11\, \left(-1\right)\, M6+11\, \left(-6\right)\, M5+11\, \left(-10\right)\, M4+11\, \frac{1}{8}\, M3+{11}^{2}\, \left(-\frac{3}{8}\right)\, M2+{11}^{2}\right] \]
QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11))))
Time: 0.02 sec
Out[59]:
\[ \texttt{true} \]
Boolean
Time: 0 sec

It's still not a representation in terms of the Mi.

In [60]:
p := x1Pol(C,x3)
l := [[e, x] for x in monomials(p)| zero?(e:=exponent leadingCoefficient x)]
assertTrue(not empty? l)
Out[60]:
\[ {T}^{2}+\left(\frac{3}{8}\, M3+11\, \left(-\frac{1}{8}\right)\, M2+11\, \left(-6\right)\right)\, T+11\, \left(-1\right)\, M6+11\, \left(-6\right)\, M5+11\, \left(-10\right)\, M4+11\, \frac{1}{8}\, M3+{11}^{2}\, \left(-\frac{3}{8}\right)\, M2+{11}^{2} \]
Polynomial(IntegerLocalizedAtPrime(11))
Time: 0 sec
Out[60]:
\[ \left[\left[0, {T}^{2}\right], \left[0, \frac{3}{8}\, M3\, T\right]\right] \]
List(List(Polynomial(IntegerLocalizedAtPrime(11))))
Time: 0 sec
Out[60]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [61]:
-------------------------------------------------------------------
--endtest
-------------------------------------------------------------------

With $\mathbb{Z}_{(11)}$ and different strategy¶

In [62]:
-----------------------------------------------------------------
--test:Hemmecke3
-----------------------------------------------------------------

This test shows divisibility by 11, but uses a specifically tailored computation of an algebra basis and additional mamual reduction.

In [63]:
C ==> IntegerLocalizedAtPrime 11
nn := 22::PP; -- level
idxs := etaFunctionIndices nn
m := 11::PP;
rspec: SPEC := eqSPEC(1,[-1])
orbs := [orb for tt in 0..m-1 | (orb := ORBIT(rspec,m,tt); one? # orb)]
t := first(first orbs) :: NN
Out[63]:
Void
Time: 0 sec
Out[63]:
PositiveInteger
Time: 0 sec
Out[63]:
\[ \left[\left[1\right], \left[2\right], \left[11\right], \left[22\right]\right] \]
List(List(Integer))
Time: 0 sec
Out[63]:
PositiveInteger
Time: 0 sec
Out[63]:
\[ \left[\left[1, -1\right]\right] \]
QEtaSpecification
Time: 0 sec
Out[63]:
\[ \left[\left[6\right]\right] \]
List(List(NonNegativeInteger))
Time: 0 sec
Out[63]:
\[ 6 \]
NonNegativeInteger
Time: 0 sec

Let's compute the expansion (at $\infty$) of $$ F(\tau) = g_r(\tau) q^{\frac{e}{24}} \sum_{k=0}^{\infty}p(m k + t)q^k. $$

Create modular series for p(11n+6)¶

In [64]:
sspec := cofactInfM0(nn, idxs, rspec, m, t)
xf := toX1(C, specM0A1(C)(sspec,rspec,m,t), 'F)
-- == z:=[zinhom=[], zhom=[], zfree=[]]
-- >= z:=[zinhom=[[4, -1, 1], [5, -1, 2], [4, -1, 2]], zhom=[[3, -1, 0], [4, -1, 1], [1, -1, 1], [2, -1, 1], [3, -1, 1], [0, -1, 1], [2, 0, 1]], zfree=[]]
Out[64]:
\[ \left[\left[1, 10\right], \left[2, 2\right], \left[11, 11\right], \left[22, -22\right]\right] \]
QEtaSpecification
Time: 0.08 (EV) = 0.08 sec
Out[64]:
\[ \left[11\, {q}^{-14}+11\, 17\, {q}^{-13}+11\, 101\, {q}^{-12}+11\, 336\, {q}^{-11}+{11}^{2}\, 84\, {q}^{-10}+11\, 2026\, {q}^{-9}+11\, 4036\, {q}^{-8}+11\, 7201\, {q}^{-7}+11\, 12328\, {q}^{-6}+11\, 19500\, {q}^{-5}+11\, 29765\, {q}^{-4}+O\left({q}^{-3}\right), F\right] \]
QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11))))
Time: 0 sec

The generators of the eta-quotients of level 22 are given by these exponents for the eta-functions (with arguments being the divisors of 22). The variable mspecs corresponds to the generators of $R^\infty(22)$.

In [65]:
mspecs := mSPECSInfM0(nn, idxs);
egens := [specM0A1(C)(spec) for spec in mspecs]
msyms := indexedSymbols("M", #mspecs)
xgens := [toX1(C, x, sym) for x in egens for sym in msyms];
xgens := cons(toX1(C, egens.1, 'T), rest xgens);
Out[65]:
List(QEtaSpecification)
Time: 0.02 (EV) = 0.02 sec
Out[65]:
\[ \left[{q}^{-5}+4\, {q}^{-4}+6\, {q}^{-3}+8\, {q}^{-2}+13\, {q}^{-1}+12+14\, q+24\, {q}^{2}+18\, {q}^{3}+20\, {q}^{4}+32\, {q}^{5}+O\left({q}^{6}\right), {q}^{-5}+{q}^{-4}+{q}^{-3}+2\, {q}^{-2}+2\, {q}^{-1}+3+4\, q+5\, {q}^{2}+6\, {q}^{3}+8\, {q}^{4}+10\, {q}^{5}+O\left({q}^{6}\right), {q}^{-5}-7\, {q}^{-4}+17\, {q}^{-3}-14\, {q}^{-2}+2\, {q}^{-1}-21+36\, q+13\, {q}^{2}-26\, {q}^{3}-24\, {q}^{4}+10\, {q}^{5}+O\left({q}^{6}\right), {q}^{-6}+2\, {q}^{-5}-{q}^{-4}-2\, {q}^{-3}-{q}^{-2}-6\, {q}^{-1}+4\, q-5\, {q}^{2}+4\, {q}^{3}+6\, {q}^{4}+O\left({q}^{5}\right), {q}^{-7}-4\, {q}^{-5}+2\, {q}^{-3}+8\, {q}^{-1}-5\, q-4\, {q}^{3}+O\left({q}^{4}\right), {q}^{-8}-2\, {q}^{-7}-3\, {q}^{-6}+6\, {q}^{-5}+2\, {q}^{-4}-{q}^{-2}-10\, {q}^{-1}-2\, q+10\, {q}^{2}+O\left({q}^{3}\right), {q}^{-9}-4\, {q}^{-8}+2\, {q}^{-7}+8\, {q}^{-6}-5\, {q}^{-5}-4\, {q}^{-4}-10\, {q}^{-3}+8\, {q}^{-2}+9\, {q}^{-1}+14\, q+O\left({q}^{2}\right)\right] \]
List(ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)))
Time: 0 sec
Out[65]:
\[ \left[M1, M2, M3, M4, M5, M6, M7\right] \]
List(Symbol)
Time: 0 sec
Out[65]:
List(QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11)))))
Time: 0 sec
Out[65]:
List(QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11)))))
Time: 0 sec

Because we observed that using all generators of grade 5 leads to a series (of grade 3) with leading coefficient 11 in the basis, we compute a basis with just one of those generators. Of course, we cannot expect that this leads to a basis by which we can reduce xf to zero. However, we hope that we arrive at a zero reduction if we later use the other grade 5 elements.

In [66]:
#xgens
xgens0 := [xgens.i for i in [1,4,5,6,7]]
xab0 := samba(xgens0)$QSAMBA(C,X1,QTOPRED)
Out[66]:
\[ 7 \]
PositiveInteger
Time: 0 sec
Out[66]:
\[ \left[\left[{q}^{-5}+4\, {q}^{-4}+6\, {q}^{-3}+8\, {q}^{-2}+13\, {q}^{-1}+12+14\, q+24\, {q}^{2}+18\, {q}^{3}+20\, {q}^{4}+32\, {q}^{5}+O\left({q}^{6}\right), T\right], \left[{q}^{-6}+2\, {q}^{-5}-{q}^{-4}-2\, {q}^{-3}-{q}^{-2}-6\, {q}^{-1}+4\, q-5\, {q}^{2}+4\, {q}^{3}+6\, {q}^{4}+O\left({q}^{5}\right), M4\right], \left[{q}^{-7}-4\, {q}^{-5}+2\, {q}^{-3}+8\, {q}^{-1}-5\, q-4\, {q}^{3}+O\left({q}^{4}\right), M5\right], \left[{q}^{-8}-2\, {q}^{-7}-3\, {q}^{-6}+6\, {q}^{-5}+2\, {q}^{-4}-{q}^{-2}-10\, {q}^{-1}-2\, q+10\, {q}^{2}+O\left({q}^{3}\right), M6\right], \left[{q}^{-9}-4\, {q}^{-8}+2\, {q}^{-7}+8\, {q}^{-6}-5\, {q}^{-5}-4\, {q}^{-4}-10\, {q}^{-3}+8\, {q}^{-2}+9\, {q}^{-1}+14\, q+O\left({q}^{2}\right), M7\right]\right] \]
List(QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11)))))
Time: 0 sec
-- numOfGaps:=[216, -1]
-- numOfGaps:=[163, -1]
-- numOfGaps:=[110, -1]
-- numOfGaps:=[57, -1]
-- numOfGaps:=[4, -1]
-- numOfGaps:=[4, -1]
-- numOfGaps:=[4, -1]
-- numOfGaps:=[4, -1]
-- numOfGaps:=[4, -1]
-- numOfGaps:=[4, -1]
-- numOfGaps:=[4, -1]
-- numOfGaps:=[4, -1]
-- numOfGaps:=[4, -1]
-- numOfGaps:=[4, -1]
-- numOfGaps:=[4, -1]
Out[66]:
\[ \left[mul=\left[{q}^{-5}+4\, {q}^{-4}+6\, {q}^{-3}+8\, {q}^{-2}+13\, {q}^{-1}+12+14\, q+24\, {q}^{2}+18\, {q}^{3}+20\, {q}^{4}+32\, {q}^{5}+O\left({q}^{6}\right), T\right], be=\texttt{table}\left(1=\left[\left[{q}^{-6}+2\, {q}^{-5}-{q}^{-4}-2\, {q}^{-3}-{q}^{-2}-6\, {q}^{-1}+4\, q-5\, {q}^{2}+4\, {q}^{3}+6\, {q}^{4}+O\left({q}^{5}\right), M4\right]\right], 3=\left[\left[{q}^{-8}-2\, {q}^{-7}-3\, {q}^{-6}+6\, {q}^{-5}+2\, {q}^{-4}-{q}^{-2}-10\, {q}^{-1}-2\, q+10\, {q}^{2}+O\left({q}^{3}\right), M6\right]\right], 4=\left[\left[{q}^{-9}-4\, {q}^{-8}+2\, {q}^{-7}+8\, {q}^{-6}-5\, {q}^{-5}-4\, {q}^{-4}-10\, {q}^{-3}+8\, {q}^{-2}+9\, {q}^{-1}+14\, q+O\left({q}^{2}\right), M7\right]\right], 2=\left[\left[{q}^{-7}-4\, {q}^{-5}+2\, {q}^{-3}+8\, {q}^{-1}-5\, q-4\, {q}^{3}+O\left({q}^{4}\right), M5\right]\right]\right)\right] \]
QEtaAlgebraBasis(QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11)))))
Time: 0 sec
In [67]:
bas := sort(smallerGrade?, basis xab0);
[qetaGrade x for x in bas]
xr0 := reduce(xf,xab0)$QTOPRED(C,X1)
Out[67]:
List(QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11)))))
Time: 0 sec
Out[67]:
\[ \left[6, 7, 8, 9\right] \]
List(Integer)
Time: 0 sec
Out[67]:
\[ \left[{11}^{3}\, {q}^{-4}+{11}^{3}\, \frac{61}{53}\, {q}^{-3}+{11}^{3}\, 2\, {q}^{-2}+{11}^{3}\, \frac{167}{53}\, {q}^{-1}+{11}^{3}\, \frac{21}{53}+{11}^{3}\, \frac{122}{53}\, q+{11}^{3}\, \frac{281}{53}\, {q}^{2}+{11}^{3}\, 4\, {q}^{3}+{11}^{3}\, 4\, {q}^{4}+{11}^{3}\, \frac{334}{53}\, {q}^{5}+{11}^{3}\, \frac{281}{53}\, {q}^{6}+O\left({q}^{7}\right), {11}^{2}\, \frac{18}{53}\, {T}^{2}+\left(11\, \frac{1}{53}\, M7+11\, \frac{17}{53}\, M6+11\, \frac{75}{53}\, M5+{11}^{3}\, \frac{1}{53}\, M4+{11}^{2}\, \left(-\frac{1041}{53}\right)\right)\, T+{11}^{2}\, \left(-\frac{56}{53}\right)\, M7+{11}^{2}\, \left(-\frac{463}{53}\right)\, M6+{11}^{2}\, \left(-\frac{1399}{53}\right)\, M5+{11}^{2}\, \left(-\frac{2109}{53}\right)\, M4-\frac{1}{53}\, F\right] \]
QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11))))
Time: 0 sec

As was to be expected that reduction does not lead to zero.

In [68]:
xab := samba(xgens)$QSAMBA(C,X1,QTOPRED);
xr := reduce(xr0,xab)$QTOPRED(C,X1)
-- numOfGaps:=[216, -1]
-- numOfGaps:=[216, -1]
-- numOfGaps:=[162, -1]
-- numOfGaps:=[162, -1]
-- numOfGaps:=[109, -1]
-- numOfGaps:=[109, -1]
-- numOfGaps:=[56, -1]
-- numOfGaps:=[56, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
-- numOfGaps:=[2, -1]
Out[68]:
QEtaAlgebraBasis(QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11)))))
Time: 0.01 sec
Out[68]:
\[ \left[O\left({q}^{22}\right), {11}^{2}\, \left(-\frac{3}{23}\right)\, {T}^{2}+\left(11\, \left(-\frac{1}{138}\right)\, M7+11\, \left(-\frac{17}{138}\right)\, M6+11\, \left(-\frac{25}{46}\right)\, M5+{11}^{3}\, \left(-\frac{1}{138}\right)\, M4+{11}^{2}\, \frac{604}{69}\right)\, T+{11}^{2}\, \frac{28}{69}\, M7+{11}^{2}\, \frac{463}{138}\, M6+{11}^{2}\, \frac{1399}{138}\, M5+{11}^{2}\, \frac{703}{46}\, M4+{11}^{2}\, \left(-\frac{41}{552}\right)\, M3+{11}^{3}\, \left(-\frac{19}{184}\right)\, M2+\frac{1}{138}\, F+{11}^{3}\, \left(-1\right)\right] \]
QEtaExtendedAlgebra(IntegerLocalizedAtPrime(11),ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11)),QEtaLazyAlgebra(IntegerLocalizedAtPrime(11),Polynomial(IntegerLocalizedAtPrime(11))))
Time: 0 sec

And, voila, we have a representation that reveals divisibility by 11.

In [69]:
pol := x1Pol(C, xr)
fpol := F - ((1/coefficient(pol,'F,1))::C)*pol
assertTrue(not member?('F, variables(fpol)))
c11s := [exponent leadingCoefficient m for m in monomials fpol]
assertEquals(removeDuplicates [x>0 for x in c11s], [true])
Out[69]:
\[ {11}^{2}\, \left(-\frac{3}{23}\right)\, {T}^{2}+\left(11\, \left(-\frac{1}{138}\right)\, M7+11\, \left(-\frac{17}{138}\right)\, M6+11\, \left(-\frac{25}{46}\right)\, M5+{11}^{3}\, \left(-\frac{1}{138}\right)\, M4+{11}^{2}\, \frac{604}{69}\right)\, T+{11}^{2}\, \frac{28}{69}\, M7+{11}^{2}\, \frac{463}{138}\, M6+{11}^{2}\, \frac{1399}{138}\, M5+{11}^{2}\, \frac{703}{46}\, M4+{11}^{2}\, \left(-\frac{41}{552}\right)\, M3+{11}^{3}\, \left(-\frac{19}{184}\right)\, M2+\frac{1}{138}\, F+{11}^{3}\, \left(-1\right) \]
Polynomial(IntegerLocalizedAtPrime(11))
Time: 0 sec
Out[69]:
\[ {11}^{2}\, 18\, {T}^{2}+\left(11\, M7+11\, 17\, M6+11\, 75\, M5+{11}^{3}\, M4+{11}^{2}\, \left(-1208\right)\right)\, T+{11}^{2}\, \left(-56\right)\, M7+{11}^{2}\, \left(-463\right)\, M6+{11}^{2}\, \left(-1399\right)\, M5+{11}^{2}\, \left(-2109\right)\, M4+{11}^{2}\, \frac{41}{4}\, M3+{11}^{3}\, \frac{57}{4}\, M2+{11}^{3}\, 138 \]
Polynomial(IntegerLocalizedAtPrime(11))
Time: 0 sec
Out[69]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
Out[69]:
\[ \left[2, 1, 1, 1, 3, 2, 2, 2, 2, 2, 2, 3, 3\right] \]
List(NonNegativeInteger)
Time: 0 sec
Out[69]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [70]:
syms := cons('T,rest msyms)
Out[70]:
\[ \left[T, M2, M3, M4, M5, M6, M7\right] \]
List(Symbol)
Time: 0 sec
In [71]:
rf := eval(fpol, c+->c*1$A1(C),syms,egens)$PolynomialEvaluation(C,A1 C)
Out[71]:
\[ 11\, {q}^{-14}+11\, 17\, {q}^{-13}+11\, 101\, {q}^{-12}+11\, 336\, {q}^{-11}+{11}^{2}\, 84\, {q}^{-10}+11\, 2026\, {q}^{-9}+11\, 4036\, {q}^{-8}+11\, 7201\, {q}^{-7}+11\, 12328\, {q}^{-6}+11\, 19500\, {q}^{-5}+11\, 29765\, {q}^{-4}+O\left({q}^{-3}\right) \]
ModularFunctionQSeriesInfinity(IntegerLocalizedAtPrime(11))
Time: 0 sec
In [72]:
assertTrue(zero?(x1A1(C,xf) - rf))
Out[72]:
\[ \texttt{true} \]
Boolean
Time: 0 sec
In [73]:
-------------------------------------------------------------------
--endtest
-------------------------------------------------------------------