Skip to content

A power of x times the square of erf of a shifted argument is not integrated #1945

Closed

Description

@Rafael-SOWNet

Part of #718.

Rubi 8.1 integrates (c + d x)^m erf(a + b x)^2. On master (3d5d146), as of 2.6.0:

integrand result
erf(a + b x)^2 answered, 0.9 s
x erf(b x)^2, x^2 erf(b x)^2 answered
x erf(a + b x)^2 integral(…) after 2.4 s
x^2 erf(a + b x)^2 integral(…) after 2.4 s
x erf(b x) erf(a + b x) integral(…) after 8 s
(c + d x)^2 erf(a + b x)^2 times out after 20 s

So the shift a and a power of x together are what is missing. Integrating by parts leaves x^n e^(-(a + b x)^2) erf(a + b x). With a = 0 this reduces through t = x^2. With a ≠ 0 it needs x = (u - a)/b, after which it is a polynomial in u times e^(-u^2) erf(u), which closes in terms of erf(sqrt(2) u) and e^(-2 u^2).

2.5.0 has no erf integration at all, so this is a gap, not a regression.

🤖 Generated with Claude Code

https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura

Activity

  1. added this to the 2.7.0 milestone on Oct 19, 2026
  2. modified the milestones: 2.7.0, 2.6.0 on Oct 19, 2026
  3. Rafael-SOWNet commented on Oct 19, 2026

    @Rafael-SOWNet
    MemberAuthor

    #1947 (merged, bdbfcb4) integrates (c + d x)^m erf(a + b x)^2, and the erfc and erfi forms, by writing them in u = a + b x. It also answers Rubi 8.1:52, 181 and 310.

    Still open: x erf(b x) erf(a + b x). Its two error functions have different arguments, and integrating by parts leaves e^(-b^2 x^2) erf(a + b x), which is not elementary.

    🤖 Generated with Claude Code

    https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura

  4. modified the milestones: 2.6.0, 2.7.0 on Oct 19, 2026
  5. Rafael-SOWNet commented on Oct 22, 2026

    @Rafael-SOWNet
    MemberAuthor

    Re-measured on master ec0d9633 (2.6.0). Every row of this issue's shape is answered and differentiates back to its integrand:

    integrand result
    erf(a + b x)^2 300 characters, 0.9 s
    x erf(a + b x)^2 580 characters, 0.9 s
    x^2 erf(a + b x)^2 936 characters, 0.8 s
    x^3 erf(a + b x)^2 1,381 characters, 0.6 s
    (c + d x)^2 erf(a + b x)^2 1,873 characters, 0.6 s

    x erf(b x) erf(a + b x) is still declined, and that is the right answer. Integrating by parts leaves e^(-b^2 x^2) erf(a + b x) and e^(-(a + b x)^2) erf(b x). Their sum, with equal weights, is the derivative of erf(b x) erf(a + b x), but the weights are equal only when a = 0. Otherwise the remainder needs Owen's T function, which the library has no node for. Closing as delivered by #1947.

    🤖 Generated with Claude Code

    https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions