0.999... said to be the same as 1
Elementary proof
There is an elementary proof of the equation 0.999... = 1, which uses just the mathematical tools of comparison and addition of (finite) decimal numbers, without any reference to more advanced topics such as series, limits, formal construction of real numbers, etc. The proof, an exercise given by Stillwell (1994, p. 42), is a direct formalization of the intuitive fact that, if one draws 0.9, 0.99, 0.999, etc. on the number line there is no room left for placing a number between them and 1.  The meaning of the notation 0.999... is the least point on the number line lying to the right of all of the numbers 0.9, 0.99, 0.999, etc.  Because there is ultimately no room between 1 and these numbers, the point 1 must be this least point, and so 0.999... = 1.In this formalism, the identities 1 = 0.999... and 1 = 1.000... reflect, respectively, the fact that 1 lies in both [0, 1] and [1, 2], so one can choose either subinterval when finding its digits. To ensure that this notation does not abuse the "=" sign, one needs a way to reconstruct a unique real number for each decimal. This can be done with limits, but other constructions continue with the ordering theme.One straightforward choice is the nested intervals theorem, which guarantees that given a sequence of nested, closed intervals whose lengths become arbitrarily small, the intervals contain exactly one real number in their intersection. So b0.b1b2b3... is defined to be the unique number contained within all the intervals [b0, b0 + 1], [b0.b1, b0.b1 + 0.1], and so on. 0.999... is then the unique real number that lies in all of the intervals [0, 1], [0.9, 1], [0.99, 1], and [0.99...9, 1] for every finite string of 9s. Since 1 is an element of each of these intervals, 0.999... = 1.The Nested Intervals Theorem is usually founded upon a more fundamental characteristic of the real numbers: the existence of least upper bounds or suprema. To directly exploit these objects, one may define b0.b1b2b3... to be the least upper bound of the set of approximants {b0, b0.b1, b0.b1b2, ...}. One can then show that this definition (or the nested intervals definition) is consistent with the subdivision procedure, implying 0.999... = 1 again. Tom Apostol concludes,by the definition above, every element of 1 is also an element of 0.999..., and, combined with the proof above that every element of 0.999... is also an element of 1, the sets 0.999... and 1 contain the same rational numbers, and are therefore the same set, that is, 0.999... = 1.
The definition of real numbers as Dedekind cuts was first published by Richard Dedekind in 1872.
The above approach to assigning a real number to each decimal expansion is due to an expository paper titled "Is 0.999 ... = 1?" by Fred Richman in Mathematics Magazine, which is targeted at teachers of collegiate mathematics, especially at the junior/senior level, and their students. Richman notes that taking Dedekind cuts in any dense subset of the rational numbers yields the same results; in particular, he uses decimal fractions, for which the proof is more immediate. He also notes that typically the definitions allow
{ x : x < 1 } to be a cut but not { x : x ≤ 1 } (or vice versa) "Why do that? Precisely to rule out the existence of distinct numbers 0.9* and 1. [...] So we see that in the traditional definition of the real numbers, the equation 0.9* = 1 is built in at the beginning." A further modification of the procedure leads to a different structure where the two are not equal. Although it is consistent, many of the common rules of decimal arithmetic no longer hold, for example the fraction 1⁄3 has no representation; see "Alternative number systems" below.This limit is plain if one understands the definition of limit. So again 0.999... = 1.
The definition of real numbers as Cauchy sequences was first published separately by Eduard Heine and Georg Cantor, also in 1872. The above approach to decimal expansions, including the proof that 0.999... = 1, closely follows Griffiths & Hilton's 1970 work A comprehensive textbook of classical mathematics: A contemporary interpretation. The book is written specifically to offer a second look at familiar concepts in a contemporary light.(Compare with the series above.) A third derivation was invented by a seventh-grader who was doubtful over her teacher's limiting argument that 0.999... = 1 but was inspired to take the multiply-by-10 proof above in the opposite direction: if x = ...999 then 10x =  ...990, so 10x = x − 9, hence x = −1 again.As a final extension, since 0.999... = 1 (in the reals) and ...999 = −1 (in the 10-adics), then by "blind faith and unabashed juggling of symbols" one may add the two equations and arrive at ...999.999... = 0. This equation does not make sense either as a 10-adic expansion or an ordinary decimal expansion, but it turns out to be meaningful and true in the doubly infinite decimal expansion of the 10-adic solenoid, with eventually repeating left ends to represent the real numbers and eventually repeating right ends to represent the 10-adic numbers.Related questions
Zeno's paradoxes, particularly the paradox of the runner, are reminiscent of the apparent paradox that 0.999... and 1 are equal. The runner paradox can be mathematically modelled and then, like 0.999..., resolved using a geometric series. However, it is not clear if this mathematical treatment addresses the underlying metaphysical issues Zeno was exploring.
Division by zero occurs in some popular discussions of 0.999..., and it also stirs up contention. While most authors choose to define 0.999..., almost all modern treatments leave division by zero undefined, as it can be given no meaning in the standard real numbers. However, division by zero is defined in some other systems, such as complex analysis, where the extended complex plane, i.e. the Riemann sphere, has a "point at infinity". Here, it makes sense to define 1⁄0 to be infinity; and, in fact, the results are profound and applicable to many problems in engineering and physics. Some prominent mathematicians argued for such a definition long before either number system was developed.
Negative zero is another redundant feature of many ways of writing numbers. In number systems, such as the real numbers, where "0" denotes the additive identity and is neither positive nor negative, the usual interpretation of "−0" is that it should denote the additive inverse of 0, which forces −0 = 0. Nonetheless, some scientific applications use separate positive and negative zeroes, as do some computing binary number systems (for example integers stored in the sign and magnitude or ones' complement formats, or floating point numbers as specified by the IEEE floating-point standard).
is equivalent to is synonymous with is identical to can be identified as is also known as