Skip to content

The Hermite reduction's system is solved in one row order whatever the spelling - #1715

Merged
Rafael-SOWNet merged 3 commits into
masterfrom
the-hermite-system-in-a-fixed-row-order
Oct 3, 2026
Merged

Rafael-SOWNet merged 3 commits into
masterfrom
the-hermite-system-in-a-fixed-row-order

Conversation

@Rafael-SOWNet

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

Copy link
Copy Markdown
Member

Part of #718.

How the denominator of a rational integrand was written decided how long its Hermite reduction took: x/((1 + x^2)^3 (2 a x + b (x^2 + 1))) took 45 s, and the same with (x^2 + 1)^3 below the bar 1.2 s.

integrand master 97c4b692 this
x/((1 + x^2)^3 (2 a x + b (x^2 + 1))) 45 s 0.6 s
x/((x^2 + 1)^3 (2 a x + b (x^2 + 1))) 1.2 s 0.6 s
sin(c + d x)^4/(a + b tan(c + d x))^3 past 90 s 1.1 s
sinh(c + d x)^6/(a - b sinh(c + d x)^4)^2 past 150 s 0.9 s
(A + B x + K x^2)/(x^3 (a + b x^2 + c x^4)^2) past 90 s 5.1 s

What changes. The rational part of a Hermite reduction is one linear system, and its rows were the powers of x in the order the coefficient dictionaries met them, which follows how the factors are written. With symbols in the coefficients the elimination's pivots followed that order, and in one order the solution came out in coefficients of the thirty-sixth degree in the symbols that the final cancellation did not reduce; declining the logarithmic part they made was forty seconds before the answer. The rows are ordered by their power of x now. The value of an answer does not change; where the order mattered, its coefficients can come out reduced where they were not.

Tests: RationalFactorsBesideASymbolicQuadraticTest.EitherSpellingOfOnePlusTheSquare, three rows, each answered within the test's minute and differentiated back.

Measured first on every fourth problem of 4.1.1.2, 4.1.2.1 and 4.1.2.2, the half-angle tangent's rational functions with symbols, at the corpus's 5-second budget, against master 9a33298e, the branch's base:

master this
solved 498 498
wrong 0 0

Measured then on the Rubi corpus against master 9a33298e:

master this
family 0, independent suites (1814) 1766 1766
family 1, 40 a file (1381) 1288 1290
families 2 to 8, sampled (2410) 2200 2204

No answer is wrong on either build. The 7 problems the two builds disagreed on, run again one build at a time, timed out on master, all 7; here 6 are answered -- among them the third, fourth and fifth rows above, 1/((d + e x^2)(a + b x^2 + c x^4)^2) and 1/(1 + cosh(x)^5) -- and x^7/(216 + 108 x^2 + 324 x^3 + 18 x^4 + x^6)^2 is declined in 67 ms.

The suite passes on the commit measured, 13eb63d1, 14,572 tests, and so does the allocation gate. Master 97c4b692 is merged in since, with one conflict in BREAKING-CHANGES.md, two entries at one place, both kept, and master dbe5b382 after it without conflicts; the calculus tests pass on that merge, 3,951 of them.

🤖 Generated with Claude Code

https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura

Rafael-SOWNet and others added 2 commits October 3, 2026 13:27
…e spelling

The rational part of a Hermite reduction is one linear system, and its
rows were the powers of x in the order the coefficient dictionaries met
them, which follows how the denominator's factors are written. With
symbols in the coefficients the elimination's pivots followed that
order: x/((1 + x^2)^3 (2 a x + b (x^2 + 1))) solved to coefficients of
the thirty-sixth degree in the symbols that nothing reduced, and
declining their logarithmic part took 40 s before the answer, where
with (x^2 + 1)^3 written the whole took 1 s. The rows are ordered by
their power of x; both spellings take half a second.

Part of #718.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura
…in-a-fixed-row-order

# Conflicts:
#	BREAKING-CHANGES.md
@Rafael-SOWNet Rafael-SOWNet added this to the 2.6.0 milestone Oct 3, 2026
@Happypig375

Copy link
Copy Markdown
Member

In case your comment polling loop failed, tell it to read #1649 (comment)

@Rafael-SOWNet

Copy link
Copy Markdown
Member Author

Read, and answered on #1649. You've since opened #1716 and AngouriMathSite#40 for the revert, so I've dropped my own; new links use asc-community.

@Rafael-SOWNet
Rafael-SOWNet merged commit 8f3757c into master Oct 3, 2026
34 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants