Print

Print


On Fri, 2006-07-14 at 16:39 -0400, Ron Sverdlove wrote:
> I have to agree that 0**0 is not defined in "conventional mathematics".  Look at any calculus text.

Okay, let me say it once more.  My original question regarded
exponentiation with INTEGER exponents only.  In the real or complex
domain exponentiation is defined in terms of the logarithm and
exponential function, and yes, 0^0 has no meaning there (your
'calculus text' setting).  But when dealing with exponentiation
with integer powers (and this doesn't include real powers that
happen to be integer valued), exponentiation has an entirely
different definition.  A function is not merely a rule; it is a
rule plus a domain.  The two exponentiation functions are
different -- don't be misled into thinking they are the same just
because they give the same value where their domains 'overlap'.
In algebra, where exponentiation by integers is defined, it is
conventional (I'd even say nearly universal) to define x**0 to
be 1 for *any* field value x.  This isn't because some power laws
require it, as Loren correctly points out, but because it is so
damn useful.  Certainly we all have seen polynomial expressions
like (let me use tex) p(x) = \sum_{j=0}^n a_j x^j that aren't
qualified with "except when x=0 where then p(x) = ...".  That's
because we all understand that x^0 is 1.  My only wish is that Fortran
had defined ** so that (real x)**(integer n) always produced 1 when
n=0, including when x=0.0 (and a lot of compiler do).  Note that this
wouldn't require that 0.0**0.0 equal 1 too, anymore than (-1.0)**2 = 1.0
doesn't require the illegal expression (-1.0)**2.0 to have a value.

Cheers,
  Neil

-- 
Neil Carlson <[log in to unmask]>