Expand description
Rational function integration via partial fraction decomposition
Implements integration of rational functions P(x)/Q(x) using:
- Polynomial long division if
deg(P) >= deg(Q) - Factor denominator into linear and irreducible quadratic factors
- Decompose into partial fractions using Heaviside’s method
- Integrate each term using standard formulas
§Mathematical Background
For P(x)/Q(x) where deg(P) < deg(Q), factor Q(x) as:
Q(x) = (x-r₁)^n₁ · ... · (x-rₖ)^nₖ · (x²+p₁x+q₁)^m₁ · ...Then the partial fraction decomposition is:
P(x)/Q(x) = Σᵢ Σⱼ₌₁ⁿⁱ Aᵢⱼ/(x-rᵢ)ʲ + Σᵢ Σⱼ₌₁ᵐⁱ (Bᵢⱼx+Cᵢⱼ)/(x²+pᵢx+qᵢ)ʲ§Integration Formulas
Linear terms:
∫A/(x-r) dx = A·ln|x-r| + C∫A/(x-r)ⁿ dx = -A/((n-1)(x-r)^(n-1)) + Cforn > 1
Quadratic terms (irreducible x²+px+q with p²-4q < 0):
- Complete the square:
x²+px+q = (x+p/2)² + a²wherea² = q - p²/4 ∫(Bx+C)/(x²+px+q) dx = (B/2)·ln|x²+px+q| + ((C-Bp/2)/a)·arctan((x+p/2)/a) + C
§Implementation Status
Fully Implemented:
- Simple linear factors
(x-r)via cover-up method - Repeated linear factors
(x-r)^nvia Heaviside’s method with derivatives - Simple irreducible quadratics
(x²+px+q)with proper coefficient extraction - Repeated irreducible quadratics
(x²+px+q)²via Ostrogradsky’s reduction formula
Not Yet Implemented:
- Repeated irreducible quadratics
(x²+px+q)^mwithm > 2(Can be generalized using recursive Ostrogradsky reduction) - Automatic polynomial factorization (assumes factored form)
§References
This implementation follows the approaches in:
- Heaviside’s cover-up method and derivative technique for repeated poles
- Ostrogradsky’s reduction formula for repeated quadratics
- Stewart, Calculus (8th ed), Chapter 7
- Bronstein, “Symbolic Integration I”
Modules§
- helpers
- Helper utilities for rational function integration
- linear
- Integration of linear factors in partial fraction decomposition
- quadratic
- Integration of irreducible quadratic factors in partial fraction decomposition
Structs§
Functions§
- extract_
numerator_ denominator - Extract numerator and denominator from rational expression
- integrate_
rational - Integrate rational function
P(x)/Q(x)via partial fractions - is_
rational_ function - Check if expression is a rational function
P(x)/Q(x)