書式
limit(式, 変数, 値)
で用い、「変数」を限りなく「値」に近づけたときの極限(値)を出力する。「値」には数の他、inf(= +∞)、minf(= -∞)、zeroa(= +0)、zerob(= -0)を用いることが出来る。ただし、-inf や 1+zeroa などは利用出来ないことに注意。なお、出力される極限は、数値、INF、MINF、UND(不定)、IND(不定だが有界)、INFINITY(複素無限)のいずれかとなる。
(%i1) limit(sin(x)/x, x, 0); (%o1) 1 (%i2) limit(sin(x)/x, x, inf); (%o2) 0 (%i3) limit(sin(x), x, minf); (%o3) ind (%i4) limit(1/x, x, 0); (%o4) und (%i5) limit(1/x, x, zeroa); (%o5) inf (%i6) limit(1/x, x, zerob); (%o6) minf (%i7) limit(x + %i, x, inf); (%o7) inf (%i8) limit(x + %i, x, minf); (%o8) minf (%i9) limit(x * %i, x, minf); (%o9) infinity
期待する答えが得られない場合もある:
上記では x → -∞ における極限値を考えることから negative を指定したのだが、positive としなければいけなかったらしい:(%i10) limit(sqrt(x^2-1)/x, x, minf); Is x positive or negative? negative; (%o10) 1
(%i11) limit(sqrt(x^2-1)/x, x, minf); Is x positive or negative? positive; (%o11) - 1
なお、変数 tlimswitch(デフォルト:false)を true に変更する(関数 limit の代わりに関数 tlimit を用いることと同値)と、Taylor 展開を用いて極限値を計算するが、この場合は正しい答えが得られる。
(%i12) tlimswitch: true; (%o12) true (%i13) limit(sqrt(x^2-1)/x, x, minf); (%o13) - 1
関数 limit には、書式
limit(式, 変数, 値, 方向)
で用い、右極限と左極限を計算する機能もある。「方向」には plus(右極限)、minus(左極限)のいずれかを指定する。
(%i14) limit(1/x, x, 0, plus); (%o14) inf (%i15) limit(1/x, x, 0, minus); (%o15) minf