A Friendly Chat About Whether 0.999... = 1

“The infinite sequence (.3, .33, .333, .3333…) converges to the limit 1/3″, which is another way of saying “We can make an element of (.3, .33, .333…) as close to 1/3 as we wish".

Not exactly. It means that most of the elements of {.3, .33, .333, …} are close to 1/3. Here “most” means “all but finitely many”, and “close” means “within any predetermined positive distance”. That’s how you get that limits are uniquely determined. The terms of a sequence can’t all be clustered around a and all be clustered around b.

“As a side comment: if 3/10 is not 1/3, and 33/100 is not 1/3, at what point does another digit make it exactly 1/3?”

There isn’t one. The limit of the sequence is not (generally) a term of the sequence. See comment #9 (my response to “some bla guy”).

“This is a bit like Zeno’s paradoxes, which have not been fully resolved.”

Sure they have, in large part by the limit concept. (If they hadn’t been resolved, even Newtonian physics wouldn’t be possible.)

“The meta-point is that we can make that sequence as close to 1/3 as we need, which in the real number system means they are equal in the limit.”

Limits are unique in the hyperreals as well. You might have infinitesimal separations, but you also have infinitesimal resolving power (if that makes sense). Be careful here: a lot of “standard” sequences with limits, such as {.3, .33, .333, …}, don’t have limits in the hyperreals unless you make some canonical extension to a hypersequence; if you do that, the extension will still have the original limit (in this case 1/3).

“The real number system may be “less real” because it’s more limited than others.”

Not so much. See, the construction that Robinson applied to the reals to get the hyperreals can also be applied to the hyperreals. If we call the result the hyperhyperreals, well, we can apply the construction again, to get the (hyper)^3-reals, and so forth. Each is “less limited” than the previous, but none of these can be the “real” system, because each is “more limited” than the next. But really, none of these is more limited than the others, because the same expressible facts are true in all of them.

To me, the “real” system is the simplest system which easily models the phenomena we’re interested in—which in this case is the ordinary real line.

By the way, you might read Fred Richman’s article a bit more carefully. The system he creates is one in which 0.99… and 1 resolve differently, but it’s also one in which negation and multiplication don’t make sense. So, fair enough, such systems exist, but I wouldn’t want to work in any of them.

@Chad: Thanks for the info & discussion! I’m not rigorously versed in the details, so am learning as I go along :). As far as how “Does 0.999… = 1?” is interpreted by most mathematicians, here’s my guess:

  • 0.999… means “continue .999 in the obvious way”
  • It is not common to define real numbers as a sequence of decimal digits (though not impossible). We prefer to construct a real number as a Cauchy Sequence of rationals (for example).
  • 0.9, 0.99, 0.999, … is the obvious Cauchy Sequence representing that infinite decimal expansion
  • Now that we have a sequence, I see you are using the equals operator. Like a compiler doing integer to floating point conversion, I’m going to “cast” the sequence into a real number (if possible) by taking the limit of the sequence, and compare that to 1.

So, as long as we’re staying within the real number system, 0.999… interpreted this way means 1 (and .333… = 1/3). But is that the only interpretation? If we interpret 0.999… as possibly referring to a hyperreal number (1 - h) then what conclusions can we draw?

I think there’s a notion of an “infinitely small gap” that’s we cannot describe with real numbers that leads to interesting approaches.

It’s interesting to me that early physics was developed with the use of “non-rigorous” infinitesimals; clearly there is a concept there (being able to manipulate dy and dx independently, not taking them as an operator) that was not captured in the current real number system. If there’s a number system (the hyperreals) which can explicitly capture that idea (vs. breaking the rules in the current one) I think it’s more useful for that purpose.

So, by “limited” I don’t mean less capable, but not as innately useful/expressive (you probably know, but most programming languages are equally powerful (Turing Complete) but differ vastly in how useful/usable they are). I agree about the hyper^N reals, I had suspected that too :). But I don’t know of situations where we’re trying to solve problems by relying on 2nd-order infinitesimals and having to work around it in the current one – if we were, I’d suggest that system as the most expressive.

I appreciate the clarification on the Richman piece – he does say it’s an open problem. I’m interested in going through http://www.jstor.org/pss/2316619 which expounds on infinitesimals and their representations further (http://en.wikipedia.org/wiki/0.999#Infinitesimals).

No problem—this whole discussion is helping me clarify a lot of these ideas as well.

Here’s the thing: if you want to do calculus with infinitesimals, first you have to do arithmetic with them. And that leads to problems, if you also try to do arithmetic with infinite decimal expansions. If you want .99… to resolve to 1 – h, with h infinitesimal but nonzero, then does 1.99… resolve to 2 – h or 2 – 2h? Both make sense. (And don’t say that 2 x .99… is 1.99…8. That has an 8 in the “last place”, and there is no last place.)

Interestingly, though, if we let go of decimal expansions and consider arbitrary sequences of numbers, we get awfully close to hyperreals. In one “hyper” construction, the hyperreals are precisely the sequences of reals modulo a certain equivalence relation. Sequences which have equal terms at most indices are considered equal, and statements which are true at most indices are considered true.

For example, {1,2,3,…} represents an infinitely large number (on account of most natural numbers are larger than x for any fixed real number x); call this number w. Its reciprocal sequence {1,1/2,1/3,…} represents the infinitesimal 1/w, and {.1, .01, .001, …} represents the infinitesimal 10^(-w) (which we’ll call h), and {.9, .99, …} represents 1 - h; but {0, .9, .99, …} represents 1 - 10h, so there’s some nasty ambiguity in (.99…). Also {1.9, 1.99, 1.999, …} represents 2 - h, and {1.8, 1.98, 1.998, …} represents 2 - 2h. So we can get enough infinitesimals to do calculus, but we have to go beyond decimal expansions to do it.

“We prefer to construct a real number as a Cauchy Sequence of rationals (for example).”

Since we’re being technical here anyway: Cauchy sequences of rationals only represent real numbers. We still have to specify when two Cauchy sequences represent the same real number; and {a_n} and {b_n} do this precisely when {a_n – b_n} converges to 0 in the rationals. In particular, {1, 1, 1, …} and {.9, .99, .999, …} represent the same real number (which is 1), because {.1, .01, .001, …} converges to 0.

I’ll stand by my original position, more or less: there’s no unambiguous way to interpret the infinite decimal expansion of a fraction x as “infinitesimally less” than x, and still be able to do arithmetic with those decimal expansions. The Wikipedia article you cite backs me up on this, at the end of its introduction: “[S]ome settings contain numbers that are ‘just shy’ of 1[, but] these are generally unrelated to 0.999…”.

“So, by “limited” I don’t mean less capable, but not as innately useful/expressive (you probably know, but most programming languages are equally powerful (Turing Complete) but differ vastly in how useful/usable they are)”.

That’s exactly what I’m talking about. The statements which are true on the real numbers are exactly those which are true on the hyperreals — if you’re careful about how you interpret those statements. Nonstandard analysis—that is, analysis with the hyperreals—hasn’t really caught on, and I suspect it’s because proper interpretation is just as difficult to deal with as epsilon-delta argument, with no real gain.

It might be useful to write a nonrigorous calculus textbook based on nonstandard analysis; in fact, I think it’s been done.

(Geniuses of the time thought negatives “wrapped around” after you passed infinity)
I am not sure if this is a statement of derision or fact. The idea that the negatives "wrap around" is not that far fetched. The 1 point compactification of the reals is homeomorphic with the circle. In that context it makes perfect sense to think of the negatives as wrapping around at infinity. I allow my students to use the analogy frequently with asymptotes.

I have a few questions. They may sound like objections, but they’re definitely in question form because I am admittedly slightly out of my depth here. These are the main trip-ups that are keeping me from wrapping my mind around what you’re saying:

How does the fact that we’re working all this stuff about 0.999… in base 10 effect the issue? If it’s not equal to 1, then it’s obviously not a rational number, but can it be expressed, or even approximated, in other bases? In this alternate number system you propose, is 0.777… in base 8 equal to 0.999… in base 10?

And I know this has been touched on in the comments already, but I’m still wondering about the (1/3)*3=1 angle. I take it that in this new system, (1/3) wouldn’t be equal to 0.333…, for the same reasons as with 0.999… and 1. So does this mean that (1/3) cannot be calculated?

Stephen: To an extent, base doesn’t matter. If we take 0.9… in base 10 as infinitesimally less than 1, then the same is true of 0.1… in base 2, and 0.7… in base 8, and so forth. And you’re right about 0.3…; under this scheme, it would be infinitesimally less than 1/3. The problems show up when you try to nail down that infinitesimal and do arithmetic. Consider the argument I make in #22: if 0.9… = 1 - h, do we have 1.9… = 1 + 0.9… = 2 - h, or do we have 1.9… = 2*(0.9…) = 2 - 2h?

Come to think of it, this is a better argument for 0.9… = 1 than the 3*(1/3 = 0.3…) idea, because it eliminates the possibility of “infinitesimal separation” entirely. These last two equations are consistent precisely when h = 0.

I’m not quite sure what you mean by “1/3 cannot be calculated”. It would mean than no decimal expansion evaluates to precisely 1/3. However, since “infinitesimal separation” falls apart when we try to be precise and do arithmetic with it, this is an academic concern.

Incidentally, there is an elementary calculus text which uses the hyperreals, written by H. Jerome Keisler and freely available.

@Chad: Thanks for the discussion and for helping out with the questions! Yes, Keisler’s book seems to be an excellent resource, and I’m going through it to really understand calculus at a deeper level than when I studied it originally (many proofs seem to fall into place using “algebra”, like the proof of the product rule).

All of this has got me thinking about analysis – I’m sure I’ve made some technical errors in the post that I need to correct. The goal is to start the discussion and embrace the idea of infinitesimals :).

@Jason: Not meant to be a statement of derision, but more “The geniuses can have trouble thinking about new when they are first introduced, too”. That’s really interesting that the negatives can take that interpretation – though I’d be very surprised and impressed if that’s what Euler and others had in mind. The meta point being that we present math all neatly packaged up, even though it took centuries of debate and revision to get there [like pretending Shakespeare wrote his plays in a single draft, a single sitting, and implying to students “that’s how poetry is done”].

Actually, I wonder if this has come full circle: negatives were thought to wrap around, this interpretation was ignored/found not useful by many (the majority of people do not know this interpretation, I posit), but later found useful. Infinitesimals were first thought to be useful (Leibniz), later thought nonrigorous by the majority, and then later found to be useful and rigorous.

It’s simply hard to envision hyperreal numbers doing to mathematics what complex numbers did. Chad’s examination solidifies my view.

On the other hand, I have read much of the Jerome Keisler book. I think that someone who truly understands Calculus through the conventional approach is on equal footing with one who understands it through the infinitesimal approach. However, understanding comes more easily, at least for me, from the latter. The major benefit is that “infinitesimal calculus” comes with the visual interpretation.

I love that the article is titled “a friendly chat…” and starts with lambasting the supposed ire of pedants.

Who finds infinitesimals useful now - how were they used recently?

x = 0.999…
10x = 9.99…
10x-x = 9.99… - 0.999…
9x = 9
x = 1

I was going to post that same proof!

I don’t get the “if you use a new system, 0.999… does not equal 1” bit. If they weren’t equal then there would be a fault with that simple proof.

#31: There’s no “fault” with the proof, but consider all the hidden premises. In order for #30 to work, we must have a unique interpretation of integer numerals and infinite decimals as numbers, and notions of +, -, *, / that do what we expect. If anything there fails in a given number system, the proof tells us nothing about that system.

Give you an example: Let Q be the set of rational numbers, and let Q* be the set of all downward closed subsets of Q. That is, if X is an element of Q*, then it is a subset of Q, and if p ∈ X and q < p is rational, then q ∈ X. Q* then is ordered by the subset relation ⊂.

What sets exactly does Q* contain? Well, the empty set qualifies: everything it contains is a rational number (because it doesn’t contain anything), and it’s downward closed for similarly silly reasons. Also the entire set Q qualifies: it’s a subset of itself, and downward closed (because it contains all rationals, less than p or not). Beyond that, take any real number x; then the sets xlow = { p ∈ Q : p < x } and xhigh = { p ∈ Q : p ≤ x } are in Q*. xlow and xhigh are distinct precisely when x is rational. It can be shown that every element of Q* takes this form, and that they’re all distinct.

Now: let’s say we interpret every integer or rational numeral n as the set nhigh. And let’s say we interpret the infinite decimal 0.abcdefg… as the set of all rationals p where p ≤ 0.a or p ≤ 0.ab or p ≤ 0.abc or … (which would be well-defined). Then the interpretation of 0.999… would be precisely 1low, which is distinct from 1high, which is our interpretation for 1. Similarly 0.333… would evaluate to (1/3)low.

This whole interpretation is at least superficially reasonable. And #30 doesn’t apply, because we haven’t even defined +, -, *, /, let alone verified that they behave sanely.

If we tried to do that, we’d quickly have to eliminate ∅ and Q as valid numbers, and identify plow with phigh, at which point we’d essentially have Dedekind’s construction of the real line. But if we don’t bother with arithmetic, we can interpret rationals and infinite decimals reasonably and still not have 0.9… = 1.

Apparently this blog doesn’t recognize the <sub> tag. I hope what I write is still comprehensible.

@Chad: Thanks for the details! I totally agree about the hidden premises.

Intuitively, I also see the argument like this:
“Can x^2 = -1? Well, if x is positive, x * x = positive. But if x is negative, x * x = positive. And if x = 0, x * x = 0. Therefore, sqrt(-1) cannot exist”.

There’s a hidden premise about what x is allowed to be.

So, looking at the argument

x = 0.999…
10x = 9.999…
10x - x = 9.999… - 0.999…
9x = 9.0

We need to take a break and see what’s happening. Does 9x = 9.0? Hrm. Let’s multiply it out
9(.9) = 8.1
9(.99) = 8.91
9(.999) = 8.991
9(.9999) = 8.9991

And so on. So is 9 really the same as 8.999…1? :).

In fact, if we look at the limits involved, it’s a restatement of the first equality. Let’s assume each limit has an implicit n->inf.

x = lim[ 1 - 1/10^n]
10x = 10 lim[1 - 1/10^n]
10x - x = 10 lim[1 - 1/10^n] - lim[1 - 1/10^n]
9x = lim[(10 - 1) - 10/10^n + 1/10^n]
9x = lim[9 - 9/10^n] => this is where we get 8.1, 8.91, 8.991…
x = lim[1 - 1/10^n]

It seems the argument is a bit of a tautology, and reduces again to x = lim[1 - 1/10^n]. The question is then whether this is exactly 1. It is, if we disallow the idea of a number too small to detect with the reals (like disallowing an imaginary number). But if we allow the possibility of a difference in our premises, then we can state that x = 1 - h [where h is that tiny infinitesimal difference we couldn’t notice with the reals].

I’m not sure how rigorous this is (it probably isn’t) but it’s how I’m starting to see the implicit assumptions in the 10x - x argument.

I usually would explain this by saying, lets find out the difference between 1 and 0.999…

Subtraction!

1.000… -
0.999…

0.000…

If you follow the subtraction to infinity and beyond your answer of the difference is 0.000…

So if the difference between 0.999… and 1 is 0.000… that means there is no difference between the two!

0.999… is an artefact of the decimal system, because some values cannot be represented by terminated decimals. e.g. 1/3 or 0.333…

If you argue about whether 0.999… is or isn’t equal to 1, then you need to argue if 0.333… is or isn’t equal to 1/3. Along with a whole bunch of other numbers which don’t have terminating representations in decimal.

The problem comes from infinity being involved. Damn you infinity! And people’s ideas that a number is an exact thing, how can there be more than one way of representing 1?

But we have n^0, n/n, cos(0).

Oh so one last thing.

Is 0.000… equal to 0?

:stuck_out_tongue:

Dark matter vs Anti-matter

You say that (Dark matter destroys regular mass when they come in contact, just like 3 + (-3) = 0).

Assuming you mean Anti-Matter this also isn’t correct.

Matter is not destroyed, it is converted to energy.

The equation is more like

3 matter + 3 anti-matter = 6 energy.

I don’t think anyone has managed to find a case for when the law of conservation of energy is not true.

Andrew: That’s what I was arguing at first. Here’s the problem: how do you know that subtraction from the left, as you’re doing, is valid? It’s one thing to explain an idea, and quite another to defend the same idea against a skeptic. You have to go back to common ideas, possibly to first principles, and then you have to defend those principles intuitively.

Kalid: No, 9 ≠ 8.99…91, because there’s no such number as 8.99…91. Not with infinitely many 9’s hidden in the “…”, anyhow. However, we do have 8 < 8.1 < 8.9 < 8.91 < 8.99 < … so the two “intertwined” sequences should have a common limit (if they have one at all), and your argument can be taken to show that 9*(0.9…) = 8.9….

For the real numbers, the intuition is that of “continuous quantity”, or “length”. We can add and subtract lengths; we can agree on a unit length and use it to multiply and divide (otherwise length*length = are and length/length = ?); and we can compare lengths. Moreover all these operations are compatible in ways that are familiar to anyone who made it through high school math (commutative, associative, distributive, etc.).

But that’s not quite enough to get all the possible lengths. There should be a quantity x where x^2 = 2; we can even construct it with compass and straightedge. But there is no rational number which satisfies the equation, even though the rationals have +, -, *, /, and <. For that matter, there are lots of numbers—e.g., 2^(1/3), π, e—that qualify as lengths but can’t be constructed by compass and straightedge. In general, if we have a normal, continuous function on an interval, and it’s negative at one end and positive at the other, then it should be zero somewhere in between—no line-jumping.

The way we get that—pretty sure the only way we can get that—is as follows. Say we break our quantities into two sets P and Q. Every quantity is in exactly one of P or Q. Moreover P is downward closed: if x ∈ P and y < x, then y ∈ P also. This makes Q upward closed by default. Essentially we’ve split our line into two coherent halves.

The intuition we appeal to—and by “we” I mean “originally Dedekind”—is that any such split should correspond to an actual quantity. That is, there should be some quantity x which is either the greatest element of P (and less than everything in Q), or the least element of Q (and greater than everything in P); and the split is taken to happen at x.

So, for example, take an increasing but bounded sequence like x_n = 1 - 10^(-n), and take P = {x : x < x_n for some n} and Q = {x : x > x_n for all n}, and find the splitting point y. y is in Q, because if in P it would have to be the greatest element of P but still less than x_n for some n; but it is the least element of Q (that is, the least upper bound for {x_n}). We take y to be the limit of x_n. If there is no least upper bound, then there can be no limit. (There’s a similar idea for decreasing, bounded-below sequences; general sequences are trickier.)

Let’s look at the sequence 1 - 10^(-n). Certainly 1 is an upper bound for this sequence. Is there a smaller one, say 1 - h for h positive? Well, if 1 - h is an upper bound, then so is 1 - 10h, since 1 - h ≥ 1 - 10^(-(n+1)) implies h ≤ 10^(-(n+1)) implies 10h ≤ 10^(-n) implies 1 - 10h ≥ 1 - 10^(-n); and this goes through for all n. And 1 - 10h < 1 - h. Thus (rewinding a bit), if 1 is not the least upper bound for x_n, then there is no least upper bound (every upper bound less than 1 can be shown not to be least, and upper bounds greater than 1 obviously don’t work). So either .9… = 1, or .9… doesn’t equal anything (or arithmetic is broken).

So I guess I’ve come full circle on this issue. It’s true that any argument in math rests on certain assumptions about the context, but if we use infinite decimal expansions, we’ve internalized all those assumptions. We must either reject arithmetic, reject the .9… notation, or accept that .9… = 1.