FUNCTION : checkmult - check whether coefficients of q-series are multiplicative
CALLING SEQUENCE : checkmult()
checkmult(QS,T)
checkmult(QS,T,x)
PARAMETERS : QS - q-series
T - positive integer
x - yes/no
SYNOPSIS :
Determines whether the coefficients of QS are multiplicative up to q^T
If nargs=3 and arg3=yes then m,n where QS fails to be multiplicative are
printed. Otherwise only the first instance of failure is printed.
---------------------------------------------------------
EXAMPLES :
> with(qseries):
> checkmult();
---------------------------------------------------------
checkmult(QS,T)
checkmult(QS,T,yes)
Returns 1 if QS up to Q^T is multiplicative
If nargs=3 and arg3=yes then m,n where QS fails to
be multiplicative are printed.
Otherwise only the first instance of failure is
printed.
---------------------------------------------------------
> EE:=n->q^(n/24)*etaq(q,n,1000):
> F1:=EE(3)^3*EE(5)^3: F2:=EE(1)^3*EE(15)^3:
> etamake(F1,q,100);
3 3
eta(5 tau) eta(3 tau)
> etamake(F2,q,100);
3 3
eta(15 tau) eta(tau)
> S1:=series(F1+F2,q,1001):
> S2:=series(F1-F2,q,1001):
> checkmult(S1,1000);
" MULTIPLICATIVE"
1
> checkmult(S2,1000);
" MULTIPLICATIVE"
1
> S3:=series(F1,q,1000):
> checkmult(S3,1000);
"NOT MULTIPLICATIVE"
"failure at m=", 3, "and n=", 2
0
> checkmult(S3,30,yes);
"NOT MULTIPLICATIVE"
"failure at m=", 3, "and n=", 2
"NOT MULTIPLICATIVE"
"failure at m=", 5, "and n=", 2
"NOT MULTIPLICATIVE"
"failure at m=", 2, "and n=", 3
"NOT MULTIPLICATIVE"
"failure at m=", 5, "and n=", 3
"NOT MULTIPLICATIVE"
"failure at m=", 8, "and n=", 3
"NOT MULTIPLICATIVE"
"failure at m=", 2, "and n=", 5
"NOT MULTIPLICATIVE"
"failure at m=", 3, "and n=", 5
"NOT MULTIPLICATIVE"
"failure at m=", 3, "and n=", 8
0
DISCUSSION :
Let F1 = eta(3*tau)^3*eta(5*tau)^3, F2 = eta(tau)^3*eta(15*tau)^3.
The coefficients of both F1 + F2 and F1 - F2 appear to be multiplicative
at least up to q^1000.
However the coefficients of F1 are not. In fact first fail occurs
at 2,3.
SEE ALSO :
XXXXX