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.
Exact expanded PA statement
forall d n q r. (((n) = (d) * (S q) + (r) /\ (exists bcf_lt_gap_b5ccsqdl_source_bound. bcf_lt_gap_b5ccsqdl_source_bound + S (r) = d))) -> (exists bcf_le_gap_b5ccsqdl_result. bcf_le_gap_b5ccsqdl_result + (d) = n)Structural proof guide
A division with successor quotient bounds its divisor by the dividend.
Direct prerequisites: add_assoc, add_comm. The authored body proceeds by case analysis (1), intermediate claims (2), equality transport (2).
Proof neighborhood
Direct dependencies
Direct dependents
Formal native tactic body
Dependencies are hypotheses of the historical Alpha-v12 body receipt. The complete historical Alpha-v18 proof bundle independently checks every dependency; current Alpha v25 preserves that checked theorem use without changing Stable membership.
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.
01Fix variables and assumptionsL1–5
02Separate the logical casesL6–6
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L6
cases hdivision
03Construct an explicit witnessL7–7
Supply the displayed value, then prove that it has the required property.
- L7
exists d * q + r
04Calculate and transport equalitiesL8–9
05Establish hleft_assocL10–11
06Establish hright_assocL12–21
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add assoc.
Original exact command ledger · 21 lines
- 0001
intro d - 0002
intro n - 0003
intro q - 0004
intro r - 0005
intro hdivision - 0006
cases hdivision - 0007
exists d * q + r - 0008
rewrite hdivision_left - 0009
rewrite PA6 - 0010
have hleft_assoc : (d * q + r) + d = d * q + (r + d) - 0011
apply add_assoc - 0012
have hright_assoc : (d * q + d) + r = d * q + (d + r) - 0013
apply add_assoc - 0014
trans d * q + (r + d) - 0015
exact hleft_assoc - 0016
trans d * q + (d + r) - 0017
congr - 0018
refl - 0019
apply add_comm - 0020
symm - 0021
exact hright_assoc