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
∀ p. ∀ e. ∀ f. ∀ x. ∀ y. Lt(0,p) → Le(e,f) → Pow(p,e,x) → Pow(p,f,y) → Le(x,y)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
5 occurrences
In local proof propositions
3 occurrences
Exact expanded native-PA statement
forall p e f x y. (exists bcf_le_gap_bppem_base. bcf_le_gap_bppem_base + (1) = p) -> (exists bcf_le_gap_bppem_exponent. bcf_le_gap_bppem_exponent + (e) = f) -> (exists ff_b_bppem_left_power ff_c_bppem_left_power. ((forall ff_i_bppem_left_power_repeat. (exists ff_lt_bppem_left_power_repeat_bound. ff_lt_bppem_left_power_repeat_bound + S ff_i_bppem_left_power_repeat = e) -> (((exists ff_h_bppem_left_power_repeat_decoded. ff_h_bppem_left_power_repeat_decoded + S (p) = S ((S (ff_i_bppem_left_power_repeat)) * ff_c_bppem_left_power)) /\ exists ff_q_bppem_left_power_repeat_decoded. ff_b_bppem_left_power = ff_q_bppem_left_power_repeat_decoded * S ((S (ff_i_bppem_left_power_repeat)) * ff_c_bppem_left_power) + (p)))) /\ (exists ff_u_bppem_left_power_product ff_v_bppem_left_power_product. ((((exists ff_h_bppem_left_power_product_start. ff_h_bppem_left_power_product_start + S (1) = S ((S (0)) * ff_v_bppem_left_power_product)) /\ exists ff_q_bppem_left_power_product_start. ff_u_bppem_left_power_product = ff_q_bppem_left_power_product_start * S ((S (0)) * ff_v_bppem_left_power_product) + (1))) /\ ((((exists ff_h_bppem_left_power_product_terminal. ff_h_bppem_left_power_product_terminal + S (x) = S ((S (e)) * ff_v_bppem_left_power_product)) /\ exists ff_q_bppem_left_power_product_terminal. ff_u_bppem_left_power_product = ff_q_bppem_left_power_product_terminal * S ((S (e)) * ff_v_bppem_left_power_product) + (x))) /\ forall ff_i_bppem_left_power_product. (exists ff_lt_bppem_left_power_product_bound. ff_lt_bppem_left_power_product_bound + S ff_i_bppem_left_power_product = e) -> exists ff_p_bppem_left_power_product ff_r_bppem_left_power_product ff_s_bppem_left_power_product. ((((exists ff_h_bppem_left_power_product_factor. ff_h_bppem_left_power_product_factor + S (ff_p_bppem_left_power_product) = S ((S (ff_i_bppem_left_power_product)) * ff_c_bppem_left_power)) /\ exists ff_q_bppem_left_power_product_factor. ff_b_bppem_left_power = ff_q_bppem_left_power_product_factor * S ((S (ff_i_bppem_left_power_product)) * ff_c_bppem_left_power) + (ff_p_bppem_left_power_product))) /\ ((((exists ff_h_bppem_left_power_product_partial. ff_h_bppem_left_power_product_partial + S (ff_r_bppem_left_power_product) = S ((S (ff_i_bppem_left_power_product)) * ff_v_bppem_left_power_product)) /\ exists ff_q_bppem_left_power_product_partial. ff_u_bppem_left_power_product = ff_q_bppem_left_power_product_partial * S ((S (ff_i_bppem_left_power_product)) * ff_v_bppem_left_power_product) + (ff_r_bppem_left_power_product))) /\ ((((exists ff_h_bppem_left_power_product_successor. ff_h_bppem_left_power_product_successor + S (ff_s_bppem_left_power_product) = S ((S (S ff_i_bppem_left_power_product)) * ff_v_bppem_left_power_product)) /\ exists ff_q_bppem_left_power_product_successor. ff_u_bppem_left_power_product = ff_q_bppem_left_power_product_successor * S ((S (S ff_i_bppem_left_power_product)) * ff_v_bppem_left_power_product) + (ff_s_bppem_left_power_product))) /\ ff_s_bppem_left_power_product = ff_r_bppem_left_power_product * ff_p_bppem_left_power_product)))))))) -> (exists ff_b_bppem_right_power ff_c_bppem_right_power. ((forall ff_i_bppem_right_power_repeat. (exists ff_lt_bppem_right_power_repeat_bound. ff_lt_bppem_right_power_repeat_bound + S ff_i_bppem_right_power_repeat = f) -> (((exists ff_h_bppem_right_power_repeat_decoded. ff_h_bppem_right_power_repeat_decoded + S (p) = S ((S (ff_i_bppem_right_power_repeat)) * ff_c_bppem_right_power)) /\ exists ff_q_bppem_right_power_repeat_decoded. ff_b_bppem_right_power = ff_q_bppem_right_power_repeat_decoded * S ((S (ff_i_bppem_right_power_repeat)) * ff_c_bppem_right_power) + (p)))) /\ (exists ff_u_bppem_right_power_product ff_v_bppem_right_power_product. ((((exists ff_h_bppem_right_power_product_start. ff_h_bppem_right_power_product_start + S (1) = S ((S (0)) * ff_v_bppem_right_power_product)) /\ exists ff_q_bppem_right_power_product_start. ff_u_bppem_right_power_product = ff_q_bppem_right_power_product_start * S ((S (0)) * ff_v_bppem_right_power_product) + (1))) /\ ((((exists ff_h_bppem_right_power_product_terminal. ff_h_bppem_right_power_product_terminal + S (y) = S ((S (f)) * ff_v_bppem_right_power_product)) /\ exists ff_q_bppem_right_power_product_terminal. ff_u_bppem_right_power_product = ff_q_bppem_right_power_product_terminal * S ((S (f)) * ff_v_bppem_right_power_product) + (y))) /\ forall ff_i_bppem_right_power_product. (exists ff_lt_bppem_right_power_product_bound. ff_lt_bppem_right_power_product_bound + S ff_i_bppem_right_power_product = f) -> exists ff_p_bppem_right_power_product ff_r_bppem_right_power_product ff_s_bppem_right_power_product. ((((exists ff_h_bppem_right_power_product_factor. ff_h_bppem_right_power_product_factor + S (ff_p_bppem_right_power_product) = S ((S (ff_i_bppem_right_power_product)) * ff_c_bppem_right_power)) /\ exists ff_q_bppem_right_power_product_factor. ff_b_bppem_right_power = ff_q_bppem_right_power_product_factor * S ((S (ff_i_bppem_right_power_product)) * ff_c_bppem_right_power) + (ff_p_bppem_right_power_product))) /\ ((((exists ff_h_bppem_right_power_product_partial. ff_h_bppem_right_power_product_partial + S (ff_r_bppem_right_power_product) = S ((S (ff_i_bppem_right_power_product)) * ff_v_bppem_right_power_product)) /\ exists ff_q_bppem_right_power_product_partial. ff_u_bppem_right_power_product = ff_q_bppem_right_power_product_partial * S ((S (ff_i_bppem_right_power_product)) * ff_v_bppem_right_power_product) + (ff_r_bppem_right_power_product))) /\ ((((exists ff_h_bppem_right_power_product_successor. ff_h_bppem_right_power_product_successor + S (ff_s_bppem_right_power_product) = S ((S (S ff_i_bppem_right_power_product)) * ff_v_bppem_right_power_product)) /\ exists ff_q_bppem_right_power_product_successor. ff_u_bppem_right_power_product = ff_q_bppem_right_power_product_successor * S ((S (S ff_i_bppem_right_power_product)) * ff_v_bppem_right_power_product) + (ff_s_bppem_right_power_product))) /\ ff_s_bppem_right_power_product = ff_r_bppem_right_power_product * ff_p_bppem_right_power_product)))))))) -> (exists bcf_le_gap_bppem_result. bcf_le_gap_bppem_result + (x) = y)Proof neighborhood
Direct theorem prerequisites
Direct 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.
Named ingredients (5)
01Fix variables and assumptionsL1–9
02Separate the logical casesL10–10
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L10
cases hexponent
03Establish hgap_powerL11–14
Establish this local claim before using it. It is not an additional assumption.
- L11
have hgap_power : ∃ z. Pow(p,x1,z)Definitions: Pow(p,x1,z)Original native command in the exact edition - L12
specialize pow_exists p - L13
specialize pow_exists x1 - L14
exact pow_exists
04Separate the logical casesL15–15
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L15
cases hgap_power
05Establish hsumL16–20
06Establish hfactorL21–30
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply pow add.
07Use earlier factsL31–33
08Establish hgap_orderL34–40
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply one le pow.
09Establish hproduct_orderL41–47
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le mul of one le right.
- L41
have hproduct_order : Le(x,x · x2)Definitions: Le(x,x · x2)Original native command in the exact edition - L42
specialize le_mul_of_one_le_right x - L43
specialize le_mul_of_one_le_right x2 - L44
apply le_mul_of_one_le_right - L45
exact hgap_order - L46
rewrite hfactor - L47
exact hproduct_order
Original defined command ledger · 47 lines
- 0001
intro p - 0002
intro e - 0003
intro f - 0004
intro x - 0005
intro y - 0006
intro hbase - 0007
intro hexponent - 0008
intro hx - 0009
intro hy - 0010
cases hexponent - 0011
have hgap_power : ∃ z. Pow(p,x1,z)Exact native replay line
have hgap_power : exists z. (exists ff_b_bppem_gap_power ff_c_bppem_gap_power. ((forall ff_i_bppem_gap_power_repeat. (exists ff_lt_bppem_gap_power_repeat_bound. ff_lt_bppem_gap_power_repeat_bound + S ff_i_bppem_gap_power_repeat = x1) -> (((exists ff_h_bppem_gap_power_repeat_decoded. ff_h_bppem_gap_power_repeat_decoded + S (p) = S ((S (ff_i_bppem_gap_power_repeat)) * ff_c_bppem_gap_power)) /\ exists ff_q_bppem_gap_power_repeat_decoded. ff_b_bppem_gap_power = ff_q_bppem_gap_power_repeat_decoded * S ((S (ff_i_bppem_gap_power_repeat)) * ff_c_bppem_gap_power) + (p)))) /\ (exists ff_u_bppem_gap_power_product ff_v_bppem_gap_power_product. ((((exists ff_h_bppem_gap_power_product_start. ff_h_bppem_gap_power_product_start + S (1) = S ((S (0)) * ff_v_bppem_gap_power_product)) /\ exists ff_q_bppem_gap_power_product_start. ff_u_bppem_gap_power_product = ff_q_bppem_gap_power_product_start * S ((S (0)) * ff_v_bppem_gap_power_product) + (1))) /\ ((((exists ff_h_bppem_gap_power_product_terminal. ff_h_bppem_gap_power_product_terminal + S (z) = S ((S (x1)) * ff_v_bppem_gap_power_product)) /\ exists ff_q_bppem_gap_power_product_terminal. ff_u_bppem_gap_power_product = ff_q_bppem_gap_power_product_terminal * S ((S (x1)) * ff_v_bppem_gap_power_product) + (z))) /\ forall ff_i_bppem_gap_power_product. (exists ff_lt_bppem_gap_power_product_bound. ff_lt_bppem_gap_power_product_bound + S ff_i_bppem_gap_power_product = x1) -> exists ff_p_bppem_gap_power_product ff_r_bppem_gap_power_product ff_s_bppem_gap_power_product. ((((exists ff_h_bppem_gap_power_product_factor. ff_h_bppem_gap_power_product_factor + S (ff_p_bppem_gap_power_product) = S ((S (ff_i_bppem_gap_power_product)) * ff_c_bppem_gap_power)) /\ exists ff_q_bppem_gap_power_product_factor. ff_b_bppem_gap_power = ff_q_bppem_gap_power_product_factor * S ((S (ff_i_bppem_gap_power_product)) * ff_c_bppem_gap_power) + (ff_p_bppem_gap_power_product))) /\ ((((exists ff_h_bppem_gap_power_product_partial. ff_h_bppem_gap_power_product_partial + S (ff_r_bppem_gap_power_product) = S ((S (ff_i_bppem_gap_power_product)) * ff_v_bppem_gap_power_product)) /\ exists ff_q_bppem_gap_power_product_partial. ff_u_bppem_gap_power_product = ff_q_bppem_gap_power_product_partial * S ((S (ff_i_bppem_gap_power_product)) * ff_v_bppem_gap_power_product) + (ff_r_bppem_gap_power_product))) /\ ((((exists ff_h_bppem_gap_power_product_successor. ff_h_bppem_gap_power_product_successor + S (ff_s_bppem_gap_power_product) = S ((S (S ff_i_bppem_gap_power_product)) * ff_v_bppem_gap_power_product)) /\ exists ff_q_bppem_gap_power_product_successor. ff_u_bppem_gap_power_product = ff_q_bppem_gap_power_product_successor * S ((S (S ff_i_bppem_gap_power_product)) * ff_v_bppem_gap_power_product) + (ff_s_bppem_gap_power_product))) /\ ff_s_bppem_gap_power_product = ff_r_bppem_gap_power_product * ff_p_bppem_gap_power_product)))))))) - 0012
specialize pow_exists p - 0013
specialize pow_exists x1 - 0014
exact pow_exists - 0015
cases hgap_power - 0016
have hsum : f = e + x1 - 0017
trans x1 + e - 0018
symm - 0019
exact hexponent_witness - 0020
apply add_comm - 0021
have hfactor : y = x * x2 - 0022
specialize pow_add p - 0023
specialize pow_add e - 0024
specialize pow_add x1 - 0025
specialize pow_add f - 0026
specialize pow_add x - 0027
specialize pow_add x2 - 0028
specialize pow_add y - 0029
apply pow_add - 0030
exact hsum - 0031
exact hx - 0032
exact hgap_power_witness - 0033
exact hy - 0034
have hgap_order : Lt(0,x2)Exact native replay line
have hgap_order : exists bcf_le_gap_bppem_gap_power_order. bcf_le_gap_bppem_gap_power_order + (1) = x2 - 0035
specialize one_le_pow p - 0036
specialize one_le_pow x1 - 0037
specialize one_le_pow x2 - 0038
apply one_le_pow - 0039
exact hbase - 0040
exact hgap_power_witness - 0041
have hproduct_order : Le(x,x · x2)Exact native replay line
have hproduct_order : exists bcf_le_gap_bppem_product_order. bcf_le_gap_bppem_product_order + (x) = x * x2 - 0042
specialize le_mul_of_one_le_right x - 0043
specialize le_mul_of_one_le_right x2 - 0044
apply le_mul_of_one_le_right - 0045
exact hgap_order - 0046
rewrite hfactor - 0047
exact hproduct_order