# Decimals and other numbers

Devin Jeanpierre jeanpierreda at gmail.com
Fri Jan 9 09:51:51 CET 2015

```Marko, your argument is "this function x**y(a, x) must be continuous
on [0, inf), and to be continuous at 0, 0**0 must be a". Since there
are many possible values of a, this is not a "justification", this is
a proof by contradiction that the premise was faulty: x**y(a, x)
doesn't have to be continuous after all.

0**0 is 1, which makes some functions continuous and some functions
not, and who cares? It's 1 because that's what is demanded by
combinatorial definitions of exponentiation, and its origins in the
domain of the natural numbers.  Knuth says that thought of
combinatorially on the naturals, x**y counts the number of mappings
from a set of x values to a set of y values. Clearly there's only one
mapping from the empty set to itself: the empty mapping. Number theory
demands that performing multiplication among an empty bag of numbers
gives you the result of 1 -- even if the empty bag is an empty bag of
zeroes instead of an empty bag of fives. The result does not change.

Either of those ideas about exponentiation can be thought of as
descriptions of its behavior, or as definitions. They completely
describe its behavior on the naturals, from which we derive its
behavior on the reals.

-- Devin

On Thu, Jan 8, 2015 at 11:28 PM, Marko Rauhamaa <marko at pacujo.net> wrote:
> Devin Jeanpierre <jeanpierreda at gmail.com>:
>
>> If 0**0 is defined, it must be 1.
>
> You can "justify" any value a within [0, 1]. For example, choose
>
>    y(a, x) = log(a, x)
>
> Then,
>
>     lim    y(a, x) = 0
>    x -> 0+
>
> and:
>
>    lim[x -> 0+] x**y(a, x) = a
>
> For example,
>
>    >>> a = 0.5
>    >>> x = 1e-100
>    >>> y = math.log(a, x)
>    >>> y
>    0.0030102999566398118
>    >>> x**y
>    0.5
>
>
> Marko
> --
> https://mail.python.org/mailman/listinfo/python-list

```