Repository navigation
A symbolic power of a + i a tan is gathered with the secant's in the sum - #1818
Merged
Rafael-SOWNet merged 1 commit intoOct 7, 2026
Conversation
In u = a + i a tan(z), u^n beside (u/a)^r is one power of u/a up to a factor constant on the path; written apart, a symbolic n left them unread. Part of #718. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part of #718.
(k sec(c + d x))^(4 - 2 n) (a + i a tan(c + d x))^nwas declined, with three more of Rubi's 4.3.1.2 whose powers are symbols. #1812's rule integrates a power of the secant beside a power ofa + i a taninu = a + i a tan(z), where the integrand isu^n (u/a)^r ((2 a - u)/a)^rwithr = (s - 2)/2; hereu^(2 - n) (u/a)^(n - 1)is one power ofu/a, and written apart no rule read it.u^nisa^n (u/a)^nup to a factor constant on the path, which the rule's quotient already carries, so the two are gathered into(u/a)^(n + r), the exponent simplified.c417571d(k sec(x))^(4 - 2 n) (a + i a tan(x))^n(k sec(x))^(2 n) (a + i a tan(x))^(3 - n)sec(x)^3 sqrt(a + i a tan(x))cos(x)^9 (a + i a tan(x))^(7/2)Every answer this rule gives comes out of the gathered integrand: of the 88 rows of 4.3.1.2, 54 change, 50 of them shorter -- by a third or more for most -- and about twice as fast; four are up to 7% longer, and
(d sec(x))^(2/3)/(a + i a tan(x))^(1/3)takes 448 ms where it took 259.Tests: two rows in
SecantBesideAnImaginaryTangentSumIntegralTest,npinned to 2.3, each differentiated back and compared as a complex number at six real points.Measured first on every corpus problem with
iin its integrand, 2,253 of them, at the corpus's 5-second budget, against masterc417571d:The one counted wrong on both is the known 6.1.5
1/(a + i a sinh(c + d x))^(1/2), the harness's own. On the 2,001 both answer the time goes from 2,015 seconds to 1,901.Measured then on the Rubi corpus:
The harness counts no answer wrong in either. The fourteen problems the builds disagreed on, run again one build at a time: the four above are answered here and not on master; six powers of the cosine beside
a + i a tan, past the budget on master, are answered here and are unverifiable to the harness, which simplifies an answer it cannot check on the reals within the same five seconds and whose integrand is nowhere real; the other four come out the same on both builds alone.The suite passes on
958752cc, this change onc417571d: 15,138 passed, 13 skipped, none failed. The chain's own run of it was stopped by the machine's memory guard at 8 GB after 14,904 had passed and none failed; run whole twice more on each tree, the test host peaked at 5.4 and 5.5 GB here and at 4.1 and 6.5 GB on master. Rebased ontoc21de3efwithout a conflict, the tests of the tangent's rules pass again. The allocation gate passes: every gated benchmark allocates what the baseline says. The library builds for every target.🤖 Generated with Claude Code
https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura