BT00SI · Bertrand theorem

valuation_threshold_bit_decides_power_divides

Alpha v34 checked-use theorem · independently kernel and Lean verified; not Stable

A valuation threshold bit constructively decides the corresponding power divisor.

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. ∀ i. ∀ bit. Prime(p) → ¬a = 0 → PowerValuation(p,a,f) → bit = 1 ∧ Lt(i,f) ∨ bit = 0 ∧ Lt(f,S i) → bit = 1 ∧ PowerDivides(p,S i,a) ∨ bit = 0 ∧ ¬PowerDivides(p,S i,a)

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

6 occurrences

In local proof propositions

1 occurrences

Exact expanded native-PA statement
forall p a f i bit. ((~(p = 1) /\ forall frm_prime_left_legendre_successor_prime frm_prime_right_legendre_successor_prime. p = frm_prime_left_legendre_successor_prime * frm_prime_right_legendre_successor_prime -> frm_prime_left_legendre_successor_prime = 1 \/ frm_prime_right_legendre_successor_prime = 1)) -> ~(a = 0) -> (((exists bpv_gap_legendre_successor_threshold_valuation_exponent_bound. bpv_gap_legendre_successor_threshold_valuation_exponent_bound + f = a) /\ (exists bpv_result_legendre_successor_threshold_valuation_selected. ((exists ff_b_legendre_successor_threshold_valuation_selected_power ff_c_legendre_successor_threshold_valuation_selected_power. ((forall ff_i_legendre_successor_threshold_valuation_selected_power_repeat. (exists ff_lt_legendre_successor_threshold_valuation_selected_power_repeat_bound. ff_lt_legendre_successor_threshold_valuation_selected_power_repeat_bound + S ff_i_legendre_successor_threshold_valuation_selected_power_repeat = f) -> (((exists ff_h_legendre_successor_threshold_valuation_selected_power_repeat_decoded. ff_h_legendre_successor_threshold_valuation_selected_power_repeat_decoded + S (p) = S ((S (ff_i_legendre_successor_threshold_valuation_selected_power_repeat)) * ff_c_legendre_successor_threshold_valuation_selected_power)) /\ exists ff_q_legendre_successor_threshold_valuation_selected_power_repeat_decoded. ff_b_legendre_successor_threshold_valuation_selected_power = ff_q_legendre_successor_threshold_valuation_selected_power_repeat_decoded * S ((S (ff_i_legendre_successor_threshold_valuation_selected_power_repeat)) * ff_c_legendre_successor_threshold_valuation_selected_power) + (p)))) /\ (exists ff_u_legendre_successor_threshold_valuation_selected_power_product ff_v_legendre_successor_threshold_valuation_selected_power_product. ((((exists ff_h_legendre_successor_threshold_valuation_selected_power_product_start. ff_h_legendre_successor_threshold_valuation_selected_power_product_start + S (1) = S ((S (0)) * ff_v_legendre_successor_threshold_valuation_selected_power_product)) /\ exists ff_q_legendre_successor_threshold_valuation_selected_power_product_start. ff_u_legendre_successor_threshold_valuation_selected_power_product = ff_q_legendre_successor_threshold_valuation_selected_power_product_start * S ((S (0)) * ff_v_legendre_successor_threshold_valuation_selected_power_product) + (1))) /\ ((((exists ff_h_legendre_successor_threshold_valuation_selected_power_product_terminal. ff_h_legendre_successor_threshold_valuation_selected_power_product_terminal + S (bpv_result_legendre_successor_threshold_valuation_selected) = S ((S (f)) * ff_v_legendre_successor_threshold_valuation_selected_power_product)) /\ exists ff_q_legendre_successor_threshold_valuation_selected_power_product_terminal. ff_u_legendre_successor_threshold_valuation_selected_power_product = ff_q_legendre_successor_threshold_valuation_selected_power_product_terminal * S ((S (f)) * ff_v_legendre_successor_threshold_valuation_selected_power_product) + (bpv_result_legendre_successor_threshold_valuation_selected))) /\ forall ff_i_legendre_successor_threshold_valuation_selected_power_product. (exists ff_lt_legendre_successor_threshold_valuation_selected_power_product_bound. ff_lt_legendre_successor_threshold_valuation_selected_power_product_bound + S ff_i_legendre_successor_threshold_valuation_selected_power_product = f) -> exists ff_p_legendre_successor_threshold_valuation_selected_power_product ff_r_legendre_successor_threshold_valuation_selected_power_product ff_s_legendre_successor_threshold_valuation_selected_power_product. ((((exists ff_h_legendre_successor_threshold_valuation_selected_power_product_factor. ff_h_legendre_successor_threshold_valuation_selected_power_product_factor + S (ff_p_legendre_successor_threshold_valuation_selected_power_product) = S ((S (ff_i_legendre_successor_threshold_valuation_selected_power_product)) * ff_c_legendre_successor_threshold_valuation_selected_power)) /\ exists ff_q_legendre_successor_threshold_valuation_selected_power_product_factor. ff_b_legendre_successor_threshold_valuation_selected_power = ff_q_legendre_successor_threshold_valuation_selected_power_product_factor * S ((S (ff_i_legendre_successor_threshold_valuation_selected_power_product)) * ff_c_legendre_successor_threshold_valuation_selected_power) + (ff_p_legendre_successor_threshold_valuation_selected_power_product))) /\ ((((exists ff_h_legendre_successor_threshold_valuation_selected_power_product_partial. ff_h_legendre_successor_threshold_valuation_selected_power_product_partial + S (ff_r_legendre_successor_threshold_valuation_selected_power_product) = S ((S (ff_i_legendre_successor_threshold_valuation_selected_power_product)) * ff_v_legendre_successor_threshold_valuation_selected_power_product)) /\ exists ff_q_legendre_successor_threshold_valuation_selected_power_product_partial. ff_u_legendre_successor_threshold_valuation_selected_power_product = ff_q_legendre_successor_threshold_valuation_selected_power_product_partial * S ((S (ff_i_legendre_successor_threshold_valuation_selected_power_product)) * ff_v_legendre_successor_threshold_valuation_selected_power_product) + (ff_r_legendre_successor_threshold_valuation_selected_power_product))) /\ ((((exists ff_h_legendre_successor_threshold_valuation_selected_power_product_successor. ff_h_legendre_successor_threshold_valuation_selected_power_product_successor + S (ff_s_legendre_successor_threshold_valuation_selected_power_product) = S ((S (S ff_i_legendre_successor_threshold_valuation_selected_power_product)) * ff_v_legendre_successor_threshold_valuation_selected_power_product)) /\ exists ff_q_legendre_successor_threshold_valuation_selected_power_product_successor. ff_u_legendre_successor_threshold_valuation_selected_power_product = ff_q_legendre_successor_threshold_valuation_selected_power_product_successor * S ((S (S ff_i_legendre_successor_threshold_valuation_selected_power_product)) * ff_v_legendre_successor_threshold_valuation_selected_power_product) + (ff_s_legendre_successor_threshold_valuation_selected_power_product))) /\ ff_s_legendre_successor_threshold_valuation_selected_power_product = ff_r_legendre_successor_threshold_valuation_selected_power_product * ff_p_legendre_successor_threshold_valuation_selected_power_product)))))))) /\ (exists bpv_factor_legendre_successor_threshold_valuation_selected_divides. a = bpv_result_legendre_successor_threshold_valuation_selected * bpv_factor_legendre_successor_threshold_valuation_selected_divides)))) /\ forall bpv_candidate_legendre_successor_threshold_valuation. (exists bpv_gap_legendre_successor_threshold_valuation_candidate_bound. bpv_gap_legendre_successor_threshold_valuation_candidate_bound + bpv_candidate_legendre_successor_threshold_valuation = a) -> (exists bpv_result_legendre_successor_threshold_valuation_candidate. ((exists ff_b_legendre_successor_threshold_valuation_candidate_power ff_c_legendre_successor_threshold_valuation_candidate_power. ((forall ff_i_legendre_successor_threshold_valuation_candidate_power_repeat. (exists ff_lt_legendre_successor_threshold_valuation_candidate_power_repeat_bound. ff_lt_legendre_successor_threshold_valuation_candidate_power_repeat_bound + S ff_i_legendre_successor_threshold_valuation_candidate_power_repeat = bpv_candidate_legendre_successor_threshold_valuation) -> (((exists ff_h_legendre_successor_threshold_valuation_candidate_power_repeat_decoded. ff_h_legendre_successor_threshold_valuation_candidate_power_repeat_decoded + S (p) = S ((S (ff_i_legendre_successor_threshold_valuation_candidate_power_repeat)) * ff_c_legendre_successor_threshold_valuation_candidate_power)) /\ exists ff_q_legendre_successor_threshold_valuation_candidate_power_repeat_decoded. ff_b_legendre_successor_threshold_valuation_candidate_power = ff_q_legendre_successor_threshold_valuation_candidate_power_repeat_decoded * S ((S (ff_i_legendre_successor_threshold_valuation_candidate_power_repeat)) * ff_c_legendre_successor_threshold_valuation_candidate_power) + (p)))) /\ (exists ff_u_legendre_successor_threshold_valuation_candidate_power_product ff_v_legendre_successor_threshold_valuation_candidate_power_product. ((((exists ff_h_legendre_successor_threshold_valuation_candidate_power_product_start. ff_h_legendre_successor_threshold_valuation_candidate_power_product_start + S (1) = S ((S (0)) * ff_v_legendre_successor_threshold_valuation_candidate_power_product)) /\ exists ff_q_legendre_successor_threshold_valuation_candidate_power_product_start. ff_u_legendre_successor_threshold_valuation_candidate_power_product = ff_q_legendre_successor_threshold_valuation_candidate_power_product_start * S ((S (0)) * ff_v_legendre_successor_threshold_valuation_candidate_power_product) + (1))) /\ ((((exists ff_h_legendre_successor_threshold_valuation_candidate_power_product_terminal. ff_h_legendre_successor_threshold_valuation_candidate_power_product_terminal + S (bpv_result_legendre_successor_threshold_valuation_candidate) = S ((S (bpv_candidate_legendre_successor_threshold_valuation)) * ff_v_legendre_successor_threshold_valuation_candidate_power_product)) /\ exists ff_q_legendre_successor_threshold_valuation_candidate_power_product_terminal. ff_u_legendre_successor_threshold_valuation_candidate_power_product = ff_q_legendre_successor_threshold_valuation_candidate_power_product_terminal * S ((S (bpv_candidate_legendre_successor_threshold_valuation)) * ff_v_legendre_successor_threshold_valuation_candidate_power_product) + (bpv_result_legendre_successor_threshold_valuation_candidate))) /\ forall ff_i_legendre_successor_threshold_valuation_candidate_power_product. (exists ff_lt_legendre_successor_threshold_valuation_candidate_power_product_bound. ff_lt_legendre_successor_threshold_valuation_candidate_power_product_bound + S ff_i_legendre_successor_threshold_valuation_candidate_power_product = bpv_candidate_legendre_successor_threshold_valuation) -> exists ff_p_legendre_successor_threshold_valuation_candidate_power_product ff_r_legendre_successor_threshold_valuation_candidate_power_product ff_s_legendre_successor_threshold_valuation_candidate_power_product. ((((exists ff_h_legendre_successor_threshold_valuation_candidate_power_product_factor. ff_h_legendre_successor_threshold_valuation_candidate_power_product_factor + S (ff_p_legendre_successor_threshold_valuation_candidate_power_product) = S ((S (ff_i_legendre_successor_threshold_valuation_candidate_power_product)) * ff_c_legendre_successor_threshold_valuation_candidate_power)) /\ exists ff_q_legendre_successor_threshold_valuation_candidate_power_product_factor. ff_b_legendre_successor_threshold_valuation_candidate_power = ff_q_legendre_successor_threshold_valuation_candidate_power_product_factor * S ((S (ff_i_legendre_successor_threshold_valuation_candidate_power_product)) * ff_c_legendre_successor_threshold_valuation_candidate_power) + (ff_p_legendre_successor_threshold_valuation_candidate_power_product))) /\ ((((exists ff_h_legendre_successor_threshold_valuation_candidate_power_product_partial. ff_h_legendre_successor_threshold_valuation_candidate_power_product_partial + S (ff_r_legendre_successor_threshold_valuation_candidate_power_product) = S ((S (ff_i_legendre_successor_threshold_valuation_candidate_power_product)) * ff_v_legendre_successor_threshold_valuation_candidate_power_product)) /\ exists ff_q_legendre_successor_threshold_valuation_candidate_power_product_partial. ff_u_legendre_successor_threshold_valuation_candidate_power_product = ff_q_legendre_successor_threshold_valuation_candidate_power_product_partial * S ((S (ff_i_legendre_successor_threshold_valuation_candidate_power_product)) * ff_v_legendre_successor_threshold_valuation_candidate_power_product) + (ff_r_legendre_successor_threshold_valuation_candidate_power_product))) /\ ((((exists ff_h_legendre_successor_threshold_valuation_candidate_power_product_successor. ff_h_legendre_successor_threshold_valuation_candidate_power_product_successor + S (ff_s_legendre_successor_threshold_valuation_candidate_power_product) = S ((S (S ff_i_legendre_successor_threshold_valuation_candidate_power_product)) * ff_v_legendre_successor_threshold_valuation_candidate_power_product)) /\ exists ff_q_legendre_successor_threshold_valuation_candidate_power_product_successor. ff_u_legendre_successor_threshold_valuation_candidate_power_product = ff_q_legendre_successor_threshold_valuation_candidate_power_product_successor * S ((S (S ff_i_legendre_successor_threshold_valuation_candidate_power_product)) * ff_v_legendre_successor_threshold_valuation_candidate_power_product) + (ff_s_legendre_successor_threshold_valuation_candidate_power_product))) /\ ff_s_legendre_successor_threshold_valuation_candidate_power_product = ff_r_legendre_successor_threshold_valuation_candidate_power_product * ff_p_legendre_successor_threshold_valuation_candidate_power_product)))))))) /\ (exists bpv_factor_legendre_successor_threshold_valuation_candidate_divides. a = bpv_result_legendre_successor_threshold_valuation_candidate * bpv_factor_legendre_successor_threshold_valuation_candidate_divides))) -> (exists bpv_gap_legendre_successor_threshold_valuation_maximal. bpv_gap_legendre_successor_threshold_valuation_maximal + bpv_candidate_legendre_successor_threshold_valuation = f)) -> ((bit = 1 /\ (exists blsr_le_gap_legendre_successor_threshold_inside. blsr_le_gap_legendre_successor_threshold_inside + (S i) = (f))) \/ (bit = 0 /\ (exists blsr_lt_gap_legendre_successor_threshold_outside. blsr_lt_gap_legendre_successor_threshold_outside + S (f) = (S i)))) -> ((bit = 1 /\ (exists bpvi_result_legendre_successor_threshold_divides. ((exists bpvi_b_legendre_successor_threshold_divides_power bpvi_c_legendre_successor_threshold_divides_power. ((forall bpvi_i_legendre_successor_threshold_divides_power. (exists bpvi_repeat_gap_legendre_successor_threshold_divides_power. bpvi_repeat_gap_legendre_successor_threshold_divides_power + S bpvi_i_legendre_successor_threshold_divides_power = S i) -> (((exists bpvi_h_legendre_successor_threshold_divides_power_repeat. bpvi_h_legendre_successor_threshold_divides_power_repeat + S (p) = S ((S (bpvi_i_legendre_successor_threshold_divides_power)) * bpvi_c_legendre_successor_threshold_divides_power)) /\ exists bpvi_q_legendre_successor_threshold_divides_power_repeat. bpvi_b_legendre_successor_threshold_divides_power = bpvi_q_legendre_successor_threshold_divides_power_repeat * S ((S (bpvi_i_legendre_successor_threshold_divides_power)) * bpvi_c_legendre_successor_threshold_divides_power) + (p)))) /\ (exists bpvi_u_legendre_successor_threshold_divides_power bpvi_v_legendre_successor_threshold_divides_power. ((((exists bpvi_h_legendre_successor_threshold_divides_power_start. bpvi_h_legendre_successor_threshold_divides_power_start + S (1) = S ((S (0)) * bpvi_v_legendre_successor_threshold_divides_power)) /\ exists bpvi_q_legendre_successor_threshold_divides_power_start. bpvi_u_legendre_successor_threshold_divides_power = bpvi_q_legendre_successor_threshold_divides_power_start * S ((S (0)) * bpvi_v_legendre_successor_threshold_divides_power) + (1))) /\ ((((exists bpvi_h_legendre_successor_threshold_divides_power_terminal. bpvi_h_legendre_successor_threshold_divides_power_terminal + S (bpvi_result_legendre_successor_threshold_divides) = S ((S (S i)) * bpvi_v_legendre_successor_threshold_divides_power)) /\ exists bpvi_q_legendre_successor_threshold_divides_power_terminal. bpvi_u_legendre_successor_threshold_divides_power = bpvi_q_legendre_successor_threshold_divides_power_terminal * S ((S (S i)) * bpvi_v_legendre_successor_threshold_divides_power) + (bpvi_result_legendre_successor_threshold_divides))) /\ forall bpvi_j_legendre_successor_threshold_divides_power. (exists bpvi_product_gap_legendre_successor_threshold_divides_power. bpvi_product_gap_legendre_successor_threshold_divides_power + S bpvi_j_legendre_successor_threshold_divides_power = S i) -> exists bpvi_factor_legendre_successor_threshold_divides_power bpvi_partial_legendre_successor_threshold_divides_power bpvi_successor_legendre_successor_threshold_divides_power. ((((exists bpvi_h_legendre_successor_threshold_divides_power_factor. bpvi_h_legendre_successor_threshold_divides_power_factor + S (bpvi_factor_legendre_successor_threshold_divides_power) = S ((S (bpvi_j_legendre_successor_threshold_divides_power)) * bpvi_c_legendre_successor_threshold_divides_power)) /\ exists bpvi_q_legendre_successor_threshold_divides_power_factor. bpvi_b_legendre_successor_threshold_divides_power = bpvi_q_legendre_successor_threshold_divides_power_factor * S ((S (bpvi_j_legendre_successor_threshold_divides_power)) * bpvi_c_legendre_successor_threshold_divides_power) + (bpvi_factor_legendre_successor_threshold_divides_power))) /\ ((((exists bpvi_h_legendre_successor_threshold_divides_power_partial. bpvi_h_legendre_successor_threshold_divides_power_partial + S (bpvi_partial_legendre_successor_threshold_divides_power) = S ((S (bpvi_j_legendre_successor_threshold_divides_power)) * bpvi_v_legendre_successor_threshold_divides_power)) /\ exists bpvi_q_legendre_successor_threshold_divides_power_partial. bpvi_u_legendre_successor_threshold_divides_power = bpvi_q_legendre_successor_threshold_divides_power_partial * S ((S (bpvi_j_legendre_successor_threshold_divides_power)) * bpvi_v_legendre_successor_threshold_divides_power) + (bpvi_partial_legendre_successor_threshold_divides_power))) /\ ((((exists bpvi_h_legendre_successor_threshold_divides_power_successor. bpvi_h_legendre_successor_threshold_divides_power_successor + S (bpvi_successor_legendre_successor_threshold_divides_power) = S ((S (S bpvi_j_legendre_successor_threshold_divides_power)) * bpvi_v_legendre_successor_threshold_divides_power)) /\ exists bpvi_q_legendre_successor_threshold_divides_power_successor. bpvi_u_legendre_successor_threshold_divides_power = bpvi_q_legendre_successor_threshold_divides_power_successor * S ((S (S bpvi_j_legendre_successor_threshold_divides_power)) * bpvi_v_legendre_successor_threshold_divides_power) + (bpvi_successor_legendre_successor_threshold_divides_power))) /\ bpvi_successor_legendre_successor_threshold_divides_power = bpvi_partial_legendre_successor_threshold_divides_power * bpvi_factor_legendre_successor_threshold_divides_power)))))))) /\ exists bpvi_divisor_factor_legendre_successor_threshold_divides. a = bpvi_result_legendre_successor_threshold_divides * bpvi_divisor_factor_legendre_successor_threshold_divides))) \/ (bit = 0 /\ ~(exists bpvi_result_legendre_successor_threshold_divides. ((exists bpvi_b_legendre_successor_threshold_divides_power bpvi_c_legendre_successor_threshold_divides_power. ((forall bpvi_i_legendre_successor_threshold_divides_power. (exists bpvi_repeat_gap_legendre_successor_threshold_divides_power. bpvi_repeat_gap_legendre_successor_threshold_divides_power + S bpvi_i_legendre_successor_threshold_divides_power = S i) -> (((exists bpvi_h_legendre_successor_threshold_divides_power_repeat. bpvi_h_legendre_successor_threshold_divides_power_repeat + S (p) = S ((S (bpvi_i_legendre_successor_threshold_divides_power)) * bpvi_c_legendre_successor_threshold_divides_power)) /\ exists bpvi_q_legendre_successor_threshold_divides_power_repeat. bpvi_b_legendre_successor_threshold_divides_power = bpvi_q_legendre_successor_threshold_divides_power_repeat * S ((S (bpvi_i_legendre_successor_threshold_divides_power)) * bpvi_c_legendre_successor_threshold_divides_power) + (p)))) /\ (exists bpvi_u_legendre_successor_threshold_divides_power bpvi_v_legendre_successor_threshold_divides_power. ((((exists bpvi_h_legendre_successor_threshold_divides_power_start. bpvi_h_legendre_successor_threshold_divides_power_start + S (1) = S ((S (0)) * bpvi_v_legendre_successor_threshold_divides_power)) /\ exists bpvi_q_legendre_successor_threshold_divides_power_start. bpvi_u_legendre_successor_threshold_divides_power = bpvi_q_legendre_successor_threshold_divides_power_start * S ((S (0)) * bpvi_v_legendre_successor_threshold_divides_power) + (1))) /\ ((((exists bpvi_h_legendre_successor_threshold_divides_power_terminal. bpvi_h_legendre_successor_threshold_divides_power_terminal + S (bpvi_result_legendre_successor_threshold_divides) = S ((S (S i)) * bpvi_v_legendre_successor_threshold_divides_power)) /\ exists bpvi_q_legendre_successor_threshold_divides_power_terminal. bpvi_u_legendre_successor_threshold_divides_power = bpvi_q_legendre_successor_threshold_divides_power_terminal * S ((S (S i)) * bpvi_v_legendre_successor_threshold_divides_power) + (bpvi_result_legendre_successor_threshold_divides))) /\ forall bpvi_j_legendre_successor_threshold_divides_power. (exists bpvi_product_gap_legendre_successor_threshold_divides_power. bpvi_product_gap_legendre_successor_threshold_divides_power + S bpvi_j_legendre_successor_threshold_divides_power = S i) -> exists bpvi_factor_legendre_successor_threshold_divides_power bpvi_partial_legendre_successor_threshold_divides_power bpvi_successor_legendre_successor_threshold_divides_power. ((((exists bpvi_h_legendre_successor_threshold_divides_power_factor. bpvi_h_legendre_successor_threshold_divides_power_factor + S (bpvi_factor_legendre_successor_threshold_divides_power) = S ((S (bpvi_j_legendre_successor_threshold_divides_power)) * bpvi_c_legendre_successor_threshold_divides_power)) /\ exists bpvi_q_legendre_successor_threshold_divides_power_factor. bpvi_b_legendre_successor_threshold_divides_power = bpvi_q_legendre_successor_threshold_divides_power_factor * S ((S (bpvi_j_legendre_successor_threshold_divides_power)) * bpvi_c_legendre_successor_threshold_divides_power) + (bpvi_factor_legendre_successor_threshold_divides_power))) /\ ((((exists bpvi_h_legendre_successor_threshold_divides_power_partial. bpvi_h_legendre_successor_threshold_divides_power_partial + S (bpvi_partial_legendre_successor_threshold_divides_power) = S ((S (bpvi_j_legendre_successor_threshold_divides_power)) * bpvi_v_legendre_successor_threshold_divides_power)) /\ exists bpvi_q_legendre_successor_threshold_divides_power_partial. bpvi_u_legendre_successor_threshold_divides_power = bpvi_q_legendre_successor_threshold_divides_power_partial * S ((S (bpvi_j_legendre_successor_threshold_divides_power)) * bpvi_v_legendre_successor_threshold_divides_power) + (bpvi_partial_legendre_successor_threshold_divides_power))) /\ ((((exists bpvi_h_legendre_successor_threshold_divides_power_successor. bpvi_h_legendre_successor_threshold_divides_power_successor + S (bpvi_successor_legendre_successor_threshold_divides_power) = S ((S (S bpvi_j_legendre_successor_threshold_divides_power)) * bpvi_v_legendre_successor_threshold_divides_power)) /\ exists bpvi_q_legendre_successor_threshold_divides_power_successor. bpvi_u_legendre_successor_threshold_divides_power = bpvi_q_legendre_successor_threshold_divides_power_successor * S ((S (S bpvi_j_legendre_successor_threshold_divides_power)) * bpvi_v_legendre_successor_threshold_divides_power) + (bpvi_successor_legendre_successor_threshold_divides_power))) /\ bpvi_successor_legendre_successor_threshold_divides_power = bpvi_partial_legendre_successor_threshold_divides_power * bpvi_factor_legendre_successor_threshold_divides_power)))))))) /\ exists bpvi_divisor_factor_legendre_successor_threshold_divides. a = bpvi_result_legendre_successor_threshold_divides * bpvi_divisor_factor_legendre_successor_threshold_divides))))

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

41 script commands · 8 reading checkpoints · 1 local claims

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.

Definition notation is shown below. Open the paired exact edition for the original native formulas. Source pairing is not a new equivalence certificate.

Named ingredients (3)
01Fix variables and assumptionsL1–9

Work with arbitrary variables or the premises of the current implication.

  1. L1
    intro p
  2. L2
    intro a
  3. L3
    intro f
  4. L4
    intro i
  5. L5
    intro bit
  6. L6
    intro hp
  7. L7
    intro ha
  8. L8
    intro hvaluation
  9. L9
    intro hchoice
02Separate the logical casesL10–13

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L10
    cases hchoice
  2. L11
    cases hchoice_left
  3. L12
    left
  4. L13
    split
03Use earlier factsL14–21

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L14
    exact hchoice_left_left
  2. L15
    specialize power_divides_of_exponent_le_valuation p
  3. L16
    specialize power_divides_of_exponent_le_valuation a
  4. L17
    specialize power_divides_of_exponent_le_valuation f
  5. L18
    specialize power_divides_of_exponent_le_valuation (S i)
  6. L19
    apply power_divides_of_exponent_le_valuation
  7. L20
    exact hvaluation
  8. L21
    exact hchoice_left_right
04Separate the logical casesL22–24

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L22
    cases hchoice_right
  2. L23
    right
  3. L24
    split
05Use earlier factsL25–25

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L25
    exact hchoice_right_left
06Fix variables and assumptionsL26–26

Work with arbitrary variables or the premises of the current implication.

  1. L26
    intro hdivides
07Establish hboundL27–36

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime power divides exponent le valuation.

  1. L27
    have hbound : Lt(i,f)Definitions: Lt(i,f)Original native command in the exact edition
  2. L28
    specialize prime_power_divides_exponent_le_valuation p
  3. L29
    specialize prime_power_divides_exponent_le_valuation a
  4. L30
    specialize prime_power_divides_exponent_le_valuation f
  5. L31
    specialize prime_power_divides_exponent_le_valuation (S i)
  6. L32
    apply prime_power_divides_exponent_le_valuation
  7. L33
    exact hp
  8. L34
    exact ha
  9. L35
    exact hvaluation
  10. L36
    exact hdivides
08Use earlier factsL37–41

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L37
    specialize lt_not_le f
  2. L38
    specialize lt_not_le (S i)
  3. L39
    apply lt_not_le
  4. L40
    exact hchoice_right_right
  5. L41
    exact hbound

Library-wide reading audit

Original defined command ledger · 41 lines
  1. 0001intro p
  2. 0002intro a
  3. 0003intro f
  4. 0004intro i
  5. 0005intro bit
  6. 0006intro hp
  7. 0007intro ha
  8. 0008intro hvaluation
  9. 0009intro hchoice
  10. 0010cases hchoice
  11. 0011cases hchoice_left
  12. 0012left
  13. 0013split
  14. 0014exact hchoice_left_left
  15. 0015specialize power_divides_of_exponent_le_valuation p
  16. 0016specialize power_divides_of_exponent_le_valuation a
  17. 0017specialize power_divides_of_exponent_le_valuation f
  18. 0018specialize power_divides_of_exponent_le_valuation (S i)
  19. 0019apply power_divides_of_exponent_le_valuation
  20. 0020exact hvaluation
  21. 0021exact hchoice_left_right
  22. 0022cases hchoice_right
  23. 0023right
  24. 0024split
  25. 0025exact hchoice_right_left
  26. 0026intro hdivides
  27. 0027have hbound : Lt(i,f)
    Exact native replay linehave hbound : exists blsr_le_gap_legendre_successor_threshold_contradiction. blsr_le_gap_legendre_successor_threshold_contradiction + (S i) = (f)
  28. 0028specialize prime_power_divides_exponent_le_valuation p
  29. 0029specialize prime_power_divides_exponent_le_valuation a
  30. 0030specialize prime_power_divides_exponent_le_valuation f
  31. 0031specialize prime_power_divides_exponent_le_valuation (S i)
  32. 0032apply prime_power_divides_exponent_le_valuation
  33. 0033exact hp
  34. 0034exact ha
  35. 0035exact hvaluation
  36. 0036exact hdivides
  37. 0037specialize lt_not_le f
  38. 0038specialize lt_not_le (S i)
  39. 0039apply lt_not_le
  40. 0040exact hchoice_right_right
  41. 0041exact hbound