# How to make Assumptions in IntegrateChangeVariables?

There is a new useful command IntegrateChangeVariables since 13.1. The command has the Assumptions option which is very poorly described in the documentation "Restrictions on the domains of the variables and parameters in the integral can be specified using Assumptions". I don't understand the only example to it at the end of the documentation.

Here is my unsuccessful trial to apply that option which leads to an incorret result.

The command in 13.3.1 on Windows 10

IntegrateChangeVariables[Inactive[Integrate][(-2*Cos[x] + 2 a)/(1 - 2 a*Cos[x] + a^2) /.
a -> 1/2, {x, 0, \[Pi]}], t, t == Tan[x/2]]

returns the input. Because of this reason I try

int = IntegrateChangeVariables[Inactive[Integrate][(-2*Cos[x] + 2 a)/(1 - 2 a*Cos[x] + a^2) /.
a -> 1/2, {x, 0, \[Pi] - eps}], t, t == Tan[x/2],Assumptions -> eps > 0 && eps < 1/10]

ConditionalExpression[Piecewise[ {{Inactive[Integrate][-8/(1 + t^2), {t, 0, Infinity}], t >= 0 && eps + 2*Pi*C[1] <= 0}}, Inactive[Integrate][ (8*(-1 + 2*Cos[2*ArcTan[t]]))/((1 + t^2)*(-5 + 4*Cos[2*ArcTan[t]])), {t, 0, Cot[eps/2]}]], Element[C[1], Integers] && t + Tan[Pi*C[1]] >= 0 && ((Inequality[0, Less, eps + 2*Pi*C[1], Less, Pi] && t <= Cot[eps/2 + Pi*C[1]]) || (C[1] > -1/2 && eps + 2*Pi*C[1] <= 0))]

and a warning " Warning: contradictory assumption(s) Subscript[[ConstantC], 1][Element][DoubleStruckCapitalZ]&& DSolveIntegrateChangeVariablesDumpnIV$1749501>=-Tan[[Pi] Subscript[[ConstantC], 1]]&& -(1/2)<Subscript[[ConstantC], 1]&&0<eps&&eps<1/10&&Subscript[[ConstantC], 1]<=-(eps/(2 [Pi])) encountered" repeated twice. The result is incorrect in view of Activate[int /. eps -> 0] ConditionalExpression[Piecewise[{{-4*Pi, t >= 0 && 2*Pi*C[1] <= 0}}, Integrate[(8*(-1 + 2*Cos[2*ArcTan[t]]))/ ((1 + t^2)*(-5 + 4*Cos[2*ArcTan[t]])), {t, 0, ComplexInfinity}]], Element[C[1], Integers] && t + Tan[Pi*C[1]] >= 0 && ((Inequality[0, Less, 2*Pi*C[1], Less, Pi] && t <= Cot[Pi*C[1]]) || (C[1] > -1/2 && 2*Pi*C[1] <= 0))] The command Limit[Activate[int], eps -> 0, Direction -> "FromAbove"] is running without any response for a few hours. The question is: how to make this change correctly, obtaining the correct result 0? ## 1 Answer It appears you have to also specify t>=0: int = IntegrateChangeVariables[ Inactive[Integrate][(-2*Cos[x] + 2 a)/(1 - 2 a*Cos[x] + a^2) /. a -> 1/2, {x, 0, \[Pi] - eps}], t, t == Tan[x/2], Assumptions -> 1/10 > eps > 0 && t >= 0] (* Inactive[Integrate][(8 (-1 + 3 t^2))/( 1 + 10 t^2 + 9 t^4), {t, 0, Cot[eps/2]}] *) Limit[Activate[int], eps -> 0] (*0*) I would think IntegrateChangeVariables should know the domain of t, since it has the transform function from x to t, and the integration bounds in x. But for some reason it had to be specified here. My version:$Version
(*"13.3.1 for Mac OS X ARM (64-bit)"*)
• Cannot reproduce it in 13.3.1 on Windows 10. I obtain "$Assumptions::cas: Warning: contradictory assumption(s) Subscript[[ConstantC], 1][Element][DoubleStruckCapitalZ]&&DSolveIntegrateChangeVariablesDumpnIV$9003>=-Tan[[Pi] Subscript[[ConstantC], 1]]&&-(1/2)<Subscript[[ConstantC], 1]&&0<eps&&eps<1/10&&Subscript[[ConstantC], 1]<=-(eps/(2 [Pi])) encountered." and Commented Dec 6, 2023 at 5:30
• Piecewise[{{Inactive[Integrate][-8/(1 + t^2), {t, 0, Infinity}] + Inactive[Integrate][(8*(-1 + 3*t^2))/(1 + 10*t^2 + 9*t^4), {t, 0, Cot[eps/2]}], Element[C[1], Integers] && t + Tan[Pi*C[1]] >= 0 && C[1] > -1/2 && eps + 2*Pi*C[1] <= 0}}, Inactive[Integrate][(8*(-1 + 3*t^2))/(1 + 10*t^2 + 9*t^4), {t, 0, Cot[eps/2]}]] and then the unevaluated limit. Maybe, this is a session depending result. Commented Dec 6, 2023 at 5:31
• I added my \$Version, it might be because of that; I don't get any Messages when I run it.
– ydd
Commented Dec 6, 2023 at 5:41
• +1. Thank you. However, I can't accept it since your code does not work on Linux in Wolfram Cloud too. Commented Dec 6, 2023 at 5:50
• @user64494 That is fair
– ydd
Commented Dec 6, 2023 at 15:56