EllipticLog[{x,y},{a,b}]
gives the generalized logarithm associated with the elliptic curve
.
EllipticLog
EllipticLog[{x,y},{a,b}]
gives the generalized logarithm associated with the elliptic curve
.
Details
- Mathematical function, suitable for both symbolic and numerical manipulation.
- EllipticLog[{x,y},{a,b}] is defined as the value of the integral
, where the sign of the square root is specified by giving the value of y such that
. - EllipticLog can be evaluated to arbitrary numerical precision.
Examples
open all close allBasic Examples (2)
With[{x = 0.3}, EllipticLog[{x, Sqrt[x ^ 3 - 5x ^ 2 + x]}, {-5, 1}]]With[{x = 0.3}, EllipticLog[{x, -Sqrt[x ^ 3 - 5x ^ 2 + x]}, {-5, 1}]]Plot over a subset of the reals:
Plot[Abs[EllipticLog[{x, Sqrt[x ^ 3 + 4x ^ 2 + x]}, {4, 1}]], {x, -5, 5}]Scope (16)
Numerical Evaluation (4)
EllipticLog[{2, 5}, {3, 2.5}]EllipticLog[{1, 2}, {1, 2.}]N[EllipticLog[{1, 3}, {2, 6}], 25]The precision of the output tracks the precision of the input:
EllipticLog[{1.000000000000000000000, 3}, {2, 6}]EllipticLog[{2 + I, -I Sqrt[15]}, {1 - I, -12.0}]Evaluate efficiently at high precision:
EllipticLog[{2, 5`60}, {3, 5 / 2}]//TimingEllipticLog[{2`100000, 5}, {3, 5 / 2}];//TimingSpecific Values (3)
With[{x = 0.3}, EllipticLog[{x, Sqrt[x ^ 3 - 3x ^ 2 + x]}, {-3, 1}]]EllipticLog[{0, 0}, {0, 1}]//NFind a value of
for which Abs[EllipticLog[{x,Sqrt[x^3+5x^2+x]},{5,1}]]=0.8:
xval = x /. FindRoot[Abs[EllipticLog[{x, Sqrt[x ^ 3 + 5x ^ 2 + x]}, {5, 1}]] == 0.8, {x, 0.5}]Plot[Abs[EllipticLog[{x, Sqrt[x ^ 3 + 5x ^ 2 + x]}, {5, 1}]], {x, -2, 4}, Epilog -> Style[Point[{xval, Abs[EllipticLog[{xval, Sqrt[xval ^ 3 + 5xval ^ 2 + xval]}, {5, 1}]]}], PointSize[Large], Red]]Visualization (2)
Plot the EllipticLog function:
Plot[{EllipticLog[{u, Sqrt[u ^ 3 + (1 / 2)u]}, {0, 1 / 2}], EllipticLog[{u, Sqrt[u ^ 3 + 2 u ^ 2]}, {2, 0}], EllipticLog[{u, Sqrt[u ^ 3 + 5 u ^ 2 + u]}, {5, 1}]}, {u, 0, 3}]Plot the real part of EllipticLog[{z,Sqrt[z^3+2 z^2+ z]},{2,1}]:
ComplexContourPlot[Re[EllipticLog[{z, Sqrt[(z) ^ 3 + 2 (z) ^ 2 + z]}, {2, 1}]], {z, -4 - 4I, 4 + 4 I}, IconizedObject[«PlotOptions»]]Plot the imaginary part of EllipticLog[{x+ y,Sqrt[z^3+2 z^2+ z]},{2,1}]:
ComplexContourPlot[Im[EllipticLog[{z, Sqrt[(z) ^ 3 + 2 (z) ^ 2 + z]}, {2, 1}]], {z, -4 - 4I, 4 + 4 I}, IconizedObject[«PlotOptions»]]Function Properties (3)
EllipticLog is not an analytic function:
FunctionAnalytic[EllipticLog[{x, y}, {a, b}], {a, b, x, y}]It has both singularities and discontinuities:
FunctionSingularities[EllipticLog[{x, y}, {a, b}], {a, b, x, y}]FunctionDiscontinuities[EllipticLog[{x, y}, {a, b}], {a, b, x, y}]//Quiet
is neither non-negative nor non-positive:
FunctionSign[EllipticLog[{u, Sqrt[u ^ 3 + (1 / 2)u]}, {0, 1 / 2}], u]
is neither convex nor concave:
FunctionConvexity[EllipticLog[{u, Sqrt[u ^ 3 + (1 / 2)u]}, {0, 1 / 2}], u]Differentiation (2)
First derivative with respect to
:
D[EllipticLog[{x, y}, {a, b}], x]Compute the indefinite integral using Integrate:
Integrate[EllipticLog[{x, y}, {a, b}], x]FullSimplify[D[%, x]]Series Expansions (2)
Find the Taylor expansion using Series:
Series[EllipticLog[{x, Sqrt[x ^ 3 + c x ^ 2 + d x]}, {c, d}], {x, 1, 2}]//Normal//FullSimplifyPlots of the first three approximations around
:
terms = Normal@Table[Series[EllipticLog[{x, Sqrt[x ^ 3 + x ^ 2 + 2 x]}, {1, 2}], {x, 1, m}], {m, 1, 5, 2}];
Plot[{EllipticLog[{x, Sqrt[x ^ 3 + x ^ 2 + 2 x]}, {1, 2}], terms}, {x, -5, 5}, PlotRange -> {-5, 5}]Taylor expansion at a generic point:
Series[EllipticLog[{x, Sqrt[x ^ 3 + c x ^ 2 + d x]}, {c, d}], {x, x0, 2}]//Normal// FullSimplifyApplications (2)
Define multiplication on the elliptic curve
:
ellipticMultiply[{{x1_, y1_}, {x2_, y2_}}, {a_, b_}] :=
Module[{s = (y2 - y1) / (x2 - x1), x3, y3},
x3 = s ^ 2 - x1 - x2 - a;
y3 = -y1 + s(x1 - x3);{x3, y3}]Use multiplication on the elliptic curve to add rational numbers:
p1 = EllipticExp[-1 / 3., {4, 1}];
p2 = EllipticExp[1 / 2., {4, 1}];p3 = ellipticMultiply[{p1, p2}, {4, 1}]The value of EllipticLog at the product point equals the sum of values of EllipticLog at the corresponding factors:
EllipticLog[p3, {4, 1}] == EllipticLog[p1, {4, 1}] + EllipticLog[p2, {4, 1}]Express EllipticLog in terms of CarlsonRF:
With[{x = 1, a = 2, b = 6},
N[{EllipticLog[{x, Sqrt[x^3 + a x^2 + b x]}, {a, b}], -CarlsonRF[x, x + (a + Sqrt[a^2 - 4b]/2), x + (2b/a + Sqrt[a^2 - 4b])]}, 25]]Properties & Relations (3)
D[EllipticLog[{x, y}, {a, b}], x]EllipticExp and EllipticLog are inverse functions of one another:
EllipticExp[0.5, {3, 4}]EllipticLog[%, {3, 4}]EllipticLog is closely related to the InverseWeierstrassP function:
ellipticLog[{x_, y_}, {a_, b_}] := (1/2)InverseWeierstrassP[{(1/4)(x + (a/3)), (y/4)}, {(1/4)((a^2/3) - b), (1/8)(a/3)((b/2) - ((a/3))^2)}]a = 3;b = 2;
{x, y} = EllipticExp[1.2, {a, b}];ellipticLog[{x, y}, {a, b}]Compare with the value of the built-in function:
EllipticLog[{x, y}, {a, b}]Tech Notes
Related Guides
Related Links
History
Introduced in 1988 (1.0)
Text
Wolfram Research (1988), EllipticLog, Wolfram Language function, https://reference.wolfram.com/language/ref/EllipticLog.html.
CMS
Wolfram Language. 1988. "EllipticLog." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/EllipticLog.html.
APA
Wolfram Language. (1988). EllipticLog. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/EllipticLog.html
BibTeX
@misc{reference.wolfram_2026_ellipticlog, author="Wolfram Research", title="{EllipticLog}", year="1988", howpublished="\url{https://reference.wolfram.com/language/ref/EllipticLog.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_ellipticlog, organization={Wolfram Research}, title={EllipticLog}, year={1988}, url={https://reference.wolfram.com/language/ref/EllipticLog.html}, note=[Accessed: 13-June-2026]}