1% Tests of limits package.
2
3limit(sin(x)/x,x,0);
4
5
61
7 % 1
8limit(sin(x)^2/x,x,0);
9
10
110
12 % 0
13limit(sin(x)/x,x,1);
14
15
16sin(1)
17 % sin(1)
18limit(1/x,x,0);
19
20
21infinity
22 % infinity
23limit(-1/x,x,0);
24
25
26 - infinity
27 % - infinity
28limit((sin(x)-x)/x^3,x,0);
29
30
31  - 1
32------
33  6
34 % -1/6
35limit(x*sin(1/x),x,infinity);
36
37
381
39 % 1
40limit(sin x/x^2,x,0);
41
42
43infinity
44 % infinity
45limit(x^2*sin(1/x),x,infinity);
46
47
48infinity
49 % infinity
50
51% Simple examples from Schaum's Theory & Problems of Advanced Calculus
52
53limit(x^2-6x+4,x,2);
54
55
56-4
57 % -4
58limit((x+3)*(2x-1)/(x^2+3x-2),x,-1);
59
60
61 3
62---
63 2
64 % 3/2
65limit((sqrt(4+h)-2)/h,h,0);
66
67
68 1
69---
70 4
71 % 1/4
72limit((sqrt(x)-2)/(4-x),x,4);
73
74
75  - 1
76------
77  4
78 % -1/4
79limit((x^2-4)/(x-2),x,2);
80
81
824
83 % 4
84limit(1/(2x-5),x,-1);
85
86
87  - 1
88------
89  7
90 % -1/7
91limit(sqrt(x)/(x+1),x,1);
92
93
94 1
95---
96 2
97 % 1/2
98limit((2x+5)/(3x-2),x,infinity);
99
100
101 2
102---
103 3
104 % 2/3
105limit((1/(x+3)-2/(3x+5))/(x-1),x,1);
106
107
108 1
109----
110 32
111 % 1/32
112limit(sin(3x)/x,x,0);
113
114
1153
116 % 3
117limit((1-cos(x))/x^2,x,0);
118
119
120 1
121---
122 2
123 % 1/2
124limit((6x-sin(2x))/(2x+3*sin(4x)),x,0);
125
126
127 2
128---
129 7
130 % 2/7
131limit((1-2*cos(x)+cos(2x))/x^2,x,0);
132
133
134-1
135 % -1
136limit((3*sin(pi*x) - sin(3*pi*x))/x^3,x,0);
137
138
139    3
1404*pi
141 % 4*pi^3
142limit((cos(a*x)-cos(b*x))/x^2,x,0);
143
144
145     2    2
146  - a  + b
147------------
148     2
149 % (-a^2 + b^2)/2
150limit((e^x-1)/x,x,0);
151
152
1531
154 % 1
155limit((a^x-b^x)/x,x,0);
156
157
158log(a) - log(b)
159 % log(a) - log(b)
160
161% Examples taken from Hyslop's Real Variable
162
163limit(sinh(2x)^2/log(1+x^2),x,0);
164
165
1664
167 % 4
168limit(x^2*(e^(1/x)-1)*(log(x+2)-log(x)),x,infinity);
169
170
1712
172 % 2
173limit(x^alpha*log(x+1)^2/log(x),x,infinity);
174
175
176                        2
177       alpha  log(x + 1)
178limit(x     *-------------,x,infinity)
179                log(x)
180
181  %% if repart alpha < 0 then 0 else infinity.
182  %% fails because answer depends in essential way on parameter.
183
184limit((2*cosh(x)-2-x^2)/log(1+x^2)^2,x,0);
185
186
187 1
188----
189 12
190 % 1/12
191limit((x*sinh(x)-2+2*cosh(x))/(x^4+2*x^2),x,0);
192
193
1941
195 % 1
196limit((2*sinh(x)-tanh(x))/(e^x-1),x,0);
197
198
1991
200 % 1
201limit(x*tanh(x)/(sqrt(1-x^2)-1),x,0);
202
203
204-2
205 % -2
206limit((2*log(1+x)+x^2-2*x)/x^3,x,0);
207
208
209 2
210---
211 3
212 % 2/3
213limit((e^(5*x)-2*x)^(1/x),x,0);
214
215
216 3
217e
218 % e^3
219limit(log(log(x))/log(x)^2,x,infinity);
220
221
2220
223 % 0
224
225% These are adapted from Lession 4 from Stoutmyer
226
227limit((e^x-1)/x, x, 0);
228
229
2301
231 % 1
232limit(((1-x)/log(x))**2, x, 1);
233
234
2351
236 % 1
237limit(x/(e**x-1), x, 0);
238
239
2401
241 % 1
242
243%% One sided limits
244limit!+(sin(x)/sqrt(x),x,0);
245
246
2470
248 % 0
249limit!-(sin(x)/sqrt(x),x,0);
250
251
2520
253 % 0
254
255
256limit(x/log x,x,0);
257
258
2590
260 % 0
261limit(log(1 + x)/log x,x,infinity);
262
263
2641
265 % 1
266limit(log x/sqrt x,x,infinity);
267
268
2690
270 % 0
271limit!+(sqrt x/sin x,x,0);
272
273
274infinity
275 % infinity
276limit(log x,x,0);
277
278
279 - infinity
280 % - infinity
281limit(x*log x,x,0);
282
283
2840
285 % 0
286limit(log x/log(2x),x,0);
287
288
2891
290 % 1
291limit(log x*log(1+x)*(1+x),x,0);
292
293
2940
295 % 0
296limit(log x/x,x,infinity);
297
298
2990
300 % 0
301limit(log x/sqrt x,x,infinity);
302
303
3040
305 % 0
306limit(log x,x,infinity);
307
308
309infinity
310 % infinity
311limit(log(x+1)/sin x,x,0);
312
313
3141
315 % 1
316limit(log(1+1/x)*sin x,x,0);
317
318
3190
320 % 0
321limit(-log(1+x)*(x+2)/sin x,x,0);
322
323
324-2
325 % -2
326limit(-log x*(3+x)/log(2x),x,0);
327
328
329-3
330 % -3
331limit(log(x+1)^2/sqrt x,x,infinity);
332
333
3340
335 % 0
336limit(log(x + 1) - log x,x,infinity);
337
338
3390
340 % 0
341limit(-(log x)^2/log log x,x,infinity);
342
343
344 - infinity
345 % - infinity
346limit(log(x-1)/sin x,x,0);
347
348
349sign(log(-1))*infinity
350 % infinity
351
352limit!-(sqrt x/sin x,x,0);
353
354
355 - sign(i)*infinity
356 % infinity
357limit(log x-log(2x),x,0);
358
359
360 - log(2)
361 % - log(2)
362limit(sqrt x-sqrt(x+1),x,infinity);
363
364
3650
366 % 0
367
368limit(sin sin x/x,x,0);
369
370
3711
372 % 1
373limit!-(sin x/cos x,x,pi/2);
374
375
376infinity
377 % infinity % this works!
378limit!+(sin x/cos x,x,pi/2);
379
380
381 - infinity
382 % - infinity % so does this!
383limit(sin x/cosh x,x,infinity);
384
385
3860
387 % 0
388limit(sin x/x,x,infinity);
389
390
3910
392 % 0
393limit(x*sin(1/x),x,0);
394
395
3960
397 % 0
398limit(exp x/((exp x + exp(-x))/2),x,infinity);
399
400
4012
402 % 2
403% limit(exp x/cosh x,x,infinity); % fails in this form, but if cosh is
404  %defined using let, then it works.
405limit((sin(x^2)/(x*sinh x)),x,0);
406
407
4081
409 % 1
410limit(log x*sin(x^2)/(x*sinh x),x,0);
411
412
413 - infinity
414 % - infinity
415limit(sin(x^2)/(x*sinh x*log x),x,0);
416
417
4180
419 % 0
420limit(log x/log(x^2),x,0);
421
422
423 1
424---
425 2
426 % 1/2
427limit(log(x^2)-log(x^2+8x),x,0);
428
429
430 - infinity
431 % - infinity
432limit(log(x^2)-log(x^2+8x),x,infinity);
433
434
4350
436 % 0
437limit(sqrt(x+5)-sqrt x,x,infinity);
438
439
4400
441 % 0
442limit(2^(log x),x,0);
443
444
4450
446 % 0
447
448% Additional examples
449limit((sin tan x-tan sin x)/(asin atan x-atan asin x),x,0);
450
451
4521
453 % 1
454
455% This one has the value infinity, but fails with de L'Hospital's rule:
456limit((e+1)^(x^2)/e^x,x,infinity);
457
458
459               2
460              x
461       (e + 1)
462limit(-----------,x,infinity)
463           x
464          e
465 % infinity  % fails
466
467comment
468The following examples were not in the previous set$
469
470
471% Simon test examples:
472limit(log(x-a)/((a-b)*(a-c)) + log(2(x-b))/((b-c)*(b-a))
473      + log(x-c)/((c-a)*(c-b)),x,infinity);
474
475
476       - log(2)
477----------------------
478              2
479 a*b - a*c - b  + b*c
480 % log(1/2)/((a-b)*(b-c))
481
482limit(1/(e^x-e^(x-1/x^2)),x,infinity);
483
484
485             1
486limit(----------------,x,infinity)
487                    2
488        x    x - 1/x
489       e  - e
490 % infinity  % fails
491
492% new capabilities: branch points at the origin, needed for definite
493% integration.
494
495limit(x+sqrt x,x,0);
496
497
4980
499 % 0
500limit!+(sqrt x/(x+1),x,0);
501
502
5030
504 % 0
505limit!+(x^(1/3)/(x+1),x,0);
506
507
5080
509 % 0
510limit(log(x)^2/x^(1/3),x,0);
511
512
513infinity
514 % infinity
515limit(log x/x^(1/3),x,0);
516
517
518 - infinity
519 % - infinity
520
521h := (X^(1/3) + 3*X**(1/4))/(7*(SQRT(X + 9) - 3)**(1/4));
522
523
524             1/4    1/3
525          3*x    + x
526h := ------------------------
527                         1/4
528      7*(sqrt(x + 9) - 3)
529
530limit(h,x,0);
531
532
533    1/4
534 3*6
535--------
536   7
537 % 3/7*6^(1/4)
538
539% Examples from Paul S. Wang's thesis:
540
541limit(x^log(1/x),x,infinity);
542
543
5440
545 % 0
546limit(cos x - 1/(e^x^2 - 1),x,0);
547
548
549 - infinity
550 % - infinity
551limit((1+a*x)^(1/x),x,infinity);
552
553
554               1/x
555limit((1 + a*x)   ,x,infinity)
556 % 1
557limit(x^2*sqrt(4*x^4+5)-2*x^4,x,infinity);
558
559
560 5
561---
562 4
563 % 5/4
564limit!+(1/x-1/sin x,x,0);
565
566
5670
568 % 0
569limit(e^(x*sqrt(x^2+1))-e^(x^2),x,infinity);
570
571
572               2          2
573       x*sqrt(x  + 1)    x
574limit(e               - e  ,x,infinity)
575 % 0 fails
576limit((e^x+x*log x)/(log(x^4+x+1)+e^sqrt(x^3+1)),x,infinity);
577
578
579                 x
580                e  + x*log(x)
581limit(---------------------------------,x,infinity)
582                                3
583            4             sqrt(x  + 1)
584       log(x  + x + 1) + e
585 %0 % fails
586limit!-(1/(x^3-6*x+11*x-6),x,2);
587
588
589 1
590----
591 12
592 % 1/12
593limit((x*sqrt(x+5))/(sqrt(4*x^3+1)+x),x,infinity);
594
595
596 1
597---
598 2
599 % 1/2
600limit!-(tan x/log cos x,x,pi/2);
601
602
603 - infinity
604 % - infinity
605
606z0 := z*(z-2*pi*i)*(z-pi*i/2)/(sinh z - i);
607
608
609                            2      2
610       z*( - 5*i*pi*z - 2*pi  + 2*z )
611z0 := --------------------------------
612              2*(sinh(z) - i)
613
614limit(df(z0,z),z,pi*i/2);
615
616
617sign(i)*infinity
618 % infinity
619z1 := z0*(z-pi*i/2);
620
621
622                3            2       2        3
623       z*(2*i*pi  - 12*i*pi*z  - 9*pi *z + 4*z )
624z1 := -------------------------------------------
625                    4*(sinh(z) - i)
626
627limit(df(z1,z),z,pi*i/2);
628
629
630 - 2*pi
631 % -2*pi
632
633% and the analogous problem:
634z2 := z*(z-2*pi)*(z-pi/2)/(sin z - 1);
635
636
637              2               2
638       z*(2*pi  - 5*pi*z + 2*z )
639z2 := ---------------------------
640            2*(sin(z) - 1)
641
642limit(df(z2,z),z,pi/2);
643
644
645 - infinity
646 % infinity
647z3 := z2*(z-pi/2);
648
649
650                 3       2            2      3
651       z*( - 2*pi  + 9*pi *z - 12*pi*z  + 4*z )
652z3 := ------------------------------------------
653                    4*(sin(z) - 1)
654
655limit(df(z3,z),z,pi/2);
656
657
6582*pi
659 % 2*pi
660
661% A test by Wolfram Koepf.
662f:=x^2/(3*(-27*x^2 - 2*x^3 + 3^(3/2)*(27*x^4 + 4*x^5)^(1/2))^(1/3));
663
664
665                                 2
666                                x
667f := --------------------------------------------------------
668                                        2      3       2 1/3
669      3*(3*sqrt(4*x + 27)*sqrt(3)*abs(x)  - 2*x  - 27*x )
670
671L0:=limit(f,x,0);
672
673
674l0 := 0
675 % L0 := 0
676f1:=((f-L0)/x^(1/3))$
677
678
679L1:=limit(f1,x,0);
680
681
682l1 := 0
683 % L1 := 0
684f2:=((f1-L1)/x^(1/3))$
685
686
687L2:=limit(f2,x,0);
688
689
690        - 1
691l2 := ------
692        1/3
693       2
694 % L2 := -1/2^(1/3)
695f3:=((f2-L2)/x^(1/3))$
696
697
698L3:=limit(f3,x,0);
699
700
701l3 := 0
702 % L3 := 0
703f4:=((f3-L3)/x^(1/3))$
704
705
706L4:=limit(f4,x,0);
707
708
709l4 := 0
710 % L4 := 0
711f5:=((f4-L4)/x^(1/3))$
712
713
714L5:=limit(f5,x,0);
715
716
717           2/3
718        - 2
719l5 := ---------
720         81
721 % L5 = -2^(2/3)/81
722f6:=((f5-L5)/x^(1/3))$
723
724
725L6:=limit(f6,x,0);
726
727
728l6 := 0
729 % L6 := 0
730f7:=((f6-L6)/x^(1/3))$
731
732
733L7:=limit(f7,x,0);
734
735
736l7 := 0
737 % L7 := 0
738f8:=((f7-L7)/x^(1/3))$
739
740
741L8:=limit(f8,x,0);
742
743
744           7
745l8 := -----------
746             1/3
747       6561*2
748 % L8 := 7/(6561*2^(1/3))
749
750limit(log(1+x)^2/x^(1/3),x,infinity);
751
752
7530
754  % 0
755limit(e^(log(1+x)^2/x^(1/3)),x,infinity);
756
757
7581
759 % 1
760
761ss := (sqrt(x^(2/5) +1) - x^(1/3)-1)/x^(1/3);
762
763
764             2/5         1/3
765       sqrt(x    + 1) - x    - 1
766ss := ---------------------------
767                  1/3
768                 x
769
770limit(ss,x,0);
771
772
773-1
774 % -1
775limit(exp(ss),x,0);
776
777
778 1
779---
780 e
781 % 1/e
782limit(log x,x,-1);
783
784
785log(-1)
786 % log(-1)
787limit(log(ss),x,0);
788
789
790log(-1)
791 % log(-1)
792
793ss := ((x^(1/2) - 1)^(1/3) + (x^(1/5) + 1)^2)/x^(1/5);
794
795
796                    1/3    2/5      1/5
797       (sqrt(x) - 1)    + x    + 2*x    + 1
798ss := --------------------------------------
799                        1/5
800                       x
801
802limit(ss,x,0);
803
804
8052
806 % 2
807
808h := (X^(1/5) + 3*X**(1/4))^2/(7*(SQRT(X + 9) - 3 - x/6))**(1/5);
809
810
811       1/5   2/5      9/20
812      6   *(x    + 6*x     + 9*sqrt(x))
813h := -----------------------------------
814                              1/5  1/5
815      (6*sqrt(x + 9) - x - 18)   *7
816
817limit(h,x,0);
818
819
820     3/5
821  - 6
822---------
823   1/5
824  7
825 % -6^(3/5)/7^(1/5)
826
827comment one sided limit from bug report by Zbynek Konecny ;
828
829
830limit!-((abs(x)-3)/(x-3),x,3);
831
832
8331
834 % 1
835
836end;
837
838Tested on x86_64-pc-windows CSL
839Time (counter 1): 250 ms  plus GC time: 15 ms
840
841End of Lisp run after 0.25+0.06 seconds
842real 0.49
843user 0.01
844sys 0.06
845