q-Pochhammer Symbol

Author

Eric W. Weisstein
September 23, 2008

This notebook downloaded from http://mathworld.wolfram.com/notebooks/SpecialFunctions/q-PochhammerSymbol.nb.

For more information, see Eric's MathWorld entry http://mathworld.wolfram.com/q-PochhammerSymbol.html.

©2008 Wolfram Research, Inc. except for portions noted otherwise

Notation

QPochhammer[q]//TraditionalForm

QPochhammer[a,q]//TraditionalForm

QPochhammer[a,q,k]//TraditionalForm

Evaluation

QPochhammer[q]->QPochhammer[q,q]

QPochhammer[q]

QPochhammer[0] -> 1

QPochhammer[0]

QPochhammer[1] -> 0

QPochhammer[1]

QPochhammer[a, q] \[NotRule] QPochhammer[a, q, ∞]

QPochhammer[a,q]-QPochhammer[a,q,∞]

Simplify[QPochhammer[a,q]-QPochhammer[a,q,∞]]

FullSimplify[%]

FunctionExpand[%]

Representations

l=Select[Table[RandomComplex[WorkingPrecision->100],{100}],Abs[#]<1&];

(QPochhammer1[q])==(q^(-1/24))(DedekindEta[-((i ln(q))/(2 π))])

FullSimplify[DedekindEta[-I Log[q]/(2 Pi)]/q^(1/24)-QPochhammer[q],-1<q<1]

Subtract@@@(({QPochhammer[q],((DedekindEta[-((I Log[q])/(2 π))])/(q^(1/24)))}/.q->#)&/@l)//Chop//Union

(QPochhammer1[q])==((((Subscript[ϑ, 1]^′)(0,(Sqrt[q])))^(1/3))/((2^(1/3)) (q^(1/24))))/;-1<q<1

D[(((EllipticThetaPrime[1,0,(Sqrt[q])])^(1/3))/((q^(1/24)) (2^(1/3)))),q]

Subtract@@@Table[{QPochhammer[q],(((EllipticThetaPrime[1,0,(Sqrt[q])])^(1/3))/((q^(1/24)) (2^(1/3))))}/.q->RandomReal[{-1,1},WorkingPrecision->100],{100}]//N//Chop//Union

Subtract@@@Table[{QPochhammer[q],(((EllipticThetaPrime[1,0,(Sqrt[q])])^(1/3))/((q^(1/24)) (2^(1/3))))}/.q->I RandomReal[{-1,1},WorkingPrecision->100],{100}]//N//Chop//Union

QPochhammer[q]-(((EllipticThetaPrime[1,0,(Sqrt[q])])^(1/3))/((q^(1/24)) (2^(1/3))))/.q->x+I y

Plot3D[-(((EllipticThetaPrime[1,0,(Sqrt[x+I y])])^(1/3))/((2^(1/3)) (((x+I y))^(1/24))))+QPochhammer[x+I y,x+I y],{x,-1,1},{y,-1,1},RegionFunction->(#1^2+#2^2<1&)]

(QPochhammer1[q])==(1/((Sqrt[3])(q^(1/24)))) (Subscript[ϑ, 2])((π/6),(q^(1/6)))

FullSimplify[(q^(-1/24))((EllipticTheta[2,(π/6),(q^(1/6))])/(Sqrt[3]))]

FullSimplify[((EllipticTheta[2,(π/6),(q^(1/6))])/((Sqrt[3]) (q^(1/24))))-QPochhammer[q]]

Subtract@@@(({QPochhammer[q],(q^(-1/24))((EllipticTheta[2,(π/6),(q^(1/6))])/(Sqrt[3]))}/.q->#)&/@l)//Chop//Union

Expansions

V6

Table[QSeries[a,q,k],{k,5}]//ColumnForm//TraditionalForm

Table[QSeries[q,k],{k,5}]//ColumnForm//TraditionalForm

V7

Table[QPochhammer[a,q,k],{k,5}]//FunctionExpand//ColumnForm//TraditionalForm

Plots

(QPochhammer2[x, y])

Plot3D[QPochhammer[x,y],{x,0.001,.999},{y,.001,.999},AxesLabel->{x,y,z},PlotRange->All]

Real Axis

<<Utilities`Plot`

Plot[QPochhammer[x],{x,-1,1},AxesLabel->{q,QPochhammer[q]}]

Complex Plane

<<Utilities`Plot`

V6

(g=ComplexPlot3D[QSeries[q],{q,-1,1},PlotPoints->150])//Timing

Show[(g/.s_SurfaceGraphics:>Graphics3D[s])/.Polygon[x_]:>If[Max[Last/@x]>2,{},Polygon[x]]]

ComplexContourPlot[QSeries[q,30],{q,-1,1},ComplexPlotLabel->HoldForm[QSeries[q,m]]]//Timing

ComplexContourPlot[QSeries[q,50],{q,-1,1},ComplexPlotLabel->HoldForm[QSeries[q,m]]]//Timing

QSeriesClipped[q_,n_]:=With[{x=QSeries[q,n]},If[Abs[x]<2.^1024,x,0]]

ComplexContourPlot[QSeriesClipped[q,80],{q,-1,1},ComplexPlotLabel->HoldForm[QSeries[q,m]]]//Timing

ComplexContourPlot[QSeries[q],{q,-1,1}]//Timing

V7

<<Utilities`Plot`

ComplexPlot3D[QPochhammer[q],{q,-1,1},PlotPoints->200]

ComplexPlot3D[QPochhammer[q],{q,-1,1},PlotPoints->200,RegionFunction->(#1^2+#2^2<.95&)]

With[{r=.95},
Plot3D[Re[QPochhammer[x+I y]],{x,-r,r},{y,-r,r},Mesh->False,PlotPoints->20,MaxRecursion->1,RegionFunction->(#1^2+#2^2<.99&)]]//Timing

ComplexContourPlot[QPochhammer[q],{q,-1,1},PlotPoints->200]

Numerical Evaluation

Now

Do[Print[{n,QPochhammer[-1+10.^-n]//Timing}],{n,7}]

Do[Print[{n,QPochhammer[1-10.^-n]//Timing}],{n,7}]

Sum

(∑_(k=0)^n)(((-a))^k) (q^(Binomial[k, 2])) (QBinomial[n, k, q])==(QPochhammer[a, q, n])

Sum[QBinomial[n,k,q](q^(Binomial[k,2]))(((-a))^k),{k,0,n}]

Products

(∏_(k=0)^(n-1))(1-a (q^k))==(QPochhammer[a, q, n])

Product[1-a q^k,{k,0,n-1}]

(∏_(k=0)^∞)(1-a (q^k))==(QPochhammer2[a, q])

Product[1-a q^k,{k,0,∞}]

(∏_(k=1)^(n-1))(1-(q^k))==(QPochhammer[q, q, n-1])

Product[1-q^k,{k,n-1}]

(∏_(k=1)^∞)(1-(q^k))==(QPochhammer2[q, q])

Product[1-q^k,{k,∞}]

(∏_k^∞)(1-(((-1))^k))==∞

Product[1-(-1)^k,{k,Infinity}]

Product[1-(-1)^k,{k,Infinity},Regularization->"Dirichlet"]

Identities

(QPochhammer[a, q, n])==((QPochhammer2[a, q])/(QPochhammer2[a (q^n), q]))

FullSimplify[((QPochhammer[a,q])/(QPochhammer[a (q^n),q])),n∈Integers&&n>0]

FullSimplify[QPochhammer[a,q,n]-((QPochhammer[a,q])/(QPochhammer[a (q^n),q])),n∈Integers&&n>0]

(1/(q^(1/24))) (DedekindEta[((ln(q))/(2 i π))])==(QPochhammer1[q])

QSeriesD[q_]:=q^(-1/24)DedekindEta[Log[q]/(2I π)]

FullSimplify[QSeriesD[q]-QPochhammer[q]]

Plot[QPochhammer[q]-QSeriesD[q],{q,-1,1},PlotStyle->{Thickness[.01],Red},PlotRange->All]

Plot[QPochhammer[q]-QSeriesD[q],{q,-1,1},PlotStyle->{Thickness[.01],Red},PlotRange->All,WorkingPrecision->10]//Timing

Earlier behavior:

Plot[QPochhammer[q]-QSeriesD[q],{q,-.99,.99},PlotStyle->{Thickness[.01],Red},PlotRange->All]

Plot[QPochhammer[q]-((DedekindEta[-((I Log[q])/(2 π))])/(q^(1/24))),{q,-.99,.99},PlotStyle->{Thickness[.02],Red},PlotRange->All]

FullSimplify[((DedekindEta[-((I Log[q])/(2 π))])/(q^(1/24)))]

FullSimplify[QSeriesD[q]-QPochhammer[q],-1<q<1]

(∑_(n=-∞)^∞)(((-1))^n) (q^((Binomial[2 n, 2])+(n^2)))==(QPochhammer1[(q^2)]) (Pentagonal number theorem)

Sum[(((-1))^n)(q^((n^2)+Binomial[2n,2])),{n,-∞,∞}]

Hard Hexagon Identities

Andrews, p. 7

(∑_(n=0)^∞)((q^(n^2))/((∏_k^n)(1-(q^k))))==(∏_n^∞)(1/((1-(q^(5 n-4))) (1-(q^(5 n-1)))))

Sum[((q^(n^2))/(Product[1-(q^k),{k,n}])),{n,0,∞}]

With[{q=.1,N=100},Sum[q^n^2/QPochhammer[q, q, n], {n, 0, N}]]

Product[(1/((1-(q^(5n-4)))(1-(q^(5n-1))))),{n,∞}]

(((1-(1/(q^4))) (-1+q))/(q QPochhammer[(1/(q^4)),(q^5)] QPochhammer[(1/q),(q^5)]))/.q->.1

Hecke-Rogers Modular Form Identities

(∑_(m=-∞)^∞)(∑_(n=\[LeftBracketingBar]2 m\[RightBracketingBar])^∞)(((-1))^(m+n)) (q^((1/2) ((n^2)-3 (m^2))+((m+n)/2)))==((QPochhammer2[q, q])^2)

Andrews, p. 42

With[{q=.1,nn=100},Sum[(((-1))^(n+m))(q^(((n^2)-3(m^2))/2+(m+n)/2)),{m,-nn,nn},{n,Abs[2m],nn}]]

((QPochhammer[.1])^2)

Sum[(((-1))^(n+m))(q^(((n^2)-3(m^2))/2+(m+n)/2)),{m,-N,N},{n,Abs[2m],N}]

Sum[(((-1))^(n+m))(q^(((n^2)-3(m^2))/2+(m+n)/2)),{m,-∞,∞},{n,Abs[2m],∞}]//InputForm

Limits

(lim_(q->1)) ((QPochhammer[(q^a), q, k])/(((1-q))^k))==(Pochhammer[a, k])

Limit[((QPochhammer[(q^a),q,k])/(((1-q))^k)),q->1,Direction->1]

{((QPochhammer[(q^a),q,k])/(((1-q))^k)),Pochhammer[a,k]}/.{q->.999999,a->2.2,k->2}

[n] symbols

[n]==Sum[q^k, {k, 0, n - 1}]

Sum[q^k, {k, 0, n - 1}]

FunctionExpand[QBinomial[n,1,q]]

Table[((-1+(q^n))/(-1+q))-((QPochhammer[(q^n),q])/((1-q) QPochhammer[(q^(1+n)),q])),{n,10}]/.q->.2//Chop//Union

[n]!

FullSimplify[Product[((-1+(q^n))/(-1+q)),{n,k}]]

Table[(((-1))^k) ((((1/(-1+q))))^k) QPochhammer[q,q,k]-QFactorial[k,q],{k,10}]/.q->.2//Chop//Union

Special Values

Maximum

D[QPochhammer[q],q]//InputForm

D[QPochhammer[q,q],q]//InputForm

FindMaximum[QPochhammer[q],{q,-9/10,0},WorkingPrecision->50]

At -1

Table[1-(-1)^k,{k,5}]

Product[1-(-1)^k,{k,∞}]

QPochhammer[-1]

N[%]

At 0

Table[1-0^k,{k,10}]

Product[1-0^k,{k,∞}]

QPochhammer[0]

At 1

Table[1-1^k,{k,10}]

Product[1-1^k,{k,∞}]

QPochhammer[1]

Limits

V7

Limit[QPochhammer[q],q->-1,Direction->-1]

Limit[QPochhammer[q],q->1]

Series

Series[QPochhammer[q],{q,0,50}]

CoefficientList[%,q]

SeriesCoefficient[QPochhammer[q],{q,0,n}]

Derivative

Analytic value

FullSimplify[D[(q^(-1/24))((EllipticTheta[2,(π/6),(q^(1/6))])/(Sqrt[3])),q]]

-((EllipticTheta[2,(π/6),(q^(1/6))]-4 (q^(1/6)) Derivative[0,0,1][EllipticTheta][2,(π/6),(q^(1/6))])/(24 (Sqrt[3]) (q^(25/24))))/.q->.5

Derivative[1][QPochhammer][.5]

D[(((EllipticThetaPrime[1,0,(Sqrt[q])])^(1/3))/((q^(1/24)) (2^(1/3)))),q]

Plot

With[{h=.0001},Plot[((QPochhammer[x+h]-QPochhammer[x])/h),{x,-1,1},AxesLabel->{q,HoldForm[QPochhammer'[q]]}]]

Maximum

f[q_?NumericQ,h_:10^-30]:=((QPochhammer[q+h]-QPochhammer[q])/h)

FindMaximum[f[q],{q,-9/10,-7/10},WorkingPrecision->40]

Minimum

FindMinimum[f[q],{q,4/10,6/10},WorkingPrecision->40]

At -1

Derivative[1][QPochhammer][-1]

Limit[((QPochhammer[-1]-QPochhammer[-1+h])/h),h->0]

((QPochhammer[-1]-QPochhammer[-1+h])/h)/.h->.01

At 0

Derivative[1][QPochhammer][0]

Limit[((QPochhammer[h]-QPochhammer[0])/h),h->0]

At 1

Derivative[1][QPochhammer][1]

N[%]

Limit[((QPochhammer[1]-QPochhammer[1-h])/h),h->0]//InputForm

((QPochhammer[1]-QPochhammer[1-h])/h)/.h->.01

Integral

Integrate[QPochhammer[q,q],q]