Skip to content

Integrate a transcendental function of one shifted linear in it, the logarithms of a quotient onto the exponential integral, and derivatives over a power of a logarithm or an inverse - #2034

Merged
Rafael-SOWNet merged 1 commit into
masterfrom
integrate-a-function-of-one-shifted-linear-and-logarithms-onto-ei-ai
Oct 22, 2026
Merged

Rafael-SOWNet merged 1 commit into
masterfrom
integrate-a-function-of-one-shifted-linear-and-logarithms-onto-ei-ai

Conversation

@Rafael-SOWNet

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

Copy link
Copy Markdown
Member

Part of #233.

Thirteen of Rubi's exponential, logarithmic and hyperbolic rows that master 6e16aae declines or runs out of time on:

  • One shifted linear. A transcendental function of one shifted linear c + d x alone is written in u = c + d x, where a power of the linear stands below the bar inside a sum or the linear is written two ways: F^(a + b/(c + d x)^3)/(c + d x)^19, ln(c (d + k/(f + g x)^3)^q).
  • Onto the exponential integral. Powers of two linears beside a negative power of a logarithm of their quotient are taken onto the exponential integral in that quotient. Separately, the zero-discriminant case of SolveAnExponentialOverSeveralLinears no longer divides by the difference of its two equal roots.
  • Over a power of a logarithm or an inverse. The derivative of a function over a power of a logarithm, of an inverse trigonometric function, or of a sum holding a logarithm, whose terms are not elementary apart.
  • Products of powers. A product of powers whose logarithmic derivative is a constant. A power with x in both base and exponent is read as an exponential, with the free terms of its exponent raised: x^(-2 - 1/x) (1 - ln(x)) is -(x^(-1/x))'. Master had since gained its own reading of x-in-both powers, and the rebase merged the two.
  • Risch–Norman. The ansatz gains li(x), and erfi beside one Gaussian, in a second pass.

Scopes, found by the first chain's allocation check. Fifteen rows had grown past 1.3x, up to +5.5 GB, with the same answers.

  • The Gaussian pass now runs only beside a factor of x alone below the bar, and only for one Gaussian. A polynomial times exponentials of a quadratic, or a hyperbolic function of one, is the job of the rules after it.
  • The shifted-linear rule now reads only integrands of complexity 80 or less, as written. Its targets are 17 to 25, while the inverse sine's expansion of (d + e x^2)^3 (a + b asinh(c x))^2 cost 370 MB to read.

Chain against master 6e16aae, after the scopes:

  • The pocket of 1,105 rows went from 1,072 to 1,085 solved, with 0 wrong.
  • Family 3's sample went from 222 to 224; the others are unchanged.
  • The 13 rows that moved, run alone, went from 0 to 13 solved.
  • 6,603 rows were compared for allocation, and none grew past 1.3x.

The full unit suite passes locally: 16368 passed, 0 failed. The branch is rebased onto 47ab958, and the 13 still answer there. The BREAKING-CHANGES lengths were re-measured, and the v2.5.0 column was measured on a build: four rows that 2.5.0 runs past twenty seconds on now say so.

Rebased onto 2a98be4, after #2030. That entry's two 3.2.1 rows, 1/((a g + b g x)^2 (A + B ln(k (a + b x)/(c + d x)))^2) and its n-th-power twin, are now answered first by this branch's rule onto the exponential integral. They come back in 340 and 394 characters where #2030 wrote 358 and 412, and the commit updates those two rows of its entry.

🤖 Generated with Claude Code

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 force-pushed the integrate-a-function-of-one-shifted-linear-and-logarithms-onto-ei-ai branch from 68ee101 to 7a9bce4 Compare October 21, 2026 21:08
…logarithms of a quotient onto the exponential integral, and derivatives over a power of a logarithm or an inverse

- A function of one shifted linear c + d x alone with something other than
  sums, products and powers in it, written in u = c + d x where a power of
  the linear stands below the bar inside a sum or the linear is written two
  ways: F^(a + b/(c + d x)^3)/(c + d x)^19, ln(c (d + k/(f + g x)^3)^q).
  Only for an integrand as written, not one a substitution expands: the
  inverse sine's of (d + e x^2)^3 (a + b asinh(c x))^2 is a sum of
  exponentials of linears that cost 370 MB to read.
- Powers of two linears beside a negative power of a logarithm of their
  quotient, onto the exponential integral in that quotient; the zero-
  discriminant case of SolveAnExponentialOverSeveralLinears no longer
  divides by the difference of its two equal roots.
- The derivative of a function over a power of a logarithm, an inverse
  trigonometric function or a sum holding a logarithm, whose terms are not
  elementary apart.
- A product of powers whose own logarithmic derivative is a constant, and a
  power with x in its base and its exponent as an exponential, its free
  terms raised: x^(-2 - 1/x) (1 - ln(x)) is -(x^(-1/x))'.
- The Risch-Norman ansatz with li(x), and erfi beside one Gaussian with a
  factor of x alone below the bar, in a second pass: e^((a + x)^2)/x^2 -
  2 a e^((a + x)^2)/x. Beside a polynomial, or two Gaussians, the pass
  declined at three times the allocation of the rules after it, and is not
  taken there.

Chain against master 6e16aae: pocket of 1,105 rows, 1,072 -> 1,085 solved,
0 wrong; family 3's sample 222 -> 224, the others unchanged; the 13 rows that
moved, alone, 0 -> 13 solved; 6,603 rows compared for allocation, none grew
past 1.3x.

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 force-pushed the integrate-a-function-of-one-shifted-linear-and-logarithms-onto-ei-ai branch from 7a9bce4 to 07dc9c8 Compare October 21, 2026 22:55
@Rafael-SOWNet
Rafael-SOWNet merged commit 099dfc7 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