www.delorie.com/gnu/docs/calc/calc_68.html   search  
Buy the book!

GNU Emacs Calc 2.02 Manual

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.7.34 Types Tutorial Exercise 2

`inf / inf = nan'. Perhaps `1' is the "obvious" answer. But if `17 inf = inf', then `17 inf / inf = inf / inf = 17', too.

`exp(inf) = inf'. It's tempting to say that the exponential of infinity must be "bigger" than "regular" infinity, but as far as Calc is concerned all infinities are as just as big. In other words, as x goes to infinity, e^x also goes to infinity, but the fact the e^x grows much faster than x is not relevant here.

`exp(-inf) = 0'. Here we have a finite answer even though the input is infinite.

`sqrt(-inf) = (0, 1) inf'. Remember that (0, 1) represents the imaginary number i. Here's a derivation: `sqrt(-inf) = sqrt((-1) * inf) = sqrt(-1) * sqrt(inf)'. The first part is, by definition, i; the second is inf because, once again, all infinities are the same size.

`sqrt(uinf) = uinf'. In fact, we do know something about the direction because sqrt is defined to return a value in the right half of the complex plane. But Calc has no notation for this, so it settles for the conservative answer uinf.

`abs(uinf) = inf'. No matter which direction x points, `abs(x)' always points along the positive real axis.

`ln(0) = -inf'. Here we have an infinite answer to a finite input. As in the 1 / 0 case, Calc will only use infinities here if you have turned on "infinite" mode. Otherwise, it will treat `ln(0)' as an error.

  webmaster   donations   bookstore     delorie software   privacy  
  Copyright 2003   by The Free Software Foundation     Updated Jun 2003