Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved. Exact original first-admission records.
Statement with defined notation
∀ p. ∀ n. ∀ C. ∀ v. ∀ D. Prime(p) → Lt(0,n) → CentralBinom(n,C) → PowerValuation(p,C,v) → Pow(p,v,D) → Le(D,n + n)Every purple notation token opens its conservative definition. Expanding the displayed statement recovers the exact first-order Peano-arithmetic formula checked by the unchanged kernel.
Definitions used by this theorem
In the theorem statement
6 occurrences
In local proof propositions
21 occurrences
Exact expanded native-PA statement
forall p n C v D. ((~(p = 1) /\ forall frm_prime_left_b5ccppcld_prime frm_prime_right_b5ccppcld_prime. p = frm_prime_left_b5ccppcld_prime * frm_prime_right_b5ccppcld_prime -> frm_prime_left_b5ccppcld_prime = 1 \/ frm_prime_right_b5ccppcld_prime = 1)) -> (exists bcf_le_gap_b5ccppcld_positive. bcf_le_gap_b5ccppcld_positive + (1) = n) -> (((exists bcf_lt_gap_b5ccppcld_central_out_of_range. bcf_lt_gap_b5ccppcld_central_out_of_range + S (n + n) = n) /\ C = 0) \/ ((exists bcf_le_gap_b5ccppcld_central_in_range. bcf_le_gap_b5ccppcld_central_in_range + (n) = n + n) /\ (exists bcf_row_code_code_b5ccppcld_central bcf_row_code_scale_b5ccppcld_central bcf_row_scale_code_b5ccppcld_central bcf_row_scale_scale_b5ccppcld_central bcf_row_code_b5ccppcld_central bcf_row_scale_b5ccppcld_central. ((forall bcf_row_index_b5ccppcld_central_table. (exists bcf_lt_gap_b5ccppcld_central_table_row_bound. bcf_lt_gap_b5ccppcld_central_table_row_bound + S (bcf_row_index_b5ccppcld_central_table) = S (n + n)) -> exists bcf_row_code_b5ccppcld_central_table bcf_row_scale_b5ccppcld_central_table. ((((exists bcf_height_b5ccppcld_central_table_decoded_row_code. bcf_height_b5ccppcld_central_table_decoded_row_code + S (bcf_row_code_b5ccppcld_central_table) = S ((S (bcf_row_index_b5ccppcld_central_table)) * bcf_row_code_scale_b5ccppcld_central)) /\ exists bcf_quotient_b5ccppcld_central_table_decoded_row_code. bcf_row_code_code_b5ccppcld_central = bcf_quotient_b5ccppcld_central_table_decoded_row_code * S ((S (bcf_row_index_b5ccppcld_central_table)) * bcf_row_code_scale_b5ccppcld_central) + (bcf_row_code_b5ccppcld_central_table))) /\ ((((exists bcf_height_b5ccppcld_central_table_decoded_row_scale. bcf_height_b5ccppcld_central_table_decoded_row_scale + S (bcf_row_scale_b5ccppcld_central_table) = S ((S (bcf_row_index_b5ccppcld_central_table)) * bcf_row_scale_scale_b5ccppcld_central)) /\ exists bcf_quotient_b5ccppcld_central_table_decoded_row_scale. bcf_row_scale_code_b5ccppcld_central = bcf_quotient_b5ccppcld_central_table_decoded_row_scale * S ((S (bcf_row_index_b5ccppcld_central_table)) * bcf_row_scale_scale_b5ccppcld_central) + (bcf_row_scale_b5ccppcld_central_table))) /\ ((bcf_row_index_b5ccppcld_central_table = 0 /\ (forall bcf_index_b5ccppcld_central_table_zero_row. (exists bcf_lt_gap_b5ccppcld_central_table_zero_row_bound. bcf_lt_gap_b5ccppcld_central_table_zero_row_bound + S (bcf_index_b5ccppcld_central_table_zero_row) = S (n + n)) -> exists bcf_value_b5ccppcld_central_table_zero_row. ((((exists bcf_height_b5ccppcld_central_table_zero_row_entry. bcf_height_b5ccppcld_central_table_zero_row_entry + S (bcf_value_b5ccppcld_central_table_zero_row) = S ((S (bcf_index_b5ccppcld_central_table_zero_row)) * bcf_row_scale_b5ccppcld_central_table)) /\ exists bcf_quotient_b5ccppcld_central_table_zero_row_entry. bcf_row_code_b5ccppcld_central_table = bcf_quotient_b5ccppcld_central_table_zero_row_entry * S ((S (bcf_index_b5ccppcld_central_table_zero_row)) * bcf_row_scale_b5ccppcld_central_table) + (bcf_value_b5ccppcld_central_table_zero_row))) /\ ((bcf_index_b5ccppcld_central_table_zero_row = 0 /\ bcf_value_b5ccppcld_central_table_zero_row = 1) \/ exists bcf_predecessor_b5ccppcld_central_table_zero_row. bcf_index_b5ccppcld_central_table_zero_row = S bcf_predecessor_b5ccppcld_central_table_zero_row /\ bcf_value_b5ccppcld_central_table_zero_row = 0)))) \/ exists bcf_predecessor_b5ccppcld_central_table bcf_previous_code_b5ccppcld_central_table bcf_previous_scale_b5ccppcld_central_table. bcf_row_index_b5ccppcld_central_table = S bcf_predecessor_b5ccppcld_central_table /\ ((((exists bcf_height_b5ccppcld_central_table_decoded_previous_code. bcf_height_b5ccppcld_central_table_decoded_previous_code + S (bcf_previous_code_b5ccppcld_central_table) = S ((S (bcf_predecessor_b5ccppcld_central_table)) * bcf_row_code_scale_b5ccppcld_central)) /\ exists bcf_quotient_b5ccppcld_central_table_decoded_previous_code. bcf_row_code_code_b5ccppcld_central = bcf_quotient_b5ccppcld_central_table_decoded_previous_code * S ((S (bcf_predecessor_b5ccppcld_central_table)) * bcf_row_code_scale_b5ccppcld_central) + (bcf_previous_code_b5ccppcld_central_table))) /\ ((((exists bcf_height_b5ccppcld_central_table_decoded_previous_scale. bcf_height_b5ccppcld_central_table_decoded_previous_scale + S (bcf_previous_scale_b5ccppcld_central_table) = S ((S (bcf_predecessor_b5ccppcld_central_table)) * bcf_row_scale_scale_b5ccppcld_central)) /\ exists bcf_quotient_b5ccppcld_central_table_decoded_previous_scale. bcf_row_scale_code_b5ccppcld_central = bcf_quotient_b5ccppcld_central_table_decoded_previous_scale * S ((S (bcf_predecessor_b5ccppcld_central_table)) * bcf_row_scale_scale_b5ccppcld_central) + (bcf_previous_scale_b5ccppcld_central_table))) /\ (forall bcf_index_b5ccppcld_central_table_row_step. (exists bcf_lt_gap_b5ccppcld_central_table_row_step_bound. bcf_lt_gap_b5ccppcld_central_table_row_step_bound + S (bcf_index_b5ccppcld_central_table_row_step) = S (n + n)) -> exists bcf_value_b5ccppcld_central_table_row_step. ((((exists bcf_height_b5ccppcld_central_table_row_step_entry. bcf_height_b5ccppcld_central_table_row_step_entry + S (bcf_value_b5ccppcld_central_table_row_step) = S ((S (bcf_index_b5ccppcld_central_table_row_step)) * bcf_row_scale_b5ccppcld_central_table)) /\ exists bcf_quotient_b5ccppcld_central_table_row_step_entry. bcf_row_code_b5ccppcld_central_table = bcf_quotient_b5ccppcld_central_table_row_step_entry * S ((S (bcf_index_b5ccppcld_central_table_row_step)) * bcf_row_scale_b5ccppcld_central_table) + (bcf_value_b5ccppcld_central_table_row_step))) /\ ((bcf_index_b5ccppcld_central_table_row_step = 0 /\ bcf_value_b5ccppcld_central_table_row_step = 1) \/ exists bcf_predecessor_b5ccppcld_central_table_row_step bcf_left_b5ccppcld_central_table_row_step bcf_right_b5ccppcld_central_table_row_step. bcf_index_b5ccppcld_central_table_row_step = S bcf_predecessor_b5ccppcld_central_table_row_step /\ ((((exists bcf_height_b5ccppcld_central_table_row_step_previous_left. bcf_height_b5ccppcld_central_table_row_step_previous_left + S (bcf_left_b5ccppcld_central_table_row_step) = S ((S (bcf_predecessor_b5ccppcld_central_table_row_step)) * bcf_previous_scale_b5ccppcld_central_table)) /\ exists bcf_quotient_b5ccppcld_central_table_row_step_previous_left. bcf_previous_code_b5ccppcld_central_table = bcf_quotient_b5ccppcld_central_table_row_step_previous_left * S ((S (bcf_predecessor_b5ccppcld_central_table_row_step)) * bcf_previous_scale_b5ccppcld_central_table) + (bcf_left_b5ccppcld_central_table_row_step))) /\ ((((exists bcf_height_b5ccppcld_central_table_row_step_previous_right. bcf_height_b5ccppcld_central_table_row_step_previous_right + S (bcf_right_b5ccppcld_central_table_row_step) = S ((S (S (bcf_predecessor_b5ccppcld_central_table_row_step))) * bcf_previous_scale_b5ccppcld_central_table)) /\ exists bcf_quotient_b5ccppcld_central_table_row_step_previous_right. bcf_previous_code_b5ccppcld_central_table = bcf_quotient_b5ccppcld_central_table_row_step_previous_right * S ((S (S (bcf_predecessor_b5ccppcld_central_table_row_step))) * bcf_previous_scale_b5ccppcld_central_table) + (bcf_right_b5ccppcld_central_table_row_step))) /\ bcf_value_b5ccppcld_central_table_row_step = bcf_left_b5ccppcld_central_table_row_step + bcf_right_b5ccppcld_central_table_row_step))))))))))) /\ ((((exists bcf_height_b5ccppcld_central_decoded_row_code. bcf_height_b5ccppcld_central_decoded_row_code + S (bcf_row_code_b5ccppcld_central) = S ((S (n + n)) * bcf_row_code_scale_b5ccppcld_central)) /\ exists bcf_quotient_b5ccppcld_central_decoded_row_code. bcf_row_code_code_b5ccppcld_central = bcf_quotient_b5ccppcld_central_decoded_row_code * S ((S (n + n)) * bcf_row_code_scale_b5ccppcld_central) + (bcf_row_code_b5ccppcld_central))) /\ ((((exists bcf_height_b5ccppcld_central_decoded_row_scale. bcf_height_b5ccppcld_central_decoded_row_scale + S (bcf_row_scale_b5ccppcld_central) = S ((S (n + n)) * bcf_row_scale_scale_b5ccppcld_central)) /\ exists bcf_quotient_b5ccppcld_central_decoded_row_scale. bcf_row_scale_code_b5ccppcld_central = bcf_quotient_b5ccppcld_central_decoded_row_scale * S ((S (n + n)) * bcf_row_scale_scale_b5ccppcld_central) + (bcf_row_scale_b5ccppcld_central))) /\ (((exists bcf_height_b5ccppcld_central_decoded_value. bcf_height_b5ccppcld_central_decoded_value + S (C) = S ((S (n)) * bcf_row_scale_b5ccppcld_central)) /\ exists bcf_quotient_b5ccppcld_central_decoded_value. bcf_row_code_b5ccppcld_central = bcf_quotient_b5ccppcld_central_decoded_value * S ((S (n)) * bcf_row_scale_b5ccppcld_central) + (C))))))))) -> (((exists bpv_gap_b5ccppcld_valuation_exponent_bound. bpv_gap_b5ccppcld_valuation_exponent_bound + v = C) /\ (exists bpv_result_b5ccppcld_valuation_selected. ((exists ff_b_b5ccppcld_valuation_selected_power ff_c_b5ccppcld_valuation_selected_power. ((forall ff_i_b5ccppcld_valuation_selected_power_repeat. (exists ff_lt_b5ccppcld_valuation_selected_power_repeat_bound. ff_lt_b5ccppcld_valuation_selected_power_repeat_bound + S ff_i_b5ccppcld_valuation_selected_power_repeat = v) -> (((exists ff_h_b5ccppcld_valuation_selected_power_repeat_decoded. ff_h_b5ccppcld_valuation_selected_power_repeat_decoded + S (p) = S ((S (ff_i_b5ccppcld_valuation_selected_power_repeat)) * ff_c_b5ccppcld_valuation_selected_power)) /\ exists ff_q_b5ccppcld_valuation_selected_power_repeat_decoded. ff_b_b5ccppcld_valuation_selected_power = ff_q_b5ccppcld_valuation_selected_power_repeat_decoded * S ((S (ff_i_b5ccppcld_valuation_selected_power_repeat)) * ff_c_b5ccppcld_valuation_selected_power) + (p)))) /\ (exists ff_u_b5ccppcld_valuation_selected_power_product ff_v_b5ccppcld_valuation_selected_power_product. ((((exists ff_h_b5ccppcld_valuation_selected_power_product_start. ff_h_b5ccppcld_valuation_selected_power_product_start + S (1) = S ((S (0)) * ff_v_b5ccppcld_valuation_selected_power_product)) /\ exists ff_q_b5ccppcld_valuation_selected_power_product_start. ff_u_b5ccppcld_valuation_selected_power_product = ff_q_b5ccppcld_valuation_selected_power_product_start * S ((S (0)) * ff_v_b5ccppcld_valuation_selected_power_product) + (1))) /\ ((((exists ff_h_b5ccppcld_valuation_selected_power_product_terminal. ff_h_b5ccppcld_valuation_selected_power_product_terminal + S (bpv_result_b5ccppcld_valuation_selected) = S ((S (v)) * ff_v_b5ccppcld_valuation_selected_power_product)) /\ exists ff_q_b5ccppcld_valuation_selected_power_product_terminal. ff_u_b5ccppcld_valuation_selected_power_product = ff_q_b5ccppcld_valuation_selected_power_product_terminal * S ((S (v)) * ff_v_b5ccppcld_valuation_selected_power_product) + (bpv_result_b5ccppcld_valuation_selected))) /\ forall ff_i_b5ccppcld_valuation_selected_power_product. (exists ff_lt_b5ccppcld_valuation_selected_power_product_bound. ff_lt_b5ccppcld_valuation_selected_power_product_bound + S ff_i_b5ccppcld_valuation_selected_power_product = v) -> exists ff_p_b5ccppcld_valuation_selected_power_product ff_r_b5ccppcld_valuation_selected_power_product ff_s_b5ccppcld_valuation_selected_power_product. ((((exists ff_h_b5ccppcld_valuation_selected_power_product_factor. ff_h_b5ccppcld_valuation_selected_power_product_factor + S (ff_p_b5ccppcld_valuation_selected_power_product) = S ((S (ff_i_b5ccppcld_valuation_selected_power_product)) * ff_c_b5ccppcld_valuation_selected_power)) /\ exists ff_q_b5ccppcld_valuation_selected_power_product_factor. ff_b_b5ccppcld_valuation_selected_power = ff_q_b5ccppcld_valuation_selected_power_product_factor * S ((S (ff_i_b5ccppcld_valuation_selected_power_product)) * ff_c_b5ccppcld_valuation_selected_power) + (ff_p_b5ccppcld_valuation_selected_power_product))) /\ ((((exists ff_h_b5ccppcld_valuation_selected_power_product_partial. ff_h_b5ccppcld_valuation_selected_power_product_partial + S (ff_r_b5ccppcld_valuation_selected_power_product) = S ((S (ff_i_b5ccppcld_valuation_selected_power_product)) * ff_v_b5ccppcld_valuation_selected_power_product)) /\ exists ff_q_b5ccppcld_valuation_selected_power_product_partial. ff_u_b5ccppcld_valuation_selected_power_product = ff_q_b5ccppcld_valuation_selected_power_product_partial * S ((S (ff_i_b5ccppcld_valuation_selected_power_product)) * ff_v_b5ccppcld_valuation_selected_power_product) + (ff_r_b5ccppcld_valuation_selected_power_product))) /\ ((((exists ff_h_b5ccppcld_valuation_selected_power_product_successor. ff_h_b5ccppcld_valuation_selected_power_product_successor + S (ff_s_b5ccppcld_valuation_selected_power_product) = S ((S (S ff_i_b5ccppcld_valuation_selected_power_product)) * ff_v_b5ccppcld_valuation_selected_power_product)) /\ exists ff_q_b5ccppcld_valuation_selected_power_product_successor. ff_u_b5ccppcld_valuation_selected_power_product = ff_q_b5ccppcld_valuation_selected_power_product_successor * S ((S (S ff_i_b5ccppcld_valuation_selected_power_product)) * ff_v_b5ccppcld_valuation_selected_power_product) + (ff_s_b5ccppcld_valuation_selected_power_product))) /\ ff_s_b5ccppcld_valuation_selected_power_product = ff_r_b5ccppcld_valuation_selected_power_product * ff_p_b5ccppcld_valuation_selected_power_product)))))))) /\ (exists bpv_factor_b5ccppcld_valuation_selected_divides. C = bpv_result_b5ccppcld_valuation_selected * bpv_factor_b5ccppcld_valuation_selected_divides)))) /\ forall bpv_candidate_b5ccppcld_valuation. (exists bpv_gap_b5ccppcld_valuation_candidate_bound. bpv_gap_b5ccppcld_valuation_candidate_bound + bpv_candidate_b5ccppcld_valuation = C) -> (exists bpv_result_b5ccppcld_valuation_candidate. ((exists ff_b_b5ccppcld_valuation_candidate_power ff_c_b5ccppcld_valuation_candidate_power. ((forall ff_i_b5ccppcld_valuation_candidate_power_repeat. (exists ff_lt_b5ccppcld_valuation_candidate_power_repeat_bound. ff_lt_b5ccppcld_valuation_candidate_power_repeat_bound + S ff_i_b5ccppcld_valuation_candidate_power_repeat = bpv_candidate_b5ccppcld_valuation) -> (((exists ff_h_b5ccppcld_valuation_candidate_power_repeat_decoded. ff_h_b5ccppcld_valuation_candidate_power_repeat_decoded + S (p) = S ((S (ff_i_b5ccppcld_valuation_candidate_power_repeat)) * ff_c_b5ccppcld_valuation_candidate_power)) /\ exists ff_q_b5ccppcld_valuation_candidate_power_repeat_decoded. ff_b_b5ccppcld_valuation_candidate_power = ff_q_b5ccppcld_valuation_candidate_power_repeat_decoded * S ((S (ff_i_b5ccppcld_valuation_candidate_power_repeat)) * ff_c_b5ccppcld_valuation_candidate_power) + (p)))) /\ (exists ff_u_b5ccppcld_valuation_candidate_power_product ff_v_b5ccppcld_valuation_candidate_power_product. ((((exists ff_h_b5ccppcld_valuation_candidate_power_product_start. ff_h_b5ccppcld_valuation_candidate_power_product_start + S (1) = S ((S (0)) * ff_v_b5ccppcld_valuation_candidate_power_product)) /\ exists ff_q_b5ccppcld_valuation_candidate_power_product_start. ff_u_b5ccppcld_valuation_candidate_power_product = ff_q_b5ccppcld_valuation_candidate_power_product_start * S ((S (0)) * ff_v_b5ccppcld_valuation_candidate_power_product) + (1))) /\ ((((exists ff_h_b5ccppcld_valuation_candidate_power_product_terminal. ff_h_b5ccppcld_valuation_candidate_power_product_terminal + S (bpv_result_b5ccppcld_valuation_candidate) = S ((S (bpv_candidate_b5ccppcld_valuation)) * ff_v_b5ccppcld_valuation_candidate_power_product)) /\ exists ff_q_b5ccppcld_valuation_candidate_power_product_terminal. ff_u_b5ccppcld_valuation_candidate_power_product = ff_q_b5ccppcld_valuation_candidate_power_product_terminal * S ((S (bpv_candidate_b5ccppcld_valuation)) * ff_v_b5ccppcld_valuation_candidate_power_product) + (bpv_result_b5ccppcld_valuation_candidate))) /\ forall ff_i_b5ccppcld_valuation_candidate_power_product. (exists ff_lt_b5ccppcld_valuation_candidate_power_product_bound. ff_lt_b5ccppcld_valuation_candidate_power_product_bound + S ff_i_b5ccppcld_valuation_candidate_power_product = bpv_candidate_b5ccppcld_valuation) -> exists ff_p_b5ccppcld_valuation_candidate_power_product ff_r_b5ccppcld_valuation_candidate_power_product ff_s_b5ccppcld_valuation_candidate_power_product. ((((exists ff_h_b5ccppcld_valuation_candidate_power_product_factor. ff_h_b5ccppcld_valuation_candidate_power_product_factor + S (ff_p_b5ccppcld_valuation_candidate_power_product) = S ((S (ff_i_b5ccppcld_valuation_candidate_power_product)) * ff_c_b5ccppcld_valuation_candidate_power)) /\ exists ff_q_b5ccppcld_valuation_candidate_power_product_factor. ff_b_b5ccppcld_valuation_candidate_power = ff_q_b5ccppcld_valuation_candidate_power_product_factor * S ((S (ff_i_b5ccppcld_valuation_candidate_power_product)) * ff_c_b5ccppcld_valuation_candidate_power) + (ff_p_b5ccppcld_valuation_candidate_power_product))) /\ ((((exists ff_h_b5ccppcld_valuation_candidate_power_product_partial. ff_h_b5ccppcld_valuation_candidate_power_product_partial + S (ff_r_b5ccppcld_valuation_candidate_power_product) = S ((S (ff_i_b5ccppcld_valuation_candidate_power_product)) * ff_v_b5ccppcld_valuation_candidate_power_product)) /\ exists ff_q_b5ccppcld_valuation_candidate_power_product_partial. ff_u_b5ccppcld_valuation_candidate_power_product = ff_q_b5ccppcld_valuation_candidate_power_product_partial * S ((S (ff_i_b5ccppcld_valuation_candidate_power_product)) * ff_v_b5ccppcld_valuation_candidate_power_product) + (ff_r_b5ccppcld_valuation_candidate_power_product))) /\ ((((exists ff_h_b5ccppcld_valuation_candidate_power_product_successor. ff_h_b5ccppcld_valuation_candidate_power_product_successor + S (ff_s_b5ccppcld_valuation_candidate_power_product) = S ((S (S ff_i_b5ccppcld_valuation_candidate_power_product)) * ff_v_b5ccppcld_valuation_candidate_power_product)) /\ exists ff_q_b5ccppcld_valuation_candidate_power_product_successor. ff_u_b5ccppcld_valuation_candidate_power_product = ff_q_b5ccppcld_valuation_candidate_power_product_successor * S ((S (S ff_i_b5ccppcld_valuation_candidate_power_product)) * ff_v_b5ccppcld_valuation_candidate_power_product) + (ff_s_b5ccppcld_valuation_candidate_power_product))) /\ ff_s_b5ccppcld_valuation_candidate_power_product = ff_r_b5ccppcld_valuation_candidate_power_product * ff_p_b5ccppcld_valuation_candidate_power_product)))))))) /\ (exists bpv_factor_b5ccppcld_valuation_candidate_divides. C = bpv_result_b5ccppcld_valuation_candidate * bpv_factor_b5ccppcld_valuation_candidate_divides))) -> (exists bpv_gap_b5ccppcld_valuation_maximal. bpv_gap_b5ccppcld_valuation_maximal + bpv_candidate_b5ccppcld_valuation = v)) -> (exists bpvi_b_b5ccppcld_power bpvi_c_b5ccppcld_power. ((forall bpvi_i_b5ccppcld_power. (exists bpvi_repeat_gap_b5ccppcld_power. bpvi_repeat_gap_b5ccppcld_power + S bpvi_i_b5ccppcld_power = v) -> (((exists bpvi_h_b5ccppcld_power_repeat. bpvi_h_b5ccppcld_power_repeat + S (p) = S ((S (bpvi_i_b5ccppcld_power)) * bpvi_c_b5ccppcld_power)) /\ exists bpvi_q_b5ccppcld_power_repeat. bpvi_b_b5ccppcld_power = bpvi_q_b5ccppcld_power_repeat * S ((S (bpvi_i_b5ccppcld_power)) * bpvi_c_b5ccppcld_power) + (p)))) /\ (exists bpvi_u_b5ccppcld_power bpvi_v_b5ccppcld_power. ((((exists bpvi_h_b5ccppcld_power_start. bpvi_h_b5ccppcld_power_start + S (1) = S ((S (0)) * bpvi_v_b5ccppcld_power)) /\ exists bpvi_q_b5ccppcld_power_start. bpvi_u_b5ccppcld_power = bpvi_q_b5ccppcld_power_start * S ((S (0)) * bpvi_v_b5ccppcld_power) + (1))) /\ ((((exists bpvi_h_b5ccppcld_power_terminal. bpvi_h_b5ccppcld_power_terminal + S (D) = S ((S (v)) * bpvi_v_b5ccppcld_power)) /\ exists bpvi_q_b5ccppcld_power_terminal. bpvi_u_b5ccppcld_power = bpvi_q_b5ccppcld_power_terminal * S ((S (v)) * bpvi_v_b5ccppcld_power) + (D))) /\ forall bpvi_j_b5ccppcld_power. (exists bpvi_product_gap_b5ccppcld_power. bpvi_product_gap_b5ccppcld_power + S bpvi_j_b5ccppcld_power = v) -> exists bpvi_factor_b5ccppcld_power bpvi_partial_b5ccppcld_power bpvi_successor_b5ccppcld_power. ((((exists bpvi_h_b5ccppcld_power_factor. bpvi_h_b5ccppcld_power_factor + S (bpvi_factor_b5ccppcld_power) = S ((S (bpvi_j_b5ccppcld_power)) * bpvi_c_b5ccppcld_power)) /\ exists bpvi_q_b5ccppcld_power_factor. bpvi_b_b5ccppcld_power = bpvi_q_b5ccppcld_power_factor * S ((S (bpvi_j_b5ccppcld_power)) * bpvi_c_b5ccppcld_power) + (bpvi_factor_b5ccppcld_power))) /\ ((((exists bpvi_h_b5ccppcld_power_partial. bpvi_h_b5ccppcld_power_partial + S (bpvi_partial_b5ccppcld_power) = S ((S (bpvi_j_b5ccppcld_power)) * bpvi_v_b5ccppcld_power)) /\ exists bpvi_q_b5ccppcld_power_partial. bpvi_u_b5ccppcld_power = bpvi_q_b5ccppcld_power_partial * S ((S (bpvi_j_b5ccppcld_power)) * bpvi_v_b5ccppcld_power) + (bpvi_partial_b5ccppcld_power))) /\ ((((exists bpvi_h_b5ccppcld_power_successor. bpvi_h_b5ccppcld_power_successor + S (bpvi_successor_b5ccppcld_power) = S ((S (S bpvi_j_b5ccppcld_power)) * bpvi_v_b5ccppcld_power)) /\ exists bpvi_q_b5ccppcld_power_successor. bpvi_u_b5ccppcld_power = bpvi_q_b5ccppcld_power_successor * S ((S (S bpvi_j_b5ccppcld_power)) * bpvi_v_b5ccppcld_power) + (bpvi_successor_b5ccppcld_power))) /\ bpvi_successor_b5ccppcld_power = bpvi_partial_b5ccppcld_power * bpvi_factor_b5ccppcld_power)))))))) -> (exists bcf_le_gap_b5ccppcld_result. bcf_le_gap_b5ccppcld_result + (D) = n + n)Proof neighborhood
Direct theorem prerequisites
BT0081 pow_zero BT0013 le_add_right BT000F le_trans BT003G prime_nonzero BT0010 one_le_of_ne_zero BT0042 beta_at_unique BT00XJ pow_le_pow_of_exponent_le BT00Y1 bit_count_positive_last_one BT00Y2 division_successor_quotient_divisor_le BT00Y4 central_binom_carry_bit_countDirect theorem dependents
Definition-aware tactic body
Only local propositions introduced by have or suffices are compacted. Every changed line has an exact-AST conservative-expansion receipt; the kernel still receives the immutable original tactic script.
Read the argument
Proof checkpoints
This is a reading aid, not a new proof or a proof-tree certificate. Checkpoint groups are consecutive commands, not inferred branch boundaries. Every step links to the preserved script.
Named ingredients (10)
01Fix variables and assumptionsL1–3
02Induction on vL4–10
03Establish hDL11–17
04Establish hn_doubleL18–21
Establish this local claim before using it. It is not an additional assumption.
05Establish hone_doubleL22–31
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le trans.
06Fix variables and assumptionsL32–36
07Establish hpackageL37–45
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply central binom carry bit count.
- L37
have hpackage : ∃ b. ∃ s. ∃ d. ∃ t. ∃ f. ∃ g. PowerQuotPrefix(p,n,b,s,n + n) ∧ (PowerQuotPrefix(p,n + n,d,t,n + n) ∧ ((∀ x. Lt(x,n + n) → ∃ y. ∃ z. ∃ m. BetaAt(b,s,x,y) ∧ (BetaAt(d,t,x,z) ∧ (BetaAt(f,g,x,m) ∧ (m = 0 ∧ z = y + y ∨ m = 1 ∧ z = S (y + y))))) ∧ BitCount(f,g,n + n,S v)))Definitions: PowerQuotPrefix(p,n,b,s,n + n)PowerQuotPrefix(p,n + n,d,t,n + n)Lt(x,n + n)BetaAt(b,s,x,y)BetaAt(d,t,x,z)BetaAt(f,g,x,m)BitCount(f,g,n + n,S v)Original native command in the exact edition - L38
specialize central_binom_carry_bit_count p - L39
specialize central_binom_carry_bit_count n - L40
specialize central_binom_carry_bit_count C - L41
specialize central_binom_carry_bit_count (S v) - L42
apply central_binom_carry_bit_count - L43
exact hp - L44
exact hcentral - L45
exact hvaluation
08Separate the logical casesL46–54
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L46
cases hpackage - L47
cases hpackage_witness - L48
cases hpackage_witness_witness - L49
cases hpackage_witness_witness_witness - L50
cases hpackage_witness_witness_witness_witness - L51
cases hpackage_witness_witness_witness_witness_witness - L52
cases hpackage_witness_witness_witness_witness_witness_witness - L53
cases hpackage_witness_witness_witness_witness_witness_witness_right - L54
cases hpackage_witness_witness_witness_witness_witness_witness_right_right
09Establish hlastL55–61
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply bit count positive last one.
- L55
have hlast : ∃ i. Lt(i,n + n) ∧ (BetaAt(x4,x5,i,1) ∧ Lt(v,S i))Definitions: Lt(i,n + n)BetaAt(x4,x5,i,1)Lt(v,S i)Original native command in the exact edition - L56
specialize bit_count_positive_last_one x4 - L57
specialize bit_count_positive_last_one x5 - L58
specialize bit_count_positive_last_one (n + n) - L59
specialize bit_count_positive_last_one v - L60
apply bit_count_positive_last_one - L61
exact hpackage_witness_witness_witness_witness_witness_witness_right_right_right
10Separate the logical casesL62–64
11Establish hsemanticL65–68
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hpackage witness witness witness witness witness witness right right left.
- L65
have hsemantic : ∃ q. ∃ Q. ∃ bit. BetaAt(x,x1,x6,q) ∧ (BetaAt(x2,x3,x6,Q) ∧ (BetaAt(x4,x5,x6,bit) ∧ (bit = 0 ∧ Q = q + q ∨ bit = 1 ∧ Q = S (q + q))))Definitions: BetaAt(x,x1,x6,q)BetaAt(x2,x3,x6,Q)BetaAt(x4,x5,x6,bit)Original native command in the exact edition - L66
specialize hpackage_witness_witness_witness_witness_witness_witness_right_right_left x6 - L67
apply hpackage_witness_witness_witness_witness_witness_witness_right_right_left - L68
exact hlast_witness_left
12Separate the logical casesL69–74
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
13Establish hbitL75–84
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at unique.
- L75
have hbit : x9 = 1 - L76
specialize beta_at_unique x4 - L77
specialize beta_at_unique x5 - L78
specialize beta_at_unique x6 - L79
specialize beta_at_unique x9 - L80
specialize beta_at_unique 1 - L81
apply beta_at_unique - L82
exact hsemantic_witness_witness_witness_right_right_left - L83
exact hlast_witness_right_left - L84
rewrite hbit at hsemantic_witness_witness_witness_right_right_right
14Calculate and transport equalitiesL85–85
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L85
rewrite hbit at hsemantic_witness_witness_witness_right_right_right
15Separate the logical casesL86–88
16Use earlier factsL89–90
17Separate the logical casesL91–91
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L91
cases hsemantic_witness_witness_witness_right_right_right_right
18Establish hright_dataL92–95
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hpackage witness witness witness witness witness witness right left.
- L92
have hright_data : ∃ P. ∃ Q. ∃ R. Pow(p,S x6,P) ∧ (BetaAt(x2,x3,x6,Q) ∧ DivRem(n + n,P,Q,R))Definitions: Pow(p,S x6,P)BetaAt(x2,x3,x6,Q)DivRem(n + n,P,Q,R)Original native command in the exact edition - L93
specialize hpackage_witness_witness_witness_witness_witness_witness_right_left x6 - L94
apply hpackage_witness_witness_witness_witness_witness_witness_right_left - L95
exact hlast_witness_left
19Separate the logical casesL96–100
20Establish hQL101–109
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at unique.
- L101
have hQ : x8 = x11 - L102
specialize beta_at_unique x2 - L103
specialize beta_at_unique x3 - L104
specialize beta_at_unique x6 - L105
specialize beta_at_unique x8 - L106
specialize beta_at_unique x11 - L107
apply beta_at_unique - L108
exact hsemantic_witness_witness_witness_right_left - L109
exact hright_data_witness_witness_witness_right_left
21Establish hquotientL110–115
22Establish hdivisor_boundL116–122
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply division successor quotient divisor le.
- L116
have hdivisor_bound : Le(x10,n + n)Definitions: Le(x10,n + n)Original native command in the exact edition - L117
specialize division_successor_quotient_divisor_le x10 - L118
specialize division_successor_quotient_divisor_le (n + n) - L119
specialize division_successor_quotient_divisor_le (x7 + x7) - L120
specialize division_successor_quotient_divisor_le x12 - L121
apply division_successor_quotient_divisor_le - L122
exact hright_data_witness_witness_witness_right_right
23Establish hp0L123–128
24Establish hp1L129–132
25Establish hpower_boundL133–142
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply pow le pow of exponent le.
- L133
- L134
specialize pow_le_pow_of_exponent_le p - L135
specialize pow_le_pow_of_exponent_le (S v) - L136
specialize pow_le_pow_of_exponent_le (S x6) - L137
specialize pow_le_pow_of_exponent_le D - L138
specialize pow_le_pow_of_exponent_le x10 - L139
apply pow_le_pow_of_exponent_le - L140
exact hp1 - L141
exact hlast_witness_right_right - L142
exact hpower
26Use earlier factsL143–149
Original defined command ledger · 149 lines
- 0001
intro p - 0002
intro n - 0003
intro C - 0004
induction v - 0005
intro D - 0006
intro hp - 0007
intro hpositive - 0008
intro hcentral - 0009
intro hvaluation - 0010
intro hpower - 0011
have hD : D = 1 - 0012
specialize pow_zero p - 0013
specialize pow_zero 0 - 0014
specialize pow_zero D - 0015
apply pow_zero - 0016
refl - 0017
exact hpower - 0018
have hn_double : Le(n,n + n)Exact native replay line
have hn_double : exists h. h + n = n + n - 0019
specialize le_add_right n - 0020
specialize le_add_right n - 0021
exact le_add_right - 0022
have hone_double : Lt(0,n + n)Exact native replay line
have hone_double : exists h. h + 1 = n + n - 0023
specialize le_trans 1 - 0024
specialize le_trans n - 0025
specialize le_trans (n + n) - 0026
apply le_trans - 0027
exact hpositive - 0028
exact hn_double - 0029
rewrite hD - 0030
exact hone_double - 0031
intro D - 0032
intro hp - 0033
intro hpositive - 0034
intro hcentral - 0035
intro hvaluation - 0036
intro hpower - 0037
have hpackage : ∃ b. ∃ s. ∃ d. ∃ t. ∃ f. ∃ g. PowerQuotPrefix(p,n,b,s,n + n) ∧ (PowerQuotPrefix(p,n + n,d,t,n + n) ∧ ((∀ x. Lt(x,n + n) → ∃ y. ∃ z. ∃ m. BetaAt(b,s,x,y) ∧ (BetaAt(d,t,x,z) ∧ (BetaAt(f,g,x,m) ∧ (m = 0 ∧ z = y + y ∨ m = 1 ∧ z = S (y + y))))) ∧ BitCount(f,g,n + n,S v)))Exact native replay line
have hpackage : exists b s d t f g. (forall bls_index_b5ccppcld_left. (exists bls_gap_b5ccppcld_left_bound. bls_gap_b5ccppcld_left_bound + S (bls_index_b5ccppcld_left) = (n + n)) -> exists bls_power_b5ccppcld_left bls_quotient_b5ccppcld_left bls_remainder_b5ccppcld_left. ((exists bpvi_b_bls_b5ccppcld_left_power bpvi_c_bls_b5ccppcld_left_power. ((forall bpvi_i_bls_b5ccppcld_left_power. (exists bpvi_repeat_gap_bls_b5ccppcld_left_power. bpvi_repeat_gap_bls_b5ccppcld_left_power + S bpvi_i_bls_b5ccppcld_left_power = S bls_index_b5ccppcld_left) -> (((exists bpvi_h_bls_b5ccppcld_left_power_repeat. bpvi_h_bls_b5ccppcld_left_power_repeat + S (p) = S ((S (bpvi_i_bls_b5ccppcld_left_power)) * bpvi_c_bls_b5ccppcld_left_power)) /\ exists bpvi_q_bls_b5ccppcld_left_power_repeat. bpvi_b_bls_b5ccppcld_left_power = bpvi_q_bls_b5ccppcld_left_power_repeat * S ((S (bpvi_i_bls_b5ccppcld_left_power)) * bpvi_c_bls_b5ccppcld_left_power) + (p)))) /\ (exists bpvi_u_bls_b5ccppcld_left_power bpvi_v_bls_b5ccppcld_left_power. ((((exists bpvi_h_bls_b5ccppcld_left_power_start. bpvi_h_bls_b5ccppcld_left_power_start + S (1) = S ((S (0)) * bpvi_v_bls_b5ccppcld_left_power)) /\ exists bpvi_q_bls_b5ccppcld_left_power_start. bpvi_u_bls_b5ccppcld_left_power = bpvi_q_bls_b5ccppcld_left_power_start * S ((S (0)) * bpvi_v_bls_b5ccppcld_left_power) + (1))) /\ ((((exists bpvi_h_bls_b5ccppcld_left_power_terminal. bpvi_h_bls_b5ccppcld_left_power_terminal + S (bls_power_b5ccppcld_left) = S ((S (S bls_index_b5ccppcld_left)) * bpvi_v_bls_b5ccppcld_left_power)) /\ exists bpvi_q_bls_b5ccppcld_left_power_terminal. bpvi_u_bls_b5ccppcld_left_power = bpvi_q_bls_b5ccppcld_left_power_terminal * S ((S (S bls_index_b5ccppcld_left)) * bpvi_v_bls_b5ccppcld_left_power) + (bls_power_b5ccppcld_left))) /\ forall bpvi_j_bls_b5ccppcld_left_power. (exists bpvi_product_gap_bls_b5ccppcld_left_power. bpvi_product_gap_bls_b5ccppcld_left_power + S bpvi_j_bls_b5ccppcld_left_power = S bls_index_b5ccppcld_left) -> exists bpvi_factor_bls_b5ccppcld_left_power bpvi_partial_bls_b5ccppcld_left_power bpvi_successor_bls_b5ccppcld_left_power. ((((exists bpvi_h_bls_b5ccppcld_left_power_factor. bpvi_h_bls_b5ccppcld_left_power_factor + S (bpvi_factor_bls_b5ccppcld_left_power) = S ((S (bpvi_j_bls_b5ccppcld_left_power)) * bpvi_c_bls_b5ccppcld_left_power)) /\ exists bpvi_q_bls_b5ccppcld_left_power_factor. bpvi_b_bls_b5ccppcld_left_power = bpvi_q_bls_b5ccppcld_left_power_factor * S ((S (bpvi_j_bls_b5ccppcld_left_power)) * bpvi_c_bls_b5ccppcld_left_power) + (bpvi_factor_bls_b5ccppcld_left_power))) /\ ((((exists bpvi_h_bls_b5ccppcld_left_power_partial. bpvi_h_bls_b5ccppcld_left_power_partial + S (bpvi_partial_bls_b5ccppcld_left_power) = S ((S (bpvi_j_bls_b5ccppcld_left_power)) * bpvi_v_bls_b5ccppcld_left_power)) /\ exists bpvi_q_bls_b5ccppcld_left_power_partial. bpvi_u_bls_b5ccppcld_left_power = bpvi_q_bls_b5ccppcld_left_power_partial * S ((S (bpvi_j_bls_b5ccppcld_left_power)) * bpvi_v_bls_b5ccppcld_left_power) + (bpvi_partial_bls_b5ccppcld_left_power))) /\ ((((exists bpvi_h_bls_b5ccppcld_left_power_successor. bpvi_h_bls_b5ccppcld_left_power_successor + S (bpvi_successor_bls_b5ccppcld_left_power) = S ((S (S bpvi_j_bls_b5ccppcld_left_power)) * bpvi_v_bls_b5ccppcld_left_power)) /\ exists bpvi_q_bls_b5ccppcld_left_power_successor. bpvi_u_bls_b5ccppcld_left_power = bpvi_q_bls_b5ccppcld_left_power_successor * S ((S (S bpvi_j_bls_b5ccppcld_left_power)) * bpvi_v_bls_b5ccppcld_left_power) + (bpvi_successor_bls_b5ccppcld_left_power))) /\ bpvi_successor_bls_b5ccppcld_left_power = bpvi_partial_bls_b5ccppcld_left_power * bpvi_factor_bls_b5ccppcld_left_power)))))))) /\ ((((exists ff_h_bls_b5ccppcld_left_quotient_entry. ff_h_bls_b5ccppcld_left_quotient_entry + S (bls_quotient_b5ccppcld_left) = S ((S (bls_index_b5ccppcld_left)) * s)) /\ exists ff_q_bls_b5ccppcld_left_quotient_entry. b = ff_q_bls_b5ccppcld_left_quotient_entry * S ((S (bls_index_b5ccppcld_left)) * s) + (bls_quotient_b5ccppcld_left))) /\ ((n = bls_power_b5ccppcld_left * bls_quotient_b5ccppcld_left + bls_remainder_b5ccppcld_left /\ exists bls_remainder_gap_b5ccppcld_left_division. bls_remainder_gap_b5ccppcld_left_division + S (bls_remainder_b5ccppcld_left) = bls_power_b5ccppcld_left))))) /\ ((forall bls_index_b5ccppcld_right. (exists bls_gap_b5ccppcld_right_bound. bls_gap_b5ccppcld_right_bound + S (bls_index_b5ccppcld_right) = (n + n)) -> exists bls_power_b5ccppcld_right bls_quotient_b5ccppcld_right bls_remainder_b5ccppcld_right. ((exists bpvi_b_bls_b5ccppcld_right_power bpvi_c_bls_b5ccppcld_right_power. ((forall bpvi_i_bls_b5ccppcld_right_power. (exists bpvi_repeat_gap_bls_b5ccppcld_right_power. bpvi_repeat_gap_bls_b5ccppcld_right_power + S bpvi_i_bls_b5ccppcld_right_power = S bls_index_b5ccppcld_right) -> (((exists bpvi_h_bls_b5ccppcld_right_power_repeat. bpvi_h_bls_b5ccppcld_right_power_repeat + S (p) = S ((S (bpvi_i_bls_b5ccppcld_right_power)) * bpvi_c_bls_b5ccppcld_right_power)) /\ exists bpvi_q_bls_b5ccppcld_right_power_repeat. bpvi_b_bls_b5ccppcld_right_power = bpvi_q_bls_b5ccppcld_right_power_repeat * S ((S (bpvi_i_bls_b5ccppcld_right_power)) * bpvi_c_bls_b5ccppcld_right_power) + (p)))) /\ (exists bpvi_u_bls_b5ccppcld_right_power bpvi_v_bls_b5ccppcld_right_power. ((((exists bpvi_h_bls_b5ccppcld_right_power_start. bpvi_h_bls_b5ccppcld_right_power_start + S (1) = S ((S (0)) * bpvi_v_bls_b5ccppcld_right_power)) /\ exists bpvi_q_bls_b5ccppcld_right_power_start. bpvi_u_bls_b5ccppcld_right_power = bpvi_q_bls_b5ccppcld_right_power_start * S ((S (0)) * bpvi_v_bls_b5ccppcld_right_power) + (1))) /\ ((((exists bpvi_h_bls_b5ccppcld_right_power_terminal. bpvi_h_bls_b5ccppcld_right_power_terminal + S (bls_power_b5ccppcld_right) = S ((S (S bls_index_b5ccppcld_right)) * bpvi_v_bls_b5ccppcld_right_power)) /\ exists bpvi_q_bls_b5ccppcld_right_power_terminal. bpvi_u_bls_b5ccppcld_right_power = bpvi_q_bls_b5ccppcld_right_power_terminal * S ((S (S bls_index_b5ccppcld_right)) * bpvi_v_bls_b5ccppcld_right_power) + (bls_power_b5ccppcld_right))) /\ forall bpvi_j_bls_b5ccppcld_right_power. (exists bpvi_product_gap_bls_b5ccppcld_right_power. bpvi_product_gap_bls_b5ccppcld_right_power + S bpvi_j_bls_b5ccppcld_right_power = S bls_index_b5ccppcld_right) -> exists bpvi_factor_bls_b5ccppcld_right_power bpvi_partial_bls_b5ccppcld_right_power bpvi_successor_bls_b5ccppcld_right_power. ((((exists bpvi_h_bls_b5ccppcld_right_power_factor. bpvi_h_bls_b5ccppcld_right_power_factor + S (bpvi_factor_bls_b5ccppcld_right_power) = S ((S (bpvi_j_bls_b5ccppcld_right_power)) * bpvi_c_bls_b5ccppcld_right_power)) /\ exists bpvi_q_bls_b5ccppcld_right_power_factor. bpvi_b_bls_b5ccppcld_right_power = bpvi_q_bls_b5ccppcld_right_power_factor * S ((S (bpvi_j_bls_b5ccppcld_right_power)) * bpvi_c_bls_b5ccppcld_right_power) + (bpvi_factor_bls_b5ccppcld_right_power))) /\ ((((exists bpvi_h_bls_b5ccppcld_right_power_partial. bpvi_h_bls_b5ccppcld_right_power_partial + S (bpvi_partial_bls_b5ccppcld_right_power) = S ((S (bpvi_j_bls_b5ccppcld_right_power)) * bpvi_v_bls_b5ccppcld_right_power)) /\ exists bpvi_q_bls_b5ccppcld_right_power_partial. bpvi_u_bls_b5ccppcld_right_power = bpvi_q_bls_b5ccppcld_right_power_partial * S ((S (bpvi_j_bls_b5ccppcld_right_power)) * bpvi_v_bls_b5ccppcld_right_power) + (bpvi_partial_bls_b5ccppcld_right_power))) /\ ((((exists bpvi_h_bls_b5ccppcld_right_power_successor. bpvi_h_bls_b5ccppcld_right_power_successor + S (bpvi_successor_bls_b5ccppcld_right_power) = S ((S (S bpvi_j_bls_b5ccppcld_right_power)) * bpvi_v_bls_b5ccppcld_right_power)) /\ exists bpvi_q_bls_b5ccppcld_right_power_successor. bpvi_u_bls_b5ccppcld_right_power = bpvi_q_bls_b5ccppcld_right_power_successor * S ((S (S bpvi_j_bls_b5ccppcld_right_power)) * bpvi_v_bls_b5ccppcld_right_power) + (bpvi_successor_bls_b5ccppcld_right_power))) /\ bpvi_successor_bls_b5ccppcld_right_power = bpvi_partial_bls_b5ccppcld_right_power * bpvi_factor_bls_b5ccppcld_right_power)))))))) /\ ((((exists ff_h_bls_b5ccppcld_right_quotient_entry. ff_h_bls_b5ccppcld_right_quotient_entry + S (bls_quotient_b5ccppcld_right) = S ((S (bls_index_b5ccppcld_right)) * t)) /\ exists ff_q_bls_b5ccppcld_right_quotient_entry. d = ff_q_bls_b5ccppcld_right_quotient_entry * S ((S (bls_index_b5ccppcld_right)) * t) + (bls_quotient_b5ccppcld_right))) /\ ((n + n = bls_power_b5ccppcld_right * bls_quotient_b5ccppcld_right + bls_remainder_b5ccppcld_right /\ exists bls_remainder_gap_b5ccppcld_right_division. bls_remainder_gap_b5ccppcld_right_division + S (bls_remainder_b5ccppcld_right) = bls_power_b5ccppcld_right))))) /\ ((forall b5cc_index_b5ccppcld_carries. (exists bcf_lt_gap_b5ccppcld_carries_bound. bcf_lt_gap_b5ccppcld_carries_bound + S (b5cc_index_b5ccppcld_carries) = n + n) -> exists b5cc_left_b5ccppcld_carries b5cc_right_b5ccppcld_carries b5cc_bit_b5ccppcld_carries. (((exists fs_h_b5cc_b5ccppcld_carries_left. fs_h_b5cc_b5ccppcld_carries_left + S (b5cc_left_b5ccppcld_carries) = S ((S (b5cc_index_b5ccppcld_carries)) * s)) /\ exists fs_q_b5cc_b5ccppcld_carries_left. b = fs_q_b5cc_b5ccppcld_carries_left * S ((S (b5cc_index_b5ccppcld_carries)) * s) + (b5cc_left_b5ccppcld_carries))) /\ ((((exists fs_h_b5cc_b5ccppcld_carries_right. fs_h_b5cc_b5ccppcld_carries_right + S (b5cc_right_b5ccppcld_carries) = S ((S (b5cc_index_b5ccppcld_carries)) * t)) /\ exists fs_q_b5cc_b5ccppcld_carries_right. d = fs_q_b5cc_b5ccppcld_carries_right * S ((S (b5cc_index_b5ccppcld_carries)) * t) + (b5cc_right_b5ccppcld_carries))) /\ ((((exists fs_h_b5cc_b5ccppcld_carries_bit. fs_h_b5cc_b5ccppcld_carries_bit + S (b5cc_bit_b5ccppcld_carries) = S ((S (b5cc_index_b5ccppcld_carries)) * g)) /\ exists fs_q_b5cc_b5ccppcld_carries_bit. f = fs_q_b5cc_b5ccppcld_carries_bit * S ((S (b5cc_index_b5ccppcld_carries)) * g) + (b5cc_bit_b5ccppcld_carries))) /\ (((b5cc_bit_b5ccppcld_carries = 0 /\ b5cc_right_b5ccppcld_carries = b5cc_left_b5ccppcld_carries + b5cc_left_b5ccppcld_carries) \/ (b5cc_bit_b5ccppcld_carries = 1 /\ b5cc_right_b5ccppcld_carries = S (b5cc_left_b5ccppcld_carries + b5cc_left_b5ccppcld_carries))))))) /\ (((exists ff_u_b5ccppcld_count_sum ff_v_b5ccppcld_count_sum. ((((exists ff_h_b5ccppcld_count_sum_start. ff_h_b5ccppcld_count_sum_start + S (0) = S ((S (0)) * ff_v_b5ccppcld_count_sum)) /\ exists ff_q_b5ccppcld_count_sum_start. ff_u_b5ccppcld_count_sum = ff_q_b5ccppcld_count_sum_start * S ((S (0)) * ff_v_b5ccppcld_count_sum) + (0))) /\ ((((exists ff_h_b5ccppcld_count_sum_terminal. ff_h_b5ccppcld_count_sum_terminal + S ((S v)) = S ((S ((n + n))) * ff_v_b5ccppcld_count_sum)) /\ exists ff_q_b5ccppcld_count_sum_terminal. ff_u_b5ccppcld_count_sum = ff_q_b5ccppcld_count_sum_terminal * S ((S ((n + n))) * ff_v_b5ccppcld_count_sum) + ((S v)))) /\ forall ff_i_b5ccppcld_count_sum. (exists ff_lt_b5ccppcld_count_sum_bound. ff_lt_b5ccppcld_count_sum_bound + S ff_i_b5ccppcld_count_sum = (n + n)) -> exists ff_a_b5ccppcld_count_sum ff_r_b5ccppcld_count_sum ff_s_b5ccppcld_count_sum. ((((exists ff_h_b5ccppcld_count_sum_summand. ff_h_b5ccppcld_count_sum_summand + S (ff_a_b5ccppcld_count_sum) = S ((S (ff_i_b5ccppcld_count_sum)) * g)) /\ exists ff_q_b5ccppcld_count_sum_summand. f = ff_q_b5ccppcld_count_sum_summand * S ((S (ff_i_b5ccppcld_count_sum)) * g) + (ff_a_b5ccppcld_count_sum))) /\ ((((exists ff_h_b5ccppcld_count_sum_partial. ff_h_b5ccppcld_count_sum_partial + S (ff_r_b5ccppcld_count_sum) = S ((S (ff_i_b5ccppcld_count_sum)) * ff_v_b5ccppcld_count_sum)) /\ exists ff_q_b5ccppcld_count_sum_partial. ff_u_b5ccppcld_count_sum = ff_q_b5ccppcld_count_sum_partial * S ((S (ff_i_b5ccppcld_count_sum)) * ff_v_b5ccppcld_count_sum) + (ff_r_b5ccppcld_count_sum))) /\ ((((exists ff_h_b5ccppcld_count_sum_successor. ff_h_b5ccppcld_count_sum_successor + S (ff_s_b5ccppcld_count_sum) = S ((S (S ff_i_b5ccppcld_count_sum)) * ff_v_b5ccppcld_count_sum)) /\ exists ff_q_b5ccppcld_count_sum_successor. ff_u_b5ccppcld_count_sum = ff_q_b5ccppcld_count_sum_successor * S ((S (S ff_i_b5ccppcld_count_sum)) * ff_v_b5ccppcld_count_sum) + (ff_s_b5ccppcld_count_sum))) /\ ff_s_b5ccppcld_count_sum = ff_r_b5ccppcld_count_sum + ff_a_b5ccppcld_count_sum)))))) /\ (forall ff_i_b5ccppcld_count_bits. (exists ff_lt_b5ccppcld_count_bits_bound. ff_lt_b5ccppcld_count_bits_bound + S ff_i_b5ccppcld_count_bits = (n + n)) -> exists ff_bit_b5ccppcld_count_bits. ((((exists ff_h_b5ccppcld_count_bits_decoded. ff_h_b5ccppcld_count_bits_decoded + S (ff_bit_b5ccppcld_count_bits) = S ((S (ff_i_b5ccppcld_count_bits)) * g)) /\ exists ff_q_b5ccppcld_count_bits_decoded. f = ff_q_b5ccppcld_count_bits_decoded * S ((S (ff_i_b5ccppcld_count_bits)) * g) + (ff_bit_b5ccppcld_count_bits))) /\ (ff_bit_b5ccppcld_count_bits = 0 \/ ff_bit_b5ccppcld_count_bits = 1))))))) - 0038
specialize central_binom_carry_bit_count p - 0039
specialize central_binom_carry_bit_count n - 0040
specialize central_binom_carry_bit_count C - 0041
specialize central_binom_carry_bit_count (S v) - 0042
apply central_binom_carry_bit_count - 0043
exact hp - 0044
exact hcentral - 0045
exact hvaluation - 0046
cases hpackage - 0047
cases hpackage_witness - 0048
cases hpackage_witness_witness - 0049
cases hpackage_witness_witness_witness - 0050
cases hpackage_witness_witness_witness_witness - 0051
cases hpackage_witness_witness_witness_witness_witness - 0052
cases hpackage_witness_witness_witness_witness_witness_witness - 0053
cases hpackage_witness_witness_witness_witness_witness_witness_right - 0054
cases hpackage_witness_witness_witness_witness_witness_witness_right_right - 0055
have hlast : ∃ i. Lt(i,n + n) ∧ (BetaAt(x4,x5,i,1) ∧ Lt(v,S i))Exact native replay line
have hlast : exists i. (exists bcf_lt_gap_b5ccppcld_last_bound. bcf_lt_gap_b5ccppcld_last_bound + S (i) = n + n) /\ ((((exists fs_h_b5ccppcld_last_entry. fs_h_b5ccppcld_last_entry + S (1) = S ((S (i)) * x5)) /\ exists fs_q_b5ccppcld_last_entry. x4 = fs_q_b5ccppcld_last_entry * S ((S (i)) * x5) + (1))) /\ (exists bcf_le_gap_b5ccppcld_last_result. bcf_le_gap_b5ccppcld_last_result + (S v) = S i)) - 0056
specialize bit_count_positive_last_one x4 - 0057
specialize bit_count_positive_last_one x5 - 0058
specialize bit_count_positive_last_one (n + n) - 0059
specialize bit_count_positive_last_one v - 0060
apply bit_count_positive_last_one - 0061
exact hpackage_witness_witness_witness_witness_witness_witness_right_right_right - 0062
cases hlast - 0063
cases hlast_witness - 0064
cases hlast_witness_right - 0065
have hsemantic : ∃ q. ∃ Q. ∃ bit. BetaAt(x,x1,x6,q) ∧ (BetaAt(x2,x3,x6,Q) ∧ (BetaAt(x4,x5,x6,bit) ∧ (bit = 0 ∧ Q = q + q ∨ bit = 1 ∧ Q = S (q + q))))Exact native replay line
have hsemantic : exists q Q bit. (((exists fs_h_b5ccppcld_semantic_left. fs_h_b5ccppcld_semantic_left + S (q) = S ((S (x6)) * x1)) /\ exists fs_q_b5ccppcld_semantic_left. x = fs_q_b5ccppcld_semantic_left * S ((S (x6)) * x1) + (q))) /\ ((((exists fs_h_b5ccppcld_semantic_right. fs_h_b5ccppcld_semantic_right + S (Q) = S ((S (x6)) * x3)) /\ exists fs_q_b5ccppcld_semantic_right. x2 = fs_q_b5ccppcld_semantic_right * S ((S (x6)) * x3) + (Q))) /\ ((((exists fs_h_b5ccppcld_semantic_bit. fs_h_b5ccppcld_semantic_bit + S (bit) = S ((S (x6)) * x5)) /\ exists fs_q_b5ccppcld_semantic_bit. x4 = fs_q_b5ccppcld_semantic_bit * S ((S (x6)) * x5) + (bit))) /\ (((bit = 0 /\ Q = q + q) \/ (bit = 1 /\ Q = S (q + q)))))) - 0066
specialize hpackage_witness_witness_witness_witness_witness_witness_right_right_left x6 - 0067
apply hpackage_witness_witness_witness_witness_witness_witness_right_right_left - 0068
exact hlast_witness_left - 0069
cases hsemantic - 0070
cases hsemantic_witness - 0071
cases hsemantic_witness_witness - 0072
cases hsemantic_witness_witness_witness - 0073
cases hsemantic_witness_witness_witness_right - 0074
cases hsemantic_witness_witness_witness_right_right - 0075
have hbit : x9 = 1 - 0076
specialize beta_at_unique x4 - 0077
specialize beta_at_unique x5 - 0078
specialize beta_at_unique x6 - 0079
specialize beta_at_unique x9 - 0080
specialize beta_at_unique 1 - 0081
apply beta_at_unique - 0082
exact hsemantic_witness_witness_witness_right_right_left - 0083
exact hlast_witness_right_left - 0084
rewrite hbit at hsemantic_witness_witness_witness_right_right_right - 0085
rewrite hbit at hsemantic_witness_witness_witness_right_right_right - 0086
cases hsemantic_witness_witness_witness_right_right_right - 0087
cases hsemantic_witness_witness_witness_right_right_right_left - 0088
exfalso - 0089
apply PA1 - 0090
exact hsemantic_witness_witness_witness_right_right_right_left_left - 0091
cases hsemantic_witness_witness_witness_right_right_right_right - 0092
have hright_data : ∃ P. ∃ Q. ∃ R. Pow(p,S x6,P) ∧ (BetaAt(x2,x3,x6,Q) ∧ DivRem(n + n,P,Q,R))Exact native replay line
have hright_data : exists P Q R. (exists bpvi_b_b5ccppcld_right_power bpvi_c_b5ccppcld_right_power. ((forall bpvi_i_b5ccppcld_right_power. (exists bpvi_repeat_gap_b5ccppcld_right_power. bpvi_repeat_gap_b5ccppcld_right_power + S bpvi_i_b5ccppcld_right_power = S x6) -> (((exists bpvi_h_b5ccppcld_right_power_repeat. bpvi_h_b5ccppcld_right_power_repeat + S (p) = S ((S (bpvi_i_b5ccppcld_right_power)) * bpvi_c_b5ccppcld_right_power)) /\ exists bpvi_q_b5ccppcld_right_power_repeat. bpvi_b_b5ccppcld_right_power = bpvi_q_b5ccppcld_right_power_repeat * S ((S (bpvi_i_b5ccppcld_right_power)) * bpvi_c_b5ccppcld_right_power) + (p)))) /\ (exists bpvi_u_b5ccppcld_right_power bpvi_v_b5ccppcld_right_power. ((((exists bpvi_h_b5ccppcld_right_power_start. bpvi_h_b5ccppcld_right_power_start + S (1) = S ((S (0)) * bpvi_v_b5ccppcld_right_power)) /\ exists bpvi_q_b5ccppcld_right_power_start. bpvi_u_b5ccppcld_right_power = bpvi_q_b5ccppcld_right_power_start * S ((S (0)) * bpvi_v_b5ccppcld_right_power) + (1))) /\ ((((exists bpvi_h_b5ccppcld_right_power_terminal. bpvi_h_b5ccppcld_right_power_terminal + S (P) = S ((S (S x6)) * bpvi_v_b5ccppcld_right_power)) /\ exists bpvi_q_b5ccppcld_right_power_terminal. bpvi_u_b5ccppcld_right_power = bpvi_q_b5ccppcld_right_power_terminal * S ((S (S x6)) * bpvi_v_b5ccppcld_right_power) + (P))) /\ forall bpvi_j_b5ccppcld_right_power. (exists bpvi_product_gap_b5ccppcld_right_power. bpvi_product_gap_b5ccppcld_right_power + S bpvi_j_b5ccppcld_right_power = S x6) -> exists bpvi_factor_b5ccppcld_right_power bpvi_partial_b5ccppcld_right_power bpvi_successor_b5ccppcld_right_power. ((((exists bpvi_h_b5ccppcld_right_power_factor. bpvi_h_b5ccppcld_right_power_factor + S (bpvi_factor_b5ccppcld_right_power) = S ((S (bpvi_j_b5ccppcld_right_power)) * bpvi_c_b5ccppcld_right_power)) /\ exists bpvi_q_b5ccppcld_right_power_factor. bpvi_b_b5ccppcld_right_power = bpvi_q_b5ccppcld_right_power_factor * S ((S (bpvi_j_b5ccppcld_right_power)) * bpvi_c_b5ccppcld_right_power) + (bpvi_factor_b5ccppcld_right_power))) /\ ((((exists bpvi_h_b5ccppcld_right_power_partial. bpvi_h_b5ccppcld_right_power_partial + S (bpvi_partial_b5ccppcld_right_power) = S ((S (bpvi_j_b5ccppcld_right_power)) * bpvi_v_b5ccppcld_right_power)) /\ exists bpvi_q_b5ccppcld_right_power_partial. bpvi_u_b5ccppcld_right_power = bpvi_q_b5ccppcld_right_power_partial * S ((S (bpvi_j_b5ccppcld_right_power)) * bpvi_v_b5ccppcld_right_power) + (bpvi_partial_b5ccppcld_right_power))) /\ ((((exists bpvi_h_b5ccppcld_right_power_successor. bpvi_h_b5ccppcld_right_power_successor + S (bpvi_successor_b5ccppcld_right_power) = S ((S (S bpvi_j_b5ccppcld_right_power)) * bpvi_v_b5ccppcld_right_power)) /\ exists bpvi_q_b5ccppcld_right_power_successor. bpvi_u_b5ccppcld_right_power = bpvi_q_b5ccppcld_right_power_successor * S ((S (S bpvi_j_b5ccppcld_right_power)) * bpvi_v_b5ccppcld_right_power) + (bpvi_successor_b5ccppcld_right_power))) /\ bpvi_successor_b5ccppcld_right_power = bpvi_partial_b5ccppcld_right_power * bpvi_factor_b5ccppcld_right_power)))))))) /\ ((((exists fs_h_b5ccppcld_right_entry. fs_h_b5ccppcld_right_entry + S (Q) = S ((S (x6)) * x3)) /\ exists fs_q_b5ccppcld_right_entry. x2 = fs_q_b5ccppcld_right_entry * S ((S (x6)) * x3) + (Q))) /\ (((n + n) = (P) * (Q) + (R) /\ (exists bcf_lt_gap_b5ccppcld_right_division_bound. bcf_lt_gap_b5ccppcld_right_division_bound + S (R) = P)))) - 0093
specialize hpackage_witness_witness_witness_witness_witness_witness_right_left x6 - 0094
apply hpackage_witness_witness_witness_witness_witness_witness_right_left - 0095
exact hlast_witness_left - 0096
cases hright_data - 0097
cases hright_data_witness - 0098
cases hright_data_witness_witness - 0099
cases hright_data_witness_witness_witness - 0100
cases hright_data_witness_witness_witness_right - 0101
have hQ : x8 = x11 - 0102
specialize beta_at_unique x2 - 0103
specialize beta_at_unique x3 - 0104
specialize beta_at_unique x6 - 0105
specialize beta_at_unique x8 - 0106
specialize beta_at_unique x11 - 0107
apply beta_at_unique - 0108
exact hsemantic_witness_witness_witness_right_left - 0109
exact hright_data_witness_witness_witness_right_left - 0110
have hquotient : x11 = S (x7 + x7) - 0111
trans x8 - 0112
symm - 0113
exact hQ - 0114
exact hsemantic_witness_witness_witness_right_right_right_right_right - 0115
rewrite hquotient at hright_data_witness_witness_witness_right_right - 0116
have hdivisor_bound : Le(x10,n + n)Exact native replay line
have hdivisor_bound : exists bcf_le_gap_b5ccppcld_divisor_bound. bcf_le_gap_b5ccppcld_divisor_bound + (x10) = n + n - 0117
specialize division_successor_quotient_divisor_le x10 - 0118
specialize division_successor_quotient_divisor_le (n + n) - 0119
specialize division_successor_quotient_divisor_le (x7 + x7) - 0120
specialize division_successor_quotient_divisor_le x12 - 0121
apply division_successor_quotient_divisor_le - 0122
exact hright_data_witness_witness_witness_right_right - 0123
have hp0 : ~(p = 0) - 0124
intro hpzero - 0125
specialize prime_nonzero p - 0126
apply prime_nonzero - 0127
exact hp - 0128
exact hpzero - 0129
have hp1 : Lt(0,p)Exact native replay line
have hp1 : exists k. k + 1 = p - 0130
specialize one_le_of_ne_zero p - 0131
apply one_le_of_ne_zero - 0132
exact hp0 - 0133
have hpower_bound : Le(D,x10)Exact native replay line
have hpower_bound : exists bcf_le_gap_b5ccppcld_power_bound. bcf_le_gap_b5ccppcld_power_bound + (D) = x10 - 0134
specialize pow_le_pow_of_exponent_le p - 0135
specialize pow_le_pow_of_exponent_le (S v) - 0136
specialize pow_le_pow_of_exponent_le (S x6) - 0137
specialize pow_le_pow_of_exponent_le D - 0138
specialize pow_le_pow_of_exponent_le x10 - 0139
apply pow_le_pow_of_exponent_le - 0140
exact hp1 - 0141
exact hlast_witness_right_right - 0142
exact hpower - 0143
exact hright_data_witness_witness_witness_left - 0144
specialize le_trans D - 0145
specialize le_trans x10 - 0146
specialize le_trans (n + n) - 0147
apply le_trans - 0148
exact hpower_bound - 0149
exact hdivisor_bound