Rules for integrands of the form (((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n)

1.  ∫(((((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m))/(c+d Sin[e+f x]))dx  when  b c-a d≠0

1.  ∫(((((g Sin[e+f x]))^p) (Sqrt[a+b Sin[e+f x]]))/(c+d Sin[e+f x]))dx  when  b c-a d≠0

1.  ∫(((Sqrt[g Sin[e+f x]])(Sqrt[a+b Sin[e+f x]]))/(c+d Sin[e+f x]))dx  when  b c-a d≠0

1:  ∫(((Sqrt[g Sin[e+f x]])(Sqrt[a+b Sin[e+f x]]))/(c+d Sin[e+f x]))dx  when  b c-a d≠0 ∧ ((a^2)-(b^2)==0 ∨ (c^2)-(d^2)==0)

Derivation: Algebraic expansion

Basis: ((Sqrt[g z])/(c+d z))==(g/(d (Sqrt[g z])))-((c g)/(d (Sqrt[g z]) (c+d z)))

Rule: If  b c-a d≠0 ∧ ((a^2)-(b^2)==0 ∨ (c^2)-(d^2)==0), then

∫(((Sqrt[g Sin[e+f x]])(Sqrt[a+b Sin[e+f x]]))/(c+d Sin[e+f x]))dx  ⟶  (g/d)∫((Sqrt[a+b Sin[e+f x]])/(Sqrt[g Sin[e+f x]]))dx-((c g)/d)∫((Sqrt[a+b Sin[e+f x]])/( (Sqrt[g Sin[e+f x]]) (c+d Sin[e+f x])))dx

Program code:

Int[Sqrt[g_.*sin[e_.+f_.*x_]]*Sqrt[a_+b_.*sin[e_.+f_.*x_]]/(c_+d_.*sin[e_.+f_.*x_]),x_Symbol] :=
  g/d*Int[Sqrt[a+b*Sin[e+f*x]]/Sqrt[g*Sin[e+f*x]],x] - 
  c*g/d*Int[Sqrt[a+b*Sin[e+f*x]]/(Sqrt[g*Sin[e+f*x]]*(c+d*Sin[e+f*x])),x] /;
FreeQ[{a,b,c,d,e,f,g},x] && NeQ[b*c-a*d,0] && (EqQ[a^2-b^2,0] || EqQ[c^2-d^2,0])

2:  ∫(((Sqrt[g Sin[e+f x]])(Sqrt[a+b Sin[e+f x]]))/(c+d Sin[e+f x]))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)≠0 ∧ (c^2)-(d^2)≠0

Derivation: Algebraic expansion

Basis: ((Sqrt[a+b z])/(c+d z))==(b/(d (Sqrt[a+b z])))-((b c-a d)/(d (Sqrt[a+b z]) (c+d z)))

Rule: If  b c-a d≠0 ∧ (a^2)-(b^2)≠0 ∧ (c^2)-(d^2)≠0, then

∫(((Sqrt[g Sin[e+f x]])(Sqrt[a+b Sin[e+f x]]))/(c+d Sin[e+f x]))dx  ⟶  (b/d)∫((Sqrt[g Sin[e+f x]])/(Sqrt[a+b Sin[e+f x]]))dx-((b c-a d)/d)∫((Sqrt[g Sin[e+f x]])/( (Sqrt[a+b Sin[e+f x]])(c+d Sin[e+f x])))dx

Program code:

Int[Sqrt[g_.*sin[e_.+f_.*x_]]*Sqrt[a_+b_.*sin[e_.+f_.*x_]]/(c_+d_.*sin[e_.+f_.*x_]),x_Symbol] :=
  b/d*Int[Sqrt[g*Sin[e+f*x]]/Sqrt[a+b*Sin[e+f*x]],x] - 
  (b*c-a*d)/d*Int[Sqrt[g*Sin[e+f*x]]/(Sqrt[a+b*Sin[e+f*x]]*(c+d*Sin[e+f*x])),x] /;
FreeQ[{a,b,c,d,e,f,g},x] && NeQ[b*c-a*d,0] && NeQ[a^2-b^2,0] && NeQ[c^2-d^2,0]

2.  ∫((Sqrt[a+b Sin[e+f x]])/((Sqrt[g Sin[e+f x]]) (c+d Sin[e+f x])))dx  when  b c-a d≠0

1:  ∫((Sqrt[a+b Sin[e+f x]])/((Sqrt[g Sin[e+f x]]) (c+d Sin[e+f x])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)==0

Derivation: Integration by substitution

Basis: If  (a^2)-(b^2)==0, then ((Sqrt[a+b Sin[e+f x]])/((Sqrt[g Sin[e+f x]]) (c+d Sin[e+f x])))==-((2 b)/f)Subst[(1/(b c+a d+c g (x^2))),x,((b Cos[e+f x])/((Sqrt[g Sin[e+f x]]) (Sqrt[a+b Sin[e+f x]])))](∂_x)((b Cos[e+f x])/((Sqrt[g Sin[e+f x]]) (Sqrt[a+b Sin[e+f x]])))

Rule: If  b c-a d≠0 ∧ (a^2)-(b^2)==0, then

∫((Sqrt[a+b Sin[e+f x]])/((Sqrt[g Sin[e+f x]]) (c+d Sin[e+f x])))dx  ⟶  -((2 b)/f)Subst[∫(1/(b c+a d+c g (x^2)))dx,x,((b Cos[e+f x])/((Sqrt[g Sin[e+f x]]) (Sqrt[a+b Sin[e+f x]])))]

Program code:

Int[Sqrt[a_+b_.*sin[e_.+f_.*x_]]/(Sqrt[g_.*sin[e_.+f_.*x_]]*(c_+d_.*sin[e_.+f_.*x_])),x_Symbol] :=
  -2*b/f*Subst[Int[1/(b*c+a*d+c*g*x^2),x],x,b*Cos[e+f*x]/(Sqrt[g*Sin[e+f*x]]*Sqrt[a+b*Sin[e+f*x]])] /;
FreeQ[{a,b,c,d,e,f,g},x] && NeQ[b*c-a*d,0] && EqQ[a^2-b^2,0]

2.  ∫((Sqrt[a+b Sin[e+f x]])/((Sqrt[g Sin[e+f x]]) (c+d Sin[e+f x])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)≠0

1.  ∫((Sqrt[a+b Sin[e+f x]])/((Sqrt[g Sin[e+f x]]) (c+d Sin[e+f x])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)≠0 ∧ (c^2)-(d^2)==0

1:  ∫((Sqrt[a+b Sin[e+f x]])/((Sqrt[Sin[e+f x]]) (c+c Sin[e+f x])))dx  when  (a^2)-(b^2)>0 ∧ b>0

Basis: If  b-a>0 ∧ b>0, then (Sqrt[a+b z])==(Sqrt[1+z]) (Sqrt[((a+b z)/(1+z))])

Rule: If  (a^2)-(b^2)>0 ∧ b>0, then

∫((Sqrt[a+b Sin[e+f x]])/((Sqrt[Sin[e+f x]]) (c+c Sin[e+f x])))dx  ⟶  -((Sqrt[a+b])/(c f))EllipticE[ArcSin[((Cos[e+f x])/(1+Sin[e+f x]))],-((a-b)/(a+b))]

Program code:

Int[Sqrt[a_+b_.*sin[e_.+f_.*x_]]/(Sqrt[sin[e_.+f_.*x_]]*(c_+d_.*sin[e_.+f_.*x_])),x_Symbol] :=
  -Sqrt[a+b]/(c*f)*EllipticE[ArcSin[Cos[e+f*x]/(1+Sin[e+f*x])],-(a-b)/(a+b)] /;
FreeQ[{a,b,c,d,e,f},x] && EqQ[d,c] && GtQ[b^2-a^2,0] && GtQ[b,0]

2:  ∫((Sqrt[a+b Sin[e+f x]])/((Sqrt[g Sin[e+f x]]) (c+d Sin[e+f x])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)≠0 ∧ (c^2)-(d^2)==0

Rule: If  b c-a d≠0 ∧ (a^2)-(b^2)≠0 ∧ (c^2)-(d^2)==0, then

∫((Sqrt[a+b Sin[e+f x]])/((Sqrt[g Sin[e+f x]]) (c+d Sin[e+f x])))dx  ⟶  -(((Sqrt[a+b Sin[e+f x]]) (Sqrt[((d Sin[e+f x])/(c+d Sin[e+f x]))]))/(d f (Sqrt[g Sin[e+f x]]) (Sqrt[(((c^2) (a+b Sin[e+f x]))/((a c+b d) (c+d Sin[e+f x])))])))EllipticE[ArcSin[((c Cos[e+f x])/(c+d Sin[e+f x]))],((b c-a d)/(b c+a d))]

Program code:

Int[Sqrt[a_+b_.*sin[e_.+f_.*x_]]/(Sqrt[g_.*sin[e_.+f_.*x_]]*(c_+d_.*sin[e_.+f_.*x_])),x_Symbol] :=
  -Sqrt[a+b*Sin[e+f*x]]*Sqrt[d*Sin[e+f*x]/(c+d*Sin[e+f*x])]/
    (d*f*Sqrt[g*Sin[e+f*x]]*Sqrt[c^2*(a+b*Sin[e+f*x])/((a*c+b*d)*(c+d*Sin[e+f*x]))])*
    EllipticE[ArcSin[c*Cos[e+f*x]/(c+d*Sin[e+f*x])],(b*c-a*d)/(b*c+a*d)] /;
FreeQ[{a,b,c,d,e,f,g},x] && NeQ[b*c-a*d,0] && NeQ[a^2-b^2,0] && EqQ[c^2-d^2,0]

2:  ∫((Sqrt[a+b Sin[e+f x]])/((Sqrt[g Sin[e+f x]]) (c+d Sin[e+f x])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)≠0 ∧ (c^2)-(d^2)≠0

Derivation: Algebraic expansion

Basis: ((Sqrt[a+b z])/((Sqrt[g z]) (c+d z)))==(a/(c (Sqrt[g z]) (Sqrt[a+b z])))+(((b c-a d) (Sqrt[g z]))/(c g (Sqrt[a+b z]) (c+d z)))

Rule: If  b c-a d≠0 ∧ (a^2)-(b^2)≠0 ∧ (c^2)-(d^2)≠0, then

∫((Sqrt[a+b Sin[e+f x]])/((Sqrt[g Sin[e+f x]]) (c+d Sin[e+f x])))dx  ⟶  (a/c)∫(1/((Sqrt[g Sin[e+f x]]) (Sqrt[a+b Sin[e+f x]])))dx+((b c-a d)/(c g))∫((Sqrt[g Sin[e+f x]])/((Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx

Program code:

Int[Sqrt[a_+b_.*sin[e_.+f_.*x_]]/(Sqrt[g_.*sin[e_.+f_.*x_]]*(c_+d_.*sin[e_.+f_.*x_])),x_Symbol] :=
  a/c*Int[1/(Sqrt[g*Sin[e+f*x]]*Sqrt[a+b*Sin[e+f*x]]),x] + 
  (b*c-a*d)/(c*g)*Int[Sqrt[g*Sin[e+f*x]]/(Sqrt[a+b*Sin[e+f*x]]*(c+d*Sin[e+f*x])),x] /;
FreeQ[{a,b,c,d,e,f,g},x] && NeQ[b*c-a*d,0] && NeQ[a^2-b^2,0] && NeQ[c^2-d^2,0]

3.  ∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x] (c+d Sin[e+f x])))dx  when  b c-a d≠0

1:  ∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x](c+d Sin[e+f x])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)==0

Derivation: Algebraic expansion

Basis: (1/(z(c+d z)))==(1/(c z))-(d/(c(c+d z)))

Rule: If  b c-a d≠0 ∧ (a^2)-(b^2)==0, then

∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x](c+d Sin[e+f x])))dx  ⟶  (1/c)∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x]))dx-(d/c)∫((Sqrt[a+b Sin[e+f x]])/(c+d Sin[e+f x]))dx

Program code:

Int[Sqrt[a_+b_.*sin[e_.+f_.*x_]]/(sin[e_.+f_.*x_]*(c_+d_.*sin[e_.+f_.*x_])),x_Symbol] :=
  1/c*Int[Sqrt[a+b*Sin[e+f*x]]/Sin[e+f*x],x] - 
  d/c*Int[Sqrt[a+b*Sin[e+f*x]]/(c+d*Sin[e+f*x]),x] /;
FreeQ[{a,b,c,d,e,f},x] && NeQ[b*c-a*d,0] && EqQ[a^2-b^2,0]

2:  ∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x](c+d Sin[e+f x])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)≠0

Derivation: Algebraic expansion

Basis: ((Sqrt[a+b z])/(z(c+d z)))==(a/(c z (Sqrt[a+b z])))+((b c-a d)/(c (Sqrt[a+b z]) (c+d z)))

Rule: If  b c-a d≠0 ∧ (a^2)-(b^2)≠0, then

∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x](c+d Sin[e+f x])))dx  ⟶  (a/c)∫(1/(Sin[e+f x] (Sqrt[a+b Sin[e+f x]])))dx+((b c-a d)/c)∫(1/((Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx

Program code:

Int[Sqrt[a_+b_.*sin[e_.+f_.*x_]]/(sin[e_.+f_.*x_]*(c_+d_.*sin[e_.+f_.*x_])),x_Symbol] :=
  a/c*Int[1/(Sin[e+f*x]*Sqrt[a+b*Sin[e+f*x]]),x] + 
  (b*c-a*d)/c*Int[1/(Sqrt[a+b*Sin[e+f*x]]*(c+d*Sin[e+f*x])),x] /;
FreeQ[{a,b,c,d,e,f},x] && NeQ[b*c-a*d,0] && NeQ[a^2-b^2,0]

2.  ∫((((g Sin[e+f x]))^p)/((Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx  when  b c-a d≠0

1.  ∫((Sqrt[g Sin[e+f x]])/((Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx  when  b c-a d≠0

1:  ∫((Sqrt[g Sin[e+f x]])/((Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx  when  b c-a d≠0 ∧ ((a^2)-(b^2)==0 ∨ (c^2)-(d^2)==0)

Derivation: Algebraic expansion

Basis: ((Sqrt[g z])/((Sqrt[a+b z]) (c+d z)))==-((a g)/((b c-a d) (Sqrt[g z]) (Sqrt[a+b z])))+((c g (Sqrt[a+b z]))/((b c-a d) (Sqrt[g z]) (c+d z)))

Rule: If  b c-a d≠0 ∧ ((a^2)-(b^2)==0 ∨ (c^2)-(d^2)==0), then

∫((Sqrt[g Sin[e+f x]])/((Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx  ⟶  
-((a g)/(b c-a d))∫(1/((Sqrt[g Sin[e+f x]]) (Sqrt[a+b Sin[e+f x]])))dx+((c g)/(b c-a d))∫((Sqrt[a+b Sin[e+f x]])/((Sqrt[g Sin[e+f x]]) (c+d Sin[e+f x])))dx

Program code:

Int[Sqrt[g_.*sin[e_.+f_.*x_]]/(Sqrt[a_+b_.*sin[e_.+f_.*x_]]*(c_+d_.*sin[e_.+f_.*x_])),x_Symbol] :=
  -a*g/(b*c-a*d)*Int[1/(Sqrt[g*Sin[e+f*x]]*Sqrt[a+b*Sin[e+f*x]]),x] + 
  c*g/(b*c-a*d)*Int[Sqrt[a+b*Sin[e+f*x]]/(Sqrt[g*Sin[e+f*x]]*(c+d*Sin[e+f*x])),x] /;
FreeQ[{a,b,c,d,e,f,g},x] && NeQ[b*c-a*d,0] && (EqQ[a^2-b^2,0] || EqQ[c^2-d^2,0])

2:  ∫((Sqrt[g Sin[e+f x]])/((Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)≠0 ∧ (c^2)-(d^2)≠0

Rule: If  b c-a d≠0 ∧ (a^2)-(b^2)≠0 ∧ (c^2)-(d^2)≠0, then

∫((Sqrt[g Sin[e+f x]])/((Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx  ⟶  
((2 (Sqrt[-((Cot[e+f x])^2)])(Sqrt[g Sin[e+f x]]))/(f(c+d) Cot[e+f x] (Sqrt[a+b Sin[e+f x]])))(Sqrt[((b+a Csc[e+f x])/(a+b))])EllipticPi[((2 c)/(c+d)),ArcSin[((Sqrt[1-Csc[e+f x]])/(Sqrt[2]))],((2 a)/(a+b))]

Program code:

Int[Sqrt[g_.*sin[e_.+f_.*x_]]/(Sqrt[a_+b_.*sin[e_.+f_.*x_]]*(c_+d_.*sin[e_.+f_.*x_])),x_Symbol] :=
  2*Sqrt[-Cot[e+f*x]^2]*Sqrt[g*Sin[e+f*x]]/(f*(c+d)*Cot[e+f*x]*Sqrt[a+b*Sin[e+f*x]])*Sqrt[(b+a*Csc[e+f*x])/(a+b)]*
    EllipticPi[2*c/(c+d),ArcSin[Sqrt[1-Csc[e+f*x]]/Sqrt[2]],2*a/(a+b)] /;
FreeQ[{a,b,c,d,e,f,g},x] && NeQ[b*c-a*d,0] && NeQ[a^2-b^2,0] && NeQ[c^2-d^2,0]

2.  ∫(1/((Sqrt[g Sin[e+f x]])(Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx  when  b c-a d≠0

1:  ∫(1/((Sqrt[g Sin[e+f x]])(Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx  when  b c-a d≠0 ∧ ((a^2)-(b^2)==0 ∨ (c^2)-(d^2)==0)

Derivation: Algebraic expansion

Basis: (1/((Sqrt[a+b z]) (c+d z)))==(b/((b c-a d) (Sqrt[a+b z])))-((d (Sqrt[a+b z]))/((b c-a d) (c+d z)))

Rule: If  b c-a d≠0 ∧ ((a^2)-(b^2)==0 ∨ (c^2)-(d^2)==0), then

∫(1/((Sqrt[g Sin[e+f x]])(Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx  ⟶  
(b/(b c-a d))∫(1/((Sqrt[g Sin[e+f x]]) (Sqrt[a+b Sin[e+f x]])))dx-(d/(b c-a d))∫((Sqrt[a+b Sin[e+f x]])/((Sqrt[g Sin[e+f x]]) (c+d Sin[e+f x])))dx

Program code:

Int[1/(Sqrt[g_.*sin[e_.+f_.*x_]]*Sqrt[a_+b_.*sin[e_.+f_.*x_]]*(c_+d_.*sin[e_.+f_.*x_])),x_Symbol] :=
  b/(b*c-a*d)*Int[1/(Sqrt[g*Sin[e+f*x]]*Sqrt[a+b*Sin[e+f*x]]),x] - 
  d/(b*c-a*d)*Int[Sqrt[a+b*Sin[e+f*x]]/(Sqrt[g*Sin[e+f*x]]*(c+d*Sin[e+f*x])),x] /;
FreeQ[{a,b,c,d,e,f,g},x] && NeQ[b*c-a*d,0] && (EqQ[a^2-b^2,0] || EqQ[c^2-d^2,0])

2:  ∫(1/((Sqrt[g Sin[e+f x]])(Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)≠0 ∧ (c^2)-(d^2)≠0

Derivation: Algebraic expansion

Basis: (1/((Sqrt[g z]) (Sqrt[a+b z]) (c+d z)))==(1/(c (Sqrt[g z]) (Sqrt[a+b z])))-((d (Sqrt[g z]))/(c g(Sqrt[a+b z]) (c+d z)))

Rule: If  b c-a d≠0 ∧ (a^2)-(b^2)≠0 ∧ (c^2)-(d^2)≠0, then

∫(1/((Sqrt[g Sin[e+f x]])(Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx  ⟶  (1/c)∫(1/((Sqrt[g Sin[e+f x]]) (Sqrt[a+b Sin[e+f x]])))dx-(d/(c g))∫((Sqrt[g Sin[e+f x]])/( (Sqrt[a+b Sin[e+f x]])(c+d Sin[e+f x])))dx

Program code:

Int[1/(Sqrt[g_.*sin[e_.+f_.*x_]]*Sqrt[a_+b_.*sin[e_.+f_.*x_]]*(c_+d_.*sin[e_.+f_.*x_])),x_Symbol] :=
  1/c*Int[1/(Sqrt[g*Sin[e+f*x]]*Sqrt[a+b*Sin[e+f*x]]),x] - 
  d/(c*g)*Int[Sqrt[g*Sin[e+f*x]]/(Sqrt[a+b*Sin[e+f*x]]*(c+d*Sin[e+f*x])),x] /;
FreeQ[{a,b,c,d,e,f,g},x] && NeQ[b*c-a*d,0] && NeQ[a^2-b^2,0] && NeQ[c^2-d^2,0]

3.  ∫(1/(Sin[e+f x] (Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx  when  b c-a d≠0

1:  ∫(1/(Sin[e+f x] (Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)==0

Derivation: Algebraic expansion

Basis: (1/(z (Sqrt[a+b z]) (c+d z)))==((b c-a d-b d z)/(c (b c-a d) z (Sqrt[a+b z])))+(((d^2) (Sqrt[a+b z]))/(c (b c-a d) (c+d z)))

Rule: If  b c-a d≠0 ∧ (a^2)-(b^2)==0, then

∫(1/(Sin[e+f x] (Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx  ⟶  ((d^2)/(c (b c-a d)))∫((Sqrt[a+b Sin[e+f x]])/(c+d Sin[e+f x]))dx+(1/(c (b c-a d)))∫((b c-a d-b d Sin[e+f x])/(Sin[e+f x] (Sqrt[a+b Sin[e+f x]])))dx

Program code:

Int[1/(sin[e_.+f_.*x_]*Sqrt[a_+b_.*sin[e_.+f_.*x_]]*(c_+d_.*sin[e_.+f_.*x_])),x_Symbol] :=
  d^2/(c*(b*c-a*d))*Int[Sqrt[a+b*Sin[e+f*x]]/(c+d*Sin[e+f*x]),x] + 
  1/(c*(b*c-a*d))*Int[(b*c-a*d-b*d*Sin[e+f*x])/(Sin[e+f*x]*Sqrt[a+b*Sin[e+f*x]]),x] /;
FreeQ[{a,b,c,d,e,f},x] && NeQ[b*c-a*d,0] && EqQ[a^2-b^2,0]

2:  ∫(1/(Sin[e+f x] (Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)≠0

Derivation: Algebraic expansion

Basis: (1/(z (c+d z)))==(1/(c z))-(d/(c (c+d z)))

Rule: If  b c-a d≠0 ∧ (a^2)-(b^2)≠0, then

∫(1/(Sin[e+f x] (Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx  ⟶  (1/c)∫(1/(Sin[e+f x] (Sqrt[a+b Sin[e+f x]])))dx-(d/c)∫(1/((Sqrt[a+b Sin[e+f x]]) (c+d Sin[e+f x])))dx

Program code:

Int[1/(sin[e_.+f_.*x_]*Sqrt[a_+b_.*sin[e_.+f_.*x_]]*(c_+d_.*sin[e_.+f_.*x_])),x_Symbol] :=
  1/c*Int[1/(Sin[e+f*x]*Sqrt[a+b*Sin[e+f*x]]),x] - d/c*Int[1/(Sqrt[a+b*Sin[e+f*x]]*(c+d*Sin[e+f*x])),x] /;
FreeQ[{a,b,c,d,e,f},x] && NeQ[b*c-a*d,0] && NeQ[a^2-b^2,0]

2.  ∫(((((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n))/(Sin[e+f x]))dx  when  b c-a d≠0 ∧ (m^2)==(n^2)==(1/4)

1.  ∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x] (Sqrt[c+d Sin[e+f x]])))dx  when  b c-a d≠0

1.  ∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x] (Sqrt[c+d Sin[e+f x]])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)==0

1:  ∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x] (Sqrt[c+d Sin[e+f x]])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)==0 ∧ b c+a d==0

Derivation: Algebraic expansion

Basis: (1/(z (Sqrt[c+d z])))==-(d/(c (Sqrt[c+d z])))+((Sqrt[c+d z])/(c z))

Rule: If  b c-a d≠0 ∧ (a^2)-(b^2)==0 ∧ b c+a d==0, then

∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x] (Sqrt[c+d Sin[e+f x]])))dx  ⟶  -(d/c)∫((Sqrt[a+b Sin[e+f x]])/(Sqrt[c+d Sin[e+f x]]))dx+(1/c)∫(((Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]]))/(Sin[e+f x]))dx

Program code:

Int[Sqrt[a_+b_.*sin[e_.+f_.*x_]]/(sin[e_.+f_.*x_]*Sqrt[c_+d_.*sin[e_.+f_.*x_]]),x_Symbol] :=
  -d/c*Int[Sqrt[a+b*Sin[e+f*x]]/Sqrt[c+d*Sin[e+f*x]],x] + 
  1/c*Int[Sqrt[a+b*Sin[e+f*x]]*Sqrt[c+d*Sin[e+f*x]]/Sin[e+f*x],x] /;
FreeQ[{a,b,c,d,e,f},x] && NeQ[b*c-a*d,0] && EqQ[a^2-b^2,0] && EqQ[b*c+a*d,0]

2:  ∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x] (Sqrt[c+d Sin[e+f x]])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)==0 ∧ b c+a d≠0

Derivation: Integration by substitution

Basis: If  (a^2)-(b^2)==0 ∧ (c^2)-(d^2)≠0, then ((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x] (Sqrt[c+d Sin[e+f x]])))==-((2 a)/f)Subst[(1/(1-a c (x^2))),x,((Cos[e+f x])/((Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]])))](∂_x)((Cos[e+f x])/((Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]])))

Rule: If  b c-a d≠0 ∧ (a^2)-(b^2)==0 ∧ b c+a d≠0, then

∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x] (Sqrt[c+d Sin[e+f x]])))dx  ⟶  -((2 a)/f)Subst[∫(1/(1-a c (x^2)))dx,x,((Cos[e+f x])/((Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]])))]

Program code:

Int[Sqrt[a_+b_.*sin[e_.+f_.*x_]]/(sin[e_.+f_.*x_]*Sqrt[c_+d_.*sin[e_.+f_.*x_]]),x_Symbol] :=
  -2*a/f*Subst[Int[1/(1-a*c*x^2),x],x,Cos[e+f*x]/(Sqrt[a+b*Sin[e+f*x]]*Sqrt[c+d*Sin[e+f*x]])] /;
FreeQ[{a,b,c,d,e,f},x] && NeQ[b*c-a*d,0] && EqQ[a^2-b^2,0] && NeQ[b*c+a*d,0]

2.  ∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x] (Sqrt[c+d Sin[e+f x]])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)≠0

1:  ∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x] (Sqrt[c+d Sin[e+f x]])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)≠0 ∧ (c^2)-(d^2)==0

Derivation: Algebraic expansion

Basis: ((Sqrt[a+b z])/(z (Sqrt[c+d z])))==((b c-a d)/(c (Sqrt[a+b z]) (Sqrt[c+d z])))+((a (Sqrt[c+d z]))/(c z (Sqrt[a+b z])))

Rule: If  b c-a d≠0 ∧ (a^2)-(b^2)≠0 ∧ (c^2)-(d^2)==0, then

∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x] (Sqrt[c+d Sin[e+f x]])))dx  ⟶  ((b c-a d)/c)∫(1/((Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]])))dx+(a/c)∫((Sqrt[c+d Sin[e+f x]])/(Sin[e+f x](Sqrt[a+b Sin[e+f x]])))dx

Program code:

Int[Sqrt[a_+b_.*sin[e_.+f_.*x_]]/(sin[e_.+f_.*x_]*Sqrt[c_+d_.*sin[e_.+f_.*x_]]),x_Symbol] :=
  (b*c-a*d)/c*Int[1/(Sqrt[a+b*Sin[e+f*x]]*Sqrt[c+d*Sin[e+f*x]]),x] + 
  a/c*Int[Sqrt[c+d*Sin[e+f*x]]/(Sin[e+f*x]*Sqrt[a+b*Sin[e+f*x]]),x] /;
FreeQ[{a,b,c,d,e,f},x] && NeQ[b*c-a*d,0] && NeQ[a^2-b^2,0] && EqQ[c^2-d^2,0]

2:  ∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x] (Sqrt[c+d Sin[e+f x]])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)≠0 ∧ (c^2)-(d^2)≠0

Rule: If  b c-a d≠0 ∧ (a^2)-(b^2)≠0 ∧ (c^2)-(d^2)≠0, then

∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x] (Sqrt[c+d Sin[e+f x]])))dx  ⟶  
-((2 (a+b Sin[e+f x]))/(c f (Sqrt[((a+b)/(c+d))]) Cos[e+f x])) (Sqrt[-(((b c-a d) (1-Sin[e+f x]))/((c+d) (a+b Sin[e+f x])))]) (Sqrt[(((b c-a d) (1+Sin[e+f x]))/((c-d) (a+b Sin[e+f x])))]) EllipticPi[((a (c+d))/(c(a+b))),ArcSin[(Sqrt[((a+b)/(c+d))])((Sqrt[c+d Sin[e+f x]])/(Sqrt[a+b Sin[e+f x]]))],(((a-b) (c+d))/((a+b) (c-d)))]

Program code:

Int[Sqrt[a_+b_.*sin[e_.+f_.*x_]]/(sin[e_.+f_.*x_]*Sqrt[c_+d_.*sin[e_.+f_.*x_]]),x_Symbol] :=
  -2*(a+b*Sin[e+f*x])/(c*f*Rt[(a+b)/(c+d),2]*Cos[e+f*x])*
    Sqrt[-(b*c-a*d)*(1-Sin[e+f*x])/((c+d)*(a+b*Sin[e+f*x]))]*Sqrt[(b*c-a*d)*(1+Sin[e+f*x])/((c-d)*(a+b*Sin[e+f*x]))]*
    EllipticPi[a*(c+d)/(c*(a+b)),ArcSin[Rt[(a+b)/(c+d),2]*Sqrt[c+d*Sin[e+f*x]]/Sqrt[a+b*Sin[e+f*x]]],(a-b)*(c+d)/((a+b)*(c-d))] /;
FreeQ[{a,b,c,d,e,f},x] && NeQ[b*c-a*d,0] && NeQ[a^2-b^2,0] && NeQ[c^2-d^2,0]

2.  ∫(1/(Sin[e+f x] (Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]])))dx  when  b c-a d≠0

1:  ∫(1/(Sin[e+f x] (Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]])))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)==0 ∧ (c^2)-(d^2)==0

Derivation: Piecewise constant extraction

Basis: If  (a^2)-(b^2)==0 ∧ (c^2)-(d^2)==0, then (∂_x)((Cos[e+f x])/((Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]])))==0

Rule: If  b c-a d≠0 ∧ (a^2)-(b^2)==0 ∧ (c^2)-(d^2)==0, then

∫(1/(Sin[e+f x] (Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]])))dx  ⟶  ((Cos[e+f x])/((Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]]))) ∫(1/(Cos[e+f x] Sin[e+f x]))dx

Program code:

Int[1/(sin[e_.+f_.*x_]*Sqrt[a_+b_.*sin[e_.+f_.*x_]]*Sqrt[c_+d_.*sin[e_.+f_.*x_]]),x_Symbol] :=
  Cos[e+f*x]/(Sqrt[a+b*Sin[e+f*x]]*Sqrt[c+d*Sin[e+f*x]])*Int[1/(Cos[e+f*x]*Sin[e+f*x]),x] /;
FreeQ[{a,b,c,d,e,f},x] && NeQ[b*c-a*d,0] && EqQ[a^2-b^2,0] && EqQ[c^2-d^2,0]

2:  ∫(1/(Sin[e+f x] (Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]])))dx  when  b c-a d≠0 ∧ ((a^2)-(b^2)≠0 ∨ (c^2)-(d^2)≠0)

Derivation: Algebraic expansion

Basis: (1/(z(Sqrt[a+b z])))==-(b/(a (Sqrt[a+b z])))+((Sqrt[a+b z])/(a z))

Rule: If  b c-a d≠0 ∧ ((a^2)-(b^2)≠0 ∨ (c^2)-(d^2)≠0), then

∫(1/(Sin[e+f x] (Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]])))dx  ⟶  -(b/a) ∫(1/((Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]])))dx+(1/a) ∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x] (Sqrt[c+d Sin[e+f x]])))dx

Program code:

Int[1/(sin[e_.+f_.*x_]*Sqrt[a_+b_.*sin[e_.+f_.*x_]]*Sqrt[c_+d_.*sin[e_.+f_.*x_]]),x_Symbol] :=
  -b/a*Int[1/(Sqrt[a+b*Sin[e+f*x]]*Sqrt[c+d*Sin[e+f*x]]),x] + 
  1/a*Int[Sqrt[a+b*Sin[e+f*x]]/(Sin[e+f*x]*Sqrt[c+d*Sin[e+f*x]]),x] /;
FreeQ[{a,b,c,d,e,f},x] && NeQ[b*c-a*d,0] && (NeQ[a^2-b^2,0] || NeQ[c^2-d^2,0])

3.  ∫(((Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]]))/(Sin[e+f x]))dx  when  b c-a d≠0

1:  ∫(((Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]]))/(Sin[e+f x]))dx  when  b c-a d≠0 ∧ (a^2)-(b^2)==0 ∧ (c^2)-(d^2)==0

Derivation: Piecewise constant extraction

Basis: If  (a^2)-(b^2)==0 ∧ (c^2)-(d^2)==0, then (∂_x)(((Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]]))/(Cos[e+f x]))==0

Rule: If  b c-a d≠0 ∧ (a^2)-(b^2)==0 ∧ (c^2)-(d^2)==0, then

∫(((Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]]))/(Sin[e+f x]))dx  ⟶  (((Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]]))/(Cos[e+f x])) ∫Cot[e+f x]dx

Program code:

Int[Sqrt[a_+b_.*sin[e_.+f_.*x_]]*Sqrt[c_+d_.*sin[e_.+f_.*x_]]/sin[e_.+f_.*x_],x_Symbol] :=
  Sqrt[a+b*Sin[e+f*x]]*Sqrt[c+d*Sin[e+f*x]]/Cos[e+f*x]*Int[Cot[e+f*x],x] /;
FreeQ[{a,b,c,d,e,f},x] && NeQ[b*c-a*d,0] && EqQ[a^2-b^2,0] && EqQ[c^2-d^2,0]

2:  ∫(((Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]]))/(Sin[e+f x]))dx  when  b c-a d≠0 ∧ ((a^2)-(b^2)≠0 ∨ (c^2)-(d^2)≠0)

Derivation: Algebraic expansion

Basis: ((Sqrt[c+d z])/z)==(d/(Sqrt[c+d z]))+(c/(z (Sqrt[c+d z])))

Rule: If  b c-a d≠0 ∧ ((a^2)-(b^2)≠0 ∨ (c^2)-(d^2)≠0), then

∫(((Sqrt[a+b Sin[e+f x]]) (Sqrt[c+d Sin[e+f x]]))/(Sin[e+f x]))dx  ⟶  d∫((Sqrt[a+b Sin[e+f x]])/(Sqrt[c+d Sin[e+f x]]))dx+c∫((Sqrt[a+b Sin[e+f x]])/(Sin[e+f x] (Sqrt[c+d Sin[e+f x]])))dx

Program code:

Int[Sqrt[a_+b_.*sin[e_.+f_.*x_]]*Sqrt[c_+d_.*sin[e_.+f_.*x_]]/sin[e_.+f_.*x_],x_Symbol] :=
  d*Int[Sqrt[a+b*Sin[e+f*x]]/Sqrt[c+d*Sin[e+f*x]],x] + 
  c*Int[Sqrt[a+b*Sin[e+f*x]]/(Sin[e+f*x]*Sqrt[c+d*Sin[e+f*x]]),x] /;
FreeQ[{a,b,c,d,e,f},x] && NeQ[b*c-a*d,0] && (NeQ[a^2-b^2,0] || NeQ[c^2-d^2,0])

3:  ∫((Sin[e+f x])^p) (((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n)dx  when  b c+a d==0 ∧ (a^2)-(b^2)==0 ∧ p+2 n==0 ∧ n∈ℤ

Derivation: Algebraic simplification

Basis: If  b c+a d==0 ∧ (a^2)-(b^2)==0 ∧ p+2 n==0 ∧ n∈ℤ, then ((Sin[e+f x])^p) (((c+d Sin[e+f x]))^n)==(a^n)(c^n)((Tan[e+f x])^p) (((a+b Sin[e+f x]))^(-n))

Rule: If  b c+a d==0 ∧ (a^2)-(b^2)==0 ∧ p+2 n==0 ∧ n∈ℤ, then

∫((Sin[e+f x])^p) (((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n)dx  ⟶  (a^n)(c^n) ∫((Tan[e+f x])^p) (((a+b Sin[e+f x]))^(m-n))dx

Program code:

Int[sin[e_.+f_.*x_]^p_*(a_+b_.*sin[e_.+f_.*x_])^m_.*(c_+d_.*sin[e_.+f_.*x_])^n_.,x_Symbol] :=
  a^n*c^n*Int[Tan[e+f*x]^p*(a+b*Sin[e+f*x])^(m-n),x] /;
FreeQ[{a,b,c,d,e,f,m},x] && EqQ[b*c+a*d,0] && EqQ[a^2-b^2,0] && EqQ[p+2*n,0] && IntegerQ[n]

4:  ∫(((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n)dx  when  b c-a d≠0 ∧ (a^2)-(b^2)==0 ∧ (c^2)-(d^2)≠0 ∧ m-(1/2)∈ℤ

Derivation: Piecewise constant extraction and integration by substitution

Basis: If  (a^2)-(b^2)==0, then (∂_x)(((Sqrt[a-b Sin[e+f x]]) (Sqrt[a+b Sin[e+f x]]))/(Cos[e+f x]))==0

Basis: Cos[e+f x]==(1/f)(∂_x)Sin[e+f x]

Rule: If  b c-a d≠0 ∧ (a^2)-(b^2)==0 ∧ (c^2)-(d^2)≠0 ∧ m-(1/2)∈ℤ, then

∫(((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n)dx  ⟶  

(( (Sqrt[a-b Sin[e+f x]]) (Sqrt[a+b Sin[e+f x]]))/(Cos[e+f x]))∫((Cos[e+f x] (((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^(m-(1/2))) (((c+d Sin[e+f x]))^n))/(Sqrt[a-b Sin[e+f x]]))dx  ⟶  

(( (Sqrt[a-b Sin[e+f x]]) (Sqrt[a+b Sin[e+f x]]))/(f Cos[e+f x]))Subst[∫(((((g x))^p) (((a+b x))^(m-(1/2))) (((c+d x))^n))/(Sqrt[a-b x]))dx,x,Sin[e+f x]]

Program code:

Int[(g_.*sin[e_.+f_.*x_])^p_*(a_+b_.*sin[e_.+f_.*x_])^m_*(c_+d_.*sin[e_.+f_.*x_])^n_,x_Symbol] :=
  Sqrt[a-b*Sin[e+f*x]]*Sqrt[a+b*Sin[e+f*x]]/(f*Cos[e+f*x])*
    Subst[Int[(g*x)^p*(a+b*x)^(m-1/2)*(c+d*x)^n/Sqrt[a-b*x],x],x,Sin[e+f*x]] /;
FreeQ[{a,b,c,d,e,f,g,m,n,p},x] && NeQ[b*c-a*d,0] && EqQ[a^2-b^2,0] && NeQ[c^2-d^2,0] && IntegerQ[m-1/2]

5:  ∫(((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n) dx  when  b c-a d≠0 ∧ ((m|n)∈ℤ ∨ (m|p)∈ℤ ∨ (n|p)∈ℤ)

Derivation: Algebraic expansion

Note: If  p equal 1 or 2, better to use rules for integrands of the form (((a+b Sin[e+f x]))^m)(((c+d Sin[e+f x]))^n)(A+B Sin[e+f x]) or (((a+b Sin[e+f x]))^m)(((c+d Sin[e+f x]))^n)(A+B Sin[e+f x]+C ((Sin[e+f x])^2)) respectively.

Rule: If  b c-a d≠0 ∧ ((m|n)∈ℤ ∨ (m|p)∈ℤ ∨ (n|p)∈ℤ), then

∫(((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n)dx  ⟶  

∫ExpandTrig[(((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n),x]dx

Program code:

Int[(g_.*sin[e_.+f_.*x_])^p_*(a_+b_.*sin[e_.+f_.*x_])^m_*(c_+d_.*sin[e_.+f_.*x_])^n_,x_Symbol] :=
  Int[ExpandTrig[(g*sin[e+f*x])^p*(a+b*sin[e+f*x])^m*(c+d*sin[e+f*x])^n,x],x] /;
FreeQ[{a,b,c,d,e,f,g,n,p},x] && NeQ[b*c-a*d,0] && (IntegersQ[m,n] || IntegersQ[m,p] || IntegersQ[n,p]) && NeQ[p,2]

X:  ∫(((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n)dx

Rule:

∫(((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n)dx  ⟶  ∫(((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n)dx

Program code:

Int[(g_.*sin[e_.+f_.*x_])^p_*(a_+b_.*sin[e_.+f_.*x_])^m_*(c_+d_.*sin[e_.+f_.*x_])^n_,x_Symbol] :=
  Unintegrable[(g*Sin[e+f*x])^p*(a+b*Sin[e+f*x])^m*(c+d*Sin[e+f*x])^n,x] /;
FreeQ[{a,b,c,d,e,f,g,m,n,p},x] && NeQ[p,2]

Rules for integrands of the form (((g Sin[e+f x]))^p) (((a+b Csc[e+f x]))^m) (((c+d Csc[e+f x]))^n)

1.  ∫(((g Sin[e+f x]))^p) (((a+b Csc[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  when b c-a d≠0 ∧ p∉ℤ

1:  ∫(((g Sin[e+f x]))^p) (((a+b Csc[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  when  b c-a d≠0 ∧ p∉ℤ ∧ m∈ℤ ∧ n∈ℤ

Derivation: Algebraic normalization

Basis: a+b Csc[z]==((b+a Sin[z])/(Sin[z]))

Rule: If  b c-a d≠0 ∧ p∉ℤ ∧ m∈ℤ ∧ n∈ℤ, then

∫(((g Sin[e+f x]))^p) (((a+b Csc[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  ⟶  (g^(m+n))∫(((g Sin[e+f x]))^(p-m-n)) (((b+a Sin[e+f x]))^m) (((d+c Sin[e+f x]))^n)dx

Program code:

Int[(g_.*sin[e_.+f_.*x_])^p_.*(a_.+b_.*csc[e_.+f_.*x_])^m_.*(c_+d_.*csc[e_.+f_.*x_])^n_.,x_Symbol] :=
  g^(m+n)*Int[(g*Sin[e+f*x])^(p-m-n)*(b+a*Sin[e+f*x])^m*(d+c*Sin[e+f*x])^n,x] /;
FreeQ[{a,b,c,d,e,f,g,p},x] && NeQ[b*c-a*d,0] && Not[IntegerQ[p]] && IntegerQ[m] && IntegerQ[n]

2:  ∫(((g Sin[e+f x]))^p) (((a+b Csc[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  when  b c-a d≠0 ∧ p∉ℤ ∧ ¬(m∈ℤ ∧ n∈ℤ)

Derivation: Piecewise constant extraction

Basis: (∂_x)((((g Cos[e+f x]))^p)(((g Sec[e+f x]))^p))==0

Rule: If  b c-a d≠0 ∧ p∉ℤ ∧ ¬(m∈ℤ ∧ n∈ℤ), then

∫(((g Sin[e+f x]))^p) (((a+b Csc[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  ⟶  (((g Csc[e+f x]))^p)(((g Sin[e+f x]))^p)∫(((((a+b Csc[e+f x]))^m) (((c+d Csc[e+f x]))^n))/(((g Csc[e+f x]))^p))dx

Program code:

Int[(g_.*sin[e_.+f_.*x_])^p_.*(a_.+b_.*csc[e_.+f_.*x_])^m_.*(c_+d_.*csc[e_.+f_.*x_])^n_.,x_Symbol] :=
  (g*Csc[e+f*x])^p*(g*Sin[e+f*x])^p*Int[(a+b*Csc[e+f*x])^m*(c+d*Csc[e+f*x])^n/(g*Csc[e+f*x])^p,x] /;
FreeQ[{a,b,c,d,e,f,g,m,n,p},x] && NeQ[b*c-a*d,0] && Not[IntegerQ[p]] && Not[IntegerQ[m] && IntegerQ[n]]

Rules for integrands of the form (((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)

1:  ∫(((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  when n∈ℤ

Derivation: Algebraic normalization

Basis: c+d Csc[z]==((d+c Sin[z])/(Sin[z]))

Rule: If  n∈ℤ, then

∫(((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  ⟶  (g^n)∫(((g Sin[e+f x]))^(p-n)) (((a+b Sin[e+f x]))^m) (((d+c Sin[e+f x]))^n)dx

Program code:

Int[(g_.*sin[e_.+f_.*x_])^p_.*(a_+b_.*sin[e_.+f_.*x_])^m_.*(c_+d_.*csc[e_.+f_.*x_])^n_.,x_Symbol] :=
  g^n*Int[(g*Sin[e+f*x])^(p-n)*(a+b*Sin[e+f*x])^m*(d+c*Sin[e+f*x])^n,x] /;
FreeQ[{a,b,c,d,e,f,g,m,p},x] && IntegerQ[n]

2.  ∫(((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  when n∉ℤ

1.  ∫(((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  when n∉ℤ ∧ m∈ℤ

1:  ∫((Sin[e+f x])^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  when n∉ℤ ∧ m∈ℤ ∧ p∈ℤ

Derivation: Algebraic normalization

Basis: a+b Sin[z]==((b+a Csc[z])/(Csc[z]))

Rule: If  n∉ℤ ∧ m∈ℤ ∧ p∈ℤ, then

∫((Sin[e+f x])^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  ⟶  ∫(((((b+a Csc[e+f x]))^m) (((c+d Csc[e+f x]))^n))/((Csc[e+f x])^(m+p))) dx

Program code:

Int[sin[e_.+f_.*x_]^p_.*(a_+b_.*sin[e_.+f_.*x_])^m_.*(c_+d_.*csc[e_.+f_.*x_])^n_,x_Symbol] :=
  Int[(b+a*Csc[e+f*x])^m*(c+d*Csc[e+f*x])^n/Csc[e+f*x]^(m+p),x] /;
FreeQ[{a,b,c,d,e,f,n},x] && Not[IntegerQ[n]] && IntegerQ[m] && IntegerQ[p]

2:  ∫(((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  when n∉ℤ ∧ m∈ℤ ∧ p∉ℤ

Derivation: Algebraic normalization and piecewise constant extraction

Basis: a+b Sin[z]==((b+a Csc[z])/(Csc[z]))

Basis: (∂_x)(((Csc[e+f x])^p) (((g Sin[e+f x]))^p))==0

Rule: If  n∉ℤ ∧ m∈ℤ ∧ p∉ℤ, then

∫(((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  ⟶  ((Csc[e+f x])^p) (((g Sin[e+f x]))^p)∫(((((b+a Csc[e+f x]))^m) (((c+d Csc[e+f x]))^n))/((Csc[e+f x])^(m+p))) dx

Program code:

Int[(g_.*sin[e_.+f_.*x_])^p_*(a_+b_.*sin[e_.+f_.*x_])^m_.*(c_+d_.*csc[e_.+f_.*x_])^n_,x_Symbol] :=
  Csc[e+f*x]^p*(g*Sin[e+f*x])^p*Int[(b+a*Csc[e+f*x])^m*(c+d*Csc[e+f*x])^n/Csc[e+f*x]^(m+p),x] /;
FreeQ[{a,b,c,d,e,f,g,n,p},x] && Not[IntegerQ[n]] && IntegerQ[m] && Not[IntegerQ[p]]

2:  ∫(((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  when n∉ℤ ∧ m∉ℤ

Derivation: Piecewise constant extraction

Basis: (∂_x)(((((g Sin[e+f x]))^n) (((c+d Csc[e+f x]))^n))/(((d+c Sin[e+f x]))^n))==0

Rule: If  n∉ℤ ∧ m∉ℤ, then

∫(((g Sin[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  ⟶  
(((((g Sin[e+f x]))^n) (((c+d Csc[e+f x]))^n))/(((d+c Sin[e+f x]))^n))∫(((g Sin[e+f x]))^(p-n)) (((a+b Sin[e+f x]))^m) (((d+c Sin[e+f x]))^n)dx

Program code:

Int[(g_.*sin[e_.+f_.*x_])^p_.*(a_+b_.*sin[e_.+f_.*x_])^m_*(c_+d_.*csc[e_.+f_.*x_])^n_,x_Symbol] :=
  (g*Sin[e+f*x])^n*(c+d*Csc[e+f*x])^n/(d+c*Sin[e+f*x])^n*Int[(g*Sin[e+f*x])^(p-n)*(a+b*Sin[e+f*x])^m*(d+c*Sin[e+f*x])^n,x] /;
FreeQ[{a,b,c,d,e,f,g,m,n,p},x] && Not[IntegerQ[n]] && Not[IntegerQ[m]]

Rules for integrands of the form (((g Csc[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n)

1.  ∫(((g Csc[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n)dx  when b c-a d≠0 ∧ p∉ℤ

1:  ∫(((g Csc[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n)dx  when  b c-a d≠0 ∧ p∉ℤ ∧ m∈ℤ ∧ n∈ℤ

Derivation: Algebraic normalization

Basis: a+b Sin[z]==((b+a Csc[z])/(Csc[z]))

Rule: If  b c-a d≠0 ∧ p∉ℤ ∧ m∈ℤ ∧ n∈ℤ, then

∫(((g Csc[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n)dx  ⟶  (g^(m+n))∫(((g Csc[e+f x]))^(p-m-n))(((b+a Csc[e+f x]))^m)(((d+c Csc[e+f x]))^n)dx

Program code:

Int[(g_.*csc[e_.+f_.*x_])^p_.*(a_.+b_.*sin[e_.+f_.*x_])^m_.*(c_+d_.*sin[e_.+f_.*x_])^n_.,x_Symbol] :=
  g^(m+n)*Int[(g*Csc[e+f*x])^(p-m-n)*(b+a*Csc[e+f*x])^m*(d+c*Csc[e+f*x])^n,x] /;
FreeQ[{a,b,c,d,e,f,g,p},x] && NeQ[b*c-a*d,0] && Not[IntegerQ[p]] && IntegerQ[m] && IntegerQ[n]

2:  ∫(((g Csc[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n)dx  when  b c-a d≠0 ∧ p∉ℤ ∧ ¬(m∈ℤ ∧ n∈ℤ)

Derivation: Piecewise constant extraction

Basis: (∂_x)((((g Csc[e+f x]))^p)(((g Sin[e+f x]))^p))==0

Rule: If  b c-a d≠0 ∧ p∉ℤ ∧ ¬(m∈ℤ ∧ n∈ℤ), then

∫(((g Csc[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Sin[e+f x]))^n)dx  ⟶  (((g Csc[e+f x]))^p)(((g Sin[e+f x]))^p)∫(((((a+b Sin[e+f x]))^m)(((c+d Sin[e+f x]))^n))/(((g Sin[e+f x]))^p))dx

Program code:

Int[(g_.*csc[e_.+f_.*x_])^p_.*(a_.+b_.*sin[e_.+f_.*x_])^m_.*(c_+d_.*sin[e_.+f_.*x_])^n_.,x_Symbol] :=
  (g*Csc[e+f*x])^p*(g*Sin[e+f*x])^p*Int[(a+b*Sin[e+f*x])^m*(c+d*Sin[e+f*x])^n/(g*Sin[e+f*x])^p,x] /;
FreeQ[{a,b,c,d,e,f,g,m,n,p},x] && NeQ[b*c-a*d,0] && Not[IntegerQ[p]] && Not[IntegerQ[m] && IntegerQ[n]]

Rules for integrands of the form (((g Csc[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)

1:  ∫(((g Csc[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  when m∈ℤ

Derivation: Algebraic normalization

Basis: a+b Sin[z]==((b+a Csc[z])/(Csc[z]))

Rule: If  m∈ℤ, then

∫(((g Csc[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  ⟶  (g^m)∫(((g Csc[e+f x]))^(p-m)) (((b+a Csc[e+f x]))^m) (((c+d Csc[e+f x]))^n) dx

Program code:

Int[(g_.*csc[e_.+f_.*x_])^p_.*(a_+b_.*sin[e_.+f_.*x_])^m_.*(c_+d_.*csc[e_.+f_.*x_])^n_.,x_Symbol] :=
  g^m*Int[(g*Csc[e+f*x])^(p-m)*(b+a*Csc[e+f*x])^m*(c+d*Csc[e+f*x])^n,x] /;
FreeQ[{a,b,c,d,e,f,g,n,p},x] && IntegerQ[m]

2.  ∫(((g Csc[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  when m∉ℤ

1.  ∫(((g Csc[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  when m∉ℤ ∧ n∈ℤ

1:  ∫((Csc[e+f x])^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  when m∉ℤ ∧ n∈ℤ ∧ p∈ℤ

Derivation: Algebraic normalization

Basis: c+d Csc[z]==((d+c Sin[z])/(Sin[z]))

Rule: If  m∉ℤ ∧ n∈ℤ ∧ p∈ℤ, then

∫((Csc[e+f x])^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  ⟶  ∫(((((a+b Sin[e+f x]))^m) (((d+c Sin[e+f x]))^n))/((Sin[e+f x])^(n+p))) dx

Program code:

Int[csc[e_.+f_.*x_]^p_.*(a_+b_.*sin[e_.+f_.*x_])^m_*(c_+d_.*csc[e_.+f_.*x_])^n_.,x_Symbol] :=
  Int[(a+b*Sin[e+f*x])^m*(d+c*Sin[e+f*x])^n/Sin[e+f*x]^(n+p),x] /;
FreeQ[{a,b,c,d,e,f,m},x] && Not[IntegerQ[m]] && IntegerQ[n] && IntegerQ[p]

2:  ∫(((g Csc[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  when m∉ℤ ∧ n∈ℤ ∧ p∉ℤ

Derivation: Algebraic normalization and piecewise constant extraction

Basis: c+d Csc[z]==((d+c Sin[z])/(Sin[z]))

Basis: (∂_x)(((Sin[e+f x])^p) (((g Csc[e+f x]))^p))==0

Rule: If  m∉ℤ ∧ n∈ℤ ∧ p∉ℤ, then

∫(((g Csc[e+f x]))^p) (((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx  ⟶  ((Sin[e+f x])^p) (((g Csc[e+f x]))^p)∫(((((a+b Sin[e+f x]))^m) (((d+c Sin[e+f x]))^n))/((Sin[e+f x])^(n+p))) dx

Program code:

Int[(g_.*csc[e_.+f_.*x_])^p_*(a_+b_.*sin[e_.+f_.*x_])^m_*(c_+d_.*csc[e_.+f_.*x_])^n_.,x_Symbol] :=
  Sin[e+f*x]^p*(g*Csc[e+f*x])^p*Int[(a+b*Sin[e+f*x])^m*(d+c*Sin[e+f*x])^n/Sin[e+f*x]^(n+p),x] /;
FreeQ[{a,b,c,d,e,f,g,m,p},x] && Not[IntegerQ[m]] && IntegerQ[n] && Not[IntegerQ[p]]

2:  ∫(((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n) (((g Csc[e+f x]))^p)dx  when m∉ℤ ∧ n∉ℤ

Derivation: Piecewise constant extraction

Basis: (∂_x)(((((g Csc[e+f x]))^m) (((a+b Sin[e+f x]))^m))/(((b+a Csc[e+f x]))^m))==0

Rule: If  m∉ℤ ∧ n∉ℤ, then

∫(((a+b Sin[e+f x]))^m) (((c+d Csc[e+f x]))^n) (((g Csc[e+f x]))^p)dx  ⟶  
(((((a+b Sin[e+f x]))^m) (((g Csc[e+f x]))^m))/(((b+a Csc[e+f x]))^m))∫(((g Csc[e+f x]))^(p-m)) (((b+a Csc[e+f x]))^m) (((c+d Csc[e+f x]))^n)dx

Program code:

Int[(g_.*csc[e_.+f_.*x_])^p_.*(a_+b_.*sin[e_.+f_.*x_])^m_*(c_+d_.*csc[e_.+f_.*x_])^n_,x_Symbol] :=
  (a+b*Sin[e+f*x])^m*(g*Csc[e+f*x])^m/(b+a*Csc[e+f*x])^m*
    Int[(g*Csc[e+f*x])^(p-m)*(b+a*Csc[e+f*x])^m*(c+d*Csc[e+f*x])^n,x] /;
FreeQ[{a,b,c,d,e,f,g,m,n,p},x] && Not[IntegerQ[m]] && Not[IntegerQ[n]]