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. ∀ a. ∀ f. ∀ k. Prime(p) → ¬a = 0 → PowerValuation(p,a,f) → PowerDivides(p,k,a) → Le(k,f)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
4 occurrences
In local proof propositions
1 occurrences
Exact expanded native-PA statement
forall p a f k. ((~(p = 1) /\ forall frm_prime_left_blvb_prime frm_prime_right_blvb_prime. p = frm_prime_left_blvb_prime * frm_prime_right_blvb_prime -> frm_prime_left_blvb_prime = 1 \/ frm_prime_right_blvb_prime = 1)) -> ~(a = 0) -> (((exists bpv_gap_blvb_valuation_exponent_bound. bpv_gap_blvb_valuation_exponent_bound + f = a) /\ (exists bpv_result_blvb_valuation_selected. ((exists ff_b_blvb_valuation_selected_power ff_c_blvb_valuation_selected_power. ((forall ff_i_blvb_valuation_selected_power_repeat. (exists ff_lt_blvb_valuation_selected_power_repeat_bound. ff_lt_blvb_valuation_selected_power_repeat_bound + S ff_i_blvb_valuation_selected_power_repeat = f) -> (((exists ff_h_blvb_valuation_selected_power_repeat_decoded. ff_h_blvb_valuation_selected_power_repeat_decoded + S (p) = S ((S (ff_i_blvb_valuation_selected_power_repeat)) * ff_c_blvb_valuation_selected_power)) /\ exists ff_q_blvb_valuation_selected_power_repeat_decoded. ff_b_blvb_valuation_selected_power = ff_q_blvb_valuation_selected_power_repeat_decoded * S ((S (ff_i_blvb_valuation_selected_power_repeat)) * ff_c_blvb_valuation_selected_power) + (p)))) /\ (exists ff_u_blvb_valuation_selected_power_product ff_v_blvb_valuation_selected_power_product. ((((exists ff_h_blvb_valuation_selected_power_product_start. ff_h_blvb_valuation_selected_power_product_start + S (1) = S ((S (0)) * ff_v_blvb_valuation_selected_power_product)) /\ exists ff_q_blvb_valuation_selected_power_product_start. ff_u_blvb_valuation_selected_power_product = ff_q_blvb_valuation_selected_power_product_start * S ((S (0)) * ff_v_blvb_valuation_selected_power_product) + (1))) /\ ((((exists ff_h_blvb_valuation_selected_power_product_terminal. ff_h_blvb_valuation_selected_power_product_terminal + S (bpv_result_blvb_valuation_selected) = S ((S (f)) * ff_v_blvb_valuation_selected_power_product)) /\ exists ff_q_blvb_valuation_selected_power_product_terminal. ff_u_blvb_valuation_selected_power_product = ff_q_blvb_valuation_selected_power_product_terminal * S ((S (f)) * ff_v_blvb_valuation_selected_power_product) + (bpv_result_blvb_valuation_selected))) /\ forall ff_i_blvb_valuation_selected_power_product. (exists ff_lt_blvb_valuation_selected_power_product_bound. ff_lt_blvb_valuation_selected_power_product_bound + S ff_i_blvb_valuation_selected_power_product = f) -> exists ff_p_blvb_valuation_selected_power_product ff_r_blvb_valuation_selected_power_product ff_s_blvb_valuation_selected_power_product. ((((exists ff_h_blvb_valuation_selected_power_product_factor. ff_h_blvb_valuation_selected_power_product_factor + S (ff_p_blvb_valuation_selected_power_product) = S ((S (ff_i_blvb_valuation_selected_power_product)) * ff_c_blvb_valuation_selected_power)) /\ exists ff_q_blvb_valuation_selected_power_product_factor. ff_b_blvb_valuation_selected_power = ff_q_blvb_valuation_selected_power_product_factor * S ((S (ff_i_blvb_valuation_selected_power_product)) * ff_c_blvb_valuation_selected_power) + (ff_p_blvb_valuation_selected_power_product))) /\ ((((exists ff_h_blvb_valuation_selected_power_product_partial. ff_h_blvb_valuation_selected_power_product_partial + S (ff_r_blvb_valuation_selected_power_product) = S ((S (ff_i_blvb_valuation_selected_power_product)) * ff_v_blvb_valuation_selected_power_product)) /\ exists ff_q_blvb_valuation_selected_power_product_partial. ff_u_blvb_valuation_selected_power_product = ff_q_blvb_valuation_selected_power_product_partial * S ((S (ff_i_blvb_valuation_selected_power_product)) * ff_v_blvb_valuation_selected_power_product) + (ff_r_blvb_valuation_selected_power_product))) /\ ((((exists ff_h_blvb_valuation_selected_power_product_successor. ff_h_blvb_valuation_selected_power_product_successor + S (ff_s_blvb_valuation_selected_power_product) = S ((S (S ff_i_blvb_valuation_selected_power_product)) * ff_v_blvb_valuation_selected_power_product)) /\ exists ff_q_blvb_valuation_selected_power_product_successor. ff_u_blvb_valuation_selected_power_product = ff_q_blvb_valuation_selected_power_product_successor * S ((S (S ff_i_blvb_valuation_selected_power_product)) * ff_v_blvb_valuation_selected_power_product) + (ff_s_blvb_valuation_selected_power_product))) /\ ff_s_blvb_valuation_selected_power_product = ff_r_blvb_valuation_selected_power_product * ff_p_blvb_valuation_selected_power_product)))))))) /\ (exists bpv_factor_blvb_valuation_selected_divides. a = bpv_result_blvb_valuation_selected * bpv_factor_blvb_valuation_selected_divides)))) /\ forall bpv_candidate_blvb_valuation. (exists bpv_gap_blvb_valuation_candidate_bound. bpv_gap_blvb_valuation_candidate_bound + bpv_candidate_blvb_valuation = a) -> (exists bpv_result_blvb_valuation_candidate. ((exists ff_b_blvb_valuation_candidate_power ff_c_blvb_valuation_candidate_power. ((forall ff_i_blvb_valuation_candidate_power_repeat. (exists ff_lt_blvb_valuation_candidate_power_repeat_bound. ff_lt_blvb_valuation_candidate_power_repeat_bound + S ff_i_blvb_valuation_candidate_power_repeat = bpv_candidate_blvb_valuation) -> (((exists ff_h_blvb_valuation_candidate_power_repeat_decoded. ff_h_blvb_valuation_candidate_power_repeat_decoded + S (p) = S ((S (ff_i_blvb_valuation_candidate_power_repeat)) * ff_c_blvb_valuation_candidate_power)) /\ exists ff_q_blvb_valuation_candidate_power_repeat_decoded. ff_b_blvb_valuation_candidate_power = ff_q_blvb_valuation_candidate_power_repeat_decoded * S ((S (ff_i_blvb_valuation_candidate_power_repeat)) * ff_c_blvb_valuation_candidate_power) + (p)))) /\ (exists ff_u_blvb_valuation_candidate_power_product ff_v_blvb_valuation_candidate_power_product. ((((exists ff_h_blvb_valuation_candidate_power_product_start. ff_h_blvb_valuation_candidate_power_product_start + S (1) = S ((S (0)) * ff_v_blvb_valuation_candidate_power_product)) /\ exists ff_q_blvb_valuation_candidate_power_product_start. ff_u_blvb_valuation_candidate_power_product = ff_q_blvb_valuation_candidate_power_product_start * S ((S (0)) * ff_v_blvb_valuation_candidate_power_product) + (1))) /\ ((((exists ff_h_blvb_valuation_candidate_power_product_terminal. ff_h_blvb_valuation_candidate_power_product_terminal + S (bpv_result_blvb_valuation_candidate) = S ((S (bpv_candidate_blvb_valuation)) * ff_v_blvb_valuation_candidate_power_product)) /\ exists ff_q_blvb_valuation_candidate_power_product_terminal. ff_u_blvb_valuation_candidate_power_product = ff_q_blvb_valuation_candidate_power_product_terminal * S ((S (bpv_candidate_blvb_valuation)) * ff_v_blvb_valuation_candidate_power_product) + (bpv_result_blvb_valuation_candidate))) /\ forall ff_i_blvb_valuation_candidate_power_product. (exists ff_lt_blvb_valuation_candidate_power_product_bound. ff_lt_blvb_valuation_candidate_power_product_bound + S ff_i_blvb_valuation_candidate_power_product = bpv_candidate_blvb_valuation) -> exists ff_p_blvb_valuation_candidate_power_product ff_r_blvb_valuation_candidate_power_product ff_s_blvb_valuation_candidate_power_product. ((((exists ff_h_blvb_valuation_candidate_power_product_factor. ff_h_blvb_valuation_candidate_power_product_factor + S (ff_p_blvb_valuation_candidate_power_product) = S ((S (ff_i_blvb_valuation_candidate_power_product)) * ff_c_blvb_valuation_candidate_power)) /\ exists ff_q_blvb_valuation_candidate_power_product_factor. ff_b_blvb_valuation_candidate_power = ff_q_blvb_valuation_candidate_power_product_factor * S ((S (ff_i_blvb_valuation_candidate_power_product)) * ff_c_blvb_valuation_candidate_power) + (ff_p_blvb_valuation_candidate_power_product))) /\ ((((exists ff_h_blvb_valuation_candidate_power_product_partial. ff_h_blvb_valuation_candidate_power_product_partial + S (ff_r_blvb_valuation_candidate_power_product) = S ((S (ff_i_blvb_valuation_candidate_power_product)) * ff_v_blvb_valuation_candidate_power_product)) /\ exists ff_q_blvb_valuation_candidate_power_product_partial. ff_u_blvb_valuation_candidate_power_product = ff_q_blvb_valuation_candidate_power_product_partial * S ((S (ff_i_blvb_valuation_candidate_power_product)) * ff_v_blvb_valuation_candidate_power_product) + (ff_r_blvb_valuation_candidate_power_product))) /\ ((((exists ff_h_blvb_valuation_candidate_power_product_successor. ff_h_blvb_valuation_candidate_power_product_successor + S (ff_s_blvb_valuation_candidate_power_product) = S ((S (S ff_i_blvb_valuation_candidate_power_product)) * ff_v_blvb_valuation_candidate_power_product)) /\ exists ff_q_blvb_valuation_candidate_power_product_successor. ff_u_blvb_valuation_candidate_power_product = ff_q_blvb_valuation_candidate_power_product_successor * S ((S (S ff_i_blvb_valuation_candidate_power_product)) * ff_v_blvb_valuation_candidate_power_product) + (ff_s_blvb_valuation_candidate_power_product))) /\ ff_s_blvb_valuation_candidate_power_product = ff_r_blvb_valuation_candidate_power_product * ff_p_blvb_valuation_candidate_power_product)))))))) /\ (exists bpv_factor_blvb_valuation_candidate_divides. a = bpv_result_blvb_valuation_candidate * bpv_factor_blvb_valuation_candidate_divides))) -> (exists bpv_gap_blvb_valuation_maximal. bpv_gap_blvb_valuation_maximal + bpv_candidate_blvb_valuation = f)) -> (exists bpv_result_blvb_candidate_divides. ((exists ff_b_blvb_candidate_divides_power ff_c_blvb_candidate_divides_power. ((forall ff_i_blvb_candidate_divides_power_repeat. (exists ff_lt_blvb_candidate_divides_power_repeat_bound. ff_lt_blvb_candidate_divides_power_repeat_bound + S ff_i_blvb_candidate_divides_power_repeat = k) -> (((exists ff_h_blvb_candidate_divides_power_repeat_decoded. ff_h_blvb_candidate_divides_power_repeat_decoded + S (p) = S ((S (ff_i_blvb_candidate_divides_power_repeat)) * ff_c_blvb_candidate_divides_power)) /\ exists ff_q_blvb_candidate_divides_power_repeat_decoded. ff_b_blvb_candidate_divides_power = ff_q_blvb_candidate_divides_power_repeat_decoded * S ((S (ff_i_blvb_candidate_divides_power_repeat)) * ff_c_blvb_candidate_divides_power) + (p)))) /\ (exists ff_u_blvb_candidate_divides_power_product ff_v_blvb_candidate_divides_power_product. ((((exists ff_h_blvb_candidate_divides_power_product_start. ff_h_blvb_candidate_divides_power_product_start + S (1) = S ((S (0)) * ff_v_blvb_candidate_divides_power_product)) /\ exists ff_q_blvb_candidate_divides_power_product_start. ff_u_blvb_candidate_divides_power_product = ff_q_blvb_candidate_divides_power_product_start * S ((S (0)) * ff_v_blvb_candidate_divides_power_product) + (1))) /\ ((((exists ff_h_blvb_candidate_divides_power_product_terminal. ff_h_blvb_candidate_divides_power_product_terminal + S (bpv_result_blvb_candidate_divides) = S ((S (k)) * ff_v_blvb_candidate_divides_power_product)) /\ exists ff_q_blvb_candidate_divides_power_product_terminal. ff_u_blvb_candidate_divides_power_product = ff_q_blvb_candidate_divides_power_product_terminal * S ((S (k)) * ff_v_blvb_candidate_divides_power_product) + (bpv_result_blvb_candidate_divides))) /\ forall ff_i_blvb_candidate_divides_power_product. (exists ff_lt_blvb_candidate_divides_power_product_bound. ff_lt_blvb_candidate_divides_power_product_bound + S ff_i_blvb_candidate_divides_power_product = k) -> exists ff_p_blvb_candidate_divides_power_product ff_r_blvb_candidate_divides_power_product ff_s_blvb_candidate_divides_power_product. ((((exists ff_h_blvb_candidate_divides_power_product_factor. ff_h_blvb_candidate_divides_power_product_factor + S (ff_p_blvb_candidate_divides_power_product) = S ((S (ff_i_blvb_candidate_divides_power_product)) * ff_c_blvb_candidate_divides_power)) /\ exists ff_q_blvb_candidate_divides_power_product_factor. ff_b_blvb_candidate_divides_power = ff_q_blvb_candidate_divides_power_product_factor * S ((S (ff_i_blvb_candidate_divides_power_product)) * ff_c_blvb_candidate_divides_power) + (ff_p_blvb_candidate_divides_power_product))) /\ ((((exists ff_h_blvb_candidate_divides_power_product_partial. ff_h_blvb_candidate_divides_power_product_partial + S (ff_r_blvb_candidate_divides_power_product) = S ((S (ff_i_blvb_candidate_divides_power_product)) * ff_v_blvb_candidate_divides_power_product)) /\ exists ff_q_blvb_candidate_divides_power_product_partial. ff_u_blvb_candidate_divides_power_product = ff_q_blvb_candidate_divides_power_product_partial * S ((S (ff_i_blvb_candidate_divides_power_product)) * ff_v_blvb_candidate_divides_power_product) + (ff_r_blvb_candidate_divides_power_product))) /\ ((((exists ff_h_blvb_candidate_divides_power_product_successor. ff_h_blvb_candidate_divides_power_product_successor + S (ff_s_blvb_candidate_divides_power_product) = S ((S (S ff_i_blvb_candidate_divides_power_product)) * ff_v_blvb_candidate_divides_power_product)) /\ exists ff_q_blvb_candidate_divides_power_product_successor. ff_u_blvb_candidate_divides_power_product = ff_q_blvb_candidate_divides_power_product_successor * S ((S (S ff_i_blvb_candidate_divides_power_product)) * ff_v_blvb_candidate_divides_power_product) + (ff_s_blvb_candidate_divides_power_product))) /\ ff_s_blvb_candidate_divides_power_product = ff_r_blvb_candidate_divides_power_product * ff_p_blvb_candidate_divides_power_product)))))))) /\ (exists bpv_factor_blvb_candidate_divides_divides. a = bpv_result_blvb_candidate_divides * bpv_factor_blvb_candidate_divides_divides))) -> (exists bpv_gap_blvb_candidate_bound. bpv_gap_blvb_candidate_bound + k = f)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 (2)
01Fix variables and assumptionsL1–8
02Establish hvalue_boundL9–18
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime power divides exponent le value.
- L9
- L10
specialize prime_power_divides_exponent_le_value p - L11
specialize prime_power_divides_exponent_le_value k - L12
specialize prime_power_divides_exponent_le_value a - L13
apply prime_power_divides_exponent_le_value - L14
exact hp - L15
exact ha - L16
exact hdivides - L17
specialize power_valuation_dominates p - L18
specialize power_valuation_dominates a
Original defined command ledger · 24 lines
- 0001
intro p - 0002
intro a - 0003
intro f - 0004
intro k - 0005
intro hp - 0006
intro ha - 0007
intro hvaluation - 0008
intro hdivides - 0009
have hvalue_bound : Le(k,a)Exact native replay line
have hvalue_bound : exists gap. gap + k = a - 0010
specialize prime_power_divides_exponent_le_value p - 0011
specialize prime_power_divides_exponent_le_value k - 0012
specialize prime_power_divides_exponent_le_value a - 0013
apply prime_power_divides_exponent_le_value - 0014
exact hp - 0015
exact ha - 0016
exact hdivides - 0017
specialize power_valuation_dominates p - 0018
specialize power_valuation_dominates a - 0019
specialize power_valuation_dominates f - 0020
specialize power_valuation_dominates k - 0021
apply power_valuation_dominates - 0022
exact hvaluation - 0023
exact hvalue_bound - 0024
exact hdivides