BT00YJ · Bertrand theorem

no_bertrand_central_nonzero_valuation_live_ranges

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

Every nonzero central valuation lies in one of two live ranges.

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

∀ n. ∀ s. ∀ q. ∀ r. ∀ C. ∀ p. ∀ v. (∀ x. Lt(n,x)Le(x,n + n) → ¬Prime(x)) → Prime(p)Lt(2,n)DivRem(n + n,3,q,r)CentralBinom(n,C)PowerValuation(p,C,v) → ¬v = 0 → Le(p,s)Lt(s,p)Le(p,q)

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

11 occurrences

In local proof propositions

6 occurrences

Exact expanded native-PA statement
forall n s q r C p v. (forall bpr_prime_candidate_bnbcnvlr_exclusion. ((exists bpr_gap_bnbcnvlr_exclusion_lower. bpr_gap_bnbcnvlr_exclusion_lower + S (n) = bpr_prime_candidate_bnbcnvlr_exclusion) /\ (exists bpr_le_gap_bnbcnvlr_exclusion_upper. bpr_le_gap_bnbcnvlr_exclusion_upper + (bpr_prime_candidate_bnbcnvlr_exclusion) = (n + n))) -> ~((~(bpr_prime_candidate_bnbcnvlr_exclusion = 1) /\ forall bpr_left_bnbcnvlr_exclusion_prime bpr_right_bnbcnvlr_exclusion_prime. bpr_prime_candidate_bnbcnvlr_exclusion = bpr_left_bnbcnvlr_exclusion_prime * bpr_right_bnbcnvlr_exclusion_prime -> bpr_left_bnbcnvlr_exclusion_prime = 1 \/ bpr_right_bnbcnvlr_exclusion_prime = 1))) -> ((~(p = 1) /\ forall frm_prime_left_bnbcnvlr_prime frm_prime_right_bnbcnvlr_prime. p = frm_prime_left_bnbcnvlr_prime * frm_prime_right_bnbcnvlr_prime -> frm_prime_left_bnbcnvlr_prime = 1 \/ frm_prime_right_bnbcnvlr_prime = 1)) -> (exists bcf_lt_gap_bnbcnvlr_positive. bcf_lt_gap_bnbcnvlr_positive + S (2) = n) -> (((n + n) = (3) * (q) + (r) /\ (exists bcf_lt_gap_bnbcnvlr_division_bound. bcf_lt_gap_bnbcnvlr_division_bound + S (r) = 3))) -> (((exists bcf_lt_gap_bnbcnvlr_central_out_of_range. bcf_lt_gap_bnbcnvlr_central_out_of_range + S (n + n) = n) /\ C = 0) \/ ((exists bcf_le_gap_bnbcnvlr_central_in_range. bcf_le_gap_bnbcnvlr_central_in_range + (n) = n + n) /\ (exists bcf_row_code_code_bnbcnvlr_central bcf_row_code_scale_bnbcnvlr_central bcf_row_scale_code_bnbcnvlr_central bcf_row_scale_scale_bnbcnvlr_central bcf_row_code_bnbcnvlr_central bcf_row_scale_bnbcnvlr_central. ((forall bcf_row_index_bnbcnvlr_central_table. (exists bcf_lt_gap_bnbcnvlr_central_table_row_bound. bcf_lt_gap_bnbcnvlr_central_table_row_bound + S (bcf_row_index_bnbcnvlr_central_table) = S (n + n)) -> exists bcf_row_code_bnbcnvlr_central_table bcf_row_scale_bnbcnvlr_central_table. ((((exists bcf_height_bnbcnvlr_central_table_decoded_row_code. bcf_height_bnbcnvlr_central_table_decoded_row_code + S (bcf_row_code_bnbcnvlr_central_table) = S ((S (bcf_row_index_bnbcnvlr_central_table)) * bcf_row_code_scale_bnbcnvlr_central)) /\ exists bcf_quotient_bnbcnvlr_central_table_decoded_row_code. bcf_row_code_code_bnbcnvlr_central = bcf_quotient_bnbcnvlr_central_table_decoded_row_code * S ((S (bcf_row_index_bnbcnvlr_central_table)) * bcf_row_code_scale_bnbcnvlr_central) + (bcf_row_code_bnbcnvlr_central_table))) /\ ((((exists bcf_height_bnbcnvlr_central_table_decoded_row_scale. bcf_height_bnbcnvlr_central_table_decoded_row_scale + S (bcf_row_scale_bnbcnvlr_central_table) = S ((S (bcf_row_index_bnbcnvlr_central_table)) * bcf_row_scale_scale_bnbcnvlr_central)) /\ exists bcf_quotient_bnbcnvlr_central_table_decoded_row_scale. bcf_row_scale_code_bnbcnvlr_central = bcf_quotient_bnbcnvlr_central_table_decoded_row_scale * S ((S (bcf_row_index_bnbcnvlr_central_table)) * bcf_row_scale_scale_bnbcnvlr_central) + (bcf_row_scale_bnbcnvlr_central_table))) /\ ((bcf_row_index_bnbcnvlr_central_table = 0 /\ (forall bcf_index_bnbcnvlr_central_table_zero_row. (exists bcf_lt_gap_bnbcnvlr_central_table_zero_row_bound. bcf_lt_gap_bnbcnvlr_central_table_zero_row_bound + S (bcf_index_bnbcnvlr_central_table_zero_row) = S (n + n)) -> exists bcf_value_bnbcnvlr_central_table_zero_row. ((((exists bcf_height_bnbcnvlr_central_table_zero_row_entry. bcf_height_bnbcnvlr_central_table_zero_row_entry + S (bcf_value_bnbcnvlr_central_table_zero_row) = S ((S (bcf_index_bnbcnvlr_central_table_zero_row)) * bcf_row_scale_bnbcnvlr_central_table)) /\ exists bcf_quotient_bnbcnvlr_central_table_zero_row_entry. bcf_row_code_bnbcnvlr_central_table = bcf_quotient_bnbcnvlr_central_table_zero_row_entry * S ((S (bcf_index_bnbcnvlr_central_table_zero_row)) * bcf_row_scale_bnbcnvlr_central_table) + (bcf_value_bnbcnvlr_central_table_zero_row))) /\ ((bcf_index_bnbcnvlr_central_table_zero_row = 0 /\ bcf_value_bnbcnvlr_central_table_zero_row = 1) \/ exists bcf_predecessor_bnbcnvlr_central_table_zero_row. bcf_index_bnbcnvlr_central_table_zero_row = S bcf_predecessor_bnbcnvlr_central_table_zero_row /\ bcf_value_bnbcnvlr_central_table_zero_row = 0)))) \/ exists bcf_predecessor_bnbcnvlr_central_table bcf_previous_code_bnbcnvlr_central_table bcf_previous_scale_bnbcnvlr_central_table. bcf_row_index_bnbcnvlr_central_table = S bcf_predecessor_bnbcnvlr_central_table /\ ((((exists bcf_height_bnbcnvlr_central_table_decoded_previous_code. bcf_height_bnbcnvlr_central_table_decoded_previous_code + S (bcf_previous_code_bnbcnvlr_central_table) = S ((S (bcf_predecessor_bnbcnvlr_central_table)) * bcf_row_code_scale_bnbcnvlr_central)) /\ exists bcf_quotient_bnbcnvlr_central_table_decoded_previous_code. bcf_row_code_code_bnbcnvlr_central = bcf_quotient_bnbcnvlr_central_table_decoded_previous_code * S ((S (bcf_predecessor_bnbcnvlr_central_table)) * bcf_row_code_scale_bnbcnvlr_central) + (bcf_previous_code_bnbcnvlr_central_table))) /\ ((((exists bcf_height_bnbcnvlr_central_table_decoded_previous_scale. bcf_height_bnbcnvlr_central_table_decoded_previous_scale + S (bcf_previous_scale_bnbcnvlr_central_table) = S ((S (bcf_predecessor_bnbcnvlr_central_table)) * bcf_row_scale_scale_bnbcnvlr_central)) /\ exists bcf_quotient_bnbcnvlr_central_table_decoded_previous_scale. bcf_row_scale_code_bnbcnvlr_central = bcf_quotient_bnbcnvlr_central_table_decoded_previous_scale * S ((S (bcf_predecessor_bnbcnvlr_central_table)) * bcf_row_scale_scale_bnbcnvlr_central) + (bcf_previous_scale_bnbcnvlr_central_table))) /\ (forall bcf_index_bnbcnvlr_central_table_row_step. (exists bcf_lt_gap_bnbcnvlr_central_table_row_step_bound. bcf_lt_gap_bnbcnvlr_central_table_row_step_bound + S (bcf_index_bnbcnvlr_central_table_row_step) = S (n + n)) -> exists bcf_value_bnbcnvlr_central_table_row_step. ((((exists bcf_height_bnbcnvlr_central_table_row_step_entry. bcf_height_bnbcnvlr_central_table_row_step_entry + S (bcf_value_bnbcnvlr_central_table_row_step) = S ((S (bcf_index_bnbcnvlr_central_table_row_step)) * bcf_row_scale_bnbcnvlr_central_table)) /\ exists bcf_quotient_bnbcnvlr_central_table_row_step_entry. bcf_row_code_bnbcnvlr_central_table = bcf_quotient_bnbcnvlr_central_table_row_step_entry * S ((S (bcf_index_bnbcnvlr_central_table_row_step)) * bcf_row_scale_bnbcnvlr_central_table) + (bcf_value_bnbcnvlr_central_table_row_step))) /\ ((bcf_index_bnbcnvlr_central_table_row_step = 0 /\ bcf_value_bnbcnvlr_central_table_row_step = 1) \/ exists bcf_predecessor_bnbcnvlr_central_table_row_step bcf_left_bnbcnvlr_central_table_row_step bcf_right_bnbcnvlr_central_table_row_step. bcf_index_bnbcnvlr_central_table_row_step = S bcf_predecessor_bnbcnvlr_central_table_row_step /\ ((((exists bcf_height_bnbcnvlr_central_table_row_step_previous_left. bcf_height_bnbcnvlr_central_table_row_step_previous_left + S (bcf_left_bnbcnvlr_central_table_row_step) = S ((S (bcf_predecessor_bnbcnvlr_central_table_row_step)) * bcf_previous_scale_bnbcnvlr_central_table)) /\ exists bcf_quotient_bnbcnvlr_central_table_row_step_previous_left. bcf_previous_code_bnbcnvlr_central_table = bcf_quotient_bnbcnvlr_central_table_row_step_previous_left * S ((S (bcf_predecessor_bnbcnvlr_central_table_row_step)) * bcf_previous_scale_bnbcnvlr_central_table) + (bcf_left_bnbcnvlr_central_table_row_step))) /\ ((((exists bcf_height_bnbcnvlr_central_table_row_step_previous_right. bcf_height_bnbcnvlr_central_table_row_step_previous_right + S (bcf_right_bnbcnvlr_central_table_row_step) = S ((S (S (bcf_predecessor_bnbcnvlr_central_table_row_step))) * bcf_previous_scale_bnbcnvlr_central_table)) /\ exists bcf_quotient_bnbcnvlr_central_table_row_step_previous_right. bcf_previous_code_bnbcnvlr_central_table = bcf_quotient_bnbcnvlr_central_table_row_step_previous_right * S ((S (S (bcf_predecessor_bnbcnvlr_central_table_row_step))) * bcf_previous_scale_bnbcnvlr_central_table) + (bcf_right_bnbcnvlr_central_table_row_step))) /\ bcf_value_bnbcnvlr_central_table_row_step = bcf_left_bnbcnvlr_central_table_row_step + bcf_right_bnbcnvlr_central_table_row_step))))))))))) /\ ((((exists bcf_height_bnbcnvlr_central_decoded_row_code. bcf_height_bnbcnvlr_central_decoded_row_code + S (bcf_row_code_bnbcnvlr_central) = S ((S (n + n)) * bcf_row_code_scale_bnbcnvlr_central)) /\ exists bcf_quotient_bnbcnvlr_central_decoded_row_code. bcf_row_code_code_bnbcnvlr_central = bcf_quotient_bnbcnvlr_central_decoded_row_code * S ((S (n + n)) * bcf_row_code_scale_bnbcnvlr_central) + (bcf_row_code_bnbcnvlr_central))) /\ ((((exists bcf_height_bnbcnvlr_central_decoded_row_scale. bcf_height_bnbcnvlr_central_decoded_row_scale + S (bcf_row_scale_bnbcnvlr_central) = S ((S (n + n)) * bcf_row_scale_scale_bnbcnvlr_central)) /\ exists bcf_quotient_bnbcnvlr_central_decoded_row_scale. bcf_row_scale_code_bnbcnvlr_central = bcf_quotient_bnbcnvlr_central_decoded_row_scale * S ((S (n + n)) * bcf_row_scale_scale_bnbcnvlr_central) + (bcf_row_scale_bnbcnvlr_central))) /\ (((exists bcf_height_bnbcnvlr_central_decoded_value. bcf_height_bnbcnvlr_central_decoded_value + S (C) = S ((S (n)) * bcf_row_scale_bnbcnvlr_central)) /\ exists bcf_quotient_bnbcnvlr_central_decoded_value. bcf_row_code_bnbcnvlr_central = bcf_quotient_bnbcnvlr_central_decoded_value * S ((S (n)) * bcf_row_scale_bnbcnvlr_central) + (C))))))))) -> (((exists bpv_gap_bnbcnvlr_valuation_exponent_bound. bpv_gap_bnbcnvlr_valuation_exponent_bound + v = C) /\ (exists bpv_result_bnbcnvlr_valuation_selected. ((exists ff_b_bnbcnvlr_valuation_selected_power ff_c_bnbcnvlr_valuation_selected_power. ((forall ff_i_bnbcnvlr_valuation_selected_power_repeat. (exists ff_lt_bnbcnvlr_valuation_selected_power_repeat_bound. ff_lt_bnbcnvlr_valuation_selected_power_repeat_bound + S ff_i_bnbcnvlr_valuation_selected_power_repeat = v) -> (((exists ff_h_bnbcnvlr_valuation_selected_power_repeat_decoded. ff_h_bnbcnvlr_valuation_selected_power_repeat_decoded + S (p) = S ((S (ff_i_bnbcnvlr_valuation_selected_power_repeat)) * ff_c_bnbcnvlr_valuation_selected_power)) /\ exists ff_q_bnbcnvlr_valuation_selected_power_repeat_decoded. ff_b_bnbcnvlr_valuation_selected_power = ff_q_bnbcnvlr_valuation_selected_power_repeat_decoded * S ((S (ff_i_bnbcnvlr_valuation_selected_power_repeat)) * ff_c_bnbcnvlr_valuation_selected_power) + (p)))) /\ (exists ff_u_bnbcnvlr_valuation_selected_power_product ff_v_bnbcnvlr_valuation_selected_power_product. ((((exists ff_h_bnbcnvlr_valuation_selected_power_product_start. ff_h_bnbcnvlr_valuation_selected_power_product_start + S (1) = S ((S (0)) * ff_v_bnbcnvlr_valuation_selected_power_product)) /\ exists ff_q_bnbcnvlr_valuation_selected_power_product_start. ff_u_bnbcnvlr_valuation_selected_power_product = ff_q_bnbcnvlr_valuation_selected_power_product_start * S ((S (0)) * ff_v_bnbcnvlr_valuation_selected_power_product) + (1))) /\ ((((exists ff_h_bnbcnvlr_valuation_selected_power_product_terminal. ff_h_bnbcnvlr_valuation_selected_power_product_terminal + S (bpv_result_bnbcnvlr_valuation_selected) = S ((S (v)) * ff_v_bnbcnvlr_valuation_selected_power_product)) /\ exists ff_q_bnbcnvlr_valuation_selected_power_product_terminal. ff_u_bnbcnvlr_valuation_selected_power_product = ff_q_bnbcnvlr_valuation_selected_power_product_terminal * S ((S (v)) * ff_v_bnbcnvlr_valuation_selected_power_product) + (bpv_result_bnbcnvlr_valuation_selected))) /\ forall ff_i_bnbcnvlr_valuation_selected_power_product. (exists ff_lt_bnbcnvlr_valuation_selected_power_product_bound. ff_lt_bnbcnvlr_valuation_selected_power_product_bound + S ff_i_bnbcnvlr_valuation_selected_power_product = v) -> exists ff_p_bnbcnvlr_valuation_selected_power_product ff_r_bnbcnvlr_valuation_selected_power_product ff_s_bnbcnvlr_valuation_selected_power_product. ((((exists ff_h_bnbcnvlr_valuation_selected_power_product_factor. ff_h_bnbcnvlr_valuation_selected_power_product_factor + S (ff_p_bnbcnvlr_valuation_selected_power_product) = S ((S (ff_i_bnbcnvlr_valuation_selected_power_product)) * ff_c_bnbcnvlr_valuation_selected_power)) /\ exists ff_q_bnbcnvlr_valuation_selected_power_product_factor. ff_b_bnbcnvlr_valuation_selected_power = ff_q_bnbcnvlr_valuation_selected_power_product_factor * S ((S (ff_i_bnbcnvlr_valuation_selected_power_product)) * ff_c_bnbcnvlr_valuation_selected_power) + (ff_p_bnbcnvlr_valuation_selected_power_product))) /\ ((((exists ff_h_bnbcnvlr_valuation_selected_power_product_partial. ff_h_bnbcnvlr_valuation_selected_power_product_partial + S (ff_r_bnbcnvlr_valuation_selected_power_product) = S ((S (ff_i_bnbcnvlr_valuation_selected_power_product)) * ff_v_bnbcnvlr_valuation_selected_power_product)) /\ exists ff_q_bnbcnvlr_valuation_selected_power_product_partial. ff_u_bnbcnvlr_valuation_selected_power_product = ff_q_bnbcnvlr_valuation_selected_power_product_partial * S ((S (ff_i_bnbcnvlr_valuation_selected_power_product)) * ff_v_bnbcnvlr_valuation_selected_power_product) + (ff_r_bnbcnvlr_valuation_selected_power_product))) /\ ((((exists ff_h_bnbcnvlr_valuation_selected_power_product_successor. ff_h_bnbcnvlr_valuation_selected_power_product_successor + S (ff_s_bnbcnvlr_valuation_selected_power_product) = S ((S (S ff_i_bnbcnvlr_valuation_selected_power_product)) * ff_v_bnbcnvlr_valuation_selected_power_product)) /\ exists ff_q_bnbcnvlr_valuation_selected_power_product_successor. ff_u_bnbcnvlr_valuation_selected_power_product = ff_q_bnbcnvlr_valuation_selected_power_product_successor * S ((S (S ff_i_bnbcnvlr_valuation_selected_power_product)) * ff_v_bnbcnvlr_valuation_selected_power_product) + (ff_s_bnbcnvlr_valuation_selected_power_product))) /\ ff_s_bnbcnvlr_valuation_selected_power_product = ff_r_bnbcnvlr_valuation_selected_power_product * ff_p_bnbcnvlr_valuation_selected_power_product)))))))) /\ (exists bpv_factor_bnbcnvlr_valuation_selected_divides. C = bpv_result_bnbcnvlr_valuation_selected * bpv_factor_bnbcnvlr_valuation_selected_divides)))) /\ forall bpv_candidate_bnbcnvlr_valuation. (exists bpv_gap_bnbcnvlr_valuation_candidate_bound. bpv_gap_bnbcnvlr_valuation_candidate_bound + bpv_candidate_bnbcnvlr_valuation = C) -> (exists bpv_result_bnbcnvlr_valuation_candidate. ((exists ff_b_bnbcnvlr_valuation_candidate_power ff_c_bnbcnvlr_valuation_candidate_power. ((forall ff_i_bnbcnvlr_valuation_candidate_power_repeat. (exists ff_lt_bnbcnvlr_valuation_candidate_power_repeat_bound. ff_lt_bnbcnvlr_valuation_candidate_power_repeat_bound + S ff_i_bnbcnvlr_valuation_candidate_power_repeat = bpv_candidate_bnbcnvlr_valuation) -> (((exists ff_h_bnbcnvlr_valuation_candidate_power_repeat_decoded. ff_h_bnbcnvlr_valuation_candidate_power_repeat_decoded + S (p) = S ((S (ff_i_bnbcnvlr_valuation_candidate_power_repeat)) * ff_c_bnbcnvlr_valuation_candidate_power)) /\ exists ff_q_bnbcnvlr_valuation_candidate_power_repeat_decoded. ff_b_bnbcnvlr_valuation_candidate_power = ff_q_bnbcnvlr_valuation_candidate_power_repeat_decoded * S ((S (ff_i_bnbcnvlr_valuation_candidate_power_repeat)) * ff_c_bnbcnvlr_valuation_candidate_power) + (p)))) /\ (exists ff_u_bnbcnvlr_valuation_candidate_power_product ff_v_bnbcnvlr_valuation_candidate_power_product. ((((exists ff_h_bnbcnvlr_valuation_candidate_power_product_start. ff_h_bnbcnvlr_valuation_candidate_power_product_start + S (1) = S ((S (0)) * ff_v_bnbcnvlr_valuation_candidate_power_product)) /\ exists ff_q_bnbcnvlr_valuation_candidate_power_product_start. ff_u_bnbcnvlr_valuation_candidate_power_product = ff_q_bnbcnvlr_valuation_candidate_power_product_start * S ((S (0)) * ff_v_bnbcnvlr_valuation_candidate_power_product) + (1))) /\ ((((exists ff_h_bnbcnvlr_valuation_candidate_power_product_terminal. ff_h_bnbcnvlr_valuation_candidate_power_product_terminal + S (bpv_result_bnbcnvlr_valuation_candidate) = S ((S (bpv_candidate_bnbcnvlr_valuation)) * ff_v_bnbcnvlr_valuation_candidate_power_product)) /\ exists ff_q_bnbcnvlr_valuation_candidate_power_product_terminal. ff_u_bnbcnvlr_valuation_candidate_power_product = ff_q_bnbcnvlr_valuation_candidate_power_product_terminal * S ((S (bpv_candidate_bnbcnvlr_valuation)) * ff_v_bnbcnvlr_valuation_candidate_power_product) + (bpv_result_bnbcnvlr_valuation_candidate))) /\ forall ff_i_bnbcnvlr_valuation_candidate_power_product. (exists ff_lt_bnbcnvlr_valuation_candidate_power_product_bound. ff_lt_bnbcnvlr_valuation_candidate_power_product_bound + S ff_i_bnbcnvlr_valuation_candidate_power_product = bpv_candidate_bnbcnvlr_valuation) -> exists ff_p_bnbcnvlr_valuation_candidate_power_product ff_r_bnbcnvlr_valuation_candidate_power_product ff_s_bnbcnvlr_valuation_candidate_power_product. ((((exists ff_h_bnbcnvlr_valuation_candidate_power_product_factor. ff_h_bnbcnvlr_valuation_candidate_power_product_factor + S (ff_p_bnbcnvlr_valuation_candidate_power_product) = S ((S (ff_i_bnbcnvlr_valuation_candidate_power_product)) * ff_c_bnbcnvlr_valuation_candidate_power)) /\ exists ff_q_bnbcnvlr_valuation_candidate_power_product_factor. ff_b_bnbcnvlr_valuation_candidate_power = ff_q_bnbcnvlr_valuation_candidate_power_product_factor * S ((S (ff_i_bnbcnvlr_valuation_candidate_power_product)) * ff_c_bnbcnvlr_valuation_candidate_power) + (ff_p_bnbcnvlr_valuation_candidate_power_product))) /\ ((((exists ff_h_bnbcnvlr_valuation_candidate_power_product_partial. ff_h_bnbcnvlr_valuation_candidate_power_product_partial + S (ff_r_bnbcnvlr_valuation_candidate_power_product) = S ((S (ff_i_bnbcnvlr_valuation_candidate_power_product)) * ff_v_bnbcnvlr_valuation_candidate_power_product)) /\ exists ff_q_bnbcnvlr_valuation_candidate_power_product_partial. ff_u_bnbcnvlr_valuation_candidate_power_product = ff_q_bnbcnvlr_valuation_candidate_power_product_partial * S ((S (ff_i_bnbcnvlr_valuation_candidate_power_product)) * ff_v_bnbcnvlr_valuation_candidate_power_product) + (ff_r_bnbcnvlr_valuation_candidate_power_product))) /\ ((((exists ff_h_bnbcnvlr_valuation_candidate_power_product_successor. ff_h_bnbcnvlr_valuation_candidate_power_product_successor + S (ff_s_bnbcnvlr_valuation_candidate_power_product) = S ((S (S ff_i_bnbcnvlr_valuation_candidate_power_product)) * ff_v_bnbcnvlr_valuation_candidate_power_product)) /\ exists ff_q_bnbcnvlr_valuation_candidate_power_product_successor. ff_u_bnbcnvlr_valuation_candidate_power_product = ff_q_bnbcnvlr_valuation_candidate_power_product_successor * S ((S (S ff_i_bnbcnvlr_valuation_candidate_power_product)) * ff_v_bnbcnvlr_valuation_candidate_power_product) + (ff_s_bnbcnvlr_valuation_candidate_power_product))) /\ ff_s_bnbcnvlr_valuation_candidate_power_product = ff_r_bnbcnvlr_valuation_candidate_power_product * ff_p_bnbcnvlr_valuation_candidate_power_product)))))))) /\ (exists bpv_factor_bnbcnvlr_valuation_candidate_divides. C = bpv_result_bnbcnvlr_valuation_candidate * bpv_factor_bnbcnvlr_valuation_candidate_divides))) -> (exists bpv_gap_bnbcnvlr_valuation_maximal. bpv_gap_bnbcnvlr_valuation_maximal + bpv_candidate_bnbcnvlr_valuation = v)) -> ~(v = 0) -> ((exists bcf_le_gap_bnbcnvlr_small. bcf_le_gap_bnbcnvlr_small + (p) = s) \/ ((exists bcf_lt_gap_bnbcnvlr_above_small. bcf_lt_gap_bnbcnvlr_above_small + S (s) = p) /\ (exists bcf_le_gap_bnbcnvlr_middle. bcf_le_gap_bnbcnvlr_middle + (p) = q)))

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

55 script commands · 12 reading checkpoints · 2 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–10

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

  1. L1
    intro n
  2. L2
    intro s
  3. L3
    intro q
  4. L4
    intro r
  5. L5
    intro C
  6. L6
    intro p
  7. L7
    intro v
  8. L8
    intro hexclusion
  9. L9
    intro hp
  10. L10
    intro hpositive
02Fix variables and assumptionsL11–14

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

  1. L11
    intro hdivision
  2. L12
    intro hcentral
  3. L13
    intro hvaluation
  4. L14
    intro hnonzero
03Establish hdividesL15–21

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

  1. L15
    have hdivides : Dvd(p,C)Definitions: Dvd(p,C)Original native command in the exact edition
  2. L16
    specialize power_valuation_nonzero_exponent_divides_base p
  3. L17
    specialize power_valuation_nonzero_exponent_divides_base C
  4. L18
    specialize power_valuation_nonzero_exponent_divides_base v
  5. L19
    apply power_valuation_nonzero_exponent_divides_base
  6. L20
    exact hvaluation
  7. L21
    exact hnonzero
04Establish hrangesL22–31

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply no bertrand central prime divisor ranges.

  1. L22
    have hranges : Le(p,s) ∨ (Lt(s,p) ∧ Le(p,q) ∨ Lt(q,p) ∧ Le(p,n))Definitions: Le(p,s)Lt(s,p)Le(p,q)Lt(q,p)Le(p,n)Original native command in the exact edition
  2. L23
    specialize no_bertrand_central_prime_divisor_ranges n
  3. L24
    specialize no_bertrand_central_prime_divisor_ranges s
  4. L25
    specialize no_bertrand_central_prime_divisor_ranges q
  5. L26
    specialize no_bertrand_central_prime_divisor_ranges C
  6. L27
    specialize no_bertrand_central_prime_divisor_ranges p
  7. L28
    apply no_bertrand_central_prime_divisor_ranges
  8. L29
    exact hexclusion
  9. L30
    exact hp
  10. L31
    exact hcentral
05Use earlier factsL32–32

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

  1. L32
    exact hdivides
06Separate the logical casesL33–34

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

  1. L33
    cases hranges
  2. L34
    left
07Use earlier factsL35–35

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

  1. L35
    exact hranges_left
08Separate the logical casesL36–37

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

  1. L36
    cases hranges_right
  2. L37
    right
09Use earlier factsL38–38

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

  1. L38
    exact hranges_right_left
10Separate the logical casesL39–40

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

  1. L39
    cases hranges_right_right
  2. L40
    exfalso
11Use earlier factsL41–50

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

  1. L41
    apply hnonzero
  2. L42
    specialize central_binom_prime_valuation_zero_above_third_quotient p
  3. L43
    specialize central_binom_prime_valuation_zero_above_third_quotient n
  4. L44
    specialize central_binom_prime_valuation_zero_above_third_quotient C
  5. L45
    specialize central_binom_prime_valuation_zero_above_third_quotient v
  6. L46
    specialize central_binom_prime_valuation_zero_above_third_quotient q
  7. L47
    specialize central_binom_prime_valuation_zero_above_third_quotient r
  8. L48
    apply central_binom_prime_valuation_zero_above_third_quotient
  9. L49
    exact hp
  10. L50
    exact hpositive
12Use earlier factsL51–55

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

  1. L51
    exact hdivision
  2. L52
    exact hranges_right_right_left
  3. L53
    exact hranges_right_right_right
  4. L54
    exact hcentral
  5. L55
    exact hvaluation

Library-wide reading audit

Original defined command ledger · 55 lines
  1. 0001intro n
  2. 0002intro s
  3. 0003intro q
  4. 0004intro r
  5. 0005intro C
  6. 0006intro p
  7. 0007intro v
  8. 0008intro hexclusion
  9. 0009intro hp
  10. 0010intro hpositive
  11. 0011intro hdivision
  12. 0012intro hcentral
  13. 0013intro hvaluation
  14. 0014intro hnonzero
  15. 0015have hdivides : Dvd(p,C)
    Exact native replay linehave hdivides : exists k. C = p * k
  16. 0016specialize power_valuation_nonzero_exponent_divides_base p
  17. 0017specialize power_valuation_nonzero_exponent_divides_base C
  18. 0018specialize power_valuation_nonzero_exponent_divides_base v
  19. 0019apply power_valuation_nonzero_exponent_divides_base
  20. 0020exact hvaluation
  21. 0021exact hnonzero
  22. 0022have hranges : Le(p,s) ∨ (Lt(s,p)Le(p,q)Lt(q,p)Le(p,n))
    Exact native replay linehave hranges : (exists bcf_le_gap_bnbcnvlr_small. bcf_le_gap_bnbcnvlr_small + (p) = s) \/ (((exists bcf_lt_gap_bnbcnvlr_above_small. bcf_lt_gap_bnbcnvlr_above_small + S (s) = p) /\ (exists bcf_le_gap_bnbcnvlr_middle. bcf_le_gap_bnbcnvlr_middle + (p) = q)) \/ ((exists bcf_lt_gap_bnbcnvlr_above_middle. bcf_lt_gap_bnbcnvlr_above_middle + S (q) = p) /\ (exists bcf_le_gap_bnbcnvlr_row. bcf_le_gap_bnbcnvlr_row + (p) = n)))
  23. 0023specialize no_bertrand_central_prime_divisor_ranges n
  24. 0024specialize no_bertrand_central_prime_divisor_ranges s
  25. 0025specialize no_bertrand_central_prime_divisor_ranges q
  26. 0026specialize no_bertrand_central_prime_divisor_ranges C
  27. 0027specialize no_bertrand_central_prime_divisor_ranges p
  28. 0028apply no_bertrand_central_prime_divisor_ranges
  29. 0029exact hexclusion
  30. 0030exact hp
  31. 0031exact hcentral
  32. 0032exact hdivides
  33. 0033cases hranges
  34. 0034left
  35. 0035exact hranges_left
  36. 0036cases hranges_right
  37. 0037right
  38. 0038exact hranges_right_left
  39. 0039cases hranges_right_right
  40. 0040exfalso
  41. 0041apply hnonzero
  42. 0042specialize central_binom_prime_valuation_zero_above_third_quotient p
  43. 0043specialize central_binom_prime_valuation_zero_above_third_quotient n
  44. 0044specialize central_binom_prime_valuation_zero_above_third_quotient C
  45. 0045specialize central_binom_prime_valuation_zero_above_third_quotient v
  46. 0046specialize central_binom_prime_valuation_zero_above_third_quotient q
  47. 0047specialize central_binom_prime_valuation_zero_above_third_quotient r
  48. 0048apply central_binom_prime_valuation_zero_above_third_quotient
  49. 0049exact hp
  50. 0050exact hpositive
  51. 0051exact hdivision
  52. 0052exact hranges_right_right_left
  53. 0053exact hranges_right_right_right
  54. 0054exact hcentral
  55. 0055exact hvaluation