Skip to content

Split a power of a product beside a whole power of a factor, and ask it early - #1889

Merged
Rafael-SOWNet merged 5 commits into
masterfrom
a-power-of-a-product-splits-beside-a-whole-power-of-a-factor
Oct 15, 2026
Merged

Rafael-SOWNet merged 5 commits into
masterfrom
a-power-of-a-product-splits-beside-a-whole-power-of-a-factor

Conversation

@Rafael-SOWNet

Copy link
Copy Markdown
Member

Part of #718

SolveBySplittingARootOfAProductBesideARootOfAFactor (#1876, #1887) split (P Q)^r into K P^r Q^r only when the factor beside it was a root or a symbolic power too. It now also splits in two more cases:

  • A whole power of a factor, beside a root of the product. Rubi's 1.2.1.2:2218, 1/((d + e x)^4 (a d e + (c d^2 + a e^2) x + c d e x^2)^(3/2)), gathers into (d + e x)^(-11/2) (a e + c d x)^(-3/2). Only for a factor to a whole power of two or more below the bar:
    • Beside a bare factor, Welz's (1 + x)/((x - 2) sqrt(1 + x^3)) became three logarithms instead of one, ALinearDividingARadicandOfSymbols hung the suite, and 1.1.1.2:1257 went from 4 ms to 36 s.
    • Above the bar, (a + b x)^3 sqrt(c x^2 - a^2 c/b^2) went from 3,540 characters to 33,316.
  • A whole power of the product, or the product standing bare, beside a root of a factor that is a sum. For example 1.2.1.2:2280, 1/(sqrt(d + e x) (a d e + (c d^2 + a e^2) x + c d e x^2)). Here K is 1. Beside a power of x, x^(5/2)/(b x^2 + c x^4)^3 went from 1.7 s to 7.9 s.

Two whole powers are a rational function and are left to the partial fractions.

The rule now runs right after SolveByWritingEachLinearOnce, ahead of the routes that read the product whole. Placed late, 2218 took 27 s to reach it, and 2276 was answered by another route first in 29,285 characters. Now they take 0.5 s and 1,611 characters.

Measured

intbench, this branch against master 364eda3, 5 s budget. The pocket was 1.1.1.2–1.1.1.4, 1.2.1.2–1.2.1.4, 1.2.1.6, 1.2.1.9, 1.2.2.2–1.2.2.4 and 1.3.2 in full (13,826 rows), plus the usual family sample:

master this branch
pocket 13,674 solved, 52 timeouts 13,683 solved, 47 timeouts
time on the rows both solve 1,899 s 1,847 s
rows more than twice as slow none
families 0–8 sample identical
wrong / error 0 / 0 0 / 0

Nine rows moved, all to solved, and all held when re-run alone (master solves none of them alone):

  • 1.2.1.2: 1081, 1091, 2218, 2228, 2275, 2276 and 2280
  • 1.2.1.3: 2447 and 2531

All nine were checked exactly with exactcheck (exact pins, 50 and 2,000 digits, four points, three pin sets): 216 of 216 diff 0. The gate and the suite pass (15,391).

A wider version also answered 1.2.1.3:147 and 156, (A + B x)/(x^4 (b x + c x^2)^(3/2)). It paid for that with the 3,540-to-33,316 growth and the 7.9 s above, so I left those two rows out.

🤖 Generated with Claude Code

https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura

Rafael-SOWNet and others added 5 commits October 14, 2026 20:46
…it early

A whole power of a product, or a sum standing as a factor, is split
beside a root of one of its factors, and a root of a product beside a
whole power of one; two whole powers are a rational function and left
to the partial fractions. Asked right after each linear is written
once: what reads the product whole took 27 seconds on Rubi's
1.2.1.2:2218 and answered :2276 in 29,285 characters.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura
Beside a bare factor the root was split where it read better whole:
Welz's (1 + x)/((x - 2) sqrt(1 + x^3)) became three logarithms, and
(1 + a x) sqrt(1 - a^2 x^2)/(1 - a x) went from 4 ms to 36 s.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura
Above the bar the split took the answer for (a + b x)^3 sqrt(c x^2 -
a^2 c/b^2) from 3,540 characters to 33,316, and beside a power of x
x^(5/2)/(b x^2 + c x^4)^3 from 1.7 seconds to 7.9.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura
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 15, 2026
@Rafael-SOWNet
Rafael-SOWNet merged commit 728b279 into master Oct 15, 2026
34 of 35 checks passed
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