Integration methods¶
The Calculus tutorial introduces Integrate and lets it
choose an algorithm for you (Method -> Automatic). Underneath, Mathilda's
Integrate is a cascade of specialised, correct-by-construction methods:
each one recognises a particular class of integrand, and the cascade tries them
in a deterministic order, stopping at the first that succeeds.
These advanced tutorials open up that cascade. Each page covers one method:
the mathematics it implements, how Mathilda realises it, the exact convergence
conditions it enforces, and a graded set of worked examples — every transcript
reproduced from the current build. You can always pin a single method with the
Method option:
Pinning a method is useful for two reasons: to understand which engine solved an integral, and to force a specific engine when you know the automatic dispatch would reach for a slower or less appropriate one.
-
The transcendental Risch algorithm
The complete decision procedure for transcendental elementary integration (Bronstein Ch. 5–6): differential towers, Liouville's theorem, and the Risch differential equation. Returns an elementary antiderivative or proves none exists with
RischElementaryIntegralQ` — the mechanised impossibility theorem behind \(e^{x^2}\), \(e^x/x\), and \(\sin x/x\). -
Cherry's special-function extensions
When Risch proves an integral is not elementary, Cherry's theory supplies the closed form anyway — in the error function, exponential and logarithmic integrals, the sine/cosine and Fresnel integrals, and the dilogarithm.
li,Ei,erf,Si,Ci,PolyLog[2, ·]. -
Half-line integrals \(\int_0^\infty x^{s-1} f(x)\,dx\) in closed form via a table of base Mellin transforms, the Ramanujan Master Theorem for hypergeometric integrands, and rigorously enforced convergence strips.
-
Improper and periodic integrals via Cauchy's residue theorem — rational, Fourier/Jordan, and trigonometric families, plus sector, keyhole, and rectangular contours, principal values, and symbolic parameters.
-
Complex integrals along piecewise-linear paths — Cauchy's theorem, winding numbers, branch-correct logarithms, and the residue theorem worked constructively, with a numerical crosscheck on every segment.
-
Differentiation under the integral sign
The Leibniz rule / "Feynman's trick" for parameter-dependent integrals — introduce a parameter, differentiate, integrate back, and fix the constant, with a symbolic proof of every result. Frullani, sinc, and Gaussian families.
More methods coming
This section is being filled in one method at a time. The complete list of
method names accepted by Integrate[..., Method -> "..."] is
"DerivativeDivides", "RischNorman", "RischTranscendental",
"BronsteinRational", "Weierstrass", "NewtonLeibniz", "DiffUnderInt",
"LineIntegral", "Residue", and "Mellin" (a synonym for
"RamanujanMasterTheorem").
Following along¶
Start the REPL with ./Mathilda and type each In[...] line yourself (without
the prompt). Press Return to evaluate. Every Out[...] shown in these pages was
produced by the actual binary; Mathilda's output form is sometimes arranged
differently from a textbook, but it is always mathematically correct.