Question: Why do I have to `simplify` twice?

Why can't a singular call fully simplify them? 
 

restart;

(* in △ABC *)

tp1 := [cot((1/2)*A)/(cot(A)+cot((1/2)*A))-cos((1/2)*B)*cos((1/2)*C), ((sin(B)+sin(C))*cos((1/2)*A)+4*sin((1/2)*A)*cos((1/2)*B)*cos((1/2)*C))*(1-sin((1/2)*A)/(cos((1/2)*B)^2+cos((1/2)*C)^2))-(sin(B)+sin(C))*sec((1/2)*A), (1+cos(2*A))/(1+cos(A))+(1+cos(2*B))/(1+cos(B))+(1+cos(2*C))/(1+cos(C))]

tp2 := [sin((B-C)*(1/4))^2+sin((1/2)*A)*(2-csc((1/2)*A))^2/(4*tan((Pi-A)*(1/4))*(cot(A)+cot((1/2)*A))), 16*sin((1/2)*A)^2*sin((B+C)*(1/4))^2*sin((B-C)*(1/4))^4/(cos((1/2)*B)^2+cos((1/2)*C)^2), 1+(tan((1/2)*B)*sin(C)-tan((1/2)*C)*sin(B))^2+(tan((1/2)*B)*cos(C)+tan((1/2)*C)*cos(B)-tan((1/2)*A))^2]

simplify(`~`[`-`](tp1, tp2), {A+B+C = Pi}, 'mindeg', assume = positive)simplify(%)

[(1/4)*(-4*cot((1/4)*Pi+(1/4)*A)*(cot(A)+cot((1/2)*A))*cos((1/4)*Pi+(1/4)*A+(1/2)*B)^2+(-4*cos((1/2)*B)*(cot(A)+cot((1/2)*A))*sin((1/2)*A+(1/2)*B)+4*cot((1/2)*A))*cot((1/4)*Pi+(1/4)*A)-sin((1/2)*A)*(csc((1/2)*A)-2)^2)/(cot((1/4)*Pi+(1/4)*A)*(cot(A)+cot((1/2)*A))), (-16*sin((1/2)*A)^2*cos((1/4)*Pi+(1/4)*A)^2*cos((1/4)*Pi+(1/4)*A+(1/2)*B)^4+4*sin((1/2)*A)*cos((1/2)*B)*sin((1/2)*A+(1/2)*B)^3+(cos((1/2)*A)-sec((1/2)*A))*(sin(B)+sin(A+B))*sin((1/2)*A+(1/2)*B)^2+(4*cos((1/2)*B)^3*sin((1/2)*A)-4*sin((1/2)*A)^2*cos((1/2)*B))*sin((1/2)*A+(1/2)*B)+((cos((1/2)*A)-sec((1/2)*A))*cos((1/2)*B)^2-cos((1/2)*A)*sin((1/2)*A))*(sin(B)+sin(A+B)))/(cos((1/2)*B)^2+sin((1/2)*A+(1/2)*B)^2), (-(1+cos(B))*(cos(B)^2+sin(B)^2)*(cos(A+B)-1)*(1+cos(A))*cot((1/2)*A+(1/2)*B)^2+2*(1+cos(B))*((sin(A+B)*sin(B)+cos(B)*cos(A+B))*tan((1/2)*B)+tan((1/2)*A)*cos(B))*(cos(A+B)-1)*(1+cos(A))*cot((1/2)*A+(1/2)*B)-(1+cos(B))*(1+cos(A))*cos(2*A+2*B)-(cos(A+B)-1)*(sin(A+B)^2+cos(A+B)^2)*(1+cos(B))*(1+cos(A))*tan((1/2)*B)^2-2*tan((1/2)*A)*cos(A+B)*(cos(A+B)-1)*(1+cos(B))*(1+cos(A))*tan((1/2)*B)-(cos(A+B)-1)*(1+cos(B))*(1+cos(A))*tan((1/2)*A)^2+((1+cos(B))*cos(2*A)+(1+cos(A))*cos(2*B)-cos(A)*cos(B)+1)*cos(A+B)+(-cos(B)-1)*cos(2*A)+(-cos(A)-1)*cos(2*B)-cos(A)-cos(B)-2)/((cos(A+B)-1)*(1+cos(B))*(1+cos(A)))]

 

[0, 0, 0]

(1)

simplify(`~`[`-`](tp1, tp2), {B+C = Pi-A}, 'mindeg', assume = positive)simplify(%)

[(1/4)*(-4*cot((1/4)*Pi+(1/4)*A)*(cot(A)+cot((1/2)*A))*cos((1/4)*Pi+(1/4)*A+(1/2)*B)^2+(-4*cos((1/2)*B)*(cot(A)+cot((1/2)*A))*sin((1/2)*A+(1/2)*B)+4*cot((1/2)*A))*cot((1/4)*Pi+(1/4)*A)-sin((1/2)*A)*(csc((1/2)*A)-2)^2)/(cot((1/4)*Pi+(1/4)*A)*(cot(A)+cot((1/2)*A))), (-16*sin((1/2)*A)^2*cos((1/4)*Pi+(1/4)*A)^2*cos((1/4)*Pi+(1/4)*A+(1/2)*B)^4+4*sin((1/2)*A)*cos((1/2)*B)*sin((1/2)*A+(1/2)*B)^3+(cos((1/2)*A)-sec((1/2)*A))*(sin(B)+sin(A+B))*sin((1/2)*A+(1/2)*B)^2+(4*cos((1/2)*B)^3*sin((1/2)*A)-4*sin((1/2)*A)^2*cos((1/2)*B))*sin((1/2)*A+(1/2)*B)+((cos((1/2)*A)-sec((1/2)*A))*cos((1/2)*B)^2-cos((1/2)*A)*sin((1/2)*A))*(sin(B)+sin(A+B)))/(cos((1/2)*B)^2+sin((1/2)*A+(1/2)*B)^2), (-(1+cos(B))*(cos(B)^2+sin(B)^2)*(cos(A+B)-1)*(1+cos(A))*cot((1/2)*A+(1/2)*B)^2+2*(1+cos(B))*((sin(A+B)*sin(B)+cos(B)*cos(A+B))*tan((1/2)*B)+tan((1/2)*A)*cos(B))*(cos(A+B)-1)*(1+cos(A))*cot((1/2)*A+(1/2)*B)-(1+cos(B))*(1+cos(A))*cos(2*A+2*B)-(cos(A+B)-1)*(sin(A+B)^2+cos(A+B)^2)*(1+cos(B))*(1+cos(A))*tan((1/2)*B)^2-2*tan((1/2)*A)*cos(A+B)*(cos(A+B)-1)*(1+cos(B))*(1+cos(A))*tan((1/2)*B)-(cos(A+B)-1)*(1+cos(B))*(1+cos(A))*tan((1/2)*A)^2+((1+cos(B))*cos(2*A)+(1+cos(A))*cos(2*B)-cos(A)*cos(B)+1)*cos(A+B)+(-cos(B)-1)*cos(2*A)+(-cos(A)-1)*cos(2*B)-cos(A)-cos(B)-2)/((cos(A+B)-1)*(1+cos(B))*(1+cos(A)))]

 

[0, 0, 0]

(2)

simplify(`~`[`-`](tp1, tp2), {A = Pi-B-C}, 'mindeg', assume = positive)simplify(%)

[(1/4)*(-4*cot((1/4)*Pi+(1/4)*A)*(cot(A)+cot((1/2)*A))*cos((1/4)*Pi+(1/4)*A+(1/2)*B)^2+(-4*cos((1/2)*B)*(cot(A)+cot((1/2)*A))*sin((1/2)*A+(1/2)*B)+4*cot((1/2)*A))*cot((1/4)*Pi+(1/4)*A)-sin((1/2)*A)*(csc((1/2)*A)-2)^2)/(cot((1/4)*Pi+(1/4)*A)*(cot(A)+cot((1/2)*A))), (-16*sin((1/2)*A)^2*cos((1/4)*Pi+(1/4)*A)^2*cos((1/4)*Pi+(1/4)*A+(1/2)*B)^4+4*sin((1/2)*A)*cos((1/2)*B)*sin((1/2)*A+(1/2)*B)^3+(cos((1/2)*A)-sec((1/2)*A))*(sin(B)+sin(A+B))*sin((1/2)*A+(1/2)*B)^2+(4*cos((1/2)*B)^3*sin((1/2)*A)-4*sin((1/2)*A)^2*cos((1/2)*B))*sin((1/2)*A+(1/2)*B)+((cos((1/2)*A)-sec((1/2)*A))*cos((1/2)*B)^2-cos((1/2)*A)*sin((1/2)*A))*(sin(B)+sin(A+B)))/(cos((1/2)*B)^2+sin((1/2)*A+(1/2)*B)^2), (-(1+cos(B))*(cos(B)^2+sin(B)^2)*(cos(A+B)-1)*(1+cos(A))*cot((1/2)*A+(1/2)*B)^2+2*(1+cos(B))*((sin(A+B)*sin(B)+cos(B)*cos(A+B))*tan((1/2)*B)+tan((1/2)*A)*cos(B))*(cos(A+B)-1)*(1+cos(A))*cot((1/2)*A+(1/2)*B)-(1+cos(B))*(1+cos(A))*cos(2*A+2*B)-(cos(A+B)-1)*(sin(A+B)^2+cos(A+B)^2)*(1+cos(B))*(1+cos(A))*tan((1/2)*B)^2-2*tan((1/2)*A)*cos(A+B)*(cos(A+B)-1)*(1+cos(B))*(1+cos(A))*tan((1/2)*B)-(cos(A+B)-1)*(1+cos(B))*(1+cos(A))*tan((1/2)*A)^2+((1+cos(B))*cos(2*A)+(1+cos(A))*cos(2*B)-cos(A)*cos(B)+1)*cos(A+B)+(-cos(B)-1)*cos(2*A)+(-cos(A)-1)*cos(2*B)-cos(A)-cos(B)-2)/((cos(A+B)-1)*(1+cos(B))*(1+cos(A)))]

 

[0, 0, 0]

(3)


 

Download trigReduce.mw

Is there any limitation of `simplify/trig`?

 

Please Wait...