Skip to content

Read the derivative of a sum of exponentials over another off the integrand over the other's square - #2040

Merged
Rafael-SOWNet merged 1 commit into
masterfrom
the-derivative-of-a-quotient-over-a-sum-of-exponentials
Oct 22, 2026
Merged

Rafael-SOWNet merged 1 commit into
masterfrom
the-derivative-of-a-quotient-over-a-sum-of-exponentials

Conversation

@Rafael-SOWNet

Copy link
Copy Markdown
Member

Part of #233.

  • The derivative of a sum of exponentials over another, read off the integrand over the other's square. Rubi's 6.7.1 x (b - a sinh(x))/(a + b sinh(x))^2 ran past the budget, in three steps:

    1. the split took the bracket's terms apart;
    2. the substitution in e^x answered each over the square of a quadratic, with a piecewise on its discriminant;
    3. parts beside x integrated that piecewise again.

    For a sum D of exponentials of x, the integrand over D^2 is now read as (N/D)', where N is a constant plus a constant times each exponential in D.

  • How N is found.

    • The exponentials' span is closed under the derivative, so N' D - N D' is linear in N's constants. With each exponential a whole power of the first, w, the identity read at six values of w is a linear system.
    • N and N + c D share a derivative over D. The solution with no constant is tried first, and that is -cosh(x)/(a + b sinh(x)).
    • Beside x, by parts, the integral of N/D is written as a constant times ln(D) where N is a constant times D', and asked as a question otherwise.
  • Where it sits. It is the hyperbolic twin of SolveAsTheDerivativeOfASineRaisedFromNothingBesidePowersOfTheCosine, dispatched beside it. There are no hyperbolic nodes, since the parser writes sinh as exponentials.

Rubi row master 78cd31b this branch
6.7.1:643 x (b - a sinh(x))/(a + b sinh(x))^2 past 30 s 123 characters
6.7.1:644 x (b + a cosh(x))/(a + b cosh(x))^2 past 30 s 119 characters
6.7.1:1178 sech(x)^2 tanh(x)^2/(2 + tanh(x)^3)^2 117 characters, 16 s, 9.7 GB -1/3/(2 + tanh(x)^3), 60 characters, 55 ms
(b - a sinh(x))/(a + b sinh(x))^2 7,861 characters, a piecewise 71 characters

Chain against master 78cd31b:

  • The pocket of 2,652 rows with an exponential and a squared quotient went from 2,641 to 2,643 solved, with 0 wrong.
  • Every family's sample is unchanged.
  • The two rows that moved, 643 and 644, run alone, went from timeout to solved.
  • 8,181 rows were compared for allocation, and none grew past 1.3x and 300 MB.

The full unit suite passes locally: 16,554 passed, 0 failed. The BREAKING-CHANGES lengths were measured on the branch. Rebased onto 37e2b1a.

🤖 Generated with Claude Code

https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura

…egrand over the other's square

Rubi's 6.7.1 x (b - a sinh(x))/(a + b sinh(x))^2 ran past the budget: the split
took the bracket's terms apart, the substitution in e^x answered each over the
square of a quadratic with a piecewise on its discriminant, and parts beside x
integrated that piecewise again. For a sum D of exponentials of x, the
integrand over D^2 is now read as (N/D)', N a constant plus a constant times
each exponential in D. The exponentials' span is closed under the derivative,
so N' D - N D' is linear in N's constants, and with each exponential a whole
power of the first, w, the identity read at six values of w is a linear
system. N and N + c D share a derivative over D; the solution with no
constant is tried first, which is -cosh(x)/(a + b sinh(x)). Beside x, by
parts, the integral of N/D is written as a constant times ln(D) where N is a
constant times D', and asked otherwise. The trigonometric twin is
SolveAsTheDerivativeOfASineRaisedFromNothingBesidePowersOfTheCosine's; there
are no hyperbolic nodes, since sinh is parsed into exponentials.

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 22, 2026
@Rafael-SOWNet
Rafael-SOWNet merged commit 8d5f693 into master Oct 22, 2026
34 checks passed
@github-project-automation github-project-automation Bot moved this from Todo to Done in AngouriMath Oct 22, 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