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.
Statement with defined notation
Le(6 · (2 · 38 + 7 · 19),37 · 37)Every purple notation token opens its conservative definition. Expanding the displayed statement recovers the exact first-order Peano-arithmetic formula checked by the unchanged kernel.
Definitions used by this theorem
In the theorem statement
1 occurrences
In local proof propositions
0 occurrences
Exact expanded native-PA statement
exists bqb_le_gap_hj32_scaled_budget_root_37. bqb_le_gap_hj32_scaled_budget_root_37 + (6 * (2 * 38 + 7 * 19)) = (37 * 37)Proof neighborhood
Direct theorem prerequisites
BT00W7 linear_square_budget BT0007 mul_add BT0008 mul_assoc BT0006 mul_comm BT000B add_mul BT0003 add_assoc BT0002 add_commDirect theorem dependents
Definition-aware tactic body
Only local propositions introduced by have or suffices are compacted. Every changed line has an exact-AST conservative-expansion receipt; the kernel still receives the immutable original tactic 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.
01Use earlier factsL1–8
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L1
specialize linear_square_budget 6 - L2
specialize linear_square_budget 5 - L3
specialize linear_square_budget 37 - L4
specialize linear_square_budget 7 - L5
specialize linear_square_budget 24 - L6
specialize linear_square_budget (2 * 38 + 7 * 19) - L7
specialize linear_square_budget (3 * 37 + 4) - L8
apply linear_square_budget
02Calculate and transport equalitiesL9–9
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L9
norm_num
03Establish hk_firstL10–12
04Establish hk_secondL13–13
Establish this local claim before using it. It is not an additional assumption.
- L13
have hk_second : 7 * 19 = 5 * 20 + 33
05Establish hk_sevenL14–21
06Establish hk_two_nineteenL22–24
07Establish hk_rightL25–25
Establish this local claim before using it. It is not an additional assumption.
- L25
have hk_right : 5 * 20 + 33 = 5 * 19 + 38
08Establish hk_stepL26–26
Establish this local claim before using it. It is not an additional assumption.
- L26
have hk_step : 5 * 20 = 5 * 19 + 5
09Establish hk_twentyL27–36
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mul add.
10Calculate and transport equalitiesL37–38
11Establish hk_assoc_stepL39–44
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add assoc.
12Establish hk_thirty_eightL45–51
13Establish hk_assoc_oneL52–57
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add assoc.
14Establish hk_assoc_twoL58–64
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add assoc.
15Establish hk_commL65–69
16Establish hk_assoc_threeL70–75
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add assoc.
17Establish hk_assoc_fourL76–82
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add assoc.
18Establish hk_factor_oneL83–88
19Establish hk_thirtyL89–91
20Establish hk_remainderL92–94
21Establish hk_assoc_fiveL95–101
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add assoc.
22Establish hk_factor_twoL102–107
23Establish hk_rootL108–111
24Establish hd_bridgeL112–112
Establish this local claim before using it. It is not an additional assumption.
- L112
have hd_bridge : 6 * 24 = 4 * 36
25Establish hd_twenty_fourL113–122
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mul assoc.
26Calculate and transport equalitiesL123–123
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L123
congr
27Use earlier factsL124–126
28Calculate and transport equalitiesL127–128
29Use earlier factsL129–132
30Establish hd_thirty_sixL133–137
31Establish hd_assocL138–143
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add assoc.
32Establish hd_stepL144–144
Establish this local claim before using it. It is not an additional assumption.
- L144
have hd_step : 4 + 4 * 36 = 4 * 37
33Establish hd_thirty_sevenL145–154
34Use earlier factsL155–156
35Calculate and transport equalitiesL157–157
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L157
rewrite hd_step
36Establish hd_factorL158–163
Original defined command ledger · 167 lines
- 0001
specialize linear_square_budget 6 - 0002
specialize linear_square_budget 5 - 0003
specialize linear_square_budget 37 - 0004
specialize linear_square_budget 7 - 0005
specialize linear_square_budget 24 - 0006
specialize linear_square_budget (2 * 38 + 7 * 19) - 0007
specialize linear_square_budget (3 * 37 + 4) - 0008
apply linear_square_budget - 0009
norm_num - 0010
have hk_first : 2 * 38 = 5 * 10 + 26 - 0011
norm_num - 0012
rewrite hk_first - 0013
have hk_second : 7 * 19 = 5 * 20 + 33 - 0014
have hk_seven : 7 = 5 + 2 - 0015
norm_num - 0016
rewrite hk_seven - 0017
trans 5 * 19 + 2 * 19 - 0018
specialize add_mul 5 - 0019
specialize add_mul 2 - 0020
specialize add_mul 19 - 0021
apply add_mul - 0022
have hk_two_nineteen : 2 * 19 = 38 - 0023
norm_num - 0024
rewrite hk_two_nineteen - 0025
have hk_right : 5 * 20 + 33 = 5 * 19 + 38 - 0026
have hk_step : 5 * 20 = 5 * 19 + 5 - 0027
have hk_twenty : 20 = 19 + 1 - 0028
norm_num - 0029
rewrite hk_twenty - 0030
trans 5 * 19 + 5 * 1 - 0031
specialize mul_add 5 - 0032
specialize mul_add 19 - 0033
specialize mul_add 1 - 0034
apply mul_add - 0035
congr - 0036
refl - 0037
norm_num - 0038
rewrite hk_step - 0039
have hk_assoc_step : (5 * 19 + 5) + 33 = 5 * 19 + (5 + 33) - 0040
specialize add_assoc (5 * 19) - 0041
specialize add_assoc 5 - 0042
specialize add_assoc 33 - 0043
apply add_assoc - 0044
rewrite hk_assoc_step - 0045
have hk_thirty_eight : 5 + 33 = 38 - 0046
norm_num - 0047
rewrite hk_thirty_eight - 0048
refl - 0049
symm - 0050
exact hk_right - 0051
rewrite hk_second - 0052
have hk_assoc_one : (5 * 10 + 26) + (5 * 20 + 33) = 5 * 10 + (26 + (5 * 20 + 33)) - 0053
specialize add_assoc (5 * 10) - 0054
specialize add_assoc 26 - 0055
specialize add_assoc (5 * 20 + 33) - 0056
apply add_assoc - 0057
rewrite hk_assoc_one - 0058
have hk_assoc_two : 26 + (5 * 20 + 33) = (26 + 5 * 20) + 33 - 0059
symm - 0060
specialize add_assoc 26 - 0061
specialize add_assoc (5 * 20) - 0062
specialize add_assoc 33 - 0063
apply add_assoc - 0064
rewrite hk_assoc_two - 0065
have hk_comm : 26 + 5 * 20 = 5 * 20 + 26 - 0066
specialize add_comm 26 - 0067
specialize add_comm (5 * 20) - 0068
apply add_comm - 0069
rewrite hk_comm - 0070
have hk_assoc_three : (5 * 20 + 26) + 33 = 5 * 20 + (26 + 33) - 0071
specialize add_assoc (5 * 20) - 0072
specialize add_assoc 26 - 0073
specialize add_assoc 33 - 0074
apply add_assoc - 0075
rewrite hk_assoc_three - 0076
have hk_assoc_four : 5 * 10 + (5 * 20 + (26 + 33)) = (5 * 10 + 5 * 20) + (26 + 33) - 0077
symm - 0078
specialize add_assoc (5 * 10) - 0079
specialize add_assoc (5 * 20) - 0080
specialize add_assoc (26 + 33) - 0081
apply add_assoc - 0082
rewrite hk_assoc_four - 0083
have hk_factor_one : 5 * (10 + 20) = 5 * 10 + 5 * 20 - 0084
specialize mul_add 5 - 0085
specialize mul_add 10 - 0086
specialize mul_add 20 - 0087
apply mul_add - 0088
rewrite <- hk_factor_one - 0089
have hk_thirty : 10 + 20 = 30 - 0090
norm_num - 0091
rewrite hk_thirty - 0092
have hk_remainder : 26 + 33 = 5 * 7 + 24 - 0093
norm_num - 0094
rewrite hk_remainder - 0095
have hk_assoc_five : 5 * 30 + (5 * 7 + 24) = (5 * 30 + 5 * 7) + 24 - 0096
symm - 0097
specialize add_assoc (5 * 30) - 0098
specialize add_assoc (5 * 7) - 0099
specialize add_assoc 24 - 0100
apply add_assoc - 0101
rewrite hk_assoc_five - 0102
have hk_factor_two : 5 * (30 + 7) = 5 * 30 + 5 * 7 - 0103
specialize mul_add 5 - 0104
specialize mul_add 30 - 0105
specialize mul_add 7 - 0106
apply mul_add - 0107
rewrite <- hk_factor_two - 0108
have hk_root : 30 + 7 = 37 - 0109
norm_num - 0110
rewrite hk_root - 0111
refl - 0112
have hd_bridge : 6 * 24 = 4 * 36 - 0113
have hd_twenty_four : 24 = 4 * 6 - 0114
norm_num - 0115
rewrite hd_twenty_four - 0116
trans (6 * 4) * 6 - 0117
symm - 0118
specialize mul_assoc 6 - 0119
specialize mul_assoc 4 - 0120
specialize mul_assoc 6 - 0121
apply mul_assoc - 0122
trans (4 * 6) * 6 - 0123
congr - 0124
specialize mul_comm 6 - 0125
specialize mul_comm 4 - 0126
apply mul_comm - 0127
refl - 0128
trans 4 * (6 * 6) - 0129
specialize mul_assoc 4 - 0130
specialize mul_assoc 6 - 0131
specialize mul_assoc 6 - 0132
apply mul_assoc - 0133
have hd_thirty_six : 36 = 6 * 6 - 0134
norm_num - 0135
rewrite <- hd_thirty_six - 0136
refl - 0137
rewrite hd_bridge - 0138
have hd_assoc : (3 * 37 + 4) + 4 * 36 = 3 * 37 + (4 + 4 * 36) - 0139
specialize add_assoc (3 * 37) - 0140
specialize add_assoc 4 - 0141
specialize add_assoc (4 * 36) - 0142
apply add_assoc - 0143
rewrite hd_assoc - 0144
have hd_step : 4 + 4 * 36 = 4 * 37 - 0145
have hd_thirty_seven : 37 = 1 + 36 - 0146
norm_num - 0147
rewrite hd_thirty_seven - 0148
trans 4 * 1 + 4 * 36 - 0149
congr - 0150
norm_num - 0151
refl - 0152
symm - 0153
specialize mul_add 4 - 0154
specialize mul_add 1 - 0155
specialize mul_add 36 - 0156
apply mul_add - 0157
rewrite hd_step - 0158
have hd_factor : (3 + 4) * 37 = 3 * 37 + 4 * 37 - 0159
specialize add_mul 3 - 0160
specialize add_mul 4 - 0161
specialize add_mul 37 - 0162
apply add_mul - 0163
rewrite <- hd_factor - 0164
have hd_seven : 3 + 4 = 7 - 0165
norm_num - 0166
rewrite hd_seven - 0167
refl