Skip to content

Integrate an exponential over a quadratic with a double root over that linear twice - #2008

Merged
Rafael-SOWNet merged 1 commit into
masterfrom
integrate-an-exponential-over-a-double-root-over-that-linear-twice
Oct 21, 2026
Merged

Rafael-SOWNet merged 1 commit into
masterfrom
integrate-an-exponential-over-a-double-root-over-that-linear-twice

Conversation

@Rafael-SOWNet

@Rafael-SOWNet Rafael-SOWNet commented Oct 21, 2026 •

Copy link
Copy Markdown
Member

Part of #233. The exponential twin of #1879, which #1880 fixed for the sine and cosine.

SolveAnExponentialOverSeveralLinears' quadratic branch (#1708) applied the quadratic formula and never asked whether the discriminant is zero as a value. e^(-t)/(a^2 + 2 a b t + b^2 t^2) is what t = ln(c x) makes of 1/(x^2 (a + b ln(c x))^2). It came back over two "different" roots carrying sqrt((2 a b)^2 - 4 b^2 a^2). That gave an answer whose derivative had no value at any point.

A discriminant that PartialFractions.IsZeroAsAValue finds zero now takes the repeated root: the linear x + m/(2 l), twice, as the trigonometric twin has done since #1880. So 1/(x^2 (a + b ln(c x))^2) is -c e^(a/b) Ei(-(a + b ln(c x))/b)/b^2 - 1/(b x (a + b ln(c x))), Rubi's 3.1.2 at n = 1.

Twenty-three integrals whose answer had no value anywhere now differentiate back at four sign patterns: logarithm squares for m = 2..4 and n = 1, 2, and exponentials and hyperbolic functions over a perfect-square quadratic. 2.5.0 declined them. The entry in BREAKING-CHANGES.md has 2.5.0's column measured.

The chain ran against master a567c8b, before the rebase onto a4e7656:

  • A pocket of 1,581 rows of families 2, 3 and 6: verdicts identical, 1,530 solved on both, allocation 435.8 GB on both.
  • Samples of families 0–8: unchanged.
  • 0 rows moved. No corpus row reaches the new branch, so the evidence is the new test class, which checks every answer by differentiating it back. Rubi's 3.1.2:95 is the same shape with a symbolic n.

🤖 Generated with Claude Code

https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura

…t linear twice

SolveAnExponentialOverSeveralLinears' quadratic branch (#1708) applied the
quadratic formula and never asked whether the discriminant is zero as a
value: e^(-t)/(a^2 + 2 a b t + b^2 t^2), which t = ln(c x) makes of
1/(x^2 (a + b ln(c x))^2), came back over two "different" roots carrying
sqrt((2 a b)^2 - 4 b^2 a^2), merged by TrySplitOverWrittenFactors with the
root still inside -- an answer whose derivative had no value at any point.
A discriminant zero by PartialFractions.IsZeroAsAValue now takes the
repeated root, the linear x + m/(2 l) twice, as the trigonometric twin does
since #1880; a lone double root goes to the one-linear rules as a
polynomial over its power.

1/(x^2 (a + b ln(c x))^2) is c e^(a/b) (-e^(-L)/L - Ei(-L))/b^2, L = ln(c x)
+ a/b, Rubi's 3.1.2:95 at n = 1; 23 integrals whose answer had no value
anywhere -- logarithm squares for m = 2..4 and n = 1, 2, and exponentials
and hyperbolic functions over a perfect-square quadratic -- now differentiate
back at four sign patterns. All 169 rows of 3.1.2 and 1,247 neighbours of
families 2, 3 and 6 answer as before, character for character.

Part of #233.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura
@Rafael-SOWNet Rafael-SOWNet added this to the 2.6.0 milestone Oct 21, 2026
@Rafael-SOWNet
Rafael-SOWNet merged commit 375fbb4 into master Oct 21, 2026
34 checks passed
@github-project-automation github-project-automation Bot moved this from Todo to Done in AngouriMath Oct 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant