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
∀ t. ∀ h. ∀ e. ∀ k. ∀ u. ∀ U. ∀ v. ∀ V. ∀ q. ∀ s. ∀ H. ∀ E. ConvergentMatrixTrace(t,h,e,k,u,U,v,V) → ListCell(s,q,t) → ConvergentMatrixAt(H,E,S k,s,q · u + v,q · U + V,u,U) → (∀ x. ∀ y. Lt(x,S k) → BetaAt(h,e,x,y) → BetaAt(H,E,x,y)) → ConvergentMatrixTrace(s,H,E,S k,q · u + v,q · U + V,u,U)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 139 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 (1)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–16
03Separate the logical casesL17–19
04Construct an explicit witnessL20–20
Supply the displayed value, then prove that it has the required property.
- L20
exists x
05Separate the logical casesL21–21
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L21
split
06Use earlier factsL22–31
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L22
specialize cf_convergent_matrix_state_prefix_transport (h) - L23
specialize cf_convergent_matrix_state_prefix_transport (e) - L24
specialize cf_convergent_matrix_state_prefix_transport (H) - L25
specialize cf_convergent_matrix_state_prefix_transport (E) - L26
specialize cf_convergent_matrix_state_prefix_transport (S k) - L27
specialize cf_convergent_matrix_state_prefix_transport (0) - L28
specialize cf_convergent_matrix_state_prefix_transport (x) - L29
specialize cf_convergent_matrix_state_prefix_transport (1) - L30
specialize cf_convergent_matrix_state_prefix_transport (0) - L31
specialize cf_convergent_matrix_state_prefix_transport (0)
07Use earlier factsL32–34
08Construct an explicit witnessL35–35
Supply the displayed value, then prove that it has the required property.
- L35
exists k
09Calculate and transport equalitiesL36–36
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L36
simp
10Use earlier factsL37–37
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L37
exact ht_witness_left
11Separate the logical casesL38–38
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L38
split
12Use earlier factsL39–39
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L39
exact hnew
13Fix variables and assumptionsL40–41
14Establish hjkL42–46
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le of succ le succ.
15Establish heqL47–51
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le eq or lt.
16Separate the logical casesL52–52
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L52
cases heq
17Calculate and transport equalitiesL53–56
18Construct an explicit witnessL57–63
19Separate the logical casesL64–64
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L64
split
20Use earlier factsL65–74
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L65
specialize cf_convergent_matrix_state_prefix_transport (h) - L66
specialize cf_convergent_matrix_state_prefix_transport (e) - L67
specialize cf_convergent_matrix_state_prefix_transport (H) - L68
specialize cf_convergent_matrix_state_prefix_transport (E) - L69
specialize cf_convergent_matrix_state_prefix_transport (S k) - L70
specialize cf_convergent_matrix_state_prefix_transport (k) - L71
specialize cf_convergent_matrix_state_prefix_transport (t) - L72
specialize cf_convergent_matrix_state_prefix_transport (u) - L73
specialize cf_convergent_matrix_state_prefix_transport (U) - L74
specialize cf_convergent_matrix_state_prefix_transport (v)
21Use earlier factsL75–77
22Construct an explicit witnessL78–78
Supply the displayed value, then prove that it has the required property.
- L78
exists 0
23Use earlier factsL79–80
24Separate the logical casesL81–81
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L81
split
25Use earlier factsL82–83
26Establish hsL84–87
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply ht witness right right.
- L84Definitions: ConvergentMatrixAt(h,e,j,cfc_old_extend_previous_step,cfc_a_extend_previous_step,cfc_b_extend_previous_step,cfc_c_extend_previous_step,cfc_d_extend_previous_step)ConvergentMatrixAt(h,e,S j,cfc_new_extend_previous_step,cfc_q_extend_previous_step · cfc_a_extend_previous_step + cfc_c_extend_previous_step,cfc_q_extend_previous_step · cfc_b_extend_previous_step + cfc_d_extend_previous_step,cfc_a_extend_previous_step,cfc_b_extend_previous_step)ListCell(cfc_new_extend_previous_step,cfc_q_extend_previous_step,cfc_old_extend_previous_step)Original native command in the exact edition
have hs · expand full local formula (768 characters)
have hs : ∃ cfc_old_extend_previous_step. ∃ cfc_a_extend_previous_step. ∃ cfc_b_extend_previous_step. ∃ cfc_c_extend_previous_step. ∃ cfc_d_extend_previous_step. ∃ cfc_new_extend_previous_step. ∃ cfc_q_extend_previous_step. ConvergentMatrixAt(h,e,j,cfc_old_extend_previous_step,cfc_a_extend_previous_step,cfc_b_extend_previous_step,cfc_c_extend_previous_step,cfc_d_extend_previous_step) ∧ (ConvergentMatrixAt(h,e,S j,cfc_new_extend_previous_step,cfc_q_extend_previous_step · cfc_a_extend_previous_step + cfc_c_extend_previous_step,cfc_q_extend_previous_step · cfc_b_extend_previous_step + cfc_d_extend_previous_step,cfc_a_extend_previous_step,cfc_b_extend_previous_step) ∧ ListCell(cfc_new_extend_previous_step,cfc_q_extend_previous_step,cfc_old_extend_previous_step)) - L85
specialize ht_witness_right_right (j) - L86
apply ht_witness_right_right - L87
exact heq_right
27Separate the logical casesL88–96
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L88
cases hs - L89
cases hs_witness - L90
cases hs_witness_witness - L91
cases hs_witness_witness_witness - L92
cases hs_witness_witness_witness_witness - L93
cases hs_witness_witness_witness_witness_witness - L94
cases hs_witness_witness_witness_witness_witness_witness - L95
cases hs_witness_witness_witness_witness_witness_witness_witness - L96
cases hs_witness_witness_witness_witness_witness_witness_witness_right
28Construct an explicit witnessL97–103
29Separate the logical casesL104–104
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L104
split
30Use earlier factsL105–114
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L105
specialize cf_convergent_matrix_state_prefix_transport (h) - L106
specialize cf_convergent_matrix_state_prefix_transport (e) - L107
specialize cf_convergent_matrix_state_prefix_transport (H) - L108
specialize cf_convergent_matrix_state_prefix_transport (E) - L109
specialize cf_convergent_matrix_state_prefix_transport (S k) - L110
specialize cf_convergent_matrix_state_prefix_transport (j) - L111
specialize cf_convergent_matrix_state_prefix_transport (x1) - L112
specialize cf_convergent_matrix_state_prefix_transport (x2) - L113
specialize cf_convergent_matrix_state_prefix_transport (x3) - L114
specialize cf_convergent_matrix_state_prefix_transport (x4)
31Use earlier factsL115–119
32Separate the logical casesL120–120
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L120
split
33Use earlier factsL121–130
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L121
specialize cf_convergent_matrix_state_prefix_transport (h) - L122
specialize cf_convergent_matrix_state_prefix_transport (e) - L123
specialize cf_convergent_matrix_state_prefix_transport (H) - L124
specialize cf_convergent_matrix_state_prefix_transport (E) - L125
specialize cf_convergent_matrix_state_prefix_transport (S k) - L126
specialize cf_convergent_matrix_state_prefix_transport (S j) - L127
specialize cf_convergent_matrix_state_prefix_transport (x6) - L128
specialize cf_convergent_matrix_state_prefix_transport (x7 * x2 + x4) - L129
specialize cf_convergent_matrix_state_prefix_transport (x7 * x3 + x5) - L130
specialize cf_convergent_matrix_state_prefix_transport (x2)
34Use earlier factsL131–139
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L131
specialize cf_convergent_matrix_state_prefix_transport (x3) - L132
apply cf_convergent_matrix_state_prefix_transport - L133
exact hp - L134
specialize succ_le_succ (S j) - L135
specialize succ_le_succ (k) - L136
apply succ_le_succ - L137
exact heq_right - L138
exact hs_witness_witness_witness_witness_witness_witness_witness_right_left - L139
exact hs_witness_witness_witness_witness_witness_witness_witness_right_right
Original defined command ledger · 139 lines
- 0001
intro t - 0002
intro h - 0003
intro e - 0004
intro k - 0005
intro u - 0006
intro U - 0007
intro v - 0008
intro V - 0009
intro q - 0010
intro s - 0011
intro H - 0012
intro E - 0013
intro ht - 0014
intro hcell - 0015
intro hnew - 0016
intro hp - 0017
cases ht - 0018
cases ht_witness - 0019
cases ht_witness_right - 0020
exists x - 0021
split - 0022
specialize cf_convergent_matrix_state_prefix_transport (h) - 0023
specialize cf_convergent_matrix_state_prefix_transport (e) - 0024
specialize cf_convergent_matrix_state_prefix_transport (H) - 0025
specialize cf_convergent_matrix_state_prefix_transport (E) - 0026
specialize cf_convergent_matrix_state_prefix_transport (S k) - 0027
specialize cf_convergent_matrix_state_prefix_transport (0) - 0028
specialize cf_convergent_matrix_state_prefix_transport (x) - 0029
specialize cf_convergent_matrix_state_prefix_transport (1) - 0030
specialize cf_convergent_matrix_state_prefix_transport (0) - 0031
specialize cf_convergent_matrix_state_prefix_transport (0) - 0032
specialize cf_convergent_matrix_state_prefix_transport (1) - 0033
apply cf_convergent_matrix_state_prefix_transport - 0034
exact hp - 0035
exists k - 0036
simp - 0037
exact ht_witness_left - 0038
split - 0039
exact hnew - 0040
intro j - 0041
intro hj - 0042
have hjk : Le(j,k) - 0043
specialize le_of_succ_le_succ (j) - 0044
specialize le_of_succ_le_succ (k) - 0045
apply le_of_succ_le_succ - 0046
exact hj - 0047
have heq : j = k ∨ Lt(j,k) - 0048
specialize le_eq_or_lt (j) - 0049
specialize le_eq_or_lt (k) - 0050
apply le_eq_or_lt - 0051
exact hjk - 0052
cases heq - 0053
rewrite heq_left - 0054
rewrite heq_left - 0055
rewrite heq_left - 0056
rewrite heq_left - 0057
exists t - 0058
exists u - 0059
exists U - 0060
exists v - 0061
exists V - 0062
exists s - 0063
exists q - 0064
split - 0065
specialize cf_convergent_matrix_state_prefix_transport (h) - 0066
specialize cf_convergent_matrix_state_prefix_transport (e) - 0067
specialize cf_convergent_matrix_state_prefix_transport (H) - 0068
specialize cf_convergent_matrix_state_prefix_transport (E) - 0069
specialize cf_convergent_matrix_state_prefix_transport (S k) - 0070
specialize cf_convergent_matrix_state_prefix_transport (k) - 0071
specialize cf_convergent_matrix_state_prefix_transport (t) - 0072
specialize cf_convergent_matrix_state_prefix_transport (u) - 0073
specialize cf_convergent_matrix_state_prefix_transport (U) - 0074
specialize cf_convergent_matrix_state_prefix_transport (v) - 0075
specialize cf_convergent_matrix_state_prefix_transport (V) - 0076
apply cf_convergent_matrix_state_prefix_transport - 0077
exact hp - 0078
exists 0 - 0079
apply zero_add - 0080
exact ht_witness_right_left - 0081
split - 0082
exact hnew - 0083
exact hcell - 0084
have hs : ∃ cfc_old_extend_previous_step. ∃ cfc_a_extend_previous_step. ∃ cfc_b_extend_previous_step. ∃ cfc_c_extend_previous_step. ∃ cfc_d_extend_previous_step. ∃ cfc_new_extend_previous_step. ∃ cfc_q_extend_previous_step. ConvergentMatrixAt(h,e,j,cfc_old_extend_previous_step,cfc_a_extend_previous_step,cfc_b_extend_previous_step,cfc_c_extend_previous_step,cfc_d_extend_previous_step) ∧ (ConvergentMatrixAt(h,e,S j,cfc_new_extend_previous_step,cfc_q_extend_previous_step · cfc_a_extend_previous_step + cfc_c_extend_previous_step,cfc_q_extend_previous_step · cfc_b_extend_previous_step + cfc_d_extend_previous_step,cfc_a_extend_previous_step,cfc_b_extend_previous_step) ∧ ListCell(cfc_new_extend_previous_step,cfc_q_extend_previous_step,cfc_old_extend_previous_step)) - 0085
specialize ht_witness_right_right (j) - 0086
apply ht_witness_right_right - 0087
exact heq_right - 0088
cases hs - 0089
cases hs_witness - 0090
cases hs_witness_witness - 0091
cases hs_witness_witness_witness - 0092
cases hs_witness_witness_witness_witness - 0093
cases hs_witness_witness_witness_witness_witness - 0094
cases hs_witness_witness_witness_witness_witness_witness - 0095
cases hs_witness_witness_witness_witness_witness_witness_witness - 0096
cases hs_witness_witness_witness_witness_witness_witness_witness_right - 0097
exists x1 - 0098
exists x2 - 0099
exists x3 - 0100
exists x4 - 0101
exists x5 - 0102
exists x6 - 0103
exists x7 - 0104
split - 0105
specialize cf_convergent_matrix_state_prefix_transport (h) - 0106
specialize cf_convergent_matrix_state_prefix_transport (e) - 0107
specialize cf_convergent_matrix_state_prefix_transport (H) - 0108
specialize cf_convergent_matrix_state_prefix_transport (E) - 0109
specialize cf_convergent_matrix_state_prefix_transport (S k) - 0110
specialize cf_convergent_matrix_state_prefix_transport (j) - 0111
specialize cf_convergent_matrix_state_prefix_transport (x1) - 0112
specialize cf_convergent_matrix_state_prefix_transport (x2) - 0113
specialize cf_convergent_matrix_state_prefix_transport (x3) - 0114
specialize cf_convergent_matrix_state_prefix_transport (x4) - 0115
specialize cf_convergent_matrix_state_prefix_transport (x5) - 0116
apply cf_convergent_matrix_state_prefix_transport - 0117
exact hp - 0118
exact hj - 0119
exact hs_witness_witness_witness_witness_witness_witness_witness_left - 0120
split - 0121
specialize cf_convergent_matrix_state_prefix_transport (h) - 0122
specialize cf_convergent_matrix_state_prefix_transport (e) - 0123
specialize cf_convergent_matrix_state_prefix_transport (H) - 0124
specialize cf_convergent_matrix_state_prefix_transport (E) - 0125
specialize cf_convergent_matrix_state_prefix_transport (S k) - 0126
specialize cf_convergent_matrix_state_prefix_transport (S j) - 0127
specialize cf_convergent_matrix_state_prefix_transport (x6) - 0128
specialize cf_convergent_matrix_state_prefix_transport (x7 * x2 + x4) - 0129
specialize cf_convergent_matrix_state_prefix_transport (x7 * x3 + x5) - 0130
specialize cf_convergent_matrix_state_prefix_transport (x2) - 0131
specialize cf_convergent_matrix_state_prefix_transport (x3) - 0132
apply cf_convergent_matrix_state_prefix_transport - 0133
exact hp - 0134
specialize succ_le_succ (S j) - 0135
specialize succ_le_succ (k) - 0136
apply succ_le_succ - 0137
exact heq_right - 0138
exact hs_witness_witness_witness_witness_witness_witness_witness_right_left - 0139
exact hs_witness_witness_witness_witness_witness_witness_witness_right_right