BT00YL · Bertrand theorem

no_bertrand_central_nonzero_contribution_factor_ranges

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

A nonzero contribution is small-bounded or one middle prime.

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. ∀ a. (∀ x. Lt(n,x)Le(x,n + n) → ¬Prime(x)) → Prime(p)Lt(2,n)FloorSqrt(n + n,s)DivRem(n + n,3,q,r)CentralBinom(n,C)PowerValuation(p,C,v)Pow(p,v,a) → ¬v = 0 → Le(p,s)Le(a,n + n)Lt(s,p)Le(p,q) ∧ a = p

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

14 occurrences

In local proof propositions

6 occurrences

Exact expanded native-PA statement
forall n s q r C p v a. (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) -> (((exists bcs_sqrt_lower_gap_bnbcnvfr_floor. bcs_sqrt_lower_gap_bnbcnvfr_floor + (s) * (s) = (n + n)) /\ exists bcs_sqrt_upper_gap_bnbcnvfr_floor. bcs_sqrt_upper_gap_bnbcnvfr_floor + S (n + n) = S (s) * S (s))) -> (((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)) -> (exists bpvi_b_bnbcncfr_power bpvi_c_bnbcncfr_power. ((forall bpvi_i_bnbcncfr_power. (exists bpvi_repeat_gap_bnbcncfr_power. bpvi_repeat_gap_bnbcncfr_power + S bpvi_i_bnbcncfr_power = v) -> (((exists bpvi_h_bnbcncfr_power_repeat. bpvi_h_bnbcncfr_power_repeat + S (p) = S ((S (bpvi_i_bnbcncfr_power)) * bpvi_c_bnbcncfr_power)) /\ exists bpvi_q_bnbcncfr_power_repeat. bpvi_b_bnbcncfr_power = bpvi_q_bnbcncfr_power_repeat * S ((S (bpvi_i_bnbcncfr_power)) * bpvi_c_bnbcncfr_power) + (p)))) /\ (exists bpvi_u_bnbcncfr_power bpvi_v_bnbcncfr_power. ((((exists bpvi_h_bnbcncfr_power_start. bpvi_h_bnbcncfr_power_start + S (1) = S ((S (0)) * bpvi_v_bnbcncfr_power)) /\ exists bpvi_q_bnbcncfr_power_start. bpvi_u_bnbcncfr_power = bpvi_q_bnbcncfr_power_start * S ((S (0)) * bpvi_v_bnbcncfr_power) + (1))) /\ ((((exists bpvi_h_bnbcncfr_power_terminal. bpvi_h_bnbcncfr_power_terminal + S (a) = S ((S (v)) * bpvi_v_bnbcncfr_power)) /\ exists bpvi_q_bnbcncfr_power_terminal. bpvi_u_bnbcncfr_power = bpvi_q_bnbcncfr_power_terminal * S ((S (v)) * bpvi_v_bnbcncfr_power) + (a))) /\ forall bpvi_j_bnbcncfr_power. (exists bpvi_product_gap_bnbcncfr_power. bpvi_product_gap_bnbcncfr_power + S bpvi_j_bnbcncfr_power = v) -> exists bpvi_factor_bnbcncfr_power bpvi_partial_bnbcncfr_power bpvi_successor_bnbcncfr_power. ((((exists bpvi_h_bnbcncfr_power_factor. bpvi_h_bnbcncfr_power_factor + S (bpvi_factor_bnbcncfr_power) = S ((S (bpvi_j_bnbcncfr_power)) * bpvi_c_bnbcncfr_power)) /\ exists bpvi_q_bnbcncfr_power_factor. bpvi_b_bnbcncfr_power = bpvi_q_bnbcncfr_power_factor * S ((S (bpvi_j_bnbcncfr_power)) * bpvi_c_bnbcncfr_power) + (bpvi_factor_bnbcncfr_power))) /\ ((((exists bpvi_h_bnbcncfr_power_partial. bpvi_h_bnbcncfr_power_partial + S (bpvi_partial_bnbcncfr_power) = S ((S (bpvi_j_bnbcncfr_power)) * bpvi_v_bnbcncfr_power)) /\ exists bpvi_q_bnbcncfr_power_partial. bpvi_u_bnbcncfr_power = bpvi_q_bnbcncfr_power_partial * S ((S (bpvi_j_bnbcncfr_power)) * bpvi_v_bnbcncfr_power) + (bpvi_partial_bnbcncfr_power))) /\ ((((exists bpvi_h_bnbcncfr_power_successor. bpvi_h_bnbcncfr_power_successor + S (bpvi_successor_bnbcncfr_power) = S ((S (S bpvi_j_bnbcncfr_power)) * bpvi_v_bnbcncfr_power)) /\ exists bpvi_q_bnbcncfr_power_successor. bpvi_u_bnbcncfr_power = bpvi_q_bnbcncfr_power_successor * S ((S (S bpvi_j_bnbcncfr_power)) * bpvi_v_bnbcncfr_power) + (bpvi_successor_bnbcncfr_power))) /\ bpvi_successor_bnbcncfr_power = bpvi_partial_bnbcncfr_power * bpvi_factor_bnbcncfr_power)))))))) -> ~(v = 0) -> (((exists bcf_le_gap_bnbcnvlr_small. bcf_le_gap_bnbcnvlr_small + (p) = s) /\ (exists bcf_le_gap_bnbcncfr_bound. bcf_le_gap_bnbcncfr_bound + (a) = n + n)) \/ (((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)) /\ a = p))

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

74 script commands · 14 reading checkpoints · 4 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 (5)
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 a
  9. L9
    intro hexclusion
  10. L10
    intro hp
02Fix variables and assumptionsL11–17

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

  1. L11
    intro hpositive
  2. L12
    intro hfloor
  3. L13
    intro hdivision
  4. L14
    intro hcentral
  5. L15
    intro hvaluation
  6. L16
    intro hpower
  7. L17
    intro hnonzero
03Establish hrangesL18–27

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

  1. L18
    have hranges : Le(p,s) ∨ Lt(s,p) ∧ Le(p,q) ∧ v = 1Definitions: Le(p,s)Lt(s,p)Le(p,q)Original native command in the exact edition
  2. L19
    specialize no_bertrand_central_nonzero_valuation_factor_ranges n
  3. L20
    specialize no_bertrand_central_nonzero_valuation_factor_ranges s
  4. L21
    specialize no_bertrand_central_nonzero_valuation_factor_ranges q
  5. L22
    specialize no_bertrand_central_nonzero_valuation_factor_ranges r
  6. L23
    specialize no_bertrand_central_nonzero_valuation_factor_ranges C
  7. L24
    specialize no_bertrand_central_nonzero_valuation_factor_ranges p
  8. L25
    specialize no_bertrand_central_nonzero_valuation_factor_ranges v
  9. L26
    apply no_bertrand_central_nonzero_valuation_factor_ranges
  10. L27
    exact hexclusion
04Use earlier factsL28–34

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

  1. L28
    exact hp
  2. L29
    exact hpositive
  3. L30
    exact hfloor
  4. L31
    exact hdivision
  5. L32
    exact hcentral
  6. L33
    exact hvaluation
  7. L34
    exact hnonzero
05Separate the logical casesL35–37

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

  1. L35
    cases hranges
  2. L36
    left
  3. L37
    split
06Use earlier factsL38–38

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

  1. L38
    exact hranges_left
07Establish htwo_leL39–43

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply lt to le.

  1. L39
    have htwo_le : Lt(1,n)Definitions: Lt(1,n)Original native command in the exact edition
  2. L40
    specialize lt_to_le 2
  3. L41
    specialize lt_to_le n
  4. L42
    apply lt_to_le
  5. L43
    exact hpositive
08Establish hone_twoL44–44

Establish this local claim before using it. It is not an additional assumption.

  1. L44
    have hone_two : Lt(0,2)Definitions: Lt(0,2)Original native command in the exact edition
09Construct an explicit witnessL45–45

Supply the displayed value, then prove that it has the required property.

  1. L45
    exists 1
10Calculate and transport equalitiesL46–46

Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.

  1. L46
    norm_num
11Establish hone_leL47–56

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le trans.

  1. L47
    have hone_le : Lt(0,n)Definitions: Lt(0,n)Original native command in the exact edition
  2. L48
    specialize le_trans 1
  3. L49
    specialize le_trans 2
  4. L50
    specialize le_trans n
  5. L51
    apply le_trans
  6. L52
    exact hone_two
  7. L53
    exact htwo_le
  8. L54
    specialize central_binom_prime_power_contribution_le_double p
  9. L55
    specialize central_binom_prime_power_contribution_le_double n
  10. L56
    specialize central_binom_prime_power_contribution_le_double C
12Use earlier factsL57–64

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

  1. L57
    specialize central_binom_prime_power_contribution_le_double v
  2. L58
    specialize central_binom_prime_power_contribution_le_double a
  3. L59
    apply central_binom_prime_power_contribution_le_double
  4. L60
    exact hp
  5. L61
    exact hone_le
  6. L62
    exact hcentral
  7. L63
    exact hvaluation
  8. L64
    exact hpower
13Separate the logical casesL65–67

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

  1. L65
    cases hranges_right
  2. L66
    right
  3. L67
    split
14Use earlier factsL68–74

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

  1. L68
    exact hranges_right_left
  2. L69
    specialize pow_one p
  3. L70
    specialize pow_one v
  4. L71
    specialize pow_one a
  5. L72
    apply pow_one
  6. L73
    exact hranges_right_right
  7. L74
    exact hpower

Library-wide reading audit

Original defined command ledger · 74 lines
  1. 0001intro n
  2. 0002intro s
  3. 0003intro q
  4. 0004intro r
  5. 0005intro C
  6. 0006intro p
  7. 0007intro v
  8. 0008intro a
  9. 0009intro hexclusion
  10. 0010intro hp
  11. 0011intro hpositive
  12. 0012intro hfloor
  13. 0013intro hdivision
  14. 0014intro hcentral
  15. 0015intro hvaluation
  16. 0016intro hpower
  17. 0017intro hnonzero
  18. 0018have hranges : Le(p,s)Lt(s,p)Le(p,q) ∧ v = 1
    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)) /\ v = 1)
  19. 0019specialize no_bertrand_central_nonzero_valuation_factor_ranges n
  20. 0020specialize no_bertrand_central_nonzero_valuation_factor_ranges s
  21. 0021specialize no_bertrand_central_nonzero_valuation_factor_ranges q
  22. 0022specialize no_bertrand_central_nonzero_valuation_factor_ranges r
  23. 0023specialize no_bertrand_central_nonzero_valuation_factor_ranges C
  24. 0024specialize no_bertrand_central_nonzero_valuation_factor_ranges p
  25. 0025specialize no_bertrand_central_nonzero_valuation_factor_ranges v
  26. 0026apply no_bertrand_central_nonzero_valuation_factor_ranges
  27. 0027exact hexclusion
  28. 0028exact hp
  29. 0029exact hpositive
  30. 0030exact hfloor
  31. 0031exact hdivision
  32. 0032exact hcentral
  33. 0033exact hvaluation
  34. 0034exact hnonzero
  35. 0035cases hranges
  36. 0036left
  37. 0037split
  38. 0038exact hranges_left
  39. 0039have htwo_le : Lt(1,n)
    Exact native replay linehave htwo_le : exists bcf_le_gap_bnbcncfr_two_le. bcf_le_gap_bnbcncfr_two_le + (2) = n
  40. 0040specialize lt_to_le 2
  41. 0041specialize lt_to_le n
  42. 0042apply lt_to_le
  43. 0043exact hpositive
  44. 0044have hone_two : Lt(0,2)
    Exact native replay linehave hone_two : exists bcf_le_gap_bnbcncfr_one_two. bcf_le_gap_bnbcncfr_one_two + (1) = 2
  45. 0045exists 1
  46. 0046norm_num
  47. 0047have hone_le : Lt(0,n)
    Exact native replay linehave hone_le : exists bcf_le_gap_bnbcncfr_one_le. bcf_le_gap_bnbcncfr_one_le + (1) = n
  48. 0048specialize le_trans 1
  49. 0049specialize le_trans 2
  50. 0050specialize le_trans n
  51. 0051apply le_trans
  52. 0052exact hone_two
  53. 0053exact htwo_le
  54. 0054specialize central_binom_prime_power_contribution_le_double p
  55. 0055specialize central_binom_prime_power_contribution_le_double n
  56. 0056specialize central_binom_prime_power_contribution_le_double C
  57. 0057specialize central_binom_prime_power_contribution_le_double v
  58. 0058specialize central_binom_prime_power_contribution_le_double a
  59. 0059apply central_binom_prime_power_contribution_le_double
  60. 0060exact hp
  61. 0061exact hone_le
  62. 0062exact hcentral
  63. 0063exact hvaluation
  64. 0064exact hpower
  65. 0065cases hranges_right
  66. 0066right
  67. 0067split
  68. 0068exact hranges_right_left
  69. 0069specialize pow_one p
  70. 0070specialize pow_one v
  71. 0071specialize pow_one a
  72. 0072apply pow_one
  73. 0073exact hranges_right_right
  74. 0074exact hpower