Skip to content

Raise a negative power of x beside a power of a binomial by the reduction that takes out its pole, read a derivative's constant at a point, and rationalise the roots inside a root - #2033

Merged
Rafael-SOWNet merged 1 commit into
masterfrom
raise-a-negative-power-of-x-beside-a-binomial-ap
Oct 21, 2026
Merged

Rafael-SOWNet merged 1 commit into
masterfrom
raise-a-negative-power-of-x-beside-a-binomial-ap

Conversation

@Rafael-SOWNet

Copy link
Copy Markdown
Member

Part of #233.

Seven of Rubi's algebraic rows that master f7f2a7a declines or runs out of time on:

  • A negative power of x beside a power of a binomial. For x^m (a + b x^n)^p R(x^n) with m <= -2, a multiple of the derivative of x^(m + 1) (a + b x^n)^(p + 1) takes the pole at zero out and raises the power of x by n. The rest is asked on its own. This answers 1.1.3.4's 1/(x^3 (1 - x^3)^(2/3) (1 + x^3)), and 1.1.2.2's 1/(x^6 (a + b x^2)^10) and its neighbours, where the partial fractions ran past the budget.
  • A derivative's constant read at a point. A product of powers whose brackets are proportional at sampled points, but whose quotient cannot be shown free of x, has its constant read at x = 1. This answers 1.1.3.3:544.
  • Roots inside a root. Euler's substitution, or the sum of two roots of linears, rationalises the roots inside a root. This answers 1.3.2's sqrt(1 - x^2 + x sqrt(x^2 - 1)) and sqrt(-x + sqrt(x) sqrt(1 + x))/sqrt(1 + x), which Rubi itself does not integrate.

Two scopes, found by the first chain's allocation check.

  • The raising rule declines where m + 1 is a multiple of n beside a root. There the substitution reads the integrand whole, and the rule asked what was left, declined it, and spent 22 GB before master's identical answer. That was 1/(x^5 (1 - x^2)^(1/3) (3 + x^2)^2): 5.75 GB on master, 27 GB before the scope.
  • The nested-root rule takes only integrands that are roots and nothing else, with radicands that are polynomials in x and those roots. Under the tangent's substitution, (1 + coth(x))^(7/2) became a power of (u + 1)/u + sqrt(1 - u^2)/u, and the rule answered it in 1,661 characters where the rules after it give 287.

Chain against master f7f2a7a, after both scopes:

  • The pocket of 814 rows went from 772 to 779 solved, with 0 wrong.
  • The samples are unchanged.
  • The 7 rows that moved, run alone, went from 0 to 7 solved.
  • 6,304 rows were compared for allocation, and none grew by more than 23 MB.

The full unit suite passes locally: 16296 passed, 0 failed. Before the scopes it failed two coth tests, the same respelling. The BREAKING-CHANGES lengths were re-measured on the branch, and the v2.5.0 column on a v2.5.0 build.

🤖 Generated with Claude Code

https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura

…tion that takes out its pole, read a derivative's constant at a point, and rationalise the roots inside a root

- x^m (a + b x^n)^p R(x^n) with m <= -2: a multiple of the derivative of
  x^(m + 1) (a + b x^n)^(p + 1) takes the pole at zero out and raises the
  power of x by n, the rest asked on its own. Beside a root, last and at the
  question asked, and not where m + 1 is a multiple of n, where the
  substitution reads the integrand whole: there the rest was asked and
  declined at twenty-two gigabytes before master's answer. Over a whole
  power, with a symbol in the binomial, past the twenty-fourth degree.
- A product of powers whose brackets are proportional at sampled points,
  the constant read at x = 1 where the quotient cannot be shown free of x.
- A root of a radicand that holds the root of a quadratic or the roots of
  two linears with one slope, in Euler's substitution or their sum, for
  integrands that are roots of x and nothing else with a radicand that is a
  polynomial in x and those roots: the tangent's substitution hands
  (1 + coth(x))^(7/2) on as a power of (u + 1)/u + sqrt(1 - u^2)/u, which
  this answered in 1,661 characters where the rules after it give 287.

Chain against master f7f2a7a: pocket of 814 rows, 772 -> 779 solved,
0 wrong; the samples unchanged; the 7 rows that moved, alone, 0 -> 7
solved; 6,304 rows compared for allocation, none grew past 23 MB.

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 86d60b9 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