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
∀ b. ∀ c. ∀ i. ∀ x. ∀ y. BetaAt(b,c,i,x) → BetaAt(b,c,i,y) → x = yEvery 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
2 occurrences
In local proof propositions
0 occurrences
Exact expanded native-PA statement
forall b c i x y. ((exists h. h + S x = S ((S i) * c)) /\ exists q. b = q * S ((S i) * c) + x) -> ((exists h. h + S y = S ((S i) * c)) /\ exists q. b = q * S ((S i) * c) + y) -> x = yProof neighborhood
Direct theorem prerequisites
Direct theorem dependents
BT005A beta_exclusive_recode_congruence_step BT005G beta_product_functional BT005I beta_product_zero BT005J beta_product_succ_decompose BT0069 beta_factor_divides_product BT007X beta_repeat_entry_eq BT0087 beta_range_entry_eq BT008B beta_sum_trace_functional BT008E beta_sum_zero BT008F beta_sum_succ_decompose BT008O bit_count_succ_decompose BT00JB eisenstein_initial_segment_decoded_choice BT00JC beta_all_one_bit_count_exact BT00S1 power_quotient_prefix_transport BT00SJ power_quotient_prefix_decoded_divrem BT00SR beta_sum_succ_last_zero BT00T9 beta_pascal_zero_row_pointwise_functional BT00TA beta_pascal_row_step_pointwise_functional BT00TB beta_pascal_table_row_pointwise_functional BT00TE choose_zero BT00TF beta_pascal_table_diagonal_boundary BT00TH beta_pascal_table_successor_cell_recurrence BT00UD primorial_succ_decompose BT00UW primorial_interval_factor_prefix_shift BT00VE primorial_interval_pairwise_coprime BT00VF primorial_interval_divides_choose_between BT00Y3 beta_sum_double_carry_exact BT00Y5 central_binom_prime_power_contribution_le_double BT00YC double_quotient_carry_prefix_entries_zero BT00YD central_binom_prime_valuation_zero_of_exact_double_quotients BT00YW prime_contribution_prefix_pairwise_coprime BT00YY prime_contribution_product_divides BT010P prime_contribution_interval_prefix_shift BT010Y no_bertrand_small_contribution_product_le_power BT0110 no_bertrand_middle_contribution_interval_le_primorial_interval BT0112 no_bertrand_high_contribution_interval_eq_oneDefinition-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.
Named ingredients (2)
01Fix variables and assumptionsL1–7
02Separate the logical casesL8–11
03Establish hdxL12–17
04Establish hdyL18–27
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mul comm.
- L18
have hdy : b = S ((S i) * c) * x2 + y - L19
trans x2 * S ((S i) * c) + y - L20
exact hy_right_witness - L21
congr - L22
apply mul_comm - L23
refl - L24
specialize division_remainder_unique (S ((S i) * c)) - L25
specialize division_remainder_unique b - L26
specialize division_remainder_unique x1 - L27
specialize division_remainder_unique x
05Use earlier factsL28–29
06Establish huniqL30–35
07Separate the logical casesL36–36
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L36
cases huniq
08Use earlier factsL37–37
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L37
exact huniq_right
Original defined command ledger · 37 lines
- 0001
intro b - 0002
intro c - 0003
intro i - 0004
intro x - 0005
intro y - 0006
intro hx - 0007
intro hy - 0008
cases hx - 0009
cases hy - 0010
cases hx_right - 0011
cases hy_right - 0012
have hdx : b = S ((S i) * c) * x1 + x - 0013
trans x1 * S ((S i) * c) + x - 0014
exact hx_right_witness - 0015
congr - 0016
apply mul_comm - 0017
refl - 0018
have hdy : b = S ((S i) * c) * x2 + y - 0019
trans x2 * S ((S i) * c) + y - 0020
exact hy_right_witness - 0021
congr - 0022
apply mul_comm - 0023
refl - 0024
specialize division_remainder_unique (S ((S i) * c)) - 0025
specialize division_remainder_unique b - 0026
specialize division_remainder_unique x1 - 0027
specialize division_remainder_unique x - 0028
specialize division_remainder_unique x2 - 0029
specialize division_remainder_unique y - 0030
have huniq : x1 = x2 /\ x = y - 0031
apply division_remainder_unique - 0032
exact hdx - 0033
exact hx_left - 0034
exact hdy - 0035
exact hy_left - 0036
cases huniq - 0037
exact huniq_right