Skip to content

Integrate a polynomial beside error functions of a shifted linear - #1947

Merged
Rafael-SOWNet merged 1 commit into
masterfrom
integrate-a-power-times-erf-squared-of-a-shift
Oct 19, 2026
Merged

Rafael-SOWNet merged 1 commit into
masterfrom
integrate-a-power-times-erf-squared-of-a-shift

Conversation

@Rafael-SOWNet

Copy link
Copy Markdown
Member

Part of #1945. Part of #1501.

(c + d x)^m erf(a + b x)^2, and the erfc and erfi forms, are now integrated by writing them in u = a + b x, where the unshifted rules already answer. Integrating by parts in x leaves x^n e^(-(a + b x)^2) erf(a + b x), which no rule handles. The rule only fires when every error function in the product has the same argument.

Measured on master 4e5ae5f:

integrand master this PR
x erf(a + b x)^2 integral(…), 2.4 s answered, ~2 s
x^2 erf(a + b x)^2 integral(…), 2.4 s answered
(c + d x)^2 erf(a + b x)^2, and with erfc and erfi times out at 20 s answered, ~2.5 s, ~1,850 chars
x erf(b x) erf(a + b x) integral(…) unchanged: the two arguments differ

The new answers check out exactly at 4 points, at 50, 300 and 2000 digits, with a, b, c, d = 13/10, 7/10, 19/10, 17/10.

Rubi checks, against master, with no wrong answers anywhere:

  • Family 8, all 420 rows: 414 → 417 solved. The three that moved, 8.1:52, 181 and 310, were re-run on their own: 0/3 on master (timeouts), 3/3 here.
  • Families 0 and 1 in full, plus samples of families 2–7: identical results.
  • The allocation gate and the full suite pass (15,591 passed).

2.5.0 has no erf integration, so no answer changes and there is no BREAKING-CHANGES entry.

🤖 Generated with Claude Code

https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura

Writes x^n erf(a + b x)^2 and its erfc and erfi kin in u = a + b x, where
the unshifted rules already answer. By parts in x leaves a Gaussian of the
shifted linear beside a polynomial, which nothing reads.

Part of #1945.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura
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