Repository navigation
A radical of a hyperbolic function of a logarithm is integrated on both sides of zero - #1752
Merged
Rafael-SOWNet merged 4 commits intoOct 4, 2026
Conversation
…th sides of zero Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura
…es that step 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
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.
1/csch(2 ln(x))^(1/2)is answered on master throught = ln(x),provided x > 0, and its derivative is not the integrand for0 < x < 1, wheresinh(2 ln(x))is negative and the integrand imaginary: the integral intis reached through a step ofSimplifythat splits a power of a reciprocal,(1/q)^p = q^(-p), which holds only whereqis positive (#1734). The integrand is((x^2 - x^(-2))/2)^(1/2), and real on both sides of zero; 2.5.0 declined these:287c69a71/csch(2 ln(x))^(1/2)provided x > 0, and not for0 < x < 1csch(2 ln(x))^(-3/2)provided x > 0, and not for0 < x < 11/csch(2 ln(c x))^(1/2)provided c x > 0, and not for0 < c x < 11/sech(2 ln(x))^(1/2)provided x > 0Each answer is differentiated back with
c = 1.3and compared as a complex number atx = -2.7, -1.3, 0.4, 0.7, 1.3, 2.7; the times include that.What changes. These are answered by folding their exponentials into powers of
x--e^(2 ln(x))isx^2-- before the substitution is reached, and two things kept the fold from them:e^(-2 ln(x))asx^(-2), and the rules for a root read a denominator below the bar:(1/((x^2 - x^(-2))/2))^(-3/2)is declined where(1/((x^2 - 1/x^2)/2))^(-3/2)is answered. A negative power in the base of a power that is not whole is written below the bar now. Only there: a whole power of a sum is expanded, and the power rule reads its terms asx^(-k)--sinh(a + b ln(c x^n))^4is answered in a second that way and was searched for six with them below the bar.c/g^pwas asked asg^(-p)one level down, where the rules scoped to the question asked do not answer, so1/csch(2 ln(x))^(1/2), written1/(...)^(1/2), reached the fold a level down and was declined there. Wherepis not whole it is asked as the same question now, as the other constant multiples in the same rule are. A whole power is still asked one level down: asked at its own level,(c + d x)/(a + a tanh(e + f x))^3and itscothtwin ran past the budget, where they are answered in a fifth of a second.The step of
Simplifyis #1734's, fixed separately; with it fixed and this not, the threecschrows search for fifty seconds to past two minutes, and one of them is answered.Tests:
LogarithmSubstitutionTest.ARadicalFunctionOfAWholePowerOfXis compared on both sides of zero and on both sides of 1, wheresinh(2 ln(x))changes sign, at ten points, and demands that every answer hold at all of them. On master four of its six rows fail: the threecschrows on(0, 1), and1/sech(2 ln(x))^(1/2), which says nothing for a negativex.Measured first on the 204 problems of Rubi's hyperbolic functions of a logarithm in 6.1.5 to 6.6.3, and 2.3's
e^(ln((d + e x)^n)^2) (d + e x)^m, which the fold also reaches; the harness can state and check 125 of them. At the corpus's 5-second budget, against mastercb8e133d, the branch's base, on the branch's last commit,1bd4d7e9:The three are
csch(2 ln(c x))^(1/2)/x^4,x^8/csch(2 ln(c x))^(3/2)andcsch(2 ln(c x))^(3/2)/x^2. Master's answers to the first and the third check out only onceSimplifyhas rewritten them, and the second runs past the budget.Measured then on the Rubi corpus against master
cb8e133d, on the branch's first commit,7304b0af:The harness counts no answer wrong in the pocket or the sample on either build. Of the 10 problems the two builds disagreed on, run again one build at a time, the branch on its last commit, master answers 5 and this 8: the three
cschproblems of the pocket, answered here in 0.1 to 0.4 seconds, where master's answers check out only afterSimplify, at 2.2 and 5.8 seconds, or it runs past the budget. Two are thetanhandcothproblems above, which the first commit ran past the budget and the last answers as master does, in a fifth of a second. The other five are at the edge of the harness's patience on both: three both answer at fifteen to twenty seconds and two both decline after twenty.The suite passes on the merge with master
287c69a7,537a1906, 14,822 tests with 13 skipped, and the allocation gate on the first commit. Every row of the first table is as it says on the merge.🤖 Generated with Claude Code
https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura