Klein's Absolute Invariant

Author

Eric W. Weisstein
April 11, 2006

This notebook downloaded from http://mathworld.wolfram.com/notebooks/SpecialFunctions/KleinsAbsoluteInvariant.nb.

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

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

Code

EllipticLambda[t_]:=(EllipticTheta[2,0,Exp[Pi I t]]/EllipticTheta[3,0,Exp[Pi I t]])^4
KleinJ[t_]:=Module[{λ=EllipticLambda[t]},4/27 (1-λ+λ^2)^3/λ^2/(1-λ)^2]

Usage

?KleinInvariantJ

Notation

KleinInvariantJ[τ]//TraditionalForm

Special Values

{#,N[#,20]}&@KleinInvariantJ[Exp[2Pi I/3]]

{#,N[#,20]}&@KleinInvariantJ[I]

Plus all j-function special values

Functional Equations

J(z), J(2 z)

f[t_]:=(t+4)^3/(27t^2)

Timing[id=Factor[Subtract@@Eliminate[{J[z]==f[t],J[2z]==f[1/t]},t]]]

id//TraditionalForm

Table[id/.J->KleinInvariantJ/.z->Random[Complex,{-2,2+2I},75],{100}]//Chop//Union

N[Table[f[(1/64)(((((DedekindEta[z])/(DedekindEta[2z]))))^24)]-KleinInvariantJ[z],{z,I/10,I,I/10}],20]//Chop

N[Table[f[(1/((1/64)(((((DedekindEta[z])/(DedekindEta[2z]))))^24)))]-KleinInvariantJ[2z],{z,I/10,I,I/10}],20]//Chop

J(z), J(3 z)

g[t_]:=(t+1)(t+9)^3/(64t^3)

Timing[id=Factor[Subtract@@Eliminate[{J[z]==g[t],J[3z]==g[1/t]},t]]]

id//TraditionalForm

Table[id/.J->KleinInvariantJ/.z->Random[Complex,{-2,2+2I},75],{100}]//Chop//Union

N[Table[g[(1/27)(((((DedekindEta[z])/(DedekindEta[3z]))))^12)]-KleinInvariantJ[z],{z,I/10,I,I/10}],20]//Chop

N[Table[g[(1/((1/27)(((((DedekindEta[z])/(DedekindEta[3z]))))^12)))]-KleinInvariantJ[3z],{z,I/10,I,I/10}],20]//Chop

J(z), J(5 z)

h[t_]:=5(t^2+50t+125)^3/t^5

Timing[id=Factor[Subtract@@Eliminate[{J[z]==h[t],J[5z]==h[1/t]},t]]]

id//TraditionalForm

Table[id/.J->KleinInvariantJ/.z->Random[Complex,{-2,2+2I},75],{100}]//Chop//Union

N[Table[h[(1/5)(((((DedekindEta[z])/(DedekindEta[5z]))))^6)]-1728KleinInvariantJ[z],{z,I/10,I,I/10}],20]//Chop

N[Table[h[(5/((1/5)(((((DedekindEta[z])/(DedekindEta[5z]))))^6)))]-1728KleinInvariantJ[5z],{z,I/10,I,I/10}],20]//Chop

Plots

<<Utilities`Plot`
<<Utilities`Typesetting`

Real Axis

Plot[KleinInvariantJ[x I],{x,1/2,2},
PlotRange->{0,100},
PlotStyle->Red,
AxesLabel->TraditionalForm/@{y,KleinInvariantJ[y I]}]

Complex Plane

ComplexPlot3D[KleinInvariantJ[τ],{τ,-1+.01I,1+2I},PlotPoints->200]//Timing

ComplexContourPlot[KleinInvariantJ[τ],{τ,-1+.01I,1+2I},PlotPoints->250]//Timing

DensityPlot[Re[KleinInvariantJ[x+ I y]],{x,-.5,.5},{y,.01,.7},
ColorFunction->(Hue[Sin[#]]&),
Mesh->False,
PlotPoints->250
]//Timing

Check

Plot[KleinJ[Exp[-π τ]]-KleinInvariantJ[τ I],{τ,0.3,1},PlotStyle->Hue[0],PlotRange->All]

ComplexPlot3D[Evaluate[KleinJ[Exp[π τ I]]-KleinInvariantJ[τ]],{τ,-2+.001I,2+2I},ComplexPlotLabel->"difference"]

Derivative

FullSimplify[D[KleinInvariantJ[τ],τ]]//TraditionalForm

FullSimplify[KleinJ'[q]]//TraditionalForm

Integral

Integrate[KleinInvariantJ[q],q]

Integrate[FullSimplify[KleinJ[q]],q]//TraditionalForm

Series

v5.2

Series[KleinInvariantJ[-((I Log[q])/π)],{q,0,10}]

v6

Solve[q==Exp[π I τ],τ]

Series[KleinInvariantJ[-((I Log[q])/π)],{q,0,10}]