Skip to content

Commit f7fa0fd

Browse files
sambsamb
samb
authored and
samb
committed
Rubi -- Albert's posthumous release from files on his computer.
1 parent a57f10f commit f7fa0fd

File tree

228 files changed

+66189
-16713
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

228 files changed

+66189
-16713
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,265 @@
1-
2-
(* ::Subsection::Closed:: *)
3-
(* 1.1.1.1 (a+b x)^m *)
4-
Int[1/x_, x_Symbol] := Log[x]
5-
Int[x_^m_., x_Symbol] := x^(m + 1)/(m + 1) /; FreeQ[m, x] && NeQ[m, -1]
6-
Int[1/(a_ + b_.*x_), x_Symbol] := Log[RemoveContent[a + b*x, x]]/b /; FreeQ[{a, b}, x]
7-
Int[(a_. + b_.*x_)^m_, x_Symbol] := (a + b*x)^(m + 1)/(b*(m + 1)) /; FreeQ[{a, b, m}, x] && NeQ[m, -1]
8-
Int[(a_. + b_.*u_)^m_, x_Symbol] := 1/Coefficient[u, x, 1]*Subst[Int[(a + b*x)^m, x], x, u] /; FreeQ[{a, b, m}, x] && LinearQ[u, x] && NeQ[u, x]
1+
(* ::Package:: *)
2+
3+
(************************************************************************)
4+
(* This file was generated automatically by the Mathematica front end. *)
5+
(* It contains Initialization cells from a Notebook file, which *)
6+
(* typically will have the same name as this file except ending in *)
7+
(* ".nb" instead of ".m". *)
8+
(* *)
9+
(* This file is intended to be loaded into the Mathematica kernel using *)
10+
(* the package loading commands Get or Needs. Doing so is equivalent *)
11+
(* to using the Evaluate Initialization Cells menu command in the front *)
12+
(* end. *)
13+
(* *)
14+
(* DO NOT EDIT THIS FILE. This entire file is regenerated *)
15+
(* automatically each time the parent Notebook file is saved in the *)
16+
(* Mathematica front end. Any changes you make to this file will be *)
17+
(* overwritten. *)
18+
(************************************************************************)
19+
20+
21+
22+
(* ::Code:: *)
23+
(* Int[u_.*(v_+w_)^p_.,x_Symbol] :=
24+
Int[u*w^p,x] /;
25+
FreeQ[p,x] && EqQ[v,0] *)
26+
27+
28+
(* ::Code:: *)
29+
Int[u_.*(a_+b_.*x_^n_.)^p_.,x_Symbol] :=
30+
Int[u*(b*x^n)^p,x] /;
31+
FreeQ[{a,b,n,p},x] && EqQ[a,0]
32+
33+
34+
(* ::Code:: *)
35+
Int[u_.*(a_.+b_.*x_^n_.)^p_.,x_Symbol] :=
36+
Int[u*a^p,x] /;
37+
FreeQ[{a,b,n,p},x] && EqQ[b,0]
38+
39+
40+
(* ::Code:: *)
41+
Int[u_.*(a_+b_.*x_^n_.+c_.*x_^j_.)^p_.,x_Symbol] :=
42+
Int[u*(b*x^n+c*x^(2*n))^p,x] /;
43+
FreeQ[{a,b,c,n,p},x] && EqQ[j,2*n] && EqQ[a,0]
44+
45+
46+
(* ::Code:: *)
47+
Int[u_.*(a_.+b_.*x_^n_.+c_.*x_^j_.)^p_.,x_Symbol] :=
48+
Int[u*(a+c*x^(2*n))^p,x] /;
49+
FreeQ[{a,b,c,n,p},x] && EqQ[j,2*n] && EqQ[b,0]
50+
51+
52+
(* ::Code:: *)
53+
Int[u_.*(a_.+b_.*x_^n_.+c_.*x_^j_.)^p_.,x_Symbol] :=
54+
Int[u*(a+b*x^n)^p,x] /;
55+
FreeQ[{a,b,c,n,p},x] && EqQ[j,2*n] && EqQ[c,0]
56+
57+
58+
(* ::Code:: *)
59+
Int[u_.*(v_.+a_.*Fx_+b_.*Fx_)^p_.,x_Symbol] :=
60+
Int[u*(v+(a+b)*Fx)^p,x] /;
61+
FreeQ[{a,b},x] && Not[FreeQ[Fx,x]]
62+
63+
64+
(* ::Code:: *)
65+
Int[u_.*Px_^p_,x_Symbol] :=
66+
Int[u*Px^Simplify[p],x] /;
67+
PolyQ[Px,x] && Not[RationalQ[p]] && FreeQ[p,x] && RationalQ[Simplify[p]]
68+
69+
70+
(* ::Code:: *)
71+
Int[u_.*x_^m_.*(a_.*x_)^p_,x_Symbol] :=
72+
1/a^m \[Star] Int[u*(a*x)^(m+p),x] /;
73+
FreeQ[{a,m,p},x] && IntegerQ[m]
74+
75+
76+
(* ::Code:: *)
77+
Int[u_.*(e_.*x_)^m_.*Px_^p_.,x_Symbol] :=
78+
With[{r=Expon[Px,x,Min]},
79+
1/e^(p*r) \[Star] Int[u*(e*x)^(m+p*r)*ExpandToSum[Px/x^r,x]^p,x] /;
80+
IGtQ[r,0]] /;
81+
FreeQ[{e,m},x] && PolyQ[Px,x] && IntegerQ[p] && Not[MonomialQ[Px,x]]
82+
83+
84+
(* ::Code:: *)
85+
Int[u_.*(e_.*x_)^m_.*(a_.*x_^r_.+b_.*x_^s_.)^p_.,x_Symbol] :=
86+
1/e^(p*r) \[Star] Int[u*(e*x)^(m+p*r)*(a+b*x^(s-r))^p,x] /;
87+
FreeQ[{a,b,e,m,r,s},x] && IntegerQ[p] && (IntegerQ[p*r] || GtQ[e,0]) && PosQ[s-r]
88+
89+
90+
(* ::Code:: *)
91+
Int[u_.*(e_.*x_)^m_.*(a_.*x_^r_.+b_.*x_^s_.+c_.*x_^t_.)^p_.,x_Symbol] :=
92+
1/e^(p*r) \[Star] Int[u*(e*x)^(m+p*r)*(a+b*x^(s-r)+c*x^(t-r))^p,x] /;
93+
FreeQ[{a,b,c,e,m,r,s,t},x] && IntegerQ[p] && (IntegerQ[p*r] || GtQ[e,0]) && PosQ[s-r] && PosQ[t-r]
94+
95+
96+
(* ::Code:: *)
97+
Int[u_.*(e_.*x_)^m_.*(a_.*x_^r_.+b_.*x_^s_.+c_.*x_^t_.+d_.*x_^q_.)^p_.,x_Symbol] :=
98+
1/e^(p*r) \[Star] Int[u*(e*x)^(m+p*r)*(a+b*x^(s-r)+c*x^(t-r)+d*x^(q-r))^p,x] /;
99+
FreeQ[{a,b,c,d,e,m,r,s,t,q},x] && IntegerQ[p] && (IntegerQ[p*r] || GtQ[e,0]) && PosQ[s-r] && PosQ[t-r] && PosQ[q-r]
100+
101+
102+
(* ::Code:: *)
103+
Int[u_.*(v_.*(a_+b_.*x_^n_.)^mm_.*(c_+d_.*x_^n2_.)^m_.)^p_,x_Symbol] :=
104+
Int[u*(v*c^m/a^(2*m)*(a-b*x^n)^m)^p,x] /;
105+
FreeQ[{a,b,c,d,n,p},x] && EqQ[n2,2*n] && EqQ[b^2*c+a^2*d,0] && IntegersQ[m,mm] && EqQ[m+mm,0]
106+
107+
108+
(* ::Code:: *)
109+
Int[a_./x_,x_Symbol] :=
110+
a*Log[x] /;
111+
FreeQ[a,x]
112+
113+
114+
(* ::Code:: *)
115+
Int[a_.*x_^m_.,x_Symbol] :=
116+
a*x^(m+1)/(m+1) /;
117+
FreeQ[{a,m},x] && NeQ[m,-1]
118+
119+
120+
(* ::Code:: *)
121+
(* Int[1/(a_+b_.*x_),x_Symbol] :=
122+
With[{g=GCD[a,b]}, 1/g \[Star] Int[1/(a/g+b/g*x),x] /;
123+
NeQ[g,1]] /;
124+
RationalQ[a,b] *)
125+
126+
127+
(* ::Code:: *)
128+
(* Int[1/(a1_.*a2_.+b1_.*b2_.*x_),x_Symbol] :=
129+
With[{g=GCD[a1,b1]}, 1/g \[Star] Int[1/(a1*a2/g+b1*b2/g*x),x] /;
130+
NeQ[g,1]] /;
131+
RationalQ[a1,b1] && FreeQ[{a2,b2},x] *)
132+
133+
134+
(* ::Code:: *)
135+
(* Int[1/(a_.*c_^m_.+b_.*c_^n_.*x_),x_Symbol] :=
136+
1/c^n \[Star] Int[1/(a*c^(m-n)+b*x),x] /;
137+
FreeQ[{a,b,c},x] && IntegersQ[m,n] && GeQ[m-n,0] *)
138+
139+
140+
(* ::Code:: *)
141+
(* Int[1/(a_.*c_^m_.+b_.*c_^n_.*x_),x_Symbol] :=
142+
1/c^m \[Star] Int[1/(a+b*c^(n-m)*x),x] /;
143+
FreeQ[{a,b,c},x] && IntegersQ[m,n] && GtQ[n-m,0] *)
144+
145+
146+
(* ::Code:: *)
147+
(* Int[1/(a_+b_.*x_),x_Symbol] :=
148+
Log[a+b*x]/b /;
149+
FreeQ[{a,b},x] *)
150+
151+
152+
(* ::Code:: *)
153+
Int[c_./(a_.+b_.*x_),x_Symbol] :=
154+
c*Log[RemoveContent[a+b*x,x]]/b /;
155+
FreeQ[{a,b,c},x]
156+
157+
158+
(* ::Code:: *)
159+
Int[c_.*(a_.+b_.*x_)^m_.,x_Symbol] :=
160+
c*(a+b*x)^(m+1)/(b*(m+1)) /;
161+
FreeQ[{a,b,c,m},x] && NeQ[m,-1]
162+
163+
164+
(* ::Code:: *)
165+
Int[c_.*(a_.+b_.*u_)^m_,x_Symbol] :=
166+
1/D[u,x] \[Star] Subst[Int[c*(a+b*x)^m,x],x,u] /;
167+
FreeQ[{a,b,c,m},x] && LinearQ[u,x] && NeQ[u,x]
168+
169+
170+
(* ::Code:: *)
171+
Int[(a_./x_)^p_,x_Symbol] :=
172+
-a*(a/x)^(p-1)/(p-1) /;
173+
FreeQ[{a,p},x] && Not[IntegerQ[p]]
174+
175+
176+
(* ::Code:: *)
177+
Int[(a_.*x_^n_)^p_,x_Symbol] :=
178+
(a*x^n)^p/x^(n*p) \[Star] Int[x^(n*p),x] /;
179+
FreeQ[{a,n,p},x] && Not[IntegerQ[p]]
180+
181+
182+
(* ::Code:: *)
183+
Int[x_^m_.*(a_.*x_^n_)^p_,x_Symbol] :=
184+
1/(n*a^(Simplify[(m+1)/n]-1)) \[Star] Subst[Int[(a*x)^(Simplify[(m+1)/n]+p-1),x],x,x^n] /;
185+
FreeQ[{a,m,n,p},x] && IntegerQ[Simplify[(m+1)/n]]
186+
187+
188+
(* ::Code:: *)
189+
Int[x_^m_.*(a_.*x_^n_.)^p_,x_Symbol] :=
190+
1/a^(m/n) \[Star] Int[(a*x^n)^(p+m/n),x] /;
191+
FreeQ[{a,m,n,p},x] && IntegerQ[m/n] && LtQ[p*m/n,0]
192+
193+
194+
(* ::Code:: *)
195+
Int[x_^m_.*(a_.*x_^n_.)^p_,x_Symbol] :=
196+
(a*x^n)^p/x^(n*p) \[Star] Int[x^(m+n*p),x] /;
197+
FreeQ[{a,m,n,p},x]
198+
199+
200+
(* ::Code:: *)
201+
Int[a_,x_Symbol] :=
202+
a*x /;
203+
FreeQ[a,x]
204+
205+
206+
(* ::Code:: *)
207+
Int[-Fx_,x_Symbol] :=
208+
Identity[-1] \[Star] Int[Fx,x]
209+
210+
211+
(* ::Code:: *)
212+
Int[Complex[0,a_]*Fx_,x_Symbol] :=
213+
Complex[Identity[0],a] \[Star] Int[Fx,x] /;
214+
FreeQ[a,x] && EqQ[a^2,1]
215+
216+
217+
(* ::Code:: *)
218+
Int[a_*Fx_,x_Symbol] :=
219+
a \[Star] Int[Fx,x] /;
220+
FreeQ[a,x] && Not[MatchQ[Fx, b_*Gx_ /; FreeQ[b,x]]]
221+
222+
223+
(* ::Code:: *)
224+
Int[u_.*(a_.*x_)^m_.*(b_.*x_^i_.)^p_.*(c_.*x_^j_.)^q_.*(d_.*x_^k_.)^r_.,x_Symbol] :=
225+
(b*x^i)^p*(c*x^j)^q*(d*x^k)^r/(a*x)^(i*p+j*q+k*r) \[Star] Int[u*(a*x)^(m+i*p+j*q+k*r),x] /;
226+
FreeQ[{a,b,c,d,i,j,k,m,p,q,r},x]
227+
228+
229+
(* ::Code:: *)
230+
Int[u_.*(a_.*x_)^m_.*(b_.*x_^i_.)^p_.*(c_.*x_^j_.)^q_.,x_Symbol] :=
231+
(b*x^i)^p*(c*x^j)^q/(a*x)^(i*p+j*q) \[Star] Int[u*(a*x)^(m+i*p+j*q),x] /;
232+
FreeQ[{a,b,c,i,j,m,p,q},x]
233+
234+
235+
(* ::Code:: *)
236+
Int[u_.*(a_.*x_)^m_.*(b_.*x_^i_.)^p_,x_Symbol] :=
237+
b^IntPart[p]*(b*x^i)^FracPart[p]/(a^(i*IntPart[p])*(a*x)^(i*FracPart[p])) \[Star] Int[u*(a*x)^(m+i*p),x] /;
238+
FreeQ[{a,b,i,m,p},x] && IntegerQ[i] && Not[IntegerQ[p]]
239+
240+
241+
(* ::Code:: *)
242+
Int[u_.*(a_.*x_)^m_.*(b_.*x_^i_.)^p_,x_Symbol] :=
243+
(b*x^i)^p/(a*x)^(i*p) \[Star] Int[u*(a*x)^(m+i*p),x] /;
244+
FreeQ[{a,b,i,m,p},x] && Not[IntegerQ[p]]
245+
246+
247+
(* ::Code:: *)
248+
Int[u_.*(a_.*x_^m_)^p_.*(b_.*x_^n_)^q_.*(c_.*x_^k_)^r_.,x_Symbol] :=
249+
(a*x^m)^p*(b*x^n)^q*(c*x^k)^r/x^(m*p+n*q+k*r) \[Star] Int[u*x^(m*p+n*q+k*r),x] /;
250+
FreeQ[{a,b,c,m,n,k,p,q,r},x]
251+
252+
253+
(* ::Code:: *)
254+
Int[u_.*(a_.*x_^m_)^p_.*(b_.*x_^n_)^q_.,x_Symbol] :=
255+
a^IntPart[p]*b^IntPart[q]*(a*x^m)^FracPart[p]*(b*x^n)^FracPart[q]/x^(m*FracPart[p]+n*FracPart[q]) \[Star] Int[u*x^(m*p+n*q),x] /;
256+
FreeQ[{a,b,m,n,p,q},x]
257+
258+
259+
(* ::Code:: *)
260+
Int[u_.*(a_.*x_^m_)^p_,x_Symbol] :=
261+
a^IntPart[p]*(a*x^m)^FracPart[p]/x^(m*FracPart[p]) \[Star] Int[u*x^(m*p),x] /;
262+
FreeQ[{a,m,p},x] && Not[IntegerQ[p]]
263+
264+
265+

0 commit comments

Comments
 (0)