"Fewer than 20 percent of the positive integers from 1 to 1000 are prime."

mathematics · generated 2026-03-28 · v0.10.0
PROVED 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: Fewer than 20 percent of the positive integers from 1 to 1000 are prime.

Formal interpretation: The count of primes in {1, 2, ..., 1000} divided by 1000, expressed as a percentage, is strictly less than 20. Equivalently, the prime count must be strictly less than 200. The phrase "fewer than" unambiguously implies strict inequality (<).

evidence summary

ID Fact Verified
A1 Prime count via Sieve of Eratosthenes Computed: 168 primes
A2 Prime count via trial division (independent cross-check) Computed: 168 primes
A3 Percentage of primes in [1, 1000] Computed: 16.8%

Proof Logic

Two independent algorithms enumerate all primes in [1, 1000]:

  1. Sieve of Eratosthenes (A1): Marks composites by iterating through multiples of each prime up to sqrt(1000). Produces a list of 168 primes, from 2 to 997.

  2. Trial division (A2): Tests each integer in [1, 1000] individually for primality by checking divisibility up to its square root. Also produces exactly 168 primes.

Both methods yield identical prime lists (A1, A2 — independently computed). The percentage is then 168 / 1000 x 100 = 16.8% (A3), which satisfies 16.8 < 20.

Conclusion

PROVED. There are exactly 168 prime numbers among the positive integers from 1 to 1000, which is 16.8% — strictly fewer than 20%. This was established by two independent computational methods (Sieve of Eratosthenes and trial division) that produce identical results, consistent with the known value pi(1000) = 168.


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

counter-evidence search

audit trail

Computation Traces
Sieve of Eratosthenes: found 168 primes in [1, 1000]
  First 10: [2, 3, 5, 7, 11, 13, 17, 19, 23, 29]
  Last 10:  [937, 941, 947, 953, 967, 971, 977, 983, 991, 997]

Trial division: found 168 primes in [1, 1000]
Cross-check: both methods agree — 168 primes
  percentage of primes in [1, 1000]: prime_count_sieve / N * 100 = 168 / 1000 * 100 = 16.8000
  prime percentage < 20%: 16.8 < 20 = True
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 generation date
  • Rule 4: CLAIM_FORMAL with operator_note explicitly documents the strict inequality interpretation
  • Rule 5: Two adversarial checks performed — algorithm correctness and interpretation ambiguity
  • Rule 6: N/A — pure computation, no empirical facts. Cross-check uses mathematically independent method (sieve vs trial division)
  • Rule 7: explain_calc() and compare() from computations.py used for all computations
  • validate_proof.py result: PASS (14/14 checks passed, 0 issues, 0 warnings)

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

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

found this useful? ★ star on github