Associated Topics || Dr. Math Home || Search Dr. Math

### 0-Based Counting

```Date: 07/05/2003 at 15:37:40
From: Anonymous
Subject: 0-based counting: Why should we abolish 1-based?

I am trying to convince people, especially my friends, that you
should count from 0. I.e. "Page 0, page 1, page 2."

For example, when I numbered a score (musical composition) from 0, a
person complained and argued that 1-based counting is the standard [in
this case]. So I need a little more information, and especially very
convincing proof or statements.

One person suggests that I am going against the way everyone else
does it, and "everyone is taught to count from 1."

I have many reasons why you should count from 0.

- Modulo based systems (like hour:minute:second, century:year,
bar:beat).
- Counting from 1 and 0 is inconsistent.
- 0 is the first digit in the number system, so why not start from it?
- Most programming languages have 0-based arrays.
- A lot of math stuff counts from 0, like the Taylor series.
```

```
Date: 07/06/2003 at 23:12:59
From: Doctor Peterson
Subject: Re: 0-based counting: Why should we abolish 1-based?

Hi,

I certainly wouldn't propose that we abolish 1-based counting, because
it is very useful. When you count objects, you are making a
correspondence between the natural numbers and the objects: 1, 2, 3,
... . The last number you name is the number of objects you counted.
That doesn't work if you start at zero.

What you are talking about is not really counting, but naming items in
a sequence, such as pages. Even there, it is very natural to start at
1, so that the numbers you assign to the items correspond to their
ordinals: first, second, third. It would be very confusing to call the
first page zero, when "page 1" and "first page" are synonymous. So
your friends are right when they say that this is the standard way to
label page numbers, etc.; and trying to change that amounts to trying
to change the English language.

But you are right that there are many situations in which zero-based
counting is appropriate, particularly in mathematical settings. Most
sequences and series are easier to express in a zero-based form, since
then the index is the number of steps away from the first term, "term
0," and we can add (for an arithmetic sequence) or multiply (for a
geometric sequence) by the same thing each time, or use x^n in a
series expansion of a function. In programming, similarly, if you use
0-based indexing, the index is the offset from the storage location of
the first element.

Yet when you do this, you introduce problems, since the number of
terms or array elements is not the last index, but one more than that,
which can be confusing. (Basic has a particularly poor way of handling
this; C is just confusing to beginners.) So it would be hard to say

In general, I would say that zero-based counting is appropriate in
technical contexts (computers and math), but one-based counting is
standard in other settings, and to try to change that would be
foolish.

On the other hand, it is interesting that in many countries, such as
England, a sort of zero-based counting is used for floors in a
building: the bottom floor is called the ground floor, and the term
"first floor" is used for what Americans call the second floor. That
is, "floor" means a floor above the ground. They don't use the term
"zeroth floor." Any other situation where the first of a sequence is
scheme, such as "cover page" and "page 1, 2, ...". But if all pages

I'm not sure what you are saying about "modulo-based systems," by
which you seem to mean systems of units of time. Are you saying we DO
use zero-based counting there, or that it would solve some perceived
problem? I do see that using times like 0:30 rather than 12:30 would
work better, but that is not counting; and if you think that calling
the first century the "zeroth century" would help, what would you call
the first century BC? See this page for some thoughts on that:

The Second Millennium
http://mathforum.org/library/drmath/view/52341.html

- Doctor Peterson, The Math Forum
http://mathforum.org/dr.math/
```

```
Date: 07/07/2003 at 10:52:45
From: Anonymous
Subject: Thank you (0-based counting: Why should we abolish 1-based?)

Thank you so much for your answer. I've tried searching the Web for
this topic, but the closest thing that I found was the awkwardness in
handling 1-based years (i.e. &quot;2001 is new millennium, not 2000). Once
again, thanks a lot!
```
Associated Topics: