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 first-order arithmetic statement
forall a b u U v V E F rp rn t D. ((((u * V + 1 = U * v) /\ ((a * v = b * u + E) /\ (b * U = a * V + F)))) \/ (((U * v + 1 = u * V) /\ ((b * u = a * v + E) /\ (a * V = b * U + F))))) -> (exists cfba_bound_identity_comparison_errors. cfba_bound_identity_comparison_errors + (E) = (F)) -> ~(t = 0) -> (exists cfba_gap_identity_comparison_denominator. cfba_gap_identity_comparison_denominator + S (t) = (v)) -> (((a * t + b * rn) = (b * rp) + (D)) \/ ((b * rp) = (a * t + b * rn) + (D))) -> (exists cfba_bound_identity_comparison_result. cfba_bound_identity_comparison_result + (E) = (D))Constructive proof overview
Generated structural guide
The actual determinant and signed-error invariant implies the full comparison with every smaller positive denominator, including signed candidate numerators and exact terminal error zero.
The unchanged tactic script uses 1 declared prerequisite and contains 64 exact native proof lines.
Alpha v34 checked-use · first admitted v29 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
Direct dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This exact body belongs to a complete independently kernel-checked constructive proof bundle and has Alpha checked-use authority; it does not imply 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.
Named ingredients (1)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–17
03Separate the logical casesL18–20
04Use earlier factsL21–30
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L21
specialize cf_approximation_unimodular_best_approximation (a) - L22
specialize cf_approximation_unimodular_best_approximation (b) - L23
specialize cf_approximation_unimodular_best_approximation (u) - L24
specialize cf_approximation_unimodular_best_approximation (U) - L25
specialize cf_approximation_unimodular_best_approximation (v) - L26
specialize cf_approximation_unimodular_best_approximation (V) - L27
specialize cf_approximation_unimodular_best_approximation (E) - L28
specialize cf_approximation_unimodular_best_approximation (F) - L29
specialize cf_approximation_unimodular_best_approximation (rp) - L30
specialize cf_approximation_unimodular_best_approximation (rn)
05Use earlier factsL31–33
06Separate the logical casesL34–34
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L34
left
07Use earlier factsL35–35
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L35
exact hi_left_left
08Separate the logical casesL36–36
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L36
left
09Use earlier factsL37–41
10Separate the logical casesL42–43
11Use earlier factsL44–53
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L44
specialize cf_approximation_unimodular_best_approximation (a) - L45
specialize cf_approximation_unimodular_best_approximation (b) - L46
specialize cf_approximation_unimodular_best_approximation (u) - L47
specialize cf_approximation_unimodular_best_approximation (U) - L48
specialize cf_approximation_unimodular_best_approximation (v) - L49
specialize cf_approximation_unimodular_best_approximation (V) - L50
specialize cf_approximation_unimodular_best_approximation (E) - L51
specialize cf_approximation_unimodular_best_approximation (F) - L52
specialize cf_approximation_unimodular_best_approximation (rp) - L53
specialize cf_approximation_unimodular_best_approximation (rn)
12Use earlier factsL54–56
13Separate the logical casesL57–57
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L57
right
14Use earlier factsL58–58
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L58
exact hi_right_left
15Separate the logical casesL59–59
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L59
right
Original exact command ledger · 64 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 hi - 0014
intro hEF - 0015
intro ht - 0016
intro hlt - 0017
intro herror - 0018
cases hi - 0019
cases hi_left - 0020
cases hi_left_right - 0021
specialize cf_approximation_unimodular_best_approximation (a) - 0022
specialize cf_approximation_unimodular_best_approximation (b) - 0023
specialize cf_approximation_unimodular_best_approximation (u) - 0024
specialize cf_approximation_unimodular_best_approximation (U) - 0025
specialize cf_approximation_unimodular_best_approximation (v) - 0026
specialize cf_approximation_unimodular_best_approximation (V) - 0027
specialize cf_approximation_unimodular_best_approximation (E) - 0028
specialize cf_approximation_unimodular_best_approximation (F) - 0029
specialize cf_approximation_unimodular_best_approximation (rp) - 0030
specialize cf_approximation_unimodular_best_approximation (rn) - 0031
specialize cf_approximation_unimodular_best_approximation (t) - 0032
specialize cf_approximation_unimodular_best_approximation (D) - 0033
apply cf_approximation_unimodular_best_approximation - 0034
left - 0035
exact hi_left_left - 0036
left - 0037
exact hi_left_right - 0038
exact hEF - 0039
exact ht - 0040
exact hlt - 0041
exact herror - 0042
cases hi_right - 0043
cases hi_right_right - 0044
specialize cf_approximation_unimodular_best_approximation (a) - 0045
specialize cf_approximation_unimodular_best_approximation (b) - 0046
specialize cf_approximation_unimodular_best_approximation (u) - 0047
specialize cf_approximation_unimodular_best_approximation (U) - 0048
specialize cf_approximation_unimodular_best_approximation (v) - 0049
specialize cf_approximation_unimodular_best_approximation (V) - 0050
specialize cf_approximation_unimodular_best_approximation (E) - 0051
specialize cf_approximation_unimodular_best_approximation (F) - 0052
specialize cf_approximation_unimodular_best_approximation (rp) - 0053
specialize cf_approximation_unimodular_best_approximation (rn) - 0054
specialize cf_approximation_unimodular_best_approximation (t) - 0055
specialize cf_approximation_unimodular_best_approximation (D) - 0056
apply cf_approximation_unimodular_best_approximation - 0057
right - 0058
exact hi_right_left - 0059
right - 0060
exact hi_right_right - 0061
exact hEF - 0062
exact ht - 0063
exact hlt - 0064
exact herror