File: rtest_limit_wester.mac

package info (click to toggle)
maxima 5.49.0-1~exp1
  • links: PTS, VCS
  • area: main
  • in suites:
  • size: 128,980 kB
  • sloc: lisp: 437,854; fortran: 14,665; tcl: 10,143; sh: 4,598; makefile: 2,204; ansic: 447; java: 374; python: 262; perl: 201; xml: 60; awk: 28; sed: 15; javascript: 2
file content (95 lines) | stat: -rw-r--r-- 2,501 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
/* Original version of this file copyright 1999 by Michael Wester,
 * and retrieved from http://www.math.unm.edu/~wester/demos/Limits/problems.macsyma
 * circa 2006-10-23.
 *
 * Released under the terms of the GNU General Public License, version 2,
 * per message dated 2007-06-03 from Michael Wester to Robert Dodier
 * (contained in the file wester-gpl-permission-message.txt).
 *
 * See: "A Critique of the Mathematical Abilities of CA Systems"
 * by Michael Wester, pp 25--60 in
 * "Computer Algebra Systems: A Practical Guide", edited by Michael J. Wester
 * and published by John Wiley and Sons, Chichester, United Kingdom, 1999.
 */
/* Start with a famous example => e */
limit((1 + 1/n)^n, n, inf);
%e$

/* => 1/2 */
limit((1 - cos(x))/x^2, x, 0);
1/2$

/* See Dominik Gruntz, _On Computing Limits in a Symbolic Manipulation System_,
   Ph.D. dissertation, Swiss Federal Institute of Technology, Zurich,
   Switzerland, 1996. => 5 */
limit((3^x + 5^x)^(1/x), x, inf);
5$

/* => 1 */
limit(log(x)/(log(x) + sin(x)), x, inf);
1$

/* => - e^2   [Gruntz] */
limit((exp(x*exp(-x)/(exp(-x) + exp(-2*x^2/(x + 1)))) - exp(x))/x, x, inf);
-%e^2$

/* => 1/3   [Gruntz] */
limit(x*log(x)*log(x*exp(x) - x^2)^2/log(log(x^2 + 2*exp(exp(3*x^3*log(x))))),x, inf);
1/3$

/* => 1/e   [Knopp, p. 73] */
limit(1/n * n!^(1/n), n, inf);
1/%e$

/* Rewrite the above problem slightly => 1/e */
limit(1/n * gamma(n + 1)^(1/n), n, inf);
1/%e$

/* => 1   [Gradshteyn and Ryzhik 8.328(2)] */
block([ans],
  assume(a > 0),
  ans : limit(gamma(z + a)/gamma(z)*exp(-a*log(z)), z, inf),  
  forget(a > 0),
  ans);
1$

block([ans],
  assume(a < 0),
  ans : limit(gamma(z + a)/gamma(z)*exp(-a*log(z)), z, inf),  
  forget(a < 0),
  ans);
1$

/* => e^z   [Gradshteyn and Ryzhik 9.121(8)] */
limit(hgfred([1, k], [1], z/k), k, inf);
exp(z)$

/* => Euler's_constant   [Gradshteyn and Ryzhik 9.536] */
limit(zeta(x) - 1/(x - 1), x, 1);
%gamma$

/* => gamma(x)   [Knopp, p. 385] */
block([ans],
  assume(x > 0),
  ans : limit(n^x/(x * product((1 + x/k), k, 1, n)), n, inf),
  forget(x > 0),
  ans);
%gamma$


/* See Angus E. Taylor and W. Robert Mann, _Advanced Calculus_, Second Edition,
   Xerox College Publishing, 1972, p. 125 => 1 */
block([ans],
  assume(x > 0),
  ans : limit(x * integrate(exp(-t^2), t, 0, x)/(1 - exp(-x^2)), x, 0),
  forget(x > 0),
  ans);
1$

/* => [-1, 1] */
[limit(x/abs(x), x, 0, minus), limit(x/abs(x), x, 0, plus)];
[-1,1]$

/* => pi/2   [Richard Q. Chen] */
limit(atan(-log(x)), x, 0, plus);
%pi/2$