Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved. Exact original first-admission records.
Statement with defined notation
∀ d. ∀ n. ¬n = 0 → Dvd(d,n) → Le(d,n)Every purple notation token opens its conservative definition. This is a reading surface; the compiler expands the statement before the unchanged kernel checks it.
Definitions used by this theorem
In the theorem statement
2 occurrences
In local proof propositions
1 occurrences
Exact expanded native-PA statement
forall d n. ~(n = 0) -> (exists q. n = d * q) -> exists k. k + d = nProof neighborhood
Direct theorem prerequisites
Direct theorem dependents
PA0063 prime_bounded_nonzero_mod_inverse PA0072 gauss_half_range_signed_choices PA0082 prime_positive_bounded_product_coprime PA0089 bounded_nonzero_not_divides PA008B prime_mul_index_map_exists_up_to PA008K prime_range_product_coprime PA009C prime_scaled_inverse_unique PA00AG prime_bounded_square_one_cases PA00D8 distinct_odd_prime_half_products_ne PA00DN prime_nondivisor_bounded_scaled_remainder_nonzeroDefinition-aware tactic body
Only local propositions introduced by have or suffices are compacted. The untrusted compiler re-expands each one before the original tactic script is replayed; defined notation is never accepted by the kernel. Open the exact replay line beneath every changed command.
Read the argument
Proof checkpoints
This is a reading aid, not a new proof or a proof-tree certificate. Checkpoint groups are consecutive commands, not inferred branch boundaries. Every step links to the preserved script.
Named ingredients (1)
01Fix variables and assumptionsL1–4
02Separate the logical casesL5–5
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L5
cases hd
03Establish hqL6–13
04Establish h1qL14–16
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply one le of ne zero.
05Separate the logical casesL17–17
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L17
cases h1q
06Establish hsL18–21
07Construct an explicit witnessL22–22
Supply the displayed value, then prove that it has the required property.
- L22
exists d * x1
08Calculate and transport equalitiesL23–24
09Use earlier factsL25–25
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L25
apply PA6
10Calculate and transport equalitiesL26–28
11Use earlier factsL29–29
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L29
exact hs
12Calculate and transport equalitiesL30–30
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L30
symm
13Use earlier factsL31–31
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L31
exact hd_witness
Original defined command ledger · 31 lines
- 0001
intro d - 0002
intro n - 0003
intro hn - 0004
intro hd - 0005
cases hd - 0006
have hq : ~(x = 0) - 0007
intro hx - 0008
apply hn - 0009
trans d * x - 0010
exact hd_witness - 0011
rewrite hx - 0012
apply PA5 - 0013
specialize one_le_of_ne_zero x - 0014
have h1q : Lt(0,x)Exact native replay line
have h1q : exists k. k + 1 = x - 0015
apply one_le_of_ne_zero - 0016
exact hq - 0017
cases h1q - 0018
have hs : S x1 = x - 0019
trans x1 + 1 - 0020
simp - 0021
exact h1q_witness - 0022
exists d * x1 - 0023
trans d * S x1 - 0024
symm - 0025
apply PA6 - 0026
trans d * x - 0027
congr - 0028
refl - 0029
exact hs - 0030
symm - 0031
exact hd_witness