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. ∀ u. ∀ U. ∀ v. ∀ V. ∀ E. ∀ F. ∀ rp. ∀ rn. ∀ t. ∀ D. u · V + 1 = U · v ∨ U · v + 1 = u · V → a · v = b · u + E ∧ b · U = a · V + F ∨ b · u = a · v + E ∧ a · V = b · U + F → Le(E,F) → ¬t = 0 → Lt(t,v) → RationalApproximationError(a,b,rp,rn,t,D) → Le(E,D)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 87 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 (3)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–18
03Establish hcL19–28
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply cf approximation small denominator signed coordinates.
- L19
have hc : exists c d. ((((~(c = 0)) /\ ((((rp) + (d) * (U) = (rn) + (c) * (u)) /\ ((t) + (d) * (V) = (0) + (c) * (v)))))) \/ (((~(d = 0)) /\ ((((rp) + (c) * (u) = (rn) + (d) * (U)) /\ ((t) + (c) * (v) = (0) + (d) * (V))))))) - L20
specialize cf_approximation_small_denominator_signed_coordinates (u) - L21
specialize cf_approximation_small_denominator_signed_coordinates (U) - L22
specialize cf_approximation_small_denominator_signed_coordinates (v) - L23
specialize cf_approximation_small_denominator_signed_coordinates (V) - L24
specialize cf_approximation_small_denominator_signed_coordinates (rp) - L25
specialize cf_approximation_small_denominator_signed_coordinates (rn) - L26
specialize cf_approximation_small_denominator_signed_coordinates (t) - L27
apply cf_approximation_small_denominator_signed_coordinates - L28
exact hd
04Use earlier factsL29–30
05Separate the logical casesL31–34
06Use earlier factsL35–44
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L35
specialize cf_approximation_subtractive_error_lower_bound (a) - L36
specialize cf_approximation_subtractive_error_lower_bound (b) - L37
specialize cf_approximation_subtractive_error_lower_bound (u) - L38
specialize cf_approximation_subtractive_error_lower_bound (U) - L39
specialize cf_approximation_subtractive_error_lower_bound (v) - L40
specialize cf_approximation_subtractive_error_lower_bound (V) - L41
specialize cf_approximation_subtractive_error_lower_bound (E) - L42
specialize cf_approximation_subtractive_error_lower_bound (F) - L43
specialize cf_approximation_subtractive_error_lower_bound (rp) - L44
specialize cf_approximation_subtractive_error_lower_bound (rn)
07Use earlier factsL45–53
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L45
specialize cf_approximation_subtractive_error_lower_bound (t) - L46
specialize cf_approximation_subtractive_error_lower_bound (D) - L47
specialize cf_approximation_subtractive_error_lower_bound (x) - L48
specialize cf_approximation_subtractive_error_lower_bound (x1) - L49
apply cf_approximation_subtractive_error_lower_bound - L50
exact he - L51
exact hc_witness_witness_left_right - L52
exact hc_witness_witness_left_left - L53
exact herror
08Separate the logical casesL54–54
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L54
cases hc_witness_witness_right
09Use earlier factsL55–64
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L55
specialize le_trans (E) - L56
specialize le_trans (F) - L57
specialize le_trans (D) - L58
apply le_trans - L59
exact hEF - L60
specialize cf_approximation_subtractive_error_lower_bound (a) - L61
specialize cf_approximation_subtractive_error_lower_bound (b) - L62
specialize cf_approximation_subtractive_error_lower_bound (U) - L63
specialize cf_approximation_subtractive_error_lower_bound (u) - L64
specialize cf_approximation_subtractive_error_lower_bound (V)
10Use earlier factsL65–74
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L65
specialize cf_approximation_subtractive_error_lower_bound (v) - L66
specialize cf_approximation_subtractive_error_lower_bound (F) - L67
specialize cf_approximation_subtractive_error_lower_bound (E) - L68
specialize cf_approximation_subtractive_error_lower_bound (rp) - L69
specialize cf_approximation_subtractive_error_lower_bound (rn) - L70
specialize cf_approximation_subtractive_error_lower_bound (t) - L71
specialize cf_approximation_subtractive_error_lower_bound (D) - L72
specialize cf_approximation_subtractive_error_lower_bound (x1) - L73
specialize cf_approximation_subtractive_error_lower_bound (x) - L74
apply cf_approximation_subtractive_error_lower_bound
11Use earlier factsL75–84
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L75
specialize cf_approximation_errors_exchange_columns (a) - L76
specialize cf_approximation_errors_exchange_columns (b) - L77
specialize cf_approximation_errors_exchange_columns (u) - L78
specialize cf_approximation_errors_exchange_columns (U) - L79
specialize cf_approximation_errors_exchange_columns (v) - L80
specialize cf_approximation_errors_exchange_columns (V) - L81
specialize cf_approximation_errors_exchange_columns (E) - L82
specialize cf_approximation_errors_exchange_columns (F) - L83
apply cf_approximation_errors_exchange_columns - L84
exact he
Original defined command ledger · 87 lines
- 0001
intro a - 0002
intro b - 0003
intro u - 0004
intro U - 0005
intro v - 0006
intro V - 0007
intro E - 0008
intro F - 0009
intro rp - 0010
intro rn - 0011
intro t - 0012
intro D - 0013
intro hd - 0014
intro he - 0015
intro hEF - 0016
intro ht - 0017
intro hlt - 0018
intro herror - 0019
have hc : exists c d. ((((~(c = 0)) /\ ((((rp) + (d) * (U) = (rn) + (c) * (u)) /\ ((t) + (d) * (V) = (0) + (c) * (v)))))) \/ (((~(d = 0)) /\ ((((rp) + (c) * (u) = (rn) + (d) * (U)) /\ ((t) + (c) * (v) = (0) + (d) * (V))))))) - 0020
specialize cf_approximation_small_denominator_signed_coordinates (u) - 0021
specialize cf_approximation_small_denominator_signed_coordinates (U) - 0022
specialize cf_approximation_small_denominator_signed_coordinates (v) - 0023
specialize cf_approximation_small_denominator_signed_coordinates (V) - 0024
specialize cf_approximation_small_denominator_signed_coordinates (rp) - 0025
specialize cf_approximation_small_denominator_signed_coordinates (rn) - 0026
specialize cf_approximation_small_denominator_signed_coordinates (t) - 0027
apply cf_approximation_small_denominator_signed_coordinates - 0028
exact hd - 0029
exact ht - 0030
exact hlt - 0031
cases hc - 0032
cases hc_witness - 0033
cases hc_witness_witness - 0034
cases hc_witness_witness_left - 0035
specialize cf_approximation_subtractive_error_lower_bound (a) - 0036
specialize cf_approximation_subtractive_error_lower_bound (b) - 0037
specialize cf_approximation_subtractive_error_lower_bound (u) - 0038
specialize cf_approximation_subtractive_error_lower_bound (U) - 0039
specialize cf_approximation_subtractive_error_lower_bound (v) - 0040
specialize cf_approximation_subtractive_error_lower_bound (V) - 0041
specialize cf_approximation_subtractive_error_lower_bound (E) - 0042
specialize cf_approximation_subtractive_error_lower_bound (F) - 0043
specialize cf_approximation_subtractive_error_lower_bound (rp) - 0044
specialize cf_approximation_subtractive_error_lower_bound (rn) - 0045
specialize cf_approximation_subtractive_error_lower_bound (t) - 0046
specialize cf_approximation_subtractive_error_lower_bound (D) - 0047
specialize cf_approximation_subtractive_error_lower_bound (x) - 0048
specialize cf_approximation_subtractive_error_lower_bound (x1) - 0049
apply cf_approximation_subtractive_error_lower_bound - 0050
exact he - 0051
exact hc_witness_witness_left_right - 0052
exact hc_witness_witness_left_left - 0053
exact herror - 0054
cases hc_witness_witness_right - 0055
specialize le_trans (E) - 0056
specialize le_trans (F) - 0057
specialize le_trans (D) - 0058
apply le_trans - 0059
exact hEF - 0060
specialize cf_approximation_subtractive_error_lower_bound (a) - 0061
specialize cf_approximation_subtractive_error_lower_bound (b) - 0062
specialize cf_approximation_subtractive_error_lower_bound (U) - 0063
specialize cf_approximation_subtractive_error_lower_bound (u) - 0064
specialize cf_approximation_subtractive_error_lower_bound (V) - 0065
specialize cf_approximation_subtractive_error_lower_bound (v) - 0066
specialize cf_approximation_subtractive_error_lower_bound (F) - 0067
specialize cf_approximation_subtractive_error_lower_bound (E) - 0068
specialize cf_approximation_subtractive_error_lower_bound (rp) - 0069
specialize cf_approximation_subtractive_error_lower_bound (rn) - 0070
specialize cf_approximation_subtractive_error_lower_bound (t) - 0071
specialize cf_approximation_subtractive_error_lower_bound (D) - 0072
specialize cf_approximation_subtractive_error_lower_bound (x1) - 0073
specialize cf_approximation_subtractive_error_lower_bound (x) - 0074
apply cf_approximation_subtractive_error_lower_bound - 0075
specialize cf_approximation_errors_exchange_columns (a) - 0076
specialize cf_approximation_errors_exchange_columns (b) - 0077
specialize cf_approximation_errors_exchange_columns (u) - 0078
specialize cf_approximation_errors_exchange_columns (U) - 0079
specialize cf_approximation_errors_exchange_columns (v) - 0080
specialize cf_approximation_errors_exchange_columns (V) - 0081
specialize cf_approximation_errors_exchange_columns (E) - 0082
specialize cf_approximation_errors_exchange_columns (F) - 0083
apply cf_approximation_errors_exchange_columns - 0084
exact he - 0085
exact hc_witness_witness_right_right - 0086
exact hc_witness_witness_right_left - 0087
exact herror