"0.999... (with 9s repeating forever) is strictly less than 1."

· generated 2026-03-28 · v0.10.0
DISPROVED pure computation — no citations
Verified by Proof Engine — an open-source tool that proves claims using cited sources and executable code. No LLM trust required.
methodology · github · re-run this proof · submit your own

Key Findings

Claim Interpretation

Natural language claim: "0.999... (with 9s repeating forever) is strictly less than 1."

Formal interpretation: The repeating decimal 0.999... (defined as the limit of the sequence 0.9, 0.99, 0.999, ...) is compared to 1 using strict inequality (<). The claim asserts this value is strictly less than 1.

Operator choice: The "<" operator is taken directly from the claim ("strictly less than"). We work in the standard real number system. The notation "0.999... with 9s repeating forever" is interpreted as the infinite series sum_{k=1}^{infinity} 9 * 10^{-k}, which is the standard mathematical meaning of a repeating decimal.

evidence summary

ID Fact Verified
A1 Algebraic proof: if x = 0.999... then x = 1 Computed: 1.0 (equals 1 exactly)
A2 Geometric series proof: sum of 9/10^k for k=1..inf equals 1 Computed: 1.0 (equals 1 exactly)
A3 Fraction proof: 1/3 = 0.333..., so 3 * (1/3) = 0.999... = 1 Computed: 1.0 (equals 1 exactly)
A4 Numerical convergence: partial sums approach 1 with zero gap Computed: True (limit converges to 1)

Proof Logic

The proof disproves the claim by demonstrating that 0.999... = 1, using four mathematically independent approaches:

Method 1 -- Algebraic (A1): Let x = 0.999... Then 10x = 9.999... Subtracting: 10x - x = 9, so 9x = 9, thus x = 1. This is verified computationally using Python's exact Fraction(9, 9) which equals 1 exactly.

Method 2 -- Geometric Series (A2): The repeating decimal 0.999... = 9/10 + 9/100 + 9/1000 + ... is an infinite geometric series with first term a = 9/10 and common ratio r = 1/10. Since |r| < 1, the sum converges to a/(1-r) = (9/10)/(9/10) = 1. Verified using exact Fraction arithmetic.

Method 3 -- Fraction Identity (A3): Since 1/3 = 0.333... (repeating), multiplying both sides by 3 gives 3/3 = 0.999... But 3/3 = 1, therefore 0.999... = 1. Verified via Fraction(1, 3) * 3 = 1.

Method 4 -- Numerical Convergence (A4): The partial sums S_n = 1 - 10^{-n} converge to 1 as n approaches infinity. Using high-precision decimal arithmetic (60 digits), the gap between S_n and 1 shrinks to zero. By the Archimedean property of the reals, a number whose distance from 1 is less than every positive real number is equal to 1.

All four methods independently confirm that 0.999... = 1.0 (A1, A2, A3, A4). Since 1 is not strictly less than 1, the claim is disproved.

Conclusion

DISPROVED. The claim that 0.999... (with 9s repeating forever) is strictly less than 1 is false. Four independent mathematical methods -- algebraic manipulation, geometric series summation, fraction identity, and numerical convergence analysis -- all confirm that 0.999... = 1 exactly. The strict inequality fails because 1 is not less than 1. This is a well-established theorem in real analysis with no credible counter-arguments in the mathematical literature.


Generated by proof-engine v0.10.0 on 2026-03-28.

counter-evidence search

audit trail

Computation Traces
  A1: algebraic result equals 1: 1.0 == 1.0 = True
  A2: geometric series equals 1: 1.0 == 1.0 = True
  A3: 3 * (1/3) equals 1: 1.0 == 1.0 = True
  A4: limit of partial sums equals 1: 1 == 1 = True
  value of 0.999...: Fraction(9, 9) = 1
  claim: 0.999... < 1: 1.0 < 1 = False

Source: proof.py inline output (execution trace)

Hardening Checklist
  • Rule 1: N/A -- pure computation, no empirical facts.
  • Rule 2: N/A -- pure computation, no empirical facts.
  • Rule 3: date.today() used for generated_at timestamp. No time-dependent computation.
  • Rule 4: CLAIM_FORMAL includes operator_note explaining "<" interpretation and the choice of standard real number system.
  • Rule 5: Four adversarial checks investigated alternative number systems, algebraic rigor, convergence conditions, and mathematical literature. None break the proof.
  • Rule 6: N/A -- pure computation, no empirical facts. Four mathematically independent methods used as cross-checks (algebraic, geometric series, fraction identity, numerical convergence). These are genuinely independent: they rely on different mathematical identities and share no intermediate computations.
  • Rule 7: All computations use Python's Fraction (exact rational arithmetic) and Decimal (arbitrary precision). Constants derived from Fraction constructors, not hard-coded. compare() and explain_calc() from scripts/computations.py used for claim evaluation.
  • validate_proof.py result: PASS (14/14 checks passed, 0 issues, 0 warnings)

Source: author analysis

↓ run the proof (Python) ↓ original audit log view on github raw data (JSON)

found this useful? ★ star on github