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.
Sets are complete characteristic-bit codes with actual finite cardinality witnesses. The proof constructs translations and the sumset; no finite-choice oracle, supplied cardinality conclusion, or unproved polynomial-method premise is used.
Exact theorem in conservative defined notation
∀ b. ∀ c. ∀ d. ∀ e. ∀ l. ∀ n. ∀ m. ∀ i. ∀ a. ∀ v. (∀ x. ∀ y. ∀ z. Lt(x,l) → BetaAt(b,c,x,y) → BetaAt(d,e,x,z) → Le(y,z)) → Sum(b,c,l,n) → Sum(d,e,l,m) → Lt(i,l) → BetaAt(b,c,i,a) → BetaAt(d,e,i,v) → Lt(a,v) → Lt(n,m)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 157 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–4
02Induction on lL5–14
03Fix variables and assumptionsL15–17
04Separate the logical casesL18–19
05Establish hzL20–29
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add eq zero right.
06Fix variables and assumptionsL30–39
07Establish hdAL40–46
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta sum succ decompose.
- L40
have hdA : ∃ fms_term_hdA. ∃ fms_sum_hdA. BetaAt(b,c,l,fms_term_hdA) ∧ (Sum(b,c,l,fms_sum_hdA) ∧ n = fms_sum_hdA + fms_term_hdA)Definitions: BetaAt(b,c,l,fms_term_hdA)Sum(b,c,l,fms_sum_hdA)Original native command in the exact edition - L41
specialize beta_sum_succ_decompose b - L42
specialize beta_sum_succ_decompose c - L43
specialize beta_sum_succ_decompose l - L44
specialize beta_sum_succ_decompose n - L45
apply beta_sum_succ_decompose - L46
exact hn
08Separate the logical casesL47–50
09Establish hdBL51–57
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta sum succ decompose.
- L51
have hdB : ∃ fms_term_hdB. ∃ fms_sum_hdB. BetaAt(d,e,l,fms_term_hdB) ∧ (Sum(d,e,l,fms_sum_hdB) ∧ m = fms_sum_hdB + fms_term_hdB)Definitions: BetaAt(d,e,l,fms_term_hdB)Sum(d,e,l,fms_sum_hdB)Original native command in the exact edition - L52
specialize beta_sum_succ_decompose d - L53
specialize beta_sum_succ_decompose e - L54
specialize beta_sum_succ_decompose l - L55
specialize beta_sum_succ_decompose m - L56
apply beta_sum_succ_decompose - L57
exact hm
10Separate the logical casesL58–61
11Establish hprefixL62–71
Establish this local claim before using it. It is not an additional assumption.
- L62
have hprefix : ∀ fms_i_le. ∀ fms_a_le. ∀ fms_v_le. Lt(fms_i_le,l) → BetaAt(b,c,fms_i_le,fms_a_le) → BetaAt(d,e,fms_i_le,fms_v_le) → Le(fms_a_le,fms_v_le)Definitions: Lt(fms_i_le,l)BetaAt(b,c,fms_i_le,fms_a_le)BetaAt(d,e,fms_i_le,fms_v_le)Le(fms_a_le,fms_v_le)Original native command in the exact edition - L63
intro j - L64
intro A - L65
intro B - L66
intro hj - L67
intro hA - L68
intro hB - L69
specialize hpoint j - L70
specialize hpoint A - L71
specialize hpoint B
12Use earlier factsL72–78
13Establish hlastL79–87
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hpoint.
14Establish hcaseL88–92
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply finite lt succ eq or lt.
15Separate the logical casesL93–93
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L93
cases hcase
16Calculate and transport equalitiesL94–97
17Establish heAL98–106
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at unique.
18Establish heBL107–116
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at unique.
19Calculate and transport equalitiesL117–119
20Use earlier factsL120–129
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L120
specialize finite_add_lt_of_le_of_lt x1 - L121
specialize finite_add_lt_of_le_of_lt x3 - L122
specialize finite_add_lt_of_le_of_lt x - L123
specialize finite_add_lt_of_le_of_lt x2 - L124
apply finite_add_lt_of_le_of_lt - L125
specialize beta_sum_pointwise_le b - L126
specialize beta_sum_pointwise_le c - L127
specialize beta_sum_pointwise_le d - L128
specialize beta_sum_pointwise_le e - L129
specialize beta_sum_pointwise_le l
21Use earlier factsL130–136
Instantiate or apply named facts and discharge the corresponding proof obligations.
22Calculate and transport equalitiesL137–138
23Use earlier factsL139–148
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L139
specialize finite_add_lt_of_lt_of_le x1 - L140
specialize finite_add_lt_of_lt_of_le x3 - L141
specialize finite_add_lt_of_lt_of_le x - L142
specialize finite_add_lt_of_lt_of_le x2 - L143
apply finite_add_lt_of_lt_of_le - L144
specialize IH x1 - L145
specialize IH x3 - L146
specialize IH i - L147
specialize IH a - L148
specialize IH v
Original defined command ledger · 157 lines
- 0001
intro b - 0002
intro c - 0003
intro d - 0004
intro e - 0005
induction l - 0006
intro n - 0007
intro m - 0008
intro i - 0009
intro a - 0010
intro v - 0011
intro hpoint - 0012
intro hn - 0013
intro hm - 0014
intro hi - 0015
intro ha - 0016
intro hv - 0017
intro hav - 0018
exfalso - 0019
cases hi - 0020
have hz : S i=0 - 0021
specialize add_eq_zero_right x - 0022
specialize add_eq_zero_right S i - 0023
apply add_eq_zero_right - 0024
exact hi_witness - 0025
specialize succ_ne_zero i - 0026
apply succ_ne_zero - 0027
exact hz - 0028
intro n - 0029
intro m - 0030
intro i - 0031
intro a - 0032
intro v - 0033
intro hpoint - 0034
intro hn - 0035
intro hm - 0036
intro hi - 0037
intro ha - 0038
intro hv - 0039
intro hav - 0040
have hdA : ∃ fms_term_hdA. ∃ fms_sum_hdA. BetaAt(b,c,l,fms_term_hdA) ∧ (Sum(b,c,l,fms_sum_hdA) ∧ n = fms_sum_hdA + fms_term_hdA) - 0041
specialize beta_sum_succ_decompose b - 0042
specialize beta_sum_succ_decompose c - 0043
specialize beta_sum_succ_decompose l - 0044
specialize beta_sum_succ_decompose n - 0045
apply beta_sum_succ_decompose - 0046
exact hn - 0047
cases hdA - 0048
cases hdA_witness - 0049
cases hdA_witness_witness - 0050
cases hdA_witness_witness_right - 0051
have hdB : ∃ fms_term_hdB. ∃ fms_sum_hdB. BetaAt(d,e,l,fms_term_hdB) ∧ (Sum(d,e,l,fms_sum_hdB) ∧ m = fms_sum_hdB + fms_term_hdB) - 0052
specialize beta_sum_succ_decompose d - 0053
specialize beta_sum_succ_decompose e - 0054
specialize beta_sum_succ_decompose l - 0055
specialize beta_sum_succ_decompose m - 0056
apply beta_sum_succ_decompose - 0057
exact hm - 0058
cases hdB - 0059
cases hdB_witness - 0060
cases hdB_witness_witness - 0061
cases hdB_witness_witness_right - 0062
have hprefix : ∀ fms_i_le. ∀ fms_a_le. ∀ fms_v_le. Lt(fms_i_le,l) → BetaAt(b,c,fms_i_le,fms_a_le) → BetaAt(d,e,fms_i_le,fms_v_le) → Le(fms_a_le,fms_v_le) - 0063
intro j - 0064
intro A - 0065
intro B - 0066
intro hj - 0067
intro hA - 0068
intro hB - 0069
specialize hpoint j - 0070
specialize hpoint A - 0071
specialize hpoint B - 0072
apply hpoint - 0073
specialize le_succ S j - 0074
specialize le_succ l - 0075
apply le_succ - 0076
exact hj - 0077
exact hA - 0078
exact hB - 0079
have hlast : Le(x,x2) - 0080
specialize hpoint l - 0081
specialize hpoint x - 0082
specialize hpoint x2 - 0083
apply hpoint - 0084
specialize le_refl S l - 0085
apply le_refl - 0086
exact hdA_witness_witness_left - 0087
exact hdB_witness_witness_left - 0088
have hcase : i = l ∨ Lt(i,l) - 0089
specialize finite_lt_succ_eq_or_lt l - 0090
specialize finite_lt_succ_eq_or_lt i - 0091
apply finite_lt_succ_eq_or_lt - 0092
exact hi - 0093
cases hcase - 0094
rewrite hcase_left at ha - 0095
rewrite hcase_left at ha - 0096
rewrite hcase_left at hv - 0097
rewrite hcase_left at hv - 0098
have heA : a=x - 0099
specialize beta_at_unique b - 0100
specialize beta_at_unique c - 0101
specialize beta_at_unique l - 0102
specialize beta_at_unique a - 0103
specialize beta_at_unique x - 0104
apply beta_at_unique - 0105
exact ha - 0106
exact hdA_witness_witness_left - 0107
have heB : v=x2 - 0108
specialize beta_at_unique d - 0109
specialize beta_at_unique e - 0110
specialize beta_at_unique l - 0111
specialize beta_at_unique v - 0112
specialize beta_at_unique x2 - 0113
apply beta_at_unique - 0114
exact hv - 0115
exact hdB_witness_witness_left - 0116
rewrite heA at hav - 0117
rewrite heB at hav - 0118
rewrite hdA_witness_witness_right_right - 0119
rewrite hdB_witness_witness_right_right - 0120
specialize finite_add_lt_of_le_of_lt x1 - 0121
specialize finite_add_lt_of_le_of_lt x3 - 0122
specialize finite_add_lt_of_le_of_lt x - 0123
specialize finite_add_lt_of_le_of_lt x2 - 0124
apply finite_add_lt_of_le_of_lt - 0125
specialize beta_sum_pointwise_le b - 0126
specialize beta_sum_pointwise_le c - 0127
specialize beta_sum_pointwise_le d - 0128
specialize beta_sum_pointwise_le e - 0129
specialize beta_sum_pointwise_le l - 0130
specialize beta_sum_pointwise_le x1 - 0131
specialize beta_sum_pointwise_le x3 - 0132
apply beta_sum_pointwise_le - 0133
exact hprefix - 0134
exact hdA_witness_witness_right_left - 0135
exact hdB_witness_witness_right_left - 0136
exact hav - 0137
rewrite hdA_witness_witness_right_right - 0138
rewrite hdB_witness_witness_right_right - 0139
specialize finite_add_lt_of_lt_of_le x1 - 0140
specialize finite_add_lt_of_lt_of_le x3 - 0141
specialize finite_add_lt_of_lt_of_le x - 0142
specialize finite_add_lt_of_lt_of_le x2 - 0143
apply finite_add_lt_of_lt_of_le - 0144
specialize IH x1 - 0145
specialize IH x3 - 0146
specialize IH i - 0147
specialize IH a - 0148
specialize IH v - 0149
apply IH - 0150
exact hprefix - 0151
exact hdA_witness_witness_right_left - 0152
exact hdB_witness_witness_right_left - 0153
exact hcase_right - 0154
exact ha - 0155
exact hv - 0156
exact hav - 0157
exact hlast