Skip to content

A quadratic sharing a root off the real line with a linear beside it is written over that root - #1750

Merged
Rafael-SOWNet merged 2 commits into
masterfrom
a-quadratic-sharing-a-complex-root-with-a-linear-is-written-over-it
Oct 4, 2026
Merged

Rafael-SOWNet merged 2 commits into
masterfrom
a-quadratic-sharing-a-complex-root-with-a-linear-is-written-over-it

Conversation

@Rafael-SOWNet

Copy link
Copy Markdown
Member

Part of #718.

1/((a + i a tan(x)) (c + d tan(x))), Rubi's 4.3.2.1, is under the tangent substitution a rational function over (1 + i u)(c + d u)(1 + u^2), and 1 + u^2 is (1 + i u)(1 - i u): the written factors share a linear. The splits read written factors as coprime, and the divisors that take shared factors apart are taken over the rationals, which the imaginary unit is not. 2.5.0 declined them too:

integrand 2.5.0 master fc7aafe2 this
1/((a + i a tan(x)) (c + d tan(x))) declined declined after 4 s a quotient by tan(x) - i and logarithms, in 0.8 s
1/((a + i a tan(x))^2 (c + d tan(x))) declined declined after 11 s the same, in 0.3 s
1/((a + i a tan(x)) (c + d tan(x))^2) declined past a minute the same, in 0.8 s

The times of this column include differentiating the answer back with the symbols pinned to check it, as complex numbers.

What changes. With a symbol in the denominator, a quadratic that has a root off the real line in common with a linear beside it is written as its leading coefficient times the linears of its two roots, and the shared linear is taken as one power, so that the splits see the factors they are.

Tests: ComplexRootSharedWithAQuadraticIntegralTest, four rows compared as complex numbers, since the integrands are complex along the real line; all four are declined on master.

Measured first on the 322 problems of 4.3.2.1 and 4.3.3.1 with a + i a tan(x) in them, at the corpus's 5-second budget, against master 8f3757cd, the branch's base:

master this
solved 268 273
wrong 0 0
past the budget 43 38

Measured then on the Rubi corpus against master 8f3757cd:

master this
family 0, independent suites (1814) 1766 1766
family 1, 40 a file (1381) 1296 1295
families 2 to 8, sampled (2410) 2215 2216

The harness counts no answer wrong in the pocket or the sample on either build. Of the 17 problems the two builds disagreed on, pocket and sample together, run again one build at a time, master answers 5 and this 15: seven of 4.3.2.1's, 1/((a + i a tan(e + f x))^m (c + d tan(e + f x))^n) for m and n from one to three, that master runs past the budget with and this answers in a third of a second to a second; three more that master ran past the patience with and this answers at seventeen to twenty-three seconds; and the five both answer, at eleven to twenty-three seconds. 1/((a + i a tan(e + f x))^3 (c + d tan(e + f x))^(3/2)), which master declines after eight seconds, runs past the budget here, and one is declined by both. Family 1's one in the sample is one of those near the patience, which ran past it during this build's run.

The suite passes on the commit measured, 15f95526, 14,595 tests with 13 skipped, and the allocation gate with it. On the merge with master fc7aafe2, 1e0fb647, the 4,124 calculus and corpus tests that run pass, with 2 skipped. Every row of the first table is as it says on the merge.

🤖 Generated with Claude Code

https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura

Rafael-SOWNet and others added 2 commits October 4, 2026 05:37
…is written over that root

1/((a + i a tan(x)) (c + d tan(x))) is under the tangent substitution a rational
function over (1 + i u)(c + d u)(1 + u^2), and 1 + u^2 is (1 + i u)(1 - i u): the
written factors share a linear, which the divisors over the rationals do not
see. With a symbol in the denominator the quadratic is written over the linears
of its roots and the shared one taken as one power, for the splits. Rubi's
4.3.2.1. Part of #718.

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 4, 2026
@Rafael-SOWNet
Rafael-SOWNet merged commit 287c69a into master Oct 4, 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.

1 participant