Back

There's Zero 00s (Unless We Choose One)

Nov 2022


I've seen some articles lately talking about how 00 is definitely zero, or definitely one. And I don't blame people for being confused! 00 is a very tricky concept when you're seeing it for the first time.

00 involves only two numbers, but try to punch the three symbols "0 ^ 0" into a calculator and the calculator complains "00 is undefined". Undefined? Why? Isn't math all about definitions? Are the mathematicians hiding their secrets from us laypeople again? Math can't define this basic three-character symbol? Clearly it's just zero! Or maybe one! It should have some simple answer!

What is 00, and why do people keep saying it's "undefined"?

The short version

00 is undefined because xy follows two simple patterns, and we want 00 to follow both of them, and 00 can't follow both of them.

If x is a positive number, then 0x = 0, and also x0 = 1. (More on that below.) When you try to decide what 00 should be, one rule says the definition should be 00 = 0, and the other rule says the definition should be 00 = 1. So you can't DEFINE 00 to follow one rule without violating the other. "Any definition of 00 would violate at least one of the rules, so we choose to not give 00 any definition at all" is a mouthful, so for short we say 00 is "undefined".

In more detail

First, a little secret: The "rules" of math are more like different ways to fill in a coloring book. You can choose the rules which make the most sense depending on what you want to do.

For example, everyone agrees on what xy means when x and y are positive integers: it's just repeated multiplication. 23 means 2 * 2 * 2 = 8. 54 means 5 * 5 * 5 * 5 = 625. I'm going to call this the POSITIVE INTEGER RULES: xy, when x and y are positive integers, means multiplying x with itself y times.

The problem is, what is 00? How do you multiply something with itself 0 times? The answer is: you can't. The POSITIVE INTEGER RULES aren't enough to tell us what the answer should be.

In that case, let's make up some more rules! For example, we could decide xy = 23842 for every case not covered by the POSITIVE INTEGER RULES. But it wouldn't be very satisfying if 23 = 8 but 23.0001 = 23842. Intuitively, if we're defining how xy should work when x and y are new types of numbers, mathematicians prefer if the new rules keep following the old patterns.

So let's look at the patterns that the POSITIVE INTEGER RULES follow, decide what patterns we want xy to follow, and then make up our own rules for 00.

Pattern 1: Multiplying Zero With Itself.

03 = 0 * 0 * 0 = 0. 02 = 0 * 0 = 0. 01 = 0. In general, 0x = 0, if x is a positive integer. Therefore, we could follow this pattern into other types of numbers and define EXPONENT PATTERN 1: 0x = 0, even if x isn't a positive integer.

Pattern 2: Adding Exponents.

43 * 42 = 45. 75 * 75 = 710. In general, xa * xb = xa+b.

Following this pattern tells us EXPONENT PATTERN 2: x0 = 1.

Why? Because xa * x0 = xa+0, meaning xa x0 = xa. There's only one number which you can multiply by xa and get xa: 1. So the only rule consistent with pattern 2, the adding-exponents pattern, is x0 = 1.

So now we have two rules: one which says x0 = 1, and another which says 0x = 0. Both rules are true when x is any positive integer. If you agree to the POSITIVE INTEGER RULES, it seems reasonable to say that x0 = 1 and 0x = 0 are good rules that could also work whenever x isn't a positive integer.

What do those rules imply for x=0?

But what if x=0? According to EXPONENT PATTERN 1, 0x = 0, so if you choose to apply this rule when x=0, 00 = 0. But if you apply EXPONENT PATTERN 2, x0 = 1, then 00 = 1.

To define 00, you'd have to choose whether to define 00 using EXPONENT PATTERN 1 or define using 00 EXPONENT PATTERN 2. But they both seem like valid rules! The patterns work for all numbers except zero, so why not continue the pattern!

Like a parent claiming that they don't have a favorite child to avoid upsetting any of them, mathematicians usually avoid choosing which definition is better by choosing not to give 0^0 either definition.

That's why we say "00 is undefined". There's two perfectly valid definitions, and you can choose which definition you want to use depending on what math you're working with. If you're doing a lot of multiplying by zero, you might choose the definition 00 = 0. If you're doing a lot of work with polynomials like x2 and x3, you might choose the definition 00 = 1.

(Usually mathematicians work more with polynomials, so in practice 00 = 1 is more common. Sometimes mathematicians will use the term "formal power series", and when they do you should imagine a mathematician in a dress promising that it's okay to use x0 = 1 because they solemnly swear that even though this x has the same form as a variable, it's actually a legally distinct symbol to keep track of lists of numbers, and will never, ever, represent zero. Afterwards they usually put on sunglasses, backflip onto a horse, and start messing with infinitely long polynomials and dividing by we-promised-it-wasn't-zero.)

Bonus technical stuff: Actually, there's infinitely many definitions for 00

In fact, those aren't the only rules for 00 you can choose - using limits, you can argue 00 "should be" any number you want between 0 and 1. In this way of thinking about the problem, we're graphing the function xy on the XY plane, and trying to figure out the value of this function when x = y = 0. We can't directly plug in x=y=0, since that's the thing we're trying to find, but we could imagine walking along the XY plane on some smooth path (x(t), y(t)) which approaches (0,0), and then looking to see if x(t)y(t) approaches a fixed value as (x(t), y(t)) approaches (0,0). Our two definitions of 00 corresponded to approaching (0,0) along the line x=0 or along the line y=0, then arguing that 00 should be defined as the limit of x(t)y(t) along these two different paths.

If x(t) and y(t) are nonzero polynomials, then as t→0, x(t)y(t)→1. (Why? Polynomials are smooth, so the limit is just x(t)y(0), and since y(0) is a constant, use exponent pattern 2.). But if you approach (0,0) on the path (e-1/t, t), then as t→0, the limit of x(t)y(t) is

limt→0 (e(-1/t))t = et log e(-1/t) = et log e(-1/t) = et (-1/t) = e-1 ≈ 0.368.

According to this pattern, 00 should be defined as around 0.368. In fact, you could modify this argument to argue that 00 should be defined as any number c you want between 0 and 1: if you approach (0,0) using the carefully chosen path (x(t), y(t)) = (e-1/t, (-log c)t), then x(t)y(t) = (e(-1/t))(-log c)t = c.

So by calculating xy while walking along the right path, you could argue that 00 should be defined as 0.5, or 0.314159, or that there are infinitely many possible definitions of 00! With so many possible definitions, no wonder mathematicians like to say 00 is undefined.