BT0107 · Bertrand theorem

central_binom_prime_contribution_product_exists

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

A central coefficient is exactly its complete contribution product.

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. ∀ C. CentralBinom(n,C) → ∃ x. (∃ y. ∃ z. (∀ m. Lt(m,n + n) → ∃ k. BetaAt(y,z,m,k) ∧ (Prime(S m) ∧ (∃ i. PowerValuation(S m,C,i)Pow(S m,i,k)) ∨ ¬Prime(S m) ∧ k = 1)) ∧ Product(y,z,n + n,x)) ∧ C = x

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

8 occurrences

In local proof propositions

3 occurrences

Exact expanded native-PA statement
forall n C. (((exists bcf_lt_gap_bcbpcpe_central_out_of_range. bcf_lt_gap_bcbpcpe_central_out_of_range + S (n + n) = n) /\ C = 0) \/ ((exists bcf_le_gap_bcbpcpe_central_in_range. bcf_le_gap_bcbpcpe_central_in_range + (n) = n + n) /\ (exists bcf_row_code_code_bcbpcpe_central bcf_row_code_scale_bcbpcpe_central bcf_row_scale_code_bcbpcpe_central bcf_row_scale_scale_bcbpcpe_central bcf_row_code_bcbpcpe_central bcf_row_scale_bcbpcpe_central. ((forall bcf_row_index_bcbpcpe_central_table. (exists bcf_lt_gap_bcbpcpe_central_table_row_bound. bcf_lt_gap_bcbpcpe_central_table_row_bound + S (bcf_row_index_bcbpcpe_central_table) = S (n + n)) -> exists bcf_row_code_bcbpcpe_central_table bcf_row_scale_bcbpcpe_central_table. ((((exists bcf_height_bcbpcpe_central_table_decoded_row_code. bcf_height_bcbpcpe_central_table_decoded_row_code + S (bcf_row_code_bcbpcpe_central_table) = S ((S (bcf_row_index_bcbpcpe_central_table)) * bcf_row_code_scale_bcbpcpe_central)) /\ exists bcf_quotient_bcbpcpe_central_table_decoded_row_code. bcf_row_code_code_bcbpcpe_central = bcf_quotient_bcbpcpe_central_table_decoded_row_code * S ((S (bcf_row_index_bcbpcpe_central_table)) * bcf_row_code_scale_bcbpcpe_central) + (bcf_row_code_bcbpcpe_central_table))) /\ ((((exists bcf_height_bcbpcpe_central_table_decoded_row_scale. bcf_height_bcbpcpe_central_table_decoded_row_scale + S (bcf_row_scale_bcbpcpe_central_table) = S ((S (bcf_row_index_bcbpcpe_central_table)) * bcf_row_scale_scale_bcbpcpe_central)) /\ exists bcf_quotient_bcbpcpe_central_table_decoded_row_scale. bcf_row_scale_code_bcbpcpe_central = bcf_quotient_bcbpcpe_central_table_decoded_row_scale * S ((S (bcf_row_index_bcbpcpe_central_table)) * bcf_row_scale_scale_bcbpcpe_central) + (bcf_row_scale_bcbpcpe_central_table))) /\ ((bcf_row_index_bcbpcpe_central_table = 0 /\ (forall bcf_index_bcbpcpe_central_table_zero_row. (exists bcf_lt_gap_bcbpcpe_central_table_zero_row_bound. bcf_lt_gap_bcbpcpe_central_table_zero_row_bound + S (bcf_index_bcbpcpe_central_table_zero_row) = S (n + n)) -> exists bcf_value_bcbpcpe_central_table_zero_row. ((((exists bcf_height_bcbpcpe_central_table_zero_row_entry. bcf_height_bcbpcpe_central_table_zero_row_entry + S (bcf_value_bcbpcpe_central_table_zero_row) = S ((S (bcf_index_bcbpcpe_central_table_zero_row)) * bcf_row_scale_bcbpcpe_central_table)) /\ exists bcf_quotient_bcbpcpe_central_table_zero_row_entry. bcf_row_code_bcbpcpe_central_table = bcf_quotient_bcbpcpe_central_table_zero_row_entry * S ((S (bcf_index_bcbpcpe_central_table_zero_row)) * bcf_row_scale_bcbpcpe_central_table) + (bcf_value_bcbpcpe_central_table_zero_row))) /\ ((bcf_index_bcbpcpe_central_table_zero_row = 0 /\ bcf_value_bcbpcpe_central_table_zero_row = 1) \/ exists bcf_predecessor_bcbpcpe_central_table_zero_row. bcf_index_bcbpcpe_central_table_zero_row = S bcf_predecessor_bcbpcpe_central_table_zero_row /\ bcf_value_bcbpcpe_central_table_zero_row = 0)))) \/ exists bcf_predecessor_bcbpcpe_central_table bcf_previous_code_bcbpcpe_central_table bcf_previous_scale_bcbpcpe_central_table. bcf_row_index_bcbpcpe_central_table = S bcf_predecessor_bcbpcpe_central_table /\ ((((exists bcf_height_bcbpcpe_central_table_decoded_previous_code. bcf_height_bcbpcpe_central_table_decoded_previous_code + S (bcf_previous_code_bcbpcpe_central_table) = S ((S (bcf_predecessor_bcbpcpe_central_table)) * bcf_row_code_scale_bcbpcpe_central)) /\ exists bcf_quotient_bcbpcpe_central_table_decoded_previous_code. bcf_row_code_code_bcbpcpe_central = bcf_quotient_bcbpcpe_central_table_decoded_previous_code * S ((S (bcf_predecessor_bcbpcpe_central_table)) * bcf_row_code_scale_bcbpcpe_central) + (bcf_previous_code_bcbpcpe_central_table))) /\ ((((exists bcf_height_bcbpcpe_central_table_decoded_previous_scale. bcf_height_bcbpcpe_central_table_decoded_previous_scale + S (bcf_previous_scale_bcbpcpe_central_table) = S ((S (bcf_predecessor_bcbpcpe_central_table)) * bcf_row_scale_scale_bcbpcpe_central)) /\ exists bcf_quotient_bcbpcpe_central_table_decoded_previous_scale. bcf_row_scale_code_bcbpcpe_central = bcf_quotient_bcbpcpe_central_table_decoded_previous_scale * S ((S (bcf_predecessor_bcbpcpe_central_table)) * bcf_row_scale_scale_bcbpcpe_central) + (bcf_previous_scale_bcbpcpe_central_table))) /\ (forall bcf_index_bcbpcpe_central_table_row_step. (exists bcf_lt_gap_bcbpcpe_central_table_row_step_bound. bcf_lt_gap_bcbpcpe_central_table_row_step_bound + S (bcf_index_bcbpcpe_central_table_row_step) = S (n + n)) -> exists bcf_value_bcbpcpe_central_table_row_step. ((((exists bcf_height_bcbpcpe_central_table_row_step_entry. bcf_height_bcbpcpe_central_table_row_step_entry + S (bcf_value_bcbpcpe_central_table_row_step) = S ((S (bcf_index_bcbpcpe_central_table_row_step)) * bcf_row_scale_bcbpcpe_central_table)) /\ exists bcf_quotient_bcbpcpe_central_table_row_step_entry. bcf_row_code_bcbpcpe_central_table = bcf_quotient_bcbpcpe_central_table_row_step_entry * S ((S (bcf_index_bcbpcpe_central_table_row_step)) * bcf_row_scale_bcbpcpe_central_table) + (bcf_value_bcbpcpe_central_table_row_step))) /\ ((bcf_index_bcbpcpe_central_table_row_step = 0 /\ bcf_value_bcbpcpe_central_table_row_step = 1) \/ exists bcf_predecessor_bcbpcpe_central_table_row_step bcf_left_bcbpcpe_central_table_row_step bcf_right_bcbpcpe_central_table_row_step. bcf_index_bcbpcpe_central_table_row_step = S bcf_predecessor_bcbpcpe_central_table_row_step /\ ((((exists bcf_height_bcbpcpe_central_table_row_step_previous_left. bcf_height_bcbpcpe_central_table_row_step_previous_left + S (bcf_left_bcbpcpe_central_table_row_step) = S ((S (bcf_predecessor_bcbpcpe_central_table_row_step)) * bcf_previous_scale_bcbpcpe_central_table)) /\ exists bcf_quotient_bcbpcpe_central_table_row_step_previous_left. bcf_previous_code_bcbpcpe_central_table = bcf_quotient_bcbpcpe_central_table_row_step_previous_left * S ((S (bcf_predecessor_bcbpcpe_central_table_row_step)) * bcf_previous_scale_bcbpcpe_central_table) + (bcf_left_bcbpcpe_central_table_row_step))) /\ ((((exists bcf_height_bcbpcpe_central_table_row_step_previous_right. bcf_height_bcbpcpe_central_table_row_step_previous_right + S (bcf_right_bcbpcpe_central_table_row_step) = S ((S (S (bcf_predecessor_bcbpcpe_central_table_row_step))) * bcf_previous_scale_bcbpcpe_central_table)) /\ exists bcf_quotient_bcbpcpe_central_table_row_step_previous_right. bcf_previous_code_bcbpcpe_central_table = bcf_quotient_bcbpcpe_central_table_row_step_previous_right * S ((S (S (bcf_predecessor_bcbpcpe_central_table_row_step))) * bcf_previous_scale_bcbpcpe_central_table) + (bcf_right_bcbpcpe_central_table_row_step))) /\ bcf_value_bcbpcpe_central_table_row_step = bcf_left_bcbpcpe_central_table_row_step + bcf_right_bcbpcpe_central_table_row_step))))))))))) /\ ((((exists bcf_height_bcbpcpe_central_decoded_row_code. bcf_height_bcbpcpe_central_decoded_row_code + S (bcf_row_code_bcbpcpe_central) = S ((S (n + n)) * bcf_row_code_scale_bcbpcpe_central)) /\ exists bcf_quotient_bcbpcpe_central_decoded_row_code. bcf_row_code_code_bcbpcpe_central = bcf_quotient_bcbpcpe_central_decoded_row_code * S ((S (n + n)) * bcf_row_code_scale_bcbpcpe_central) + (bcf_row_code_bcbpcpe_central))) /\ ((((exists bcf_height_bcbpcpe_central_decoded_row_scale. bcf_height_bcbpcpe_central_decoded_row_scale + S (bcf_row_scale_bcbpcpe_central) = S ((S (n + n)) * bcf_row_scale_scale_bcbpcpe_central)) /\ exists bcf_quotient_bcbpcpe_central_decoded_row_scale. bcf_row_scale_code_bcbpcpe_central = bcf_quotient_bcbpcpe_central_decoded_row_scale * S ((S (n + n)) * bcf_row_scale_scale_bcbpcpe_central) + (bcf_row_scale_bcbpcpe_central))) /\ (((exists bcf_height_bcbpcpe_central_decoded_value. bcf_height_bcbpcpe_central_decoded_value + S (C) = S ((S (n)) * bcf_row_scale_bcbpcpe_central)) /\ exists bcf_quotient_bcbpcpe_central_decoded_value. bcf_row_code_bcbpcpe_central = bcf_quotient_bcbpcpe_central_decoded_value * S ((S (n)) * bcf_row_scale_bcbpcpe_central) + (C))))))))) -> exists z. (exists bpr_product_code_bcbpcpe_product bpr_product_scale_bcbpcpe_product. ((forall bpr_prefix_index_bcbpcpe_product_prefix. (exists bpr_gap_bcbpcpe_product_prefix_bound. bpr_gap_bcbpcpe_product_prefix_bound + S (bpr_prefix_index_bcbpcpe_product_prefix) = n + n) -> exists bpr_prefix_value_bcbpcpe_product_prefix. ((((exists bpr_height_bcbpcpe_product_prefix_decoded. bpr_height_bcbpcpe_product_prefix_decoded + S (bpr_prefix_value_bcbpcpe_product_prefix) = S ((S (bpr_prefix_index_bcbpcpe_product_prefix)) * bpr_product_scale_bcbpcpe_product)) /\ exists bpr_quotient_bcbpcpe_product_prefix_decoded. bpr_product_code_bcbpcpe_product = bpr_quotient_bcbpcpe_product_prefix_decoded * S ((S (bpr_prefix_index_bcbpcpe_product_prefix)) * bpr_product_scale_bcbpcpe_product) + (bpr_prefix_value_bcbpcpe_product_prefix))) /\ (((((~(S (bpr_prefix_index_bcbpcpe_product_prefix) = 1) /\ forall bpr_left_bcbpcpe_product_prefix_choice_prime bpr_right_bcbpcpe_product_prefix_choice_prime. S (bpr_prefix_index_bcbpcpe_product_prefix) = bpr_left_bcbpcpe_product_prefix_choice_prime * bpr_right_bcbpcpe_product_prefix_choice_prime -> bpr_left_bcbpcpe_product_prefix_choice_prime = 1 \/ bpr_right_bcbpcpe_product_prefix_choice_prime = 1)) /\ exists bpr_choice_exponent_bcbpcpe_product_prefix_choice. ((((exists bpr_le_gap_bcbpcpe_product_prefix_choice_valuation_selected_bound. bpr_le_gap_bcbpcpe_product_prefix_choice_valuation_selected_bound + (bpr_choice_exponent_bcbpcpe_product_prefix_choice) = (C)) /\ (exists bpr_power_value_bcbpcpe_product_prefix_choice_valuation_selected. ((exists bpr_power_code_bcbpcpe_product_prefix_choice_valuation_selected_power bpr_power_scale_bcbpcpe_product_prefix_choice_valuation_selected_power. ((forall bpr_power_index_bcbpcpe_product_prefix_choice_valuation_selected_power. (exists bpr_gap_bcbpcpe_product_prefix_choice_valuation_selected_power_repeat_bound. bpr_gap_bcbpcpe_product_prefix_choice_valuation_selected_power_repeat_bound + S (bpr_power_index_bcbpcpe_product_prefix_choice_valuation_selected_power) = bpr_choice_exponent_bcbpcpe_product_prefix_choice) -> (((exists bpr_height_bcbpcpe_product_prefix_choice_valuation_selected_power_repeat_entry. bpr_height_bcbpcpe_product_prefix_choice_valuation_selected_power_repeat_entry + S (S (bpr_prefix_index_bcbpcpe_product_prefix)) = S ((S (bpr_power_index_bcbpcpe_product_prefix_choice_valuation_selected_power)) * bpr_power_scale_bcbpcpe_product_prefix_choice_valuation_selected_power)) /\ exists bpr_quotient_bcbpcpe_product_prefix_choice_valuation_selected_power_repeat_entry. bpr_power_code_bcbpcpe_product_prefix_choice_valuation_selected_power = bpr_quotient_bcbpcpe_product_prefix_choice_valuation_selected_power_repeat_entry * S ((S (bpr_power_index_bcbpcpe_product_prefix_choice_valuation_selected_power)) * bpr_power_scale_bcbpcpe_product_prefix_choice_valuation_selected_power) + (S (bpr_prefix_index_bcbpcpe_product_prefix))))) /\ (exists ff_u_bcbpcpe_product_prefix_choice_valuation_selected_power_product ff_v_bcbpcpe_product_prefix_choice_valuation_selected_power_product. ((((exists ff_h_bcbpcpe_product_prefix_choice_valuation_selected_power_product_start. ff_h_bcbpcpe_product_prefix_choice_valuation_selected_power_product_start + S (1) = S ((S (0)) * ff_v_bcbpcpe_product_prefix_choice_valuation_selected_power_product)) /\ exists ff_q_bcbpcpe_product_prefix_choice_valuation_selected_power_product_start. ff_u_bcbpcpe_product_prefix_choice_valuation_selected_power_product = ff_q_bcbpcpe_product_prefix_choice_valuation_selected_power_product_start * S ((S (0)) * ff_v_bcbpcpe_product_prefix_choice_valuation_selected_power_product) + (1))) /\ ((((exists ff_h_bcbpcpe_product_prefix_choice_valuation_selected_power_product_terminal. ff_h_bcbpcpe_product_prefix_choice_valuation_selected_power_product_terminal + S (bpr_power_value_bcbpcpe_product_prefix_choice_valuation_selected) = S ((S (bpr_choice_exponent_bcbpcpe_product_prefix_choice)) * ff_v_bcbpcpe_product_prefix_choice_valuation_selected_power_product)) /\ exists ff_q_bcbpcpe_product_prefix_choice_valuation_selected_power_product_terminal. ff_u_bcbpcpe_product_prefix_choice_valuation_selected_power_product = ff_q_bcbpcpe_product_prefix_choice_valuation_selected_power_product_terminal * S ((S (bpr_choice_exponent_bcbpcpe_product_prefix_choice)) * ff_v_bcbpcpe_product_prefix_choice_valuation_selected_power_product) + (bpr_power_value_bcbpcpe_product_prefix_choice_valuation_selected))) /\ forall ff_i_bcbpcpe_product_prefix_choice_valuation_selected_power_product. (exists ff_lt_bcbpcpe_product_prefix_choice_valuation_selected_power_product_bound. ff_lt_bcbpcpe_product_prefix_choice_valuation_selected_power_product_bound + S ff_i_bcbpcpe_product_prefix_choice_valuation_selected_power_product = bpr_choice_exponent_bcbpcpe_product_prefix_choice) -> exists ff_p_bcbpcpe_product_prefix_choice_valuation_selected_power_product ff_r_bcbpcpe_product_prefix_choice_valuation_selected_power_product ff_s_bcbpcpe_product_prefix_choice_valuation_selected_power_product. ((((exists ff_h_bcbpcpe_product_prefix_choice_valuation_selected_power_product_factor. ff_h_bcbpcpe_product_prefix_choice_valuation_selected_power_product_factor + S (ff_p_bcbpcpe_product_prefix_choice_valuation_selected_power_product) = S ((S (ff_i_bcbpcpe_product_prefix_choice_valuation_selected_power_product)) * bpr_power_scale_bcbpcpe_product_prefix_choice_valuation_selected_power)) /\ exists ff_q_bcbpcpe_product_prefix_choice_valuation_selected_power_product_factor. bpr_power_code_bcbpcpe_product_prefix_choice_valuation_selected_power = ff_q_bcbpcpe_product_prefix_choice_valuation_selected_power_product_factor * S ((S (ff_i_bcbpcpe_product_prefix_choice_valuation_selected_power_product)) * bpr_power_scale_bcbpcpe_product_prefix_choice_valuation_selected_power) + (ff_p_bcbpcpe_product_prefix_choice_valuation_selected_power_product))) /\ ((((exists ff_h_bcbpcpe_product_prefix_choice_valuation_selected_power_product_partial. ff_h_bcbpcpe_product_prefix_choice_valuation_selected_power_product_partial + S (ff_r_bcbpcpe_product_prefix_choice_valuation_selected_power_product) = S ((S (ff_i_bcbpcpe_product_prefix_choice_valuation_selected_power_product)) * ff_v_bcbpcpe_product_prefix_choice_valuation_selected_power_product)) /\ exists ff_q_bcbpcpe_product_prefix_choice_valuation_selected_power_product_partial. ff_u_bcbpcpe_product_prefix_choice_valuation_selected_power_product = ff_q_bcbpcpe_product_prefix_choice_valuation_selected_power_product_partial * S ((S (ff_i_bcbpcpe_product_prefix_choice_valuation_selected_power_product)) * ff_v_bcbpcpe_product_prefix_choice_valuation_selected_power_product) + (ff_r_bcbpcpe_product_prefix_choice_valuation_selected_power_product))) /\ ((((exists ff_h_bcbpcpe_product_prefix_choice_valuation_selected_power_product_successor. ff_h_bcbpcpe_product_prefix_choice_valuation_selected_power_product_successor + S (ff_s_bcbpcpe_product_prefix_choice_valuation_selected_power_product) = S ((S (S ff_i_bcbpcpe_product_prefix_choice_valuation_selected_power_product)) * ff_v_bcbpcpe_product_prefix_choice_valuation_selected_power_product)) /\ exists ff_q_bcbpcpe_product_prefix_choice_valuation_selected_power_product_successor. ff_u_bcbpcpe_product_prefix_choice_valuation_selected_power_product = ff_q_bcbpcpe_product_prefix_choice_valuation_selected_power_product_successor * S ((S (S ff_i_bcbpcpe_product_prefix_choice_valuation_selected_power_product)) * ff_v_bcbpcpe_product_prefix_choice_valuation_selected_power_product) + (ff_s_bcbpcpe_product_prefix_choice_valuation_selected_power_product))) /\ ff_s_bcbpcpe_product_prefix_choice_valuation_selected_power_product = ff_r_bcbpcpe_product_prefix_choice_valuation_selected_power_product * ff_p_bcbpcpe_product_prefix_choice_valuation_selected_power_product)))))))) /\ (exists bpr_divides_quotient_bcbpcpe_product_prefix_choice_valuation_selected_divides. C = (bpr_power_value_bcbpcpe_product_prefix_choice_valuation_selected) * bpr_divides_quotient_bcbpcpe_product_prefix_choice_valuation_selected_divides)))) /\ forall bpr_valuation_candidate_bcbpcpe_product_prefix_choice_valuation. (exists bpr_le_gap_bcbpcpe_product_prefix_choice_valuation_candidate_bound. bpr_le_gap_bcbpcpe_product_prefix_choice_valuation_candidate_bound + (bpr_valuation_candidate_bcbpcpe_product_prefix_choice_valuation) = (C)) -> (exists bpr_power_value_bcbpcpe_product_prefix_choice_valuation_candidate. ((exists bpr_power_code_bcbpcpe_product_prefix_choice_valuation_candidate_power bpr_power_scale_bcbpcpe_product_prefix_choice_valuation_candidate_power. ((forall bpr_power_index_bcbpcpe_product_prefix_choice_valuation_candidate_power. (exists bpr_gap_bcbpcpe_product_prefix_choice_valuation_candidate_power_repeat_bound. bpr_gap_bcbpcpe_product_prefix_choice_valuation_candidate_power_repeat_bound + S (bpr_power_index_bcbpcpe_product_prefix_choice_valuation_candidate_power) = bpr_valuation_candidate_bcbpcpe_product_prefix_choice_valuation) -> (((exists bpr_height_bcbpcpe_product_prefix_choice_valuation_candidate_power_repeat_entry. bpr_height_bcbpcpe_product_prefix_choice_valuation_candidate_power_repeat_entry + S (S (bpr_prefix_index_bcbpcpe_product_prefix)) = S ((S (bpr_power_index_bcbpcpe_product_prefix_choice_valuation_candidate_power)) * bpr_power_scale_bcbpcpe_product_prefix_choice_valuation_candidate_power)) /\ exists bpr_quotient_bcbpcpe_product_prefix_choice_valuation_candidate_power_repeat_entry. bpr_power_code_bcbpcpe_product_prefix_choice_valuation_candidate_power = bpr_quotient_bcbpcpe_product_prefix_choice_valuation_candidate_power_repeat_entry * S ((S (bpr_power_index_bcbpcpe_product_prefix_choice_valuation_candidate_power)) * bpr_power_scale_bcbpcpe_product_prefix_choice_valuation_candidate_power) + (S (bpr_prefix_index_bcbpcpe_product_prefix))))) /\ (exists ff_u_bcbpcpe_product_prefix_choice_valuation_candidate_power_product ff_v_bcbpcpe_product_prefix_choice_valuation_candidate_power_product. ((((exists ff_h_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_start. ff_h_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_start + S (1) = S ((S (0)) * ff_v_bcbpcpe_product_prefix_choice_valuation_candidate_power_product)) /\ exists ff_q_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_start. ff_u_bcbpcpe_product_prefix_choice_valuation_candidate_power_product = ff_q_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_start * S ((S (0)) * ff_v_bcbpcpe_product_prefix_choice_valuation_candidate_power_product) + (1))) /\ ((((exists ff_h_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_terminal. ff_h_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_terminal + S (bpr_power_value_bcbpcpe_product_prefix_choice_valuation_candidate) = S ((S (bpr_valuation_candidate_bcbpcpe_product_prefix_choice_valuation)) * ff_v_bcbpcpe_product_prefix_choice_valuation_candidate_power_product)) /\ exists ff_q_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_terminal. ff_u_bcbpcpe_product_prefix_choice_valuation_candidate_power_product = ff_q_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_terminal * S ((S (bpr_valuation_candidate_bcbpcpe_product_prefix_choice_valuation)) * ff_v_bcbpcpe_product_prefix_choice_valuation_candidate_power_product) + (bpr_power_value_bcbpcpe_product_prefix_choice_valuation_candidate))) /\ forall ff_i_bcbpcpe_product_prefix_choice_valuation_candidate_power_product. (exists ff_lt_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_bound. ff_lt_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_bound + S ff_i_bcbpcpe_product_prefix_choice_valuation_candidate_power_product = bpr_valuation_candidate_bcbpcpe_product_prefix_choice_valuation) -> exists ff_p_bcbpcpe_product_prefix_choice_valuation_candidate_power_product ff_r_bcbpcpe_product_prefix_choice_valuation_candidate_power_product ff_s_bcbpcpe_product_prefix_choice_valuation_candidate_power_product. ((((exists ff_h_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_factor. ff_h_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_factor + S (ff_p_bcbpcpe_product_prefix_choice_valuation_candidate_power_product) = S ((S (ff_i_bcbpcpe_product_prefix_choice_valuation_candidate_power_product)) * bpr_power_scale_bcbpcpe_product_prefix_choice_valuation_candidate_power)) /\ exists ff_q_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_factor. bpr_power_code_bcbpcpe_product_prefix_choice_valuation_candidate_power = ff_q_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_factor * S ((S (ff_i_bcbpcpe_product_prefix_choice_valuation_candidate_power_product)) * bpr_power_scale_bcbpcpe_product_prefix_choice_valuation_candidate_power) + (ff_p_bcbpcpe_product_prefix_choice_valuation_candidate_power_product))) /\ ((((exists ff_h_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_partial. ff_h_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_partial + S (ff_r_bcbpcpe_product_prefix_choice_valuation_candidate_power_product) = S ((S (ff_i_bcbpcpe_product_prefix_choice_valuation_candidate_power_product)) * ff_v_bcbpcpe_product_prefix_choice_valuation_candidate_power_product)) /\ exists ff_q_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_partial. ff_u_bcbpcpe_product_prefix_choice_valuation_candidate_power_product = ff_q_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_partial * S ((S (ff_i_bcbpcpe_product_prefix_choice_valuation_candidate_power_product)) * ff_v_bcbpcpe_product_prefix_choice_valuation_candidate_power_product) + (ff_r_bcbpcpe_product_prefix_choice_valuation_candidate_power_product))) /\ ((((exists ff_h_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_successor. ff_h_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_successor + S (ff_s_bcbpcpe_product_prefix_choice_valuation_candidate_power_product) = S ((S (S ff_i_bcbpcpe_product_prefix_choice_valuation_candidate_power_product)) * ff_v_bcbpcpe_product_prefix_choice_valuation_candidate_power_product)) /\ exists ff_q_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_successor. ff_u_bcbpcpe_product_prefix_choice_valuation_candidate_power_product = ff_q_bcbpcpe_product_prefix_choice_valuation_candidate_power_product_successor * S ((S (S ff_i_bcbpcpe_product_prefix_choice_valuation_candidate_power_product)) * ff_v_bcbpcpe_product_prefix_choice_valuation_candidate_power_product) + (ff_s_bcbpcpe_product_prefix_choice_valuation_candidate_power_product))) /\ ff_s_bcbpcpe_product_prefix_choice_valuation_candidate_power_product = ff_r_bcbpcpe_product_prefix_choice_valuation_candidate_power_product * ff_p_bcbpcpe_product_prefix_choice_valuation_candidate_power_product)))))))) /\ (exists bpr_divides_quotient_bcbpcpe_product_prefix_choice_valuation_candidate_divides. C = (bpr_power_value_bcbpcpe_product_prefix_choice_valuation_candidate) * bpr_divides_quotient_bcbpcpe_product_prefix_choice_valuation_candidate_divides))) -> (exists bpr_le_gap_bcbpcpe_product_prefix_choice_valuation_candidate_below. bpr_le_gap_bcbpcpe_product_prefix_choice_valuation_candidate_below + (bpr_valuation_candidate_bcbpcpe_product_prefix_choice_valuation) = (bpr_choice_exponent_bcbpcpe_product_prefix_choice))) /\ (exists bpr_power_code_bcbpcpe_product_prefix_choice_power bpr_power_scale_bcbpcpe_product_prefix_choice_power. ((forall bpr_power_index_bcbpcpe_product_prefix_choice_power. (exists bpr_gap_bcbpcpe_product_prefix_choice_power_repeat_bound. bpr_gap_bcbpcpe_product_prefix_choice_power_repeat_bound + S (bpr_power_index_bcbpcpe_product_prefix_choice_power) = bpr_choice_exponent_bcbpcpe_product_prefix_choice) -> (((exists bpr_height_bcbpcpe_product_prefix_choice_power_repeat_entry. bpr_height_bcbpcpe_product_prefix_choice_power_repeat_entry + S (S (bpr_prefix_index_bcbpcpe_product_prefix)) = S ((S (bpr_power_index_bcbpcpe_product_prefix_choice_power)) * bpr_power_scale_bcbpcpe_product_prefix_choice_power)) /\ exists bpr_quotient_bcbpcpe_product_prefix_choice_power_repeat_entry. bpr_power_code_bcbpcpe_product_prefix_choice_power = bpr_quotient_bcbpcpe_product_prefix_choice_power_repeat_entry * S ((S (bpr_power_index_bcbpcpe_product_prefix_choice_power)) * bpr_power_scale_bcbpcpe_product_prefix_choice_power) + (S (bpr_prefix_index_bcbpcpe_product_prefix))))) /\ (exists ff_u_bcbpcpe_product_prefix_choice_power_product ff_v_bcbpcpe_product_prefix_choice_power_product. ((((exists ff_h_bcbpcpe_product_prefix_choice_power_product_start. ff_h_bcbpcpe_product_prefix_choice_power_product_start + S (1) = S ((S (0)) * ff_v_bcbpcpe_product_prefix_choice_power_product)) /\ exists ff_q_bcbpcpe_product_prefix_choice_power_product_start. ff_u_bcbpcpe_product_prefix_choice_power_product = ff_q_bcbpcpe_product_prefix_choice_power_product_start * S ((S (0)) * ff_v_bcbpcpe_product_prefix_choice_power_product) + (1))) /\ ((((exists ff_h_bcbpcpe_product_prefix_choice_power_product_terminal. ff_h_bcbpcpe_product_prefix_choice_power_product_terminal + S (bpr_prefix_value_bcbpcpe_product_prefix) = S ((S (bpr_choice_exponent_bcbpcpe_product_prefix_choice)) * ff_v_bcbpcpe_product_prefix_choice_power_product)) /\ exists ff_q_bcbpcpe_product_prefix_choice_power_product_terminal. ff_u_bcbpcpe_product_prefix_choice_power_product = ff_q_bcbpcpe_product_prefix_choice_power_product_terminal * S ((S (bpr_choice_exponent_bcbpcpe_product_prefix_choice)) * ff_v_bcbpcpe_product_prefix_choice_power_product) + (bpr_prefix_value_bcbpcpe_product_prefix))) /\ forall ff_i_bcbpcpe_product_prefix_choice_power_product. (exists ff_lt_bcbpcpe_product_prefix_choice_power_product_bound. ff_lt_bcbpcpe_product_prefix_choice_power_product_bound + S ff_i_bcbpcpe_product_prefix_choice_power_product = bpr_choice_exponent_bcbpcpe_product_prefix_choice) -> exists ff_p_bcbpcpe_product_prefix_choice_power_product ff_r_bcbpcpe_product_prefix_choice_power_product ff_s_bcbpcpe_product_prefix_choice_power_product. ((((exists ff_h_bcbpcpe_product_prefix_choice_power_product_factor. ff_h_bcbpcpe_product_prefix_choice_power_product_factor + S (ff_p_bcbpcpe_product_prefix_choice_power_product) = S ((S (ff_i_bcbpcpe_product_prefix_choice_power_product)) * bpr_power_scale_bcbpcpe_product_prefix_choice_power)) /\ exists ff_q_bcbpcpe_product_prefix_choice_power_product_factor. bpr_power_code_bcbpcpe_product_prefix_choice_power = ff_q_bcbpcpe_product_prefix_choice_power_product_factor * S ((S (ff_i_bcbpcpe_product_prefix_choice_power_product)) * bpr_power_scale_bcbpcpe_product_prefix_choice_power) + (ff_p_bcbpcpe_product_prefix_choice_power_product))) /\ ((((exists ff_h_bcbpcpe_product_prefix_choice_power_product_partial. ff_h_bcbpcpe_product_prefix_choice_power_product_partial + S (ff_r_bcbpcpe_product_prefix_choice_power_product) = S ((S (ff_i_bcbpcpe_product_prefix_choice_power_product)) * ff_v_bcbpcpe_product_prefix_choice_power_product)) /\ exists ff_q_bcbpcpe_product_prefix_choice_power_product_partial. ff_u_bcbpcpe_product_prefix_choice_power_product = ff_q_bcbpcpe_product_prefix_choice_power_product_partial * S ((S (ff_i_bcbpcpe_product_prefix_choice_power_product)) * ff_v_bcbpcpe_product_prefix_choice_power_product) + (ff_r_bcbpcpe_product_prefix_choice_power_product))) /\ ((((exists ff_h_bcbpcpe_product_prefix_choice_power_product_successor. ff_h_bcbpcpe_product_prefix_choice_power_product_successor + S (ff_s_bcbpcpe_product_prefix_choice_power_product) = S ((S (S ff_i_bcbpcpe_product_prefix_choice_power_product)) * ff_v_bcbpcpe_product_prefix_choice_power_product)) /\ exists ff_q_bcbpcpe_product_prefix_choice_power_product_successor. ff_u_bcbpcpe_product_prefix_choice_power_product = ff_q_bcbpcpe_product_prefix_choice_power_product_successor * S ((S (S ff_i_bcbpcpe_product_prefix_choice_power_product)) * ff_v_bcbpcpe_product_prefix_choice_power_product) + (ff_s_bcbpcpe_product_prefix_choice_power_product))) /\ ff_s_bcbpcpe_product_prefix_choice_power_product = ff_r_bcbpcpe_product_prefix_choice_power_product * ff_p_bcbpcpe_product_prefix_choice_power_product)))))))))) \/ (~((~(S (bpr_prefix_index_bcbpcpe_product_prefix) = 1) /\ forall bpr_left_bcbpcpe_product_prefix_choice_prime bpr_right_bcbpcpe_product_prefix_choice_prime. S (bpr_prefix_index_bcbpcpe_product_prefix) = bpr_left_bcbpcpe_product_prefix_choice_prime * bpr_right_bcbpcpe_product_prefix_choice_prime -> bpr_left_bcbpcpe_product_prefix_choice_prime = 1 \/ bpr_right_bcbpcpe_product_prefix_choice_prime = 1)) /\ bpr_prefix_value_bcbpcpe_product_prefix = 1))))) /\ (exists ff_u_bcbpcpe_product_product ff_v_bcbpcpe_product_product. ((((exists ff_h_bcbpcpe_product_product_start. ff_h_bcbpcpe_product_product_start + S (1) = S ((S (0)) * ff_v_bcbpcpe_product_product)) /\ exists ff_q_bcbpcpe_product_product_start. ff_u_bcbpcpe_product_product = ff_q_bcbpcpe_product_product_start * S ((S (0)) * ff_v_bcbpcpe_product_product) + (1))) /\ ((((exists ff_h_bcbpcpe_product_product_terminal. ff_h_bcbpcpe_product_product_terminal + S (z) = S ((S (n + n)) * ff_v_bcbpcpe_product_product)) /\ exists ff_q_bcbpcpe_product_product_terminal. ff_u_bcbpcpe_product_product = ff_q_bcbpcpe_product_product_terminal * S ((S (n + n)) * ff_v_bcbpcpe_product_product) + (z))) /\ forall ff_i_bcbpcpe_product_product. (exists ff_lt_bcbpcpe_product_product_bound. ff_lt_bcbpcpe_product_product_bound + S ff_i_bcbpcpe_product_product = n + n) -> exists ff_p_bcbpcpe_product_product ff_r_bcbpcpe_product_product ff_s_bcbpcpe_product_product. ((((exists ff_h_bcbpcpe_product_product_factor. ff_h_bcbpcpe_product_product_factor + S (ff_p_bcbpcpe_product_product) = S ((S (ff_i_bcbpcpe_product_product)) * bpr_product_scale_bcbpcpe_product)) /\ exists ff_q_bcbpcpe_product_product_factor. bpr_product_code_bcbpcpe_product = ff_q_bcbpcpe_product_product_factor * S ((S (ff_i_bcbpcpe_product_product)) * bpr_product_scale_bcbpcpe_product) + (ff_p_bcbpcpe_product_product))) /\ ((((exists ff_h_bcbpcpe_product_product_partial. ff_h_bcbpcpe_product_product_partial + S (ff_r_bcbpcpe_product_product) = S ((S (ff_i_bcbpcpe_product_product)) * ff_v_bcbpcpe_product_product)) /\ exists ff_q_bcbpcpe_product_product_partial. ff_u_bcbpcpe_product_product = ff_q_bcbpcpe_product_product_partial * S ((S (ff_i_bcbpcpe_product_product)) * ff_v_bcbpcpe_product_product) + (ff_r_bcbpcpe_product_product))) /\ ((((exists ff_h_bcbpcpe_product_product_successor. ff_h_bcbpcpe_product_product_successor + S (ff_s_bcbpcpe_product_product) = S ((S (S ff_i_bcbpcpe_product_product)) * ff_v_bcbpcpe_product_product)) /\ exists ff_q_bcbpcpe_product_product_successor. ff_u_bcbpcpe_product_product = ff_q_bcbpcpe_product_product_successor * S ((S (S ff_i_bcbpcpe_product_product)) * ff_v_bcbpcpe_product_product) + (ff_s_bcbpcpe_product_product))) /\ ff_s_bcbpcpe_product_product = ff_r_bcbpcpe_product_product * ff_p_bcbpcpe_product_product)))))))) /\ C = z

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

32 script commands · 6 reading checkpoints · 3 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–3

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

  1. L1
    intro n
  2. L2
    intro C
  3. L3
    intro hcentral
02Establish hpositiveL4–8

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply central binom positive.

  1. L4
    have hpositive : exists r. C = S r
  2. L5
    specialize central_binom_positive n
  3. L6
    specialize central_binom_positive C
  4. L7
    apply central_binom_positive
  5. L8
    exact hcentral
03Separate the logical casesL9–9

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

  1. L9
    cases hpositive
04Establish hnonzeroL10–16

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

  1. L10
    have hnonzero : ~(C = 0)
  2. L11
    intro hzero
  3. L12
    apply PA1
  4. L13
    trans C
  5. L14
    symm
  6. L15
    exact hpositive_witness
  7. L16
    exact hzero
05Establish hsupportL17–26

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply central binom prime divisor le double.

  1. L17
    have hsupport : ∀ bpr_support_prime_bcbpcpe_support. Prime(bpr_support_prime_bcbpcpe_support) → Dvd(bpr_support_prime_bcbpcpe_support,C) → Le(bpr_support_prime_bcbpcpe_support,n + n)Definitions: Prime(bpr_support_prime_bcbpcpe_support)Dvd(bpr_support_prime_bcbpcpe_support,C)Le(bpr_support_prime_bcbpcpe_support,n + n)Original native command in the exact edition
  2. L18
    intro p
  3. L19
    intro hp
  4. L20
    intro hdivides
  5. L21
    specialize central_binom_prime_divisor_le_double n
  6. L22
    specialize central_binom_prime_divisor_le_double C
  7. L23
    specialize central_binom_prime_divisor_le_double p
  8. L24
    apply central_binom_prime_divisor_le_double
  9. L25
    exact hp
  10. L26
    exact hcentral
06Use earlier factsL27–32

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

  1. L27
    exact hdivides
  2. L28
    specialize prime_contribution_complete_exists C
  3. L29
    specialize prime_contribution_complete_exists (n + n)
  4. L30
    apply prime_contribution_complete_exists
  5. L31
    exact hnonzero
  6. L32
    exact hsupport

Library-wide reading audit

Original defined command ledger · 32 lines
  1. 0001intro n
  2. 0002intro C
  3. 0003intro hcentral
  4. 0004have hpositive : exists r. C = S r
  5. 0005specialize central_binom_positive n
  6. 0006specialize central_binom_positive C
  7. 0007apply central_binom_positive
  8. 0008exact hcentral
  9. 0009cases hpositive
  10. 0010have hnonzero : ~(C = 0)
  11. 0011intro hzero
  12. 0012apply PA1
  13. 0013trans C
  14. 0014symm
  15. 0015exact hpositive_witness
  16. 0016exact hzero
  17. 0017have hsupport : ∀ bpr_support_prime_bcbpcpe_support. Prime(bpr_support_prime_bcbpcpe_support)Dvd(bpr_support_prime_bcbpcpe_support,C)Le(bpr_support_prime_bcbpcpe_support,n + n)
    Exact native replay linehave hsupport : forall bpr_support_prime_bcbpcpe_support. ((~(bpr_support_prime_bcbpcpe_support = 1) /\ forall bpr_left_bcbpcpe_support_prime bpr_right_bcbpcpe_support_prime. bpr_support_prime_bcbpcpe_support = bpr_left_bcbpcpe_support_prime * bpr_right_bcbpcpe_support_prime -> bpr_left_bcbpcpe_support_prime = 1 \/ bpr_right_bcbpcpe_support_prime = 1)) -> (exists bpr_divides_quotient_bcbpcpe_support_divides. C = (bpr_support_prime_bcbpcpe_support) * bpr_divides_quotient_bcbpcpe_support_divides) -> (exists bpr_le_gap_bcbpcpe_support_bound. bpr_le_gap_bcbpcpe_support_bound + (bpr_support_prime_bcbpcpe_support) = (n + n))
  18. 0018intro p
  19. 0019intro hp
  20. 0020intro hdivides
  21. 0021specialize central_binom_prime_divisor_le_double n
  22. 0022specialize central_binom_prime_divisor_le_double C
  23. 0023specialize central_binom_prime_divisor_le_double p
  24. 0024apply central_binom_prime_divisor_le_double
  25. 0025exact hp
  26. 0026exact hcentral
  27. 0027exact hdivides
  28. 0028specialize prime_contribution_complete_exists C
  29. 0029specialize prime_contribution_complete_exists (n + n)
  30. 0030apply prime_contribution_complete_exists
  31. 0031exact hnonzero
  32. 0032exact hsupport