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.
The initial 0/1 convergent is included: u is natural, not necessarily positive. Comparison denominators are strictly smaller and positive. Signed competitors are represented by an arbitrary difference rp−rn. Approximation inequalities are proved from the trace, never stored as assumptions in Convergent.
Exact theorem in conservative defined notation
∀ a. ∀ b. ∀ q. ∀ r. ∀ u. ∀ U. ∀ v. ∀ V. ∀ p. ∀ P. ∀ n. ∀ N. a = b · q + r → Lt(r,b) → u = q · p + n → U = q · P + N → v = p → V = P → ConvergentErrorInvariant(b,r,p,P,n,N) → ConvergentErrorInvariant(a,b,u,U,v,V)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 67 original proof lines are preserved. Only local proposition formulas are abbreviated; every abbreviation has an exact binder-safe expansion check. The linked exact edition contains the unchanged replay script.
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 (2)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–19
03Separate the logical casesL20–23
04Construct an explicit witnessL24–25
05Separate the logical casesL26–26
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L26
split
06Use earlier factsL27–36
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L27
specialize cf_approximation_identity_entry_transport (a) - L28
specialize cf_approximation_identity_entry_transport (b) - L29
specialize cf_approximation_identity_entry_transport (u) - L30
specialize cf_approximation_identity_entry_transport (U) - L31
specialize cf_approximation_identity_entry_transport (v) - L32
specialize cf_approximation_identity_entry_transport (V) - L33
specialize cf_approximation_identity_entry_transport ((q * p + n)) - L34
specialize cf_approximation_identity_entry_transport ((q * P + N)) - L35
specialize cf_approximation_identity_entry_transport (p) - L36
specialize cf_approximation_identity_entry_transport (P)
07Use earlier factsL37–46
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L37
specialize cf_approximation_identity_entry_transport (x) - L38
specialize cf_approximation_identity_entry_transport (x1) - L39
apply cf_approximation_identity_entry_transport - L40
exact hu - L41
exact hU - L42
exact hv - L43
exact hV - L44
specialize cf_approximation_prepend_identity (a) - L45
specialize cf_approximation_prepend_identity (b) - L46
specialize cf_approximation_prepend_identity (q)
08Use earlier factsL47–56
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L47
specialize cf_approximation_prepend_identity (r) - L48
specialize cf_approximation_prepend_identity (p) - L49
specialize cf_approximation_prepend_identity (P) - L50
specialize cf_approximation_prepend_identity (n) - L51
specialize cf_approximation_prepend_identity (N) - L52
specialize cf_approximation_prepend_identity (x) - L53
specialize cf_approximation_prepend_identity (x1) - L54
apply cf_approximation_prepend_identity - L55
exact ha - L56
exact hi_witness_witness_left
09Separate the logical casesL57–57
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L57
split
10Use earlier factsL58–67
Instantiate or apply named facts and discharge the corresponding proof obligations.
Original defined command ledger · 67 lines
- 0001
intro a - 0002
intro b - 0003
intro q - 0004
intro r - 0005
intro u - 0006
intro U - 0007
intro v - 0008
intro V - 0009
intro p - 0010
intro P - 0011
intro n - 0012
intro N - 0013
intro ha - 0014
intro hr - 0015
intro hu - 0016
intro hU - 0017
intro hv - 0018
intro hV - 0019
intro hi - 0020
cases hi - 0021
cases hi_witness - 0022
cases hi_witness_witness - 0023
cases hi_witness_witness_right - 0024
exists x - 0025
exists x1 - 0026
split - 0027
specialize cf_approximation_identity_entry_transport (a) - 0028
specialize cf_approximation_identity_entry_transport (b) - 0029
specialize cf_approximation_identity_entry_transport (u) - 0030
specialize cf_approximation_identity_entry_transport (U) - 0031
specialize cf_approximation_identity_entry_transport (v) - 0032
specialize cf_approximation_identity_entry_transport (V) - 0033
specialize cf_approximation_identity_entry_transport ((q * p + n)) - 0034
specialize cf_approximation_identity_entry_transport ((q * P + N)) - 0035
specialize cf_approximation_identity_entry_transport (p) - 0036
specialize cf_approximation_identity_entry_transport (P) - 0037
specialize cf_approximation_identity_entry_transport (x) - 0038
specialize cf_approximation_identity_entry_transport (x1) - 0039
apply cf_approximation_identity_entry_transport - 0040
exact hu - 0041
exact hU - 0042
exact hv - 0043
exact hV - 0044
specialize cf_approximation_prepend_identity (a) - 0045
specialize cf_approximation_prepend_identity (b) - 0046
specialize cf_approximation_prepend_identity (q) - 0047
specialize cf_approximation_prepend_identity (r) - 0048
specialize cf_approximation_prepend_identity (p) - 0049
specialize cf_approximation_prepend_identity (P) - 0050
specialize cf_approximation_prepend_identity (n) - 0051
specialize cf_approximation_prepend_identity (N) - 0052
specialize cf_approximation_prepend_identity (x) - 0053
specialize cf_approximation_prepend_identity (x1) - 0054
apply cf_approximation_prepend_identity - 0055
exact ha - 0056
exact hi_witness_witness_left - 0057
split - 0058
exact hi_witness_witness_right_left - 0059
specialize le_trans (x1) - 0060
specialize le_trans (r) - 0061
specialize le_trans (b) - 0062
apply le_trans - 0063
exact hi_witness_witness_right_right - 0064
specialize lt_to_le (r) - 0065
specialize lt_to_le (b) - 0066
apply lt_to_le - 0067
exact hr