You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 20a4b39
Browse filesBrowse the repository at this point in the historyBrowse files
Keep a quotient written apart true beyond the restriction its sub-answer holds under (#1993)
x^3 (a + b arcsec(c x))/sqrt(1 - c^4 x^4) is integrated by parts, and the
remainder reaches SolveByWritingAPowerOfAQuotientApart, which writes
sqrt(1 - 1/u^2) as sqrt(u^2 - 1)/|u| and asks sqrt(1 - u^4)/(u sqrt(u^2 - 1)).
That came back provided u^2 - 1 >= 0, and the rule's Bare dropped the
condition: for |c x| < 1 the answer was the negative of the integral there.
Where a power of x was written apart and the sub-answer is restricted to an
inequality in x, the rule now checks the bare answer at two points in every
interval between the roots of the restriction and of x; returns it where it
holds on every one; else returns sgn(P) times it, Rubi's own sign, where the
integrand has no value at P's roots and that holds everywhere; and else keeps
the condition.
Rubi's 5.5.1:227-229 and 5.6.1:227-229 hold on both sides of |c x| = 1,
checked by complex values at c = 0.7, -0.7 and 2.1, 24 characters longer
each; across 934 rows of 5.5, 5.6, 7.5, 7.6, 5.1.4 and 5.2.4 only these six
reach the new path, and 111 solved neighbours answer as before, character
for character.
Part of #233.
Claude-Session: https://claude.ai/code/session_012sonx8iAspMiwRwokT1Ura
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
=> answer.InnerSimplified is Providedf(_, var condition)
32503
+
? Andf.LinearChildren(condition).Where(conjunct => conjunct is Greaterf or GreaterOrEqualf or Lessf or LessOrEqualf && conjunct.ContainsNode(x)).Distinct().ToList()
32504
+
: new List<Entity>();
32505
+
32506
+
/// <summary>
32507
+
/// <paramref name="answer"/>, an antiderivative of <paramref name="integrand"/> where
32508
+
/// <paramref name="restrictions"/> hold, as one wherever the integrand has a value, with the
32509
+
/// condition it still holds under, <see langword="null"/> where it needs none: as it is
32510
+
/// where it holds on every interval between the roots of the restrictions, with the sign
32511
+
/// of the one restriction in front where that is what it is off it, and under the
32512
+
/// restrictions otherwise. <paramref name="byParity"/> where <paramref name="answer"/> is
32513
+
/// the antiderivative for positive x written in |x|.
32514
+
/// </summary>
32515
+
/// <remarks>
32516
+
/// <para>
32517
+
/// <c>sqrt(1 - u^2)/sqrt(u - 1)</c> is <c>sqrt(-(1 + u))</c> for <c>u > 1</c> and its
32518
+
/// negative for <c>-1 < u < 1</c>, where the root below the bar is imaginary, so an
32519
+
/// antiderivative found through the one is the negative of one off it, and
32520
+
/// <c>sgn(u - 1) F</c> holds on both sides. Rubi writes that sign as
32521
+
/// <c>sqrt(1 - c^2 x^2)/(c x sqrt(1 - 1/(c^2 x^2)))</c>, which is <c>i sgn(c x) sgn(c^2 x^2 - 1)</c>.
32522
+
/// Only where the integrand has no value at the restriction's roots, which then part its
32523
+
/// domain: where it has one, an antiderivative is continuous there and <c>sgn(P) F</c> is not.
32524
+
/// </para>
32525
+
/// <para>
32526
+
/// Decided at two points of every interval between the real roots of the restrictions and
32527
+
/// of x, comparing complex values, every other symbol pinned to an exact rational so that
32528
+
/// the roots are exact. An interval where the two cannot be compared does not hold. The
32529
+
/// derivative is compared with each <c>(P^(1/n))^n</c> in the answer written <c>P</c>, which
32530
+
/// is the same number on every branch: <c>(sqrt(x^2 - 1))^2</c> under a root, inside
32531
+
/// <c>(-1, 1)</c>, is an interval about the negative axis that the evaluation cannot place
0 commit comments