img.latex_eq { padding: 0; margin: 0; border: 0; }

Tuesday, November 27, 2007

Numbering from Zero

I've been noticing a trend lately, and I hope it's a fad. Several popular math books that I have read have begun with a Chapter Zero. I can rationalize several excuses for this, but I still think it boils down to nerds being nerdy.

The first excuse is that in modular arithmetic, a set of N numbers begins 0,1,2,3...N-1 so that it can include the identity. But a book isn't a clock. The chapters aren't going to start over at any point.

The second excuse is that the authors are also modern computer scientists. (Both of my computer science classes began with an Assignment Zero.) After the popular language C, all languages have begun their indexing sequences from zero rather than one. This is a consequence of the decision to have the memory address of an array element be the same as its index. But there's no reason why they couldn't have started indexing at 1 and defined the memory address using an imaginary number equal to one less than the index. So this isn't really any more rational.

The last excuse is that the numbers are meant to serve as markers instead of names, counting forward in a sort of greatest integer function scenario. Since the markers come at the beginning of the chapter, and the first page of the first chapter can be viewed as the origin of the book, it might make sense to label it Zero. However, if books were designed to be read from right to left (I know there are many languages which read right to left across the page, but I don't know if the books themselves read from right to left as well,) we wouldn't expect to start with Chapter Zero followed by negative chapters.

As far as I can tell, there is no good reason other than fashion why a math book should break the convention of using counting numbers to label chapters. I find it irritating and i wish it would stop.

5 comments:

Anonymous said...

isn't chapter zero usually
a review of prerequisite material?
-- so that the course itself,
rightly so called, actually still
begins with chapter one?
i haven't seen a whole lot *of* 'em
but that's how it seems to me
(now that you mention it).

and anyhow, why *shouldn't*
nerds be nerds? it's *trendiness*
that annoys *me* ... v.

Rebecca said...

I'm with the other commenter. If it's prerequisite material, then a chapter zero makes sense to me. It's a chapter that shouldn't even "count."

The reason I've always heard about why C counts from zero is because it uses the least amount of memory. If you were in base ten, it would require only one digit to store the numbers (0,...,9), but two digits to store the numbers (1,...,10). This is the same sort of reason that we had the Y2K problem.

Rounding out my treatise on counting from zero, have you heard the joke about the computer scientist who went to the airline ticket counter and was told he was checking in too many bags? "No I'm not," he said. "I have two bags, see? Zero, one, two!"

Anonymous said...

The whole "does the array start at zero or one?" problem has caused countless frustration and bugs for programmers throughout the years, so book chapter numbering by comparison wouldn't upset me too much. :)

Rebecca, regarding your comments about memory savings, I'm not sure if that's ultimately true. If there is a computer that stores numbers in Base 10, please let me know. Even on the most primitive computers with 4-bit accumulator registers, you can still go from 0 to 15 before needing to put data in another register.

E.g.
0000 = 0 in a 4-bit binary register

1111 = 15 in a 4-bit binary register

Just my two cents. Who really knows?

Anonymous said...

Counting from one is historical. Once you get rid of this pure "habit", counting from zero becomes much simpler for a number of reasons:

http://www.purl.org/stefan_ram/pub/zero

Anonymous said...

Seems to work better with a trailing slash:
http://www.purl.org/stefan_ram/pub/zero/