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

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

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

1.  ∫Sin[c+d (((e+f x))^n)]dx  when n-1∈(SuperPlus[ℤ])

1.  ∫Sin[c+d (((e+f x))^2)]dx

1:  ∫Sin[d (((e+f x))^2)]dx

Derivation: Primitive rule

Basis: FresnelS'[z]==Sin[((π (z^2))/2)]

Rule:

∫Sin[d (((e+f x))^2)]dx  ⟶  ((Sqrt[(π/2)])/(f (Sqrt[d])))FresnelS[(Sqrt[(2/π)]) (Sqrt[d]) (e+f x)]

Program code:

Int[Sin[d_.*(e_.+f_.*x_)^2],x_Symbol] :=
  Sqrt[Pi/2]/(f*Rt[d,2])*FresnelS[Sqrt[2/Pi]*Rt[d,2]*(e+f*x)] /;
FreeQ[{d,e,f},x]

Int[Cos[d_.*(e_.+f_.*x_)^2],x_Symbol] :=
  Sqrt[Pi/2]/(f*Rt[d,2])*FresnelC[Sqrt[2/Pi]*Rt[d,2]*(e+f*x)] /;
FreeQ[{d,e,f},x]

2:  ∫Sin[c+d (((e+f x))^2)]dx

Derivation: Algebraic expansion

Basis: Sin[w+z]==Sin[w] Cos[z]+Cos[w] Sin[z]

Basis: Cos[w+z]==Cos[w] Cos[z]-Sin[w] Sin[z]

Note: Although not essential, this rule produces antiderivatives in terms of Fresnel integrals instead of complex error functions.

Rule:

∫Sin[c+d (((e+f x))^2)]dx  ⟶  Sin[c]∫Cos[d (((e+f x))^2)]dx+Cos[c]∫Sin[d (((e+f x))^2)]dx

Program code:

Int[Sin[c_+d_.*(e_.+f_.*x_)^2],x_Symbol] :=
  Sin[c]*Int[Cos[d*(e+f*x)^2],x] + Cos[c]*Int[Sin[d*(e+f*x)^2],x] /;
FreeQ[{c,d,e,f},x]

Int[Cos[c_+d_.*(e_.+f_.*x_)^2],x_Symbol] :=
  Cos[c]*Int[Cos[d*(e+f*x)^2],x] - Sin[c]*Int[Sin[d*(e+f*x)^2],x] /;
FreeQ[{c,d,e,f},x]

2:  ∫Sin[c+d (((e+f x))^n)]dx  when n-2∈(SuperPlus[ℤ])

Derivation: Algebraic expansion

Basis: Sin[z]==(1/2) i (e^(-i z))-(1/2) i (e^(i z))

Basis: Cos[z]==(1/2)(e^(-i z))+(1/2)(e^(i z))

Rule: If  n-2∈(SuperPlus[ℤ]), then

∫Sin[c+d (((e+f x))^n)]dx  ⟶  (i/2)∫(e^(-c i-d i (((e+f x))^n)))dx-(i/2)∫(e^(c i+d i (((e+f x))^n)))dx

Program code:

Int[Sin[c_.+d_.*(e_.+f_.*x_)^n_],x_Symbol] :=
  I/2*Int[E^(-c*I-d*I*(e+f*x)^n),x] - I/2*Int[E^(c*I+d*I*(e+f*x)^n),x] /;
FreeQ[{c,d,e,f},x] && IGtQ[n,2]

Int[Cos[c_.+d_.*(e_.+f_.*x_)^n_],x_Symbol] :=
  1/2*Int[E^(-c*I-d*I*(e+f*x)^n),x] + 1/2*Int[E^(c*I+d*I*(e+f*x)^n),x] /;
FreeQ[{c,d,e,f},x] && IGtQ[n,2]

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

Derivation: Algebraic expansion

Rule: If  p-1∈(SuperPlus[ℤ])∧ n-1∈(SuperPlus[ℤ]), then

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

Program code:

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

Int[(a_.+b_.*Cos[c_.+d_.*(e_.+f_.*x_)^n_])^p_,x_Symbol] :=
  Int[ExpandTrigReduce[(a+b*Cos[c+d*(e+f*x)^n])^p,x],x] /;
FreeQ[{a,b,c,d,e,f},x] && IGtQ[p,1] && IGtQ[n,1]

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

Derivation: Integration by substitution

Basis: If  n∈ℤ, then F[(((e+f x))^n)]==-(1/f) Subst[((F[(x^(-n))])/(x^2)),x,(1/(e+f x))] (∂_x)(1/(e+f x))

Rule: If  p∈(SuperPlus[ℤ])∧ n∈(SuperMinus[ℤ]), then

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

Program code:

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

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

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

Derivation: Integration by substitution

Basis: If -1≤n≤1, then F[(((e+f x))^n)]==(1/(n f)) Subst[(x^(1/n-1)) F[x],x,(((e+f x))^n)] (∂_x)(((e+f x))^n)

Rule: If  p∈(SuperPlus[ℤ])∧ (1/n)∈ℤ, then

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

Program code:

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

Int[(a_.+b_.*Cos[c_.+d_.*(e_.+f_.*x_)^n_])^p_.,x_Symbol] :=
  1/(n*f)*Subst[Int[x^(1/n-1)*(a+b*Cos[c+d*x])^p,x],x,(e+f*x)^n] /;
FreeQ[{a,b,c,d,e,f},x] && IGtQ[p,0] && IntegerQ[1/n]

3:  ∫(((a+b Sin[c+d (((e+f x))^n)]))^p)dx  when  p∈(SuperPlus[ℤ])∧ n∈𝔽

Derivation: Integration by substitution

Basis: If  k∈(SuperPlus[ℤ]), then F[(((e+f x))^n)]==(k/f) Subst[(x^(k-1)) F[(x^(k n))],x,(((e+f x))^(1/k))] (∂_x)(((e+f x))^(1/k))

Rule: If  p∈(SuperPlus[ℤ])∧ n∈𝔽, let k=Denominator[n], then

∫(((a+b Sin[c+d (((e+f x))^n)]))^p)dx  ⟶  (k/f) Subst[∫(x^(k-1)) (((a+b Sin[c+d (x^(k n))]))^p)dx,x,(((e+f x))^(1/k))]

Program code:

Int[(a_.+b_.*Sin[c_.+d_.*(e_.+f_.*x_)^n_])^p_.,x_Symbol] :=
  Module[{k=Denominator[n]},
  k/f*Subst[Int[x^(k-1)*(a+b*Sin[c+d*x^(k*n)])^p,x],x,(e+f*x)^(1/k)]] /;
FreeQ[{a,b,c,d,e,f},x] && IGtQ[p,0] && FractionQ[n]

Int[(a_.+b_.*Cos[c_.+d_.*(e_.+f_.*x_)^n_])^p_.,x_Symbol] :=
  Module[{k=Denominator[n]},
  k/f*Subst[Int[x^(k-1)*(a+b*Cos[c+d*x^(k*n)])^p,x],x,(e+f*x)^(1/k)]] /;
FreeQ[{a,b,c,d,e,f},x] && IGtQ[p,0] && FractionQ[n]

4.  ∫(((a+b Sin[c+d (((e+f x))^n)]))^p)dx  when p∈(SuperPlus[ℤ])

1:  ∫Sin[c+d (((e+f x))^n)]dx

Derivation: Algebraic expansion

Basis: Sin[z]==(1/2) i (e^(-i z))-(1/2) i (e^(i z))

Basis: Cos[z]==(1/2)(e^(-i z))+(1/2)(e^(i z))

Rule:

∫Sin[c+d (((e+f x))^n)]dx  ⟶  (i/2)∫(e^(-c i-d i (((e+f x))^n)))dx-(i/2)∫(e^(c i+d i (((e+f x))^n)))dx

Program code:

Int[Sin[c_.+d_.*(e_.+f_.*x_)^n_],x_Symbol] :=
  I/2*Int[E^(-c*I-d*I*(e+f*x)^n),x] - I/2*Int[E^(c*I+d*I*(e+f*x)^n),x] /;
FreeQ[{c,d,e,f,n},x]

Int[Cos[c_.+d_.*(e_.+f_.*x_)^n_],x_Symbol] :=
  1/2*Int[E^(-c*I-d*I*(e+f*x)^n),x] + 1/2*Int[E^(c*I+d*I*(e+f*x)^n),x] /;
FreeQ[{c,d,e,f,n},x]

2:  ∫(((a+b Sin[c+d (((e+f x))^n)]))^p)dx  when p-1∈(SuperPlus[ℤ])

Derivation: Algebraic expansion

Rule: If  p-1∈(SuperPlus[ℤ]), then

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

Program code:

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

Int[(a_.+b_.*Cos[c_.+d_.*(e_.+f_.*x_)^n_])^p_,x_Symbol] :=
  Int[ExpandTrigReduce[(a+b*Cos[c+d*(e+f*x)^n])^p,x],x] /;
FreeQ[{a,b,c,d,e,f,n},x] && IGtQ[p,1]

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

Rule:

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

Program code:

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

Int[(a_.+b_.*Cos[c_.+d_.*(e_.+f_.*x_)^n_])^p_,x_Symbol] :=
  Unintegrable[(a+b*Cos[c+d*(e+f*x)^n])^p,x] /;
FreeQ[{a,b,c,d,e,f,n,p},x]

N.  ∫(((a+b Sin[u]))^p)dx

1:  ∫(((a+b Sin[c+d (u^n)]))^p)dx  when  u==e+f x

Derivation: Algebraic normalization

Rule: If  u==e+f x, then

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

Program code:

Int[(a_.+b_.*Sin[c_.+d_.*u_^n_])^p_.,x_Symbol] :=
  Int[(a+b*Sin[c+d*ExpandToSum[u,x]^n])^p,x] /;
FreeQ[{a,b,c,d,n,p},x] && LinearQ[u,x] && Not[LinearMatchQ[u,x]]

Int[(a_.+b_.*Cos[c_.+d_.*u_^n_])^p_.,x_Symbol] :=
  Int[(a+b*Cos[c+d*ExpandToSum[u,x]^n])^p,x] /;
FreeQ[{a,b,c,d,n,p},x] && LinearQ[u,x] && Not[LinearMatchQ[u,x]]

2:  ∫(((a+b Sin[u]))^p)dx  when  u==c+d (x^n)

Derivation: Algebraic normalization

Rule: If  u==c+d (x^n), then

∫(((a+b Sin[u]))^p)dx  ⟶  ∫(((a+b Sin[c+d (x^n)]))^p)dx

Program code:

Int[(a_.+b_.*Sin[u_])^p_.,x_Symbol] :=
  Int[(a+b*Sin[ExpandToSum[u,x]])^p,x] /;
FreeQ[{a,b,p},x] && BinomialQ[u,x] && Not[BinomialMatchQ[u,x]]

Int[(a_.+b_.*Cos[u_])^p_.,x_Symbol] :=
  Int[(a+b*Cos[ExpandToSum[u,x]])^p,x] /;
FreeQ[{a,b,p},x] && BinomialQ[u,x] && Not[BinomialMatchQ[u,x]]

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

1.  ∫(((e x))^m) (((a+b Sin[c+d (x^n)]))^p)dx  when ((m+1)/n)∈ℤ

1.  ∫(x^m) (((a+b Sin[c+d (x^n)]))^p)dx  when ((m+1)/n)∈ℤ

1.  ∫((Sin[c+d (x^n)])/x)dx

1:  ∫((Sin[d (x^n)])/x)dx

Derivation: Primitive rule

Basis: SinIntegral'[z]==((Sin[z])/z)

Rule:

∫((Sin[d (x^n)])/x)dx  ⟶  ((SinIntegral[d (x^n)])/n)

Program code:

Int[Sin[d_.*x_^n_]/x_,x_Symbol] :=
  SinIntegral[d*x^n]/n /;
FreeQ[{d,n},x]

Int[Cos[d_.*x_^n_]/x_,x_Symbol] :=
  CosIntegral[d*x^n]/n /;
FreeQ[{d,n},x]

2:  ∫((Sin[c+d (x^n)])/x)dx

Derivation: Algebraic expansion

Basis: Sin[w+z]==Sin[w] Cos[z]+Cos[w] Sin[z]

Rule:

∫((Sin[c+d (x^n)])/x)dx  ⟶  Sin[c]∫((Cos[d (x^n)])/x)dx+Cos[c]∫((Sin[d (x^n)])/x)dx

Program code:

Int[Sin[c_+d_.*x_^n_]/x_,x_Symbol] :=
  Sin[c]*Int[Cos[d*x^n]/x,x] + Cos[c]*Int[Sin[d*x^n]/x,x] /;
FreeQ[{c,d,n},x]

Int[Cos[c_+d_.*x_^n_]/x_,x_Symbol] :=
  Cos[c]*Int[Cos[d*x^n]/x,x] - Sin[c]*Int[Sin[d*x^n]/x,x] /;
FreeQ[{c,d,n},x]

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

Derivation: Integration by substitution

Basis: If ((m+1)/n)∈ℤ, then (x^m)F[(x^n)]==(1/n) Subst[(x^(((m+1)/n)-1)) F[x],x,(x^n)] (∂_x)(x^n)

Rule: If ((m+1)/n)∈ℤ ∧ (p==1 ∨ m==n-1 ∨ p∈ℤ ∧ ((m+1)/n)>0), then

∫(x^m) (((a+b Sin[c+d (x^n)]))^p)dx  ⟶  (1/n) Subst[∫(x^(((m+1)/n)-1)) (((a+b Sin[c+d x]))^p)dx,x,(x^n)]

Program code:

Int[x_^m_.*(a_.+b_.*Sin[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  1/n*Subst[Int[x^(Simplify[(m+1)/n]-1)*(a+b*Sin[c+d*x])^p,x],x,x^n] /;
FreeQ[{a,b,c,d,m,n,p},x] && IntegerQ[Simplify[(m+1)/n]] && (EqQ[p,1] || EqQ[m,n-1] || IntegerQ[p] && GtQ[Simplify[(m+1)/n],0])

Int[x_^m_.*(a_.+b_.*Cos[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  1/n*Subst[Int[x^(Simplify[(m+1)/n]-1)*(a+b*Cos[c+d*x])^p,x],x,x^n] /;
FreeQ[{a,b,c,d,m,n,p},x] && IntegerQ[Simplify[(m+1)/n]] && (EqQ[p,1] || EqQ[m,n-1] || IntegerQ[p] && GtQ[Simplify[(m+1)/n],0])

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

Derivation: Piecewise constant extraction

Basis: (∂_x)((((e x))^m)/(x^m))==0

Rule: If ((m+1)/n)∈ℤ, then

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

Program code:

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

Int[(e_*x_)^m_*(a_.+b_.*Cos[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  e^IntPart[m]*(e*x)^FracPart[m]/x^FracPart[m]*Int[x^m*(a+b*Cos[c+d*x^n])^p,x] /;
FreeQ[{a,b,c,d,e,m,n,p},x] && IntegerQ[Simplify[(m+1)/n]]

2.  ∫(((e x))^m) (((a+b Sin[c+d (x^n)]))^p)dx  when p∈ℤ ∧ n∈ℤ

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

1.  ∫(((e x))^m)Sin[c+d (x^n)]dx

1:  ∫(x^((n/2)-1))Sin[a+b (x^n)]dx

Derivation: Integration by substitution

Basis: (x^((n/2)-1))F[(x^n)]==(2/n) Subst[F[(x^2)],x,(x^(n/2))] (∂_x)(x^(n/2))

Note: Although not essential, this rule produces antiderivatives in terms of Fresnel integrals instead of complex error functions.

Rule:

∫(x^((n/2)-1))Sin[a+b (x^n)]dx  ⟶  (2/n)Subst[∫Sin[a+b (x^2)]dx,x,(x^(n/2))]

Program code:

Int[x_^m_.*Sin[a_.+b_.*x_^n_],x_Symbol] :=
  2/n*Subst[Int[Sin[a+b*x^2],x],x,x^(n/2)] /;
FreeQ[{a,b,m,n},x] && EqQ[m,n/2-1]

Int[x_^m_.*Cos[a_.+b_.*x_^n_],x_Symbol] :=
  2/n*Subst[Int[Cos[a+b*x^2],x],x,x^(n/2)] /;
FreeQ[{a,b,m,n},x] && EqQ[m,n/2-1]

2:  ∫(((e x))^m)Sin[c+d (x^n)]dx  when  n∈(SuperPlus[ℤ])∧ 0<n<m+1

Reference: CRC 392, A&S 4.3.119

Reference: CRC 396, A&S 4.3.123

Derivation: Integration by parts

Basis: If  n∈ℤ, then (((e x))^m) Sin[c+d (x^n)]==-(((e^(n-1)) (((e x))^(m-n+1)))/(d n))(∂_x)Cos[c+d (x^n)]

Rule: If  n∈(SuperPlus[ℤ])∧ 0<n<m+1, then

∫(((e x))^m)Sin[c+d (x^n)]dx  ⟶  -(((e^(n-1)) (((e x))^(m-n+1)) Cos[c+d (x^n)])/(d n))+(((e^n) (m-n+1))/(d n))∫(((e x))^(m-n)) Cos[c+d (x^n)]dx

Program code:

Int[(e_.*x_)^m_.*Sin[c_.+d_.*x_^n_],x_Symbol] :=
  -e^(n-1)*(e*x)^(m-n+1)*Cos[c+d*x^n]/(d*n) + 
  e^n*(m-n+1)/(d*n)*Int[(e*x)^(m-n)*Cos[c+d*x^n],x] /;
FreeQ[{c,d,e},x] && IGtQ[n,0] && LtQ[n,m+1]

Int[(e_.*x_)^m_.*Cos[c_.+d_.*x_^n_],x_Symbol] :=
  e^(n-1)*(e*x)^(m-n+1)*Sin[c+d*x^n]/(d*n) - 
  e^n*(m-n+1)/(d*n)*Int[(e*x)^(m-n)*Sin[c+d*x^n],x] /;
FreeQ[{c,d,e},x] && IGtQ[n,0] && LtQ[n,m+1]

3:  ∫(((e x))^m)Sin[c+d (x^n)]dx  when  n∈(SuperPlus[ℤ])∧ m<-1

Reference: CRC 405, A&S 4.3.120

Reference: CRC 406, A&S 4.3.124

Derivation: Integration by parts

Rule: If  n∈(SuperPlus[ℤ])∧ m<-1, then

∫(((e x))^m)Sin[c+d (x^n)]dx  ⟶  (((((e x))^(m+1)) Sin[c+d (x^n)])/(e (m+1)))-((d n)/((e^n) (m+1)))∫(((e x))^(m+n)) Cos[c+d (x^n)]dx

Program code:

Int[(e_.*x_)^m_*Sin[c_.+d_.*x_^n_],x_Symbol] :=
  (e*x)^(m+1)*Sin[c+d*x^n]/(e*(m+1)) - 
  d*n/(e^n*(m+1))*Int[(e*x)^(m+n)*Cos[c+d*x^n],x] /;
FreeQ[{c,d,e},x] && IGtQ[n,0] && LtQ[m,-1]

Int[(e_.*x_)^m_*Cos[c_.+d_.*x_^n_],x_Symbol] :=
  (e*x)^(m+1)*Cos[c+d*x^n]/(e*(m+1)) + 
  d*n/(e^n*(m+1))*Int[(e*x)^(m+n)*Sin[c+d*x^n],x] /;
FreeQ[{c,d,e},x] && IGtQ[n,0] && LtQ[m,-1]

4:  ∫(((e x))^m) Sin[c+d (x^n)]dx  when n∈(SuperPlus[ℤ])

Derivation: Algebraic expansion

Basis: Sin[z]==(1/2) i (e^(-i z))-(1/2) i (e^(i z))

Basis: Cos[z]==(1/2)(e^(-i z))+(1/2)(e^(i z))

Rule: If  n∈(SuperPlus[ℤ]), then

∫(((e x))^m) Sin[c+d (x^n)]dx  ⟶  (i/2)∫(((e x))^m) (e^(-c i-d i (x^n)))dx-(i/2)∫(((e x))^m) (e^(c i+d i (x^n)))dx

Program code:

Int[(e_.*x_)^m_.*Sin[c_.+d_.*x_^n_],x_Symbol] :=
  I/2*Int[(e*x)^m*E^(-c*I-d*I*x^n),x] - I/2*Int[(e*x)^m*E^(c*I+d*I*x^n),x] /;
FreeQ[{c,d,e,m},x] && IGtQ[n,0]

Int[(e_.*x_)^m_.*Cos[c_.+d_.*x_^n_],x_Symbol] :=
  1/2*Int[(e*x)^m*E^(-c*I-d*I*x^n),x] + 1/2*Int[(e*x)^m*E^(c*I+d*I*x^n),x] /;
FreeQ[{c,d,e,m},x] && IGtQ[n,0]

2.  ∫(((e x))^m) (((a+b Sin[c+d (x^n)]))^p)dx  when  p>1

0:  ∫(x^m) ((Sin[a+b (x^n)])^2)dx

Derivation: Algebraic expansion

Basis: ((Sin[z])^2)==(1/2)-((Cos[2 z])/2)

Rule:

∫(x^m) ((Sin[a+b (x^n)])^2)dx  ⟶  (1/2)∫(x^m)dx-(1/2)∫(x^m) Cos[2 a+2 b (x^n)]dx

Program code:

Int[x_^m_.*Sin[a_.+b_.*x_^n_/2]^2,x_Symbol] :=
  1/2*Int[x^m,x] - 1/2*Int[x^m*Cos[2*a+b*x^n],x] /;
FreeQ[{a,b,m,n},x]

Int[x_^m_.*Cos[a_.+b_.*x_^n_/2]^2,x_Symbol] :=
  1/2*Int[x^m,x] + 1/2*Int[x^m*Cos[2*a+b*x^n],x] /;
FreeQ[{a,b,m,n},x]

1:  ∫(x^m) ((Sin[a+b (x^n)])^p)dx  when p-1∈(SuperPlus[ℤ])∧ m+n==0∧ n≠1 ∧ n∈ℤ

Derivation: Integration by parts

Rule: If  p-1∈(SuperPlus[ℤ])∧ m+n==0∧ n≠1 ∧ n∈ℤ, then

∫(x^m) ((Sin[a+b (x^n)])^p)dx  ⟶  (((x^(m+1)) ((Sin[a+b (x^n)])^p))/(m+1))-((b n p)/(m+1))∫((Sin[a+b (x^n)])^(p-1)) Cos[a+b (x^n)]dx

Program code:

Int[x_^m_.*Sin[a_.+b_.*x_^n_]^p_,x_Symbol] :=
  x^(m+1)*Sin[a+b*x^n]^p/(m+1) - 
  b*n*p/(m+1)*Int[Sin[a+b*x^n]^(p-1)*Cos[a+b*x^n],x] /;
FreeQ[{a,b},x] && IGtQ[p,1] && EqQ[m+n,0] && NeQ[n,1] && IntegerQ[n]

Int[x_^m_.*Cos[a_.+b_.*x_^n_]^p_,x_Symbol] :=
  x^(m+1)*Cos[a+b*x^n]^p/(m+1) + 
  b*n*p/(m+1)*Int[Cos[a+b*x^n]^(p-1)*Sin[a+b*x^n],x] /;
FreeQ[{a,b},x] && IGtQ[p,1] && EqQ[m+n,0] && NeQ[n,1] && IntegerQ[n]

2:  ∫(x^m)((Sin[a+b (x^n)])^p)dx  when m-2n+1==0 ∧ p>1

Reference: G&R 2.631.2' special case when m-2n+1==0

Reference: G&R 2.631.3' special case when m-2n+1==0

Rule: If  m-2n+1==0 ∧ p>1, then

∫(x^m)((Sin[a+b (x^n)])^p)dx  ⟶  ((n ((Sin[a+b (x^n)])^p))/((b^2) (n^2) (p^2)))-(((x^n) Cos[a+b (x^n)] ((Sin[a+b (x^n)])^(p-1)))/(b n p))+((p-1)/p)∫(x^m)((Sin[a+b (x^n)])^(p-2))dx

Program code:

Int[x_^m_.*Sin[a_.+b_.*x_^n_]^p_,x_Symbol] :=
  n*Sin[a+b*x^n]^p/(b^2*n^2*p^2) -
  x^n*Cos[a+b*x^n]*Sin[a+b*x^n]^(p-1)/(b*n*p) +
  (p-1)/p*Int[x^m*Sin[a+b*x^n]^(p-2),x] /;
FreeQ[{a,b,m,n},x] && EqQ[m-2*n+1,0] && GtQ[p,1]

Int[x_^m_.*Cos[a_.+b_.*x_^n_]^p_,x_Symbol] :=
  n*Cos[a+b*x^n]^p/(b^2*n^2*p^2) +
  x^n*Sin[a+b*x^n]*Cos[a+b*x^n]^(p-1)/(b*n*p) +
  (p-1)/p*Int[x^m*Cos[a+b*x^n]^(p-2),x] /;
FreeQ[{a,b,m,n},x] && EqQ[m-2*n+1,0] && GtQ[p,1]

3:  ∫(x^m)((Sin[a+b (x^n)])^p)dx  when p>1 ∧ n∈(SuperPlus[ℤ])∧ m-2n+1∈(SuperPlus[ℤ])

Reference: G&R 2.631.2'

Reference: G&R 2.631.3'

Rule: If  p>1 ∧ n∈(SuperPlus[ℤ])∧ m-2n+1∈(SuperPlus[ℤ]), then

∫(x^m)((Sin[a+b (x^n)])^p)dx  ⟶  
(((m-n+1) (x^(m-2 n+1)) ((Sin[a+b (x^n)])^p))/((b^2) (n^2) (p^2)))-(((x^(m-n+1)) Cos[a+b (x^n)] ((Sin[a+b (x^n)])^(p-1)))/(b n p))+((p-1)/p)∫(x^m) ((Sin[a+b (x^n)])^(p-2))dx-(((m-n+1) (m-2 n+1))/((b^2) (n^2) (p^2)))∫(x^(m-2 n)) ((Sin[a+b (x^n)])^p)dx

Program code:

Int[x_^m_.*Sin[a_.+b_.*x_^n_]^p_,x_Symbol] :=
  (m-n+1)*x^(m-2*n+1)*Sin[a+b*x^n]^p/(b^2*n^2*p^2) -
  x^(m-n+1)*Cos[a+b*x^n]*Sin[a+b*x^n]^(p-1)/(b*n*p) +
  (p-1)/p*Int[x^m*Sin[a+b*x^n]^(p-2),x] -
  (m-n+1)*(m-2*n+1)/(b^2*n^2*p^2)*Int[x^(m-2*n)*Sin[a+b*x^n]^p,x] /;
FreeQ[{a,b},x] && GtQ[p,1] && IGtQ[n,0] && IGtQ[m,2*n-1]

Int[x_^m_.*Cos[a_.+b_.*x_^n_]^p_,x_Symbol] :=
  (m-n+1)*x^(m-2*n+1)*Cos[a+b*x^n]^p/(b^2*n^2*p^2) +
  x^(m-n+1)*Sin[a+b*x^n]*Cos[a+b*x^n]^(p-1)/(b*n*p) +
  (p-1)/p*Int[x^m*Cos[a+b*x^n]^(p-2),x] -
  (m-n+1)*(m-2*n+1)/(b^2*n^2*p^2)*Int[x^(m-2*n)*Cos[a+b*x^n]^p,x] /;
FreeQ[{a,b},x] && GtQ[p,1] && IGtQ[n,0] && IGtQ[m,2*n-1]

4:  ∫(x^m)((Sin[a+b (x^n)])^p)dx  when p>1 ∧ n∈(SuperPlus[ℤ])∧ m+2n-1∈(SuperMinus[ℤ])∧ m+n+1≠0

Reference: G&R 2.638.1'

Reference: G&R 2.638.2'

Rule: If  p>1 ∧ n∈(SuperPlus[ℤ])∧ m+2n-1∈(SuperMinus[ℤ])∧ m+n+1≠0, then

∫(x^m)((Sin[a+b (x^n)])^p)dx  ⟶  
(((x^(m+1)) ((Sin[a+b (x^n)])^p))/(m+1))-((b n p (x^(m+n+1)) Cos[a+b (x^n)] ((Sin[a+b (x^n)])^(p-1)))/((m+1) (m+n+1)))-(((b^2) (n^2) (p^2))/((m+1) (m+n+1)))∫(x^(m+2 n)) ((Sin[a+b (x^n)])^p)dx+(((b^2) (n^2) p (p-1))/((m+1) (m+n+1)))∫(x^(m+2 n)) ((Sin[a+b (x^n)])^(p-2))dx

Program code:

Int[x_^m_.*Sin[a_.+b_.*x_^n_]^p_,x_Symbol] :=
  x^(m+1)*Sin[a+b*x^n]^p/(m+1) - 
  b*n*p*x^(m+n+1)*Cos[a+b*x^n]*Sin[a+b*x^n]^(p-1)/((m+1)*(m+n+1)) - 
  b^2*n^2*p^2/((m+1)*(m+n+1))*Int[x^(m+2*n)*Sin[a+b*x^n]^p,x] + 
  b^2*n^2*p*(p-1)/((m+1)*(m+n+1))*Int[x^(m+2*n)*Sin[a+b*x^n]^(p-2),x] /;
FreeQ[{a,b},x] && GtQ[p,1] && IGtQ[n,0] && ILtQ[m,-2*n+1] && NeQ[m+n+1,0]

Int[x_^m_.*Cos[a_.+b_.*x_^n_]^p_,x_Symbol] :=
  x^(m+1)*Cos[a+b*x^n]^p/(m+1) + 
  b*n*p*x^(m+n+1)*Sin[a+b*x^n]*Cos[a+b*x^n]^(p-1)/((m+1)*(m+n+1)) - 
  b^2*n^2*p^2/((m+1)*(m+n+1))*Int[x^(m+2*n)*Cos[a+b*x^n]^p,x] + 
  b^2*n^2*p*(p-1)/((m+1)*(m+n+1))*Int[x^(m+2*n)*Cos[a+b*x^n]^(p-2),x] /;
FreeQ[{a,b},x] && GtQ[p,1] && IGtQ[n,0] && ILtQ[m,-2*n+1] && NeQ[m+n+1,0]

5:  ∫(((e x))^m) (((a+b Sin[c+d (x^n)]))^p)dx  when  p∈ℤ ∧ n∈(SuperPlus[ℤ])∧ m∈𝔽

Derivation: Integration by substitution

Basis: If  k∈(SuperPlus[ℤ]), then (((e x))^m) F[x]==(k/e) Subst[(x^(k (m+1)-1))F[((x^k)/e)],x,(((e x))^(1/k))] (∂_x)(((e x))^(1/k))

Rule: If  p∈ℤ ∧ n∈(SuperPlus[ℤ])∧ m∈𝔽, let k=Denominator[m], then

∫(((e x))^m) (((a+b Sin[c+d (x^n)]))^p)dx  ⟶  (k/e) Subst[∫(x^(k (m+1)-1)) (((a+b Sin[c+((d (x^(k n)))/(e^n))]))^p) dx,x,(((e x))^(1/k))]

Program code:

Int[(e_.*x_)^m_*(a_.+b_.*Sin[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  With[{k=Denominator[m]},
  k/e*Subst[Int[x^(k*(m+1)-1)*(a+b*Sin[c+d*x^(k*n)/e^n])^p,x],x,(e*x)^(1/k)]] /;
FreeQ[{a,b,c,d,e},x] && IntegerQ[p] && IGtQ[n,0] && FractionQ[m]

Int[(e_.*x_)^m_*(a_.+b_.*Cos[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  With[{k=Denominator[m]},
  k/e*Subst[Int[x^(k*(m+1)-1)*(a+b*Cos[c+d*x^(k*n)/e^n])^p,x],x,(e*x)^(1/k)]] /;
FreeQ[{a,b,c,d,e},x] && IntegerQ[p] && IGtQ[n,0] && FractionQ[m]

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

Derivation: Algebraic expansion

Rule: If  p-1∈(SuperPlus[ℤ])∧ n∈(SuperPlus[ℤ]), then

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

Program code:

Int[(e_.*x_)^m_.*(a_.+b_.*Sin[c_.+d_.*x_^n_])^p_,x_Symbol] :=
  Int[ExpandTrigReduce[(e*x)^m,(a+b*Sin[c+d*x^n])^p,x],x] /;
FreeQ[{a,b,c,d,e,m},x] && IGtQ[p,1] && IGtQ[n,0]

Int[(e_.*x_)^m_.*(a_.+b_.*Cos[c_.+d_.*x_^n_])^p_,x_Symbol] :=
  Int[ExpandTrigReduce[(e*x)^m,(a+b*Cos[c+d*x^n])^p,x],x] /;
FreeQ[{a,b,c,d,e,m},x] && IGtQ[p,1] && IGtQ[n,0]

3.  ∫(((e x))^m) (((a+b Sin[c+d (x^n)]))^p)dx  when  p<-1

1:  ∫(x^m)((Sin[a+b (x^n)])^p)dx  when m-2n+1==0 ∧ p<-1 ∧ p≠-2

Reference: G&R 2.643.1' special case when m-2n+1==0

Reference: G&R 2.643.2' special case when m-2n+1==0

Rule: If  m-2n+1==0 ∧ p<-1 ∧ p≠-2, then

∫(x^m)((Sin[a+b (x^n)])^p)dx  ⟶  (((x^n) Cos[a+b (x^n)] ((Sin[a+b (x^n)])^(p+1)))/(b n (p+1)))-((n ((Sin[a+b (x^n)])^(p+2)))/((b^2) (n^2) (p+1) (p+2)))+((p+2)/(p+1))∫(x^m) ((Sin[a+b (x^n)])^(p+2))dx

Program code:

Int[x_^m_.*Sin[a_.+b_.*x_^n_]^p_,x_Symbol] :=
  x^n*Cos[a+b*x^n]*Sin[a+b*x^n]^(p+1)/(b*n*(p+1)) - 
  n*Sin[a+b*x^n]^(p+2)/(b^2*n^2*(p+1)*(p+2)) + 
  (p+2)/(p+1)*Int[x^m*Sin[a+b*x^n]^(p+2),x] /;
FreeQ[{a,b,m,n},x] && EqQ[m-2*n+1,0] && LtQ[p,-1] && NeQ[p,-2]

Int[x_^m_.*Cos[a_.+b_.*x_^n_]^p_,x_Symbol] :=
  -x^n*Sin[a+b*x^n]*Cos[a+b*x^n]^(p+1)/(b*n*(p+1)) - 
  n*Cos[a+b*x^n]^(p+2)/(b^2*n^2*(p+1)*(p+2)) + 
  (p+2)/(p+1)*Int[x^m*Cos[a+b*x^n]^(p+2),x] /;
FreeQ[{a,b,m,n},x] && EqQ[m-2*n+1,0] && LtQ[p,-1] && NeQ[p,-2]

2:  ∫(x^m)((Sin[a+b (x^n)])^p)dx  when (m|n)∈ℤ ∧ p<-1 ∧ p≠-2 ∧ 0<2n<m+1

Reference: G&R 2.643.1'

Reference: G&R 2.643.2

Rule: If  (m|n)∈ℤ ∧ p<-1 ∧ p≠-2 ∧ 0<2n<m+1, then

∫(x^m)((Sin[a+b (x^n)])^p)dx  ⟶  
(((x^(m-n+1)) Cos[a+b (x^n)] ((Sin[a+b (x^n)])^(p+1)))/(b n (p+1)))-(((m-n+1) (x^(m-2 n+1)) ((Sin[a+b (x^n)])^(p+2)))/((b^2) (n^2) (p+1) (p+2)))+((p+2)/(p+1))∫(x^m) ((Sin[a+b (x^n)])^(p+2))dx+(((m-n+1) (m-2 n+1))/((b^2) (n^2) (p+1) (p+2)))∫(x^(m-2 n)) ((Sin[a+b (x^n)])^(p+2))dx

Program code:

Int[x_^m_.*Sin[a_.+b_.*x_^n_]^p_,x_Symbol] :=
  x^(m-n+1)*Cos[a+b*x^n]*Sin[a+b*x^n]^(p+1)/(b*n*(p+1)) -
  (m-n+1)*x^(m-2*n+1)*Sin[a+b*x^n]^(p+2)/(b^2*n^2*(p+1)*(p+2)) +
  (p+2)/(p+1)*Int[x^m*Sin[a+b*x^n]^(p+2),x] +
  (m-n+1)*(m-2*n+1)/(b^2*n^2*(p+1)*(p+2))*Int[x^(m-2*n)*Sin[a+b*x^n]^(p+2),x] /;
FreeQ[{a,b},x] && LtQ[p,-1] && NeQ[p,-2] && IGtQ[n,0] && IGtQ[m,2*n-1]

Int[x_^m_.*Cos[a_.+b_.*x_^n_]^p_,x_Symbol] :=
  -x^(m-n+1)*Sin[a+b*x^n]*Cos[a+b*x^n]^(p+1)/(b*n*(p+1)) -
  (m-n+1)*x^(m-2*n+1)*Cos[a+b*x^n]^(p+2)/(b^2*n^2*(p+1)*(p+2)) +
  (p+2)/(p+1)*Int[x^m*Cos[a+b*x^n]^(p+2),x] +
  (m-n+1)*(m-2*n+1)/(b^2*n^2*(p+1)*(p+2))*Int[x^(m-2*n)*Cos[a+b*x^n]^(p+2),x] /;
FreeQ[{a,b},x] && LtQ[p,-1] && NeQ[p,-2] && IGtQ[n,0] && IGtQ[m,2*n-1]

2.  ∫(((e x))^m) (((a+b Sin[c+d (x^n)]))^p)dx  when  p∈(SuperPlus[ℤ])∧ n∈(SuperMinus[ℤ])

1.  ∫(((e x))^m) (((a+b Sin[c+d (x^n)]))^p)dx  when  p∈(SuperPlus[ℤ])∧ n∈(SuperMinus[ℤ])∧ m∈ℚ

1:  ∫(x^m) (((a+b Sin[c+d (x^n)]))^p)dx  when  p∈(SuperPlus[ℤ])∧ n∈(SuperMinus[ℤ])∧ m∈ℤ

Derivation: Integration by substitution

Basis: If  n∈ℤ ∧ m∈ℤ, then (x^m) F[(x^n)]==-Subst[((F[(x^(-n))])/(x^(m+2))),x,(1/x)] (∂_x)(1/x)

Rule: If  p∈(SuperPlus[ℤ])∧ n∈(SuperMinus[ℤ])∧ m∈ℤ, then

∫(x^m) (((a+b Sin[c+d (x^n)]))^p)dx  ⟶  -Subst[∫((((a+b Sin[c+d (x^(-n))]))^p)/(x^(m+2)))dx,x,(1/x)]

Program code:

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

Int[x_^m_.*(a_.+b_.*Cos[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  -Subst[Int[(a+b*Cos[c+d*x^(-n)])^p/x^(m+2),x],x,1/x] /;
FreeQ[{a,b,c,d},x] && IGtQ[p,0] && ILtQ[n,0] && IntegerQ[m] && EqQ[n,-2]

2:  ∫(((e x))^m) (((a+b Sin[c+d (x^n)]))^p)dx  when  p∈(SuperPlus[ℤ])∧ n∈(SuperMinus[ℤ])∧ m∈𝔽

Derivation: Integration by substitution

Basis: If  n∈ℤ ∧ k>1, then (((e x))^m) F[(x^n)]==-(k/e)Subst[ ((F[(e^(-n)) (x^(-k n))])/(x^(k (m+1)+1))),x,(1/(((e x))^(1/k)))] (∂_x)(1/(((e x))^(1/k)))

Rule: If  p∈(SuperPlus[ℤ])∧ n∈(SuperMinus[ℤ])∧ m∈𝔽, let k=Denominator[m], then

∫(((e x))^m) (((a+b Sin[c+d (x^n)]))^p)dx  ⟶  -(k/e) Subst[∫((((a+b Sin[c+d (e^(-n)) (x^(-k n))]))^p)/(x^(k (m+1)+1)))dx,x,(1/(((e x))^(1/k)))]

Program code:

Int[(e_.*x_)^m_*(a_.+b_.*Sin[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  With[{k=Denominator[m]},
  -k/e*Subst[Int[(a+b*Sin[c+d/(e^n*x^(k*n))])^p/x^(k*(m+1)+1),x],x,1/(e*x)^(1/k)]] /;
FreeQ[{a,b,c,d,e},x] && IGtQ[p,0] && ILtQ[n,0] && FractionQ[m]

Int[(e_.*x_)^m_*(a_.+b_.*Cos[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  With[{k=Denominator[m]},
  -k/e*Subst[Int[(a+b*Cos[c+d/(e^n*x^(k*n))])^p/x^(k*(m+1)+1),x],x,1/(e*x)^(1/k)]] /;
FreeQ[{a,b,c,d,e},x] && IGtQ[p,0] && ILtQ[n,0] && FractionQ[m]

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

Derivation:  Piecewise constant extraction and integration by substitution

Basis: (∂_x)((((e x))^m) ((((x^(-1))))^m))==0

Basis: F[x]==-Subst[((F[(x^(-1))] )/(x^2)),x,(1/x)](∂_x)(1/x)

Rule: If  p∈(SuperPlus[ℤ])∧ n∈(SuperMinus[ℤ])∧ m∉ℚ, then

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

Program code:

Int[(e_.*x_)^m_*(a_.+b_.*Sin[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  -(e*x)^m*(x^(-1))^m*Subst[Int[(a+b*Sin[c+d*x^(-n)])^p/x^(m+2),x],x,1/x] /;
FreeQ[{a,b,c,d,e,m},x] && IGtQ[p,0] && ILtQ[n,0] && Not[RationalQ[m]]

Int[(e_.*x_)^m_*(a_.+b_.*Cos[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  -(e*x)^m*(x^(-1))^m*Subst[Int[(a+b*Cos[c+d*x^(-n)])^p/x^(m+2),x],x,1/x] /;
FreeQ[{a,b,c,d,e,m},x] && IGtQ[p,0] && ILtQ[n,0] && Not[RationalQ[m]]

3.  ∫(((e x))^m) (((a+b Sin[c+d (x^n)]))^p)dx  when p∈ℤ ∧ n∈𝔽

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

Derivation: Integration by substitution

Basis: If  k∈(SuperPlus[ℤ]), then (x^m)F[(x^n)]==k Subst[(x^(k(m+1)-1))F[(x^(k n))],x,(x^(1/k))] (∂_x)(x^(1/k))

Rule: If  p∈ℤ ∧ n∈𝔽, let k=Denominator[n], then

∫(x^m) (((a+b Sin[c+d (x^n)]))^p)dx  ⟶  k Subst[∫(x^(k(m+1)-1))(((a+b Sin[c+d (x^(k n))]))^p)dx,x,(x^(1/k))]

Program code:

Int[x_^m_.*(a_.+b_.*Sin[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  Module[{k=Denominator[n]},
  k*Subst[Int[x^(k*(m+1)-1)*(a+b*Sin[c+d*x^(k*n)])^p,x],x,x^(1/k)]] /;
FreeQ[{a,b,c,d,m},x] && IntegerQ[p] && FractionQ[n]

Int[x_^m_.*(a_.+b_.*Cos[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  Module[{k=Denominator[n]},
  k*Subst[Int[x^(k*(m+1)-1)*(a+b*Cos[c+d*x^(k*n)])^p,x],x,x^(1/k)]] /;
FreeQ[{a,b,c,d,m},x] && IntegerQ[p] && FractionQ[n]

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

Derivation: Piecewise constant extraction

Basis: (∂_x)((((e x))^m)/(x^m))==0

Rule: If  p∈ℤ ∧ n∈𝔽, then

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

Program code:

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

Int[(e_*x_)^m_*(a_.+b_.*Cos[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  e^IntPart[m]*(e*x)^FracPart[m]/x^FracPart[m]*Int[x^m*(a+b*Cos[c+d*x^n])^p,x] /;
FreeQ[{a,b,c,d,e,m},x] && IntegerQ[p] && FractionQ[n]

4.  ∫(((e x))^m) (((a+b Sin[c+d (x^n)]))^p)dx  when p∈ℤ ∧ m≠-1 ∧ (n/(m+1))∈(SuperPlus[ℤ])

1:  ∫(x^m) (((a+b Sin[c+d (x^n)]))^p)dx  when  p∈ℤ ∧ m≠-1 ∧ (n/(m+1))∈(SuperPlus[ℤ])

Derivation: Integration by substitution

Basis: If (n/(m+1))∈ℤ, then (x^m)F[(x^n)]==(1/(m+1))Subst[F[(x^(n/(m+1)))],x,(x^(m+1))](∂_x)(x^(m+1))

Rule: If  p∈ℤ ∧ m≠-1 ∧ (n/(m+1))∈(SuperPlus[ℤ]), then

∫(x^m) (((a+b Sin[c+d (x^n)]))^p)dx  ⟶  (1/(m+1))Subst[∫(((a+b Sin[c+d (x^(n/(m+1)))]))^p)dx,x,(x^(m+1))]

Program code:

Int[x_^m_.*(a_.+b_.*Sin[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  1/(m+1)*Subst[Int[(a+b*Sin[c+d*x^Simplify[n/(m+1)]])^p,x],x,x^(m+1)] /;
FreeQ[{a,b,c,d,m,n},x] && IntegerQ[p] && NeQ[m,-1] && IGtQ[Simplify[n/(m+1)],0] && Not[IntegerQ[n]]

Int[x_^m_.*(a_.+b_.*Cos[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  1/(m+1)*Subst[Int[(a+b*Cos[c+d*x^Simplify[n/(m+1)]])^p,x],x,x^(m+1)] /;
FreeQ[{a,b,c,d,m,n},x] && IntegerQ[p] && NeQ[m,-1] && IGtQ[Simplify[n/(m+1)],0] && Not[IntegerQ[n]]

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

Derivation: Piecewise constant extraction

Basis: (∂_x)((((e x))^m)/(x^m))==0

Rule: If  p∈ℤ ∧ m≠-1 ∧ (n/(m+1))∈(SuperPlus[ℤ]), then

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

Program code:

Int[(e_*x_)^m_*(a_.+b_.*Sin[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  e^IntPart[m]*(e*x)^FracPart[m]/x^FracPart[m]*Int[x^m*(a+b*Sin[c+d*x^n])^p,x] /;
FreeQ[{a,b,c,d,e,m,n},x] && IntegerQ[p] && NeQ[m,-1] && IGtQ[Simplify[n/(m+1)],0] && Not[IntegerQ[n]]

Int[(e_*x_)^m_*(a_.+b_.*Cos[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  e^IntPart[m]*(e*x)^FracPart[m]/x^FracPart[m]*Int[x^m*(a+b*Cos[c+d*x^n])^p,x] /;
FreeQ[{a,b,c,d,e,m,n},x] && IntegerQ[p] && NeQ[m,-1] && IGtQ[Simplify[n/(m+1)],0] && Not[IntegerQ[n]]

5.  ∫(((e x))^m) (((a+b Sin[c+d (x^n)]))^p)dx  when p∈(SuperPlus[ℤ])

1:  ∫(((e x))^m) Sin[c+d (x^n)]dx

Derivation: Algebraic expansion

Basis: Sin[z]==(1/2) i (e^(-i z))-(1/2) i (e^(i z))

Basis: Cos[z]==(1/2)(e^(-i z))+(1/2)(e^(i z))

Rule:

∫(((e x))^m) Sin[c+d (x^n)]dx  ⟶  (i/2)∫(((e x))^m) (e^(-c i-d i (x^n)))dx-(i/2)∫(((e x))^m) (e^(c i+d i (x^n)))dx

Program code:

Int[(e_.*x_)^m_.*Sin[c_.+d_.*x_^n_],x_Symbol] :=
  I/2*Int[(e*x)^m*E^(-c*I-d*I*x^n),x] - I/2*Int[(e*x)^m*E^(c*I+d*I*x^n),x] /;
FreeQ[{c,d,e,m,n},x]

Int[(e_.*x_)^m_.*Cos[c_.+d_.*x_^n_],x_Symbol] :=
  1/2*Int[(e*x)^m*E^(-c*I-d*I*x^n),x] + 1/2*Int[(e*x)^m*E^(c*I+d*I*x^n),x] /;
FreeQ[{c,d,e,m,n},x]

2:  ∫(((e x))^m) (((a+b Sin[c+d (x^n)]))^p)dx  when p∈(SuperPlus[ℤ])

Derivation: Algebraic expansion

Rule: If  p∈(SuperPlus[ℤ]), then

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

Program code:

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

Int[(e_.*x_)^m_.*(a_.+b_.*Cos[c_.+d_.*x_^n_])^p_,x_Symbol] :=
  Int[ExpandTrigReduce[(e*x)^m,(a+b*Cos[c+d*x^n])^p,x],x] /;
FreeQ[{a,b,c,d,e,m,n},x] && IGtQ[p,0]

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

Rule:

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

Program code:

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

Int[(e_.*x_)^m_.*(a_.+b_.*Cos[c_.+d_.*x_^n_])^p_.,x_Symbol] :=
  Unintegrable[(e*x)^m*(a+b*Cos[c+d*x^n])^p,x] /;
FreeQ[{a,b,c,d,e,m,n,p},x]

N:  ∫(((e x))^m) (((a+b Sin[u]))^p)dx  when  u==c+d (x^n)

Derivation: Algebraic normalization

Rule: If  u==c+d (x^n), then

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

Program code:

Int[(e_*x_)^m_.*(a_.+b_.*Sin[u_])^p_.,x_Symbol] :=
  Int[(e*x)^m*(a+b*Sin[ExpandToSum[u,x]])^p,x] /;
FreeQ[{a,b,e,m,p},x] && BinomialQ[u,x] && Not[BinomialMatchQ[u,x]]

Int[(e_*x_)^m_.*(a_.+b_.*Cos[u_])^p_.,x_Symbol] :=
  Int[(e*x)^m*(a+b*Cos[ExpandToSum[u,x]])^p,x] /;
FreeQ[{a,b,e,m,p},x] && BinomialQ[u,x] && Not[BinomialMatchQ[u,x]]

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

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

Derivation: Integration by substitution

Basis: If -1≤n≤1, then (((g+h x))^m) F[(((e+f x))^n)]==(1/(n f)) Subst[(x^(1/n-1)) (((g-((e h)/f)+((h (x^(1/n)))/f)))^m) F[x],x,(((e+f x))^n)] (∂_x)(((e+f x))^n)

Rule: If  p∈(SuperPlus[ℤ])∧ (1/n)∈ℤ, then

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

Program code:

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

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

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

Derivation: Integration by substitution

Basis: If  m∈ℤ ∧ (1/n)∈ℤ, then (((g+h x))^m) F[(((e+f x))^n)]==(1/(n (f^(m+1)))) Subst[(x^(1/n-1)) (((f g-e h+h (x^(1/n))))^m) F[x],x,(((e+f x))^n)] (∂_x)(((e+f x))^n)

Rule: If  p∈(SuperPlus[ℤ])∧ m∈ℤ ∧ (1/n)∈ℤ, then

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

Program code:

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

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

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

Derivation: Integration by substitution

Basis: If  m∈ℤ ∧ k∈(SuperPlus[ℤ]), then (((g+h x))^m) F[(((e+f x))^n)]==(k/(f^(m+1))) Subst[(x^(k-1)) (((f g-e h+h (x^k)))^m) F[(x^(k n))],x,(((e+f x))^(1/k))] (∂_x)(((e+f x))^(1/k))

Rule: If  p∈(SuperPlus[ℤ])∧ m∈(SuperPlus[ℤ]), let k=Denominator[n], then

∫(((g+h x))^m) (((a+b Sin[c+d (((e+f x))^n)]))^p)dx  ⟶  
(k/(f^(m+1))) Subst[∫(((a+b Sin[c+d (x^(k n))]))^p) ExpandIntegrand[(x^(k-1)) (((f g-e h+h (x^k)))^m) ,x]dx,x,(((e+f x))^(1/k))]

Program code:

Int[(g_.+h_.*x_)^m_.*(a_.+b_.*Sin[c_.+d_.*(e_.+f_.*x_)^n_])^p_.,x_Symbol] :=
  Module[{k=If[FractionQ[n],Denominator[n],1]},
  k/f^(m+1)*Subst[Int[ExpandIntegrand[(a+b*Sin[c+d*x^(k*n)])^p,x^(k-1)*(f*g-e*h+h*x^k)^m,x],x],x,(e+f*x)^(1/k)]] /;
FreeQ[{a,b,c,d,e,f,g,h},x] && IGtQ[p,0] && IGtQ[m,0]

Int[(g_.+h_.*x_)^m_.*(a_.+b_.*Cos[c_.+d_.*(e_.+f_.*x_)^n_])^p_.,x_Symbol] :=
  Module[{k=If[FractionQ[n],Denominator[n],1]},
  k/f^(m+1)*Subst[Int[ExpandIntegrand[(a+b*Cos[c+d*x^(k*n)])^p,x^(k-1)*(f*g-e*h+h*x^k)^m,x],x],x,(e+f*x)^(1/k)]] /;
FreeQ[{a,b,c,d,e,f,g,h},x] && IGtQ[p,0] && IGtQ[m,0]

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

Derivation: Integration by substitution

Basis: If  f g-e h==0, then (((g+h x))^m) F[e+f x]==(1/f) Subst[(((((h x)/f)))^m) F[x],x,e+f x] (∂_x)(e+f x)

Note: If  p∈(SuperPlus[ℤ]), then (((((h x)/f)))^m) (((a+b Sin[c+d (x^n)]))^p) is integrable wrt x.

Rule: If  p∈(SuperPlus[ℤ])∧ f g-e h==0, then

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

Program code:

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

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

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

Rule:

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

Program code:

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

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

N:  ∫(v^m) (((a+b Sin[c+d (u^n)]))^p)dx  when  u==e+f x ∧ v==g+h x

Derivation: Algebraic normalization

Rule: If  u==e+f x ∧ v==g+h x, then

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

Program code:

Int[v_^m_.*(a_.+b_.*Sin[c_.+d_.*u_^n_])^p_.,x_Symbol] :=
  Int[ExpandToSum[v,x]^m*(a+b*Sin[c+d*ExpandToSum[u,x]^n])^p,x] /;
FreeQ[{a,b,c,d,m,n,p},x] && LinearQ[u,x] && LinearQ[v,x] && Not[LinearMatchQ[u,x] && LinearMatchQ[v,x]]

Int[v_^m_.*(a_.+b_.*Cos[c_.+d_.*u_^n_])^p_.,x_Symbol] :=
  Int[ExpandToSum[v,x]^m*(a+b*Cos[c+d*ExpandToSum[u,x]^n])^p,x] /;
FreeQ[{a,b,c,d,m,n,p},x] && LinearQ[u,x] && LinearQ[v,x] && Not[LinearMatchQ[u,x] && LinearMatchQ[v,x]]

Rules for integrands of the form(x^m) ((Sin[a+b (x^n)])^p) Cos[a+b (x^n)]

1.  ∫(x^m) ((Sin[a+b (x^n)])^p) Cos[a+b (x^n)]dx  when  p≠-1

1:  ∫(x^(n-1)) ((Sin[a+b (x^n)])^p) Cos[a+b (x^n)]dx  when  p≠-1

Derivation: Power rule for integration

Rule: If  p≠-1, then

∫(x^(n-1)) ((Sin[a+b (x^n)])^p) Cos[a+b (x^n)]dx  ⟶  (((Sin[a+b (x^n)])^(p+1))/(b n (p+1)))

Program code:

Int[x_^m_.*Sin[a_.+b_.*x_^n_.]^p_.*Cos[a_.+b_.*x_^n_.],x_Symbol] :=
  Sin[a+b*x^n]^(p+1)/(b*n*(p+1)) /;
FreeQ[{a,b,m,n,p},x] && EqQ[m,n-1] && NeQ[p,-1]

Int[x_^m_.*Cos[a_.+b_.*x_^n_.]^p_.*Sin[a_.+b_.*x_^n_.],x_Symbol] :=
  -Cos[a+b*x^n]^(p+1)/(b*n*(p+1)) /;
FreeQ[{a,b,m,n,p},x] && EqQ[m,n-1] && NeQ[p,-1]

2:  ∫(x^m) ((Sin[a+b (x^n)])^p) Cos[a+b (x^n)]dx  when  0<n<m+1 ∧ p≠-1

Reference: G&R 2.645.6

Reference: G&R 2.645.3

Derivation: Integration by parts

Basis: (x^m)((Sin[a+b (x^n)])^p) Cos[a+b (x^n)]==(x^(m-n+1))(∂_x)(((Sin[a+b (x^n)])^(p+1))/(b n (p+1)))

Rule: If  0<n<m+1 ∧ p≠-1, then

∫(x^m) ((Sin[a+b (x^n)])^p) Cos[a+b (x^n)]dx  ⟶  (((x^(m-n+1)) ((Sin[a+b (x^n)])^(p+1)))/(b n (p+1)))-((m-n+1)/(b n (p+1)))∫(x^(m-n)) ((Sin[a+b (x^n)])^(p+1))dx

Program code:

Int[x_^m_.*Sin[a_.+b_.*x_^n_.]^p_.*Cos[a_.+b_.*x_^n_.],x_Symbol] :=
  x^(m-n+1)*Sin[a+b*x^n]^(p+1)/(b*n*(p+1)) -
  (m-n+1)/(b*n*(p+1))*Int[x^(m-n)*Sin[a+b*x^n]^(p+1),x] /;
FreeQ[{a,b,p},x] && LtQ[0,n,m+1] && NeQ[p,-1]

Int[x_^m_.*Cos[a_.+b_.*x_^n_.]^p_.*Sin[a_.+b_.*x_^n_.],x_Symbol] :=
  -x^(m-n+1)*Cos[a+b*x^n]^(p+1)/(b*n*(p+1)) +
  (m-n+1)/(b*n*(p+1))*Int[x^(m-n)*Cos[a+b*x^n]^(p+1),x] /;
FreeQ[{a,b,p},x] && LtQ[0,n,m+1] && NeQ[p,-1]