# FullSimplify crashes kernel

I'm trying to simplify an enormous analytic expression as much as possible. When I use Simplify, I get a half-decent result in about 20 seconds. However when I use FullSimplify the kernel simply crashes after a couple seconds, after which I need to reevaluate everything from scratch. I have tried manually setting the TimeConstraint option to infinity, that does nothing.

ClearAll[N1
, D1, D2, D3, D4, D5, D6
, F1, F2];
(* T *)
N1[k0_, x_, m_, L_, kp_, \[CapitalDelta]p_, \[Xi]_, Pz_, Md_,
Mu_] := -(1 + x)*k0^2 -
2*(x^2 - \[Xi]^2)*(Pz + m^2/(2*Pz))*k0 + (1 + x)*
kp^2 + (1 + m^2/(2*Pz^2))*\[Xi]*kp*\[CapitalDelta]p -
1/4*(1 - x)*\[CapitalDelta]p^2 + (x^2 - \[Xi]^2)*(1 - x)*
m^2 + (x - (1 + m^2/(2*Pz^2))*\[Xi])*Mu*
Md + (x + (1 + m^2/(2*Pz^2))*\[Xi])*Mu*Md + (1 - x)*Md^2;

(* (Subscript[k, +]-1/2\[CapitalDelta])^2+Subscript[M, d]^2 = \
-(Subscript[k, 0]-Subscript[k^(-), 0+])(Subscript[k, \
0]-Subscript[k^(-), 0-]) *)

D1[k0_, x_, m_, L_, kp_, \[CapitalDelta]p_, \[Xi]_, Pz_, Md_,
Mu_] := -k0*(k0 + 2*(x*(Pz + m^2/(2*Pz)) + \[Xi]*Pz)) + (\[Xi]^2 -
x^2)*m^2 + (kp - \[CapitalDelta]p/2)^2 + Md^2;

(* (Subscript[k, +]+1/2\[CapitalDelta])^2+Subscript[M, d]^2 = \
-(Subscript[k, 0]-Subscript[k^(+), 0+])(Subscript[k, \
0]-Subscript[k^(+), 0-]) *)

D2[k0_, x_, m_, L_, kp_, \[CapitalDelta]p_, \[Xi]_, Pz_, Md_,
Mu_] := -k0*(k0 + 2*(x*(Pz + m^2/(2*Pz)) - \[Xi]*Pz)) + (\[Xi]^2 -
x^2)*m^2 + (kp + \[CapitalDelta]p/2)^2 + Md^2;

(* (Subscript[k, -]^2+Subscript[M, u]^2) = -(Subscript[k, \
0]-Subscript[Overscript[k, _], 0+])(Subscript[k, \
0]-Subscript[Overscript[k, _], 0-]) *)

D3[k0_, x_, m_, L_, kp_, \[CapitalDelta]p_, \[Xi]_, Pz_, Md_,
Mu_] := -(k0 - (1 - x)*(Pz + m^2/(2*Pz)))^2 +
kp^2 + (1 - x)^2*Pz^2 + Mu^2;

(* (Subscript[k, +]-1/2\[CapitalDelta])^2+\[CapitalLambda]^2 = \
-(Subscript[k, 0]-Subscript[k^((-)\[CapitalLambda]), \
0+])(Subscript[k, 0]-Subscript[k^((-)\[CapitalLambda]), 0-]) *)

D4[k0_, x_, m_, L_, kp_, \[CapitalDelta]p_, \[Xi]_, Pz_, Md_,
Mu_] := -k0*(k0 + 2*(x*(Pz + m^2/(2*Pz)) + \[Xi]*Pz)) + (\[Xi]^2 -
x^2)*m^2 + (kp - \[CapitalDelta]p/2)^2 + L^2;

(* (Subscript[k, +]+1/2\[CapitalDelta])^2+\[CapitalLambda]^2 = \
-(Subscript[k, 0]-Subscript[k^((+)\[CapitalLambda]), \
0+])(Subscript[k, 0]-Subscript[k^((+)\[CapitalLambda]), 0-]) *)

D5[k0_, x_, m_, L_, kp_, \[CapitalDelta]p_, \[Xi]_, Pz_, Md_,
Mu_] := -k0*(k0 + 2*(x*(Pz + m^2/(2*Pz)) - \[Xi]*Pz)) + (\[Xi]^2 -
x^2)*m^2 + (kp + \[CapitalDelta]p/2)^2 + L^2;

(* (Subscript[k, -]^2+\[CapitalLambda]^2)^2 = (Subscript[k, \
0]-Subscript[Overscript[k, _]^\[CapitalLambda], 0+])^2(Subscript[k, \
0]-Subscript[Overscript[k, _]^\[CapitalLambda], 0-])^2 *)

D6[k0_, x_, m_, L_, kp_, \[CapitalDelta]p_, \[Xi]_, Pz_, Md_,
Mu_] := (-(k0 - (1 - x)*(Pz + m^2/(2*Pz)))^2 +
kp^2 + (1 - x)^2*Pz^2 + L^2)^2;

(* Full Integrand relevant for evaluating pole at Subscript[k^(-), \
0+] (SINGLE POLE) *)

F1[k0_, x_, m_, L_, kp_, \[CapitalDelta]p_, \[Xi]_, Pz_, Md_, Mu_] :=
N1[k0, x, m, L, kp, \[CapitalDelta]p, \[Xi], Pz, Md,
Mu]/(-(2*(x + \[Xi])*Pz)*
D2[k0, x, m, L, kp, \[CapitalDelta]p, \[Xi], Pz, Md, Mu]*
D3[k0, x, m, L, kp, \[CapitalDelta]p, \[Xi], Pz, Md, Mu]*
D4[k0, x, m, L, kp, \[CapitalDelta]p, \[Xi], Pz, Md, Mu]*
D5[k0, x, m, L, kp, \[CapitalDelta]p, \[Xi], Pz, Md, Mu]*
D6[k0, x, m, L, kp, \[CapitalDelta]p, \[Xi], Pz, Md, Mu]);

(* Full Integrand relevant for evaluating pole at Subscript[k^((-)\
\[CapitalLambda]), 0+] (SINGLE POLE) *)

F2[k0_, x_, m_, L_, kp_, \[CapitalDelta]p_, \[Xi]_, Pz_, Md_, Mu_] :=
N1[k0, x, m, L, kp, \[CapitalDelta]p, \[Xi], Pz, Md,
Mu]/(-D1[k0, x, m, L, kp, \[CapitalDelta]p, \[Xi], Pz, Md, Mu]*
D2[k0, x, m, L, kp, \[CapitalDelta]p, \[Xi], Pz, Md, Mu]*
D3[k0, x, m, L, kp, \[CapitalDelta]p, \[Xi], Pz, Md,
Mu]*(2*(x + \[Xi])*Pz)*
D5[k0, x, m, L, kp, \[CapitalDelta]p, \[Xi], Pz, Md, Mu]*
D6[k0, x, m, L, kp, \[CapitalDelta]p, \[Xi], Pz, Md, Mu]);


Here is the evaluation that's causing me issues. If I change FullSimplify to Simplify, I get a good answer. But ideally I would get an even more simplified expression.

TraditionalForm[FullSimplify[
Series[F1[Subscript[k, 0], x, m, L, kp, \[CapitalDelta]p, \[Xi],
Subscript[P, z], Subscript[M, d], Subscript[M,
u]] /. {Subscript[k,
0] -> ((kp - (\[CapitalDelta]p/2))^2 + Subscript[M,
d]^2 + (\[Xi]^2 - x^2)*m^2)/(
2*(x + \[Xi])*Subscript[P, z])}, {Subscript[P, z], \[Infinity],
2}] + Series[
F2[Subscript[k, 0], x, m, L, kp, \[CapitalDelta]p, \[Xi],
Subscript[P, z], Subscript[M, d], Subscript[M,
u]] /. {Subscript[k,
0] -> ((kp - (\[CapitalDelta]p/2))^2 +
L^2 + (\[Xi]^2 - x^2)*m^2)/(
2*(x + \[Xi])*Subscript[P, z])}, {Subscript[P, z], \[Infinity],
2}]
, TimeConstraint -> Infinity]]


Here are my system specs:

• Mathematica Version: 11.3.0 for Linux
• Operating System: Ubuntu 20.04.4 LTS, 64-bit
• Processor: Intel® Core™ i7-8550U CPU @ 1.80GHz × 8
• TimeConstrained will do nothing for you here. I am always wary of pretty-printing notation in mathematical calculations. Do you think you could dramatically simplify your symbols to avoid Subscript, Overscript, etc, and just use plain names, or perhaps instead of Subscript[d, 2] just d[2]? Apr 1, 2022 at 19:38
• Does using subscripted variables dramatically worsen evaluation time? I can definitely remove them and try it again, no problem. Apr 1, 2022 at 20:02
• Do the simplification in two steps, i.e., expr2 = Simplify[expr]; expr3 = FullSimplify[expr2]. Also, what do you know about constraints on the variables/parameters that you can provide to Simplify and FullSimplify as assumptions? Apr 1, 2022 at 20:35
• I tried executing FullSimplify on the result of Simplify, and the kernel crashed all the same. The assumptions are that all the parameters are real, $m,L,k_p,\Delta_p,M_d,M_u>0$ are positive numbers, $0<\xi<1$, and $-\xi < x < \xi$. Apr 1, 2022 at 20:43
• I am not replicating the crash either in 11.3 or 13.0 (on Ubuntu 18.04). It is not completing in reasonable time either, but no crash after several minutes thus far. Apr 2, 2022 at 16:29