Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved. Exact original first-admission records.
Statement with defined notation
∀ p. ∀ a. ∀ b. ∀ C. ∀ v. Prime(p) → Choose(a + b,a,C) → PowerValuation(p,C,v) → ∃ x. ∃ y. ∃ z. ∃ n. ∃ m. ∃ k. ∃ i. ∃ j. PowerQuotPrefix(p,a,x,y,a + b) ∧ (PowerQuotPrefix(p,b,z,n,a + b) ∧ (PowerQuotPrefix(p,a + b,m,k,a + b) ∧ ((∀ u. Lt(u,a + b) → ∃ w. ∃ x0. ∃ x1. ∃ x2. BetaAt(x,y,u,w) ∧ (BetaAt(z,n,u,x0) ∧ (BetaAt(m,k,u,x1) ∧ (BetaAt(i,j,u,x2) ∧ (x2 = 0 ∧ x1 = w + x0 ∨ x2 = 1 ∧ x1 = S (w + x0)))))) ∧ BitCount(i,j,a + b,v))))Every purple notation token opens its conservative definition. This reading surface never changes the unchanged intuitionistic kernel or confers checked-use authority.
Definitions used by this theorem
In the theorem statement
PD0002 Lt PD0004 Prime PD0013 BetaAt PD0017 BitCount PD0041 Choose PD0046 PowerValuation PD0049 PowerQuotPrefixIn local proof propositions
Exact expanded first-order statement
forall p a b C v. ((~(p = 1) /\ forall frm_prime_left_kmckbc_prime frm_prime_right_kmckbc_prime. p = frm_prime_left_kmckbc_prime * frm_prime_right_kmckbc_prime -> frm_prime_left_kmckbc_prime = 1 \/ frm_prime_right_kmckbc_prime = 1)) -> (((exists bcf_lt_gap_kmckbc_choose_out_of_range. bcf_lt_gap_kmckbc_choose_out_of_range + S (a + b) = a) /\ C = 0) \/ ((exists bcf_le_gap_kmckbc_choose_in_range. bcf_le_gap_kmckbc_choose_in_range + (a) = a + b) /\ (exists bcf_row_code_code_kmckbc_choose bcf_row_code_scale_kmckbc_choose bcf_row_scale_code_kmckbc_choose bcf_row_scale_scale_kmckbc_choose bcf_row_code_kmckbc_choose bcf_row_scale_kmckbc_choose. ((forall bcf_row_index_kmckbc_choose_table. (exists bcf_lt_gap_kmckbc_choose_table_row_bound. bcf_lt_gap_kmckbc_choose_table_row_bound + S (bcf_row_index_kmckbc_choose_table) = S (a + b)) -> exists bcf_row_code_kmckbc_choose_table bcf_row_scale_kmckbc_choose_table. ((((exists bcf_height_kmckbc_choose_table_decoded_row_code. bcf_height_kmckbc_choose_table_decoded_row_code + S (bcf_row_code_kmckbc_choose_table) = S ((S (bcf_row_index_kmckbc_choose_table)) * bcf_row_code_scale_kmckbc_choose)) /\ exists bcf_quotient_kmckbc_choose_table_decoded_row_code. bcf_row_code_code_kmckbc_choose = bcf_quotient_kmckbc_choose_table_decoded_row_code * S ((S (bcf_row_index_kmckbc_choose_table)) * bcf_row_code_scale_kmckbc_choose) + (bcf_row_code_kmckbc_choose_table))) /\ ((((exists bcf_height_kmckbc_choose_table_decoded_row_scale. bcf_height_kmckbc_choose_table_decoded_row_scale + S (bcf_row_scale_kmckbc_choose_table) = S ((S (bcf_row_index_kmckbc_choose_table)) * bcf_row_scale_scale_kmckbc_choose)) /\ exists bcf_quotient_kmckbc_choose_table_decoded_row_scale. bcf_row_scale_code_kmckbc_choose = bcf_quotient_kmckbc_choose_table_decoded_row_scale * S ((S (bcf_row_index_kmckbc_choose_table)) * bcf_row_scale_scale_kmckbc_choose) + (bcf_row_scale_kmckbc_choose_table))) /\ ((bcf_row_index_kmckbc_choose_table = 0 /\ (forall bcf_index_kmckbc_choose_table_zero_row. (exists bcf_lt_gap_kmckbc_choose_table_zero_row_bound. bcf_lt_gap_kmckbc_choose_table_zero_row_bound + S (bcf_index_kmckbc_choose_table_zero_row) = S (a + b)) -> exists bcf_value_kmckbc_choose_table_zero_row. ((((exists bcf_height_kmckbc_choose_table_zero_row_entry. bcf_height_kmckbc_choose_table_zero_row_entry + S (bcf_value_kmckbc_choose_table_zero_row) = S ((S (bcf_index_kmckbc_choose_table_zero_row)) * bcf_row_scale_kmckbc_choose_table)) /\ exists bcf_quotient_kmckbc_choose_table_zero_row_entry. bcf_row_code_kmckbc_choose_table = bcf_quotient_kmckbc_choose_table_zero_row_entry * S ((S (bcf_index_kmckbc_choose_table_zero_row)) * bcf_row_scale_kmckbc_choose_table) + (bcf_value_kmckbc_choose_table_zero_row))) /\ ((bcf_index_kmckbc_choose_table_zero_row = 0 /\ bcf_value_kmckbc_choose_table_zero_row = 1) \/ exists bcf_predecessor_kmckbc_choose_table_zero_row. bcf_index_kmckbc_choose_table_zero_row = S bcf_predecessor_kmckbc_choose_table_zero_row /\ bcf_value_kmckbc_choose_table_zero_row = 0)))) \/ exists bcf_predecessor_kmckbc_choose_table bcf_previous_code_kmckbc_choose_table bcf_previous_scale_kmckbc_choose_table. bcf_row_index_kmckbc_choose_table = S bcf_predecessor_kmckbc_choose_table /\ ((((exists bcf_height_kmckbc_choose_table_decoded_previous_code. bcf_height_kmckbc_choose_table_decoded_previous_code + S (bcf_previous_code_kmckbc_choose_table) = S ((S (bcf_predecessor_kmckbc_choose_table)) * bcf_row_code_scale_kmckbc_choose)) /\ exists bcf_quotient_kmckbc_choose_table_decoded_previous_code. bcf_row_code_code_kmckbc_choose = bcf_quotient_kmckbc_choose_table_decoded_previous_code * S ((S (bcf_predecessor_kmckbc_choose_table)) * bcf_row_code_scale_kmckbc_choose) + (bcf_previous_code_kmckbc_choose_table))) /\ ((((exists bcf_height_kmckbc_choose_table_decoded_previous_scale. bcf_height_kmckbc_choose_table_decoded_previous_scale + S (bcf_previous_scale_kmckbc_choose_table) = S ((S (bcf_predecessor_kmckbc_choose_table)) * bcf_row_scale_scale_kmckbc_choose)) /\ exists bcf_quotient_kmckbc_choose_table_decoded_previous_scale. bcf_row_scale_code_kmckbc_choose = bcf_quotient_kmckbc_choose_table_decoded_previous_scale * S ((S (bcf_predecessor_kmckbc_choose_table)) * bcf_row_scale_scale_kmckbc_choose) + (bcf_previous_scale_kmckbc_choose_table))) /\ (forall bcf_index_kmckbc_choose_table_row_step. (exists bcf_lt_gap_kmckbc_choose_table_row_step_bound. bcf_lt_gap_kmckbc_choose_table_row_step_bound + S (bcf_index_kmckbc_choose_table_row_step) = S (a + b)) -> exists bcf_value_kmckbc_choose_table_row_step. ((((exists bcf_height_kmckbc_choose_table_row_step_entry. bcf_height_kmckbc_choose_table_row_step_entry + S (bcf_value_kmckbc_choose_table_row_step) = S ((S (bcf_index_kmckbc_choose_table_row_step)) * bcf_row_scale_kmckbc_choose_table)) /\ exists bcf_quotient_kmckbc_choose_table_row_step_entry. bcf_row_code_kmckbc_choose_table = bcf_quotient_kmckbc_choose_table_row_step_entry * S ((S (bcf_index_kmckbc_choose_table_row_step)) * bcf_row_scale_kmckbc_choose_table) + (bcf_value_kmckbc_choose_table_row_step))) /\ ((bcf_index_kmckbc_choose_table_row_step = 0 /\ bcf_value_kmckbc_choose_table_row_step = 1) \/ exists bcf_predecessor_kmckbc_choose_table_row_step bcf_left_kmckbc_choose_table_row_step bcf_right_kmckbc_choose_table_row_step. bcf_index_kmckbc_choose_table_row_step = S bcf_predecessor_kmckbc_choose_table_row_step /\ ((((exists bcf_height_kmckbc_choose_table_row_step_previous_left. bcf_height_kmckbc_choose_table_row_step_previous_left + S (bcf_left_kmckbc_choose_table_row_step) = S ((S (bcf_predecessor_kmckbc_choose_table_row_step)) * bcf_previous_scale_kmckbc_choose_table)) /\ exists bcf_quotient_kmckbc_choose_table_row_step_previous_left. bcf_previous_code_kmckbc_choose_table = bcf_quotient_kmckbc_choose_table_row_step_previous_left * S ((S (bcf_predecessor_kmckbc_choose_table_row_step)) * bcf_previous_scale_kmckbc_choose_table) + (bcf_left_kmckbc_choose_table_row_step))) /\ ((((exists bcf_height_kmckbc_choose_table_row_step_previous_right. bcf_height_kmckbc_choose_table_row_step_previous_right + S (bcf_right_kmckbc_choose_table_row_step) = S ((S (S (bcf_predecessor_kmckbc_choose_table_row_step))) * bcf_previous_scale_kmckbc_choose_table)) /\ exists bcf_quotient_kmckbc_choose_table_row_step_previous_right. bcf_previous_code_kmckbc_choose_table = bcf_quotient_kmckbc_choose_table_row_step_previous_right * S ((S (S (bcf_predecessor_kmckbc_choose_table_row_step))) * bcf_previous_scale_kmckbc_choose_table) + (bcf_right_kmckbc_choose_table_row_step))) /\ bcf_value_kmckbc_choose_table_row_step = bcf_left_kmckbc_choose_table_row_step + bcf_right_kmckbc_choose_table_row_step))))))))))) /\ ((((exists bcf_height_kmckbc_choose_decoded_row_code. bcf_height_kmckbc_choose_decoded_row_code + S (bcf_row_code_kmckbc_choose) = S ((S (a + b)) * bcf_row_code_scale_kmckbc_choose)) /\ exists bcf_quotient_kmckbc_choose_decoded_row_code. bcf_row_code_code_kmckbc_choose = bcf_quotient_kmckbc_choose_decoded_row_code * S ((S (a + b)) * bcf_row_code_scale_kmckbc_choose) + (bcf_row_code_kmckbc_choose))) /\ ((((exists bcf_height_kmckbc_choose_decoded_row_scale. bcf_height_kmckbc_choose_decoded_row_scale + S (bcf_row_scale_kmckbc_choose) = S ((S (a + b)) * bcf_row_scale_scale_kmckbc_choose)) /\ exists bcf_quotient_kmckbc_choose_decoded_row_scale. bcf_row_scale_code_kmckbc_choose = bcf_quotient_kmckbc_choose_decoded_row_scale * S ((S (a + b)) * bcf_row_scale_scale_kmckbc_choose) + (bcf_row_scale_kmckbc_choose))) /\ (((exists bcf_height_kmckbc_choose_decoded_value. bcf_height_kmckbc_choose_decoded_value + S (C) = S ((S (a)) * bcf_row_scale_kmckbc_choose)) /\ exists bcf_quotient_kmckbc_choose_decoded_value. bcf_row_code_kmckbc_choose = bcf_quotient_kmckbc_choose_decoded_value * S ((S (a)) * bcf_row_scale_kmckbc_choose) + (C))))))))) -> (((exists bpv_gap_kmckbc_valuation_exponent_bound. bpv_gap_kmckbc_valuation_exponent_bound + v = C) /\ (exists bpv_result_kmckbc_valuation_selected. ((exists ff_b_kmckbc_valuation_selected_power ff_c_kmckbc_valuation_selected_power. ((forall ff_i_kmckbc_valuation_selected_power_repeat. (exists ff_lt_kmckbc_valuation_selected_power_repeat_bound. ff_lt_kmckbc_valuation_selected_power_repeat_bound + S ff_i_kmckbc_valuation_selected_power_repeat = v) -> (((exists ff_h_kmckbc_valuation_selected_power_repeat_decoded. ff_h_kmckbc_valuation_selected_power_repeat_decoded + S (p) = S ((S (ff_i_kmckbc_valuation_selected_power_repeat)) * ff_c_kmckbc_valuation_selected_power)) /\ exists ff_q_kmckbc_valuation_selected_power_repeat_decoded. ff_b_kmckbc_valuation_selected_power = ff_q_kmckbc_valuation_selected_power_repeat_decoded * S ((S (ff_i_kmckbc_valuation_selected_power_repeat)) * ff_c_kmckbc_valuation_selected_power) + (p)))) /\ (exists ff_u_kmckbc_valuation_selected_power_product ff_v_kmckbc_valuation_selected_power_product. ((((exists ff_h_kmckbc_valuation_selected_power_product_start. ff_h_kmckbc_valuation_selected_power_product_start + S (1) = S ((S (0)) * ff_v_kmckbc_valuation_selected_power_product)) /\ exists ff_q_kmckbc_valuation_selected_power_product_start. ff_u_kmckbc_valuation_selected_power_product = ff_q_kmckbc_valuation_selected_power_product_start * S ((S (0)) * ff_v_kmckbc_valuation_selected_power_product) + (1))) /\ ((((exists ff_h_kmckbc_valuation_selected_power_product_terminal. ff_h_kmckbc_valuation_selected_power_product_terminal + S (bpv_result_kmckbc_valuation_selected) = S ((S (v)) * ff_v_kmckbc_valuation_selected_power_product)) /\ exists ff_q_kmckbc_valuation_selected_power_product_terminal. ff_u_kmckbc_valuation_selected_power_product = ff_q_kmckbc_valuation_selected_power_product_terminal * S ((S (v)) * ff_v_kmckbc_valuation_selected_power_product) + (bpv_result_kmckbc_valuation_selected))) /\ forall ff_i_kmckbc_valuation_selected_power_product. (exists ff_lt_kmckbc_valuation_selected_power_product_bound. ff_lt_kmckbc_valuation_selected_power_product_bound + S ff_i_kmckbc_valuation_selected_power_product = v) -> exists ff_p_kmckbc_valuation_selected_power_product ff_r_kmckbc_valuation_selected_power_product ff_s_kmckbc_valuation_selected_power_product. ((((exists ff_h_kmckbc_valuation_selected_power_product_factor. ff_h_kmckbc_valuation_selected_power_product_factor + S (ff_p_kmckbc_valuation_selected_power_product) = S ((S (ff_i_kmckbc_valuation_selected_power_product)) * ff_c_kmckbc_valuation_selected_power)) /\ exists ff_q_kmckbc_valuation_selected_power_product_factor. ff_b_kmckbc_valuation_selected_power = ff_q_kmckbc_valuation_selected_power_product_factor * S ((S (ff_i_kmckbc_valuation_selected_power_product)) * ff_c_kmckbc_valuation_selected_power) + (ff_p_kmckbc_valuation_selected_power_product))) /\ ((((exists ff_h_kmckbc_valuation_selected_power_product_partial. ff_h_kmckbc_valuation_selected_power_product_partial + S (ff_r_kmckbc_valuation_selected_power_product) = S ((S (ff_i_kmckbc_valuation_selected_power_product)) * ff_v_kmckbc_valuation_selected_power_product)) /\ exists ff_q_kmckbc_valuation_selected_power_product_partial. ff_u_kmckbc_valuation_selected_power_product = ff_q_kmckbc_valuation_selected_power_product_partial * S ((S (ff_i_kmckbc_valuation_selected_power_product)) * ff_v_kmckbc_valuation_selected_power_product) + (ff_r_kmckbc_valuation_selected_power_product))) /\ ((((exists ff_h_kmckbc_valuation_selected_power_product_successor. ff_h_kmckbc_valuation_selected_power_product_successor + S (ff_s_kmckbc_valuation_selected_power_product) = S ((S (S ff_i_kmckbc_valuation_selected_power_product)) * ff_v_kmckbc_valuation_selected_power_product)) /\ exists ff_q_kmckbc_valuation_selected_power_product_successor. ff_u_kmckbc_valuation_selected_power_product = ff_q_kmckbc_valuation_selected_power_product_successor * S ((S (S ff_i_kmckbc_valuation_selected_power_product)) * ff_v_kmckbc_valuation_selected_power_product) + (ff_s_kmckbc_valuation_selected_power_product))) /\ ff_s_kmckbc_valuation_selected_power_product = ff_r_kmckbc_valuation_selected_power_product * ff_p_kmckbc_valuation_selected_power_product)))))))) /\ (exists bpv_factor_kmckbc_valuation_selected_divides. C = bpv_result_kmckbc_valuation_selected * bpv_factor_kmckbc_valuation_selected_divides)))) /\ forall bpv_candidate_kmckbc_valuation. (exists bpv_gap_kmckbc_valuation_candidate_bound. bpv_gap_kmckbc_valuation_candidate_bound + bpv_candidate_kmckbc_valuation = C) -> (exists bpv_result_kmckbc_valuation_candidate. ((exists ff_b_kmckbc_valuation_candidate_power ff_c_kmckbc_valuation_candidate_power. ((forall ff_i_kmckbc_valuation_candidate_power_repeat. (exists ff_lt_kmckbc_valuation_candidate_power_repeat_bound. ff_lt_kmckbc_valuation_candidate_power_repeat_bound + S ff_i_kmckbc_valuation_candidate_power_repeat = bpv_candidate_kmckbc_valuation) -> (((exists ff_h_kmckbc_valuation_candidate_power_repeat_decoded. ff_h_kmckbc_valuation_candidate_power_repeat_decoded + S (p) = S ((S (ff_i_kmckbc_valuation_candidate_power_repeat)) * ff_c_kmckbc_valuation_candidate_power)) /\ exists ff_q_kmckbc_valuation_candidate_power_repeat_decoded. ff_b_kmckbc_valuation_candidate_power = ff_q_kmckbc_valuation_candidate_power_repeat_decoded * S ((S (ff_i_kmckbc_valuation_candidate_power_repeat)) * ff_c_kmckbc_valuation_candidate_power) + (p)))) /\ (exists ff_u_kmckbc_valuation_candidate_power_product ff_v_kmckbc_valuation_candidate_power_product. ((((exists ff_h_kmckbc_valuation_candidate_power_product_start. ff_h_kmckbc_valuation_candidate_power_product_start + S (1) = S ((S (0)) * ff_v_kmckbc_valuation_candidate_power_product)) /\ exists ff_q_kmckbc_valuation_candidate_power_product_start. ff_u_kmckbc_valuation_candidate_power_product = ff_q_kmckbc_valuation_candidate_power_product_start * S ((S (0)) * ff_v_kmckbc_valuation_candidate_power_product) + (1))) /\ ((((exists ff_h_kmckbc_valuation_candidate_power_product_terminal. ff_h_kmckbc_valuation_candidate_power_product_terminal + S (bpv_result_kmckbc_valuation_candidate) = S ((S (bpv_candidate_kmckbc_valuation)) * ff_v_kmckbc_valuation_candidate_power_product)) /\ exists ff_q_kmckbc_valuation_candidate_power_product_terminal. ff_u_kmckbc_valuation_candidate_power_product = ff_q_kmckbc_valuation_candidate_power_product_terminal * S ((S (bpv_candidate_kmckbc_valuation)) * ff_v_kmckbc_valuation_candidate_power_product) + (bpv_result_kmckbc_valuation_candidate))) /\ forall ff_i_kmckbc_valuation_candidate_power_product. (exists ff_lt_kmckbc_valuation_candidate_power_product_bound. ff_lt_kmckbc_valuation_candidate_power_product_bound + S ff_i_kmckbc_valuation_candidate_power_product = bpv_candidate_kmckbc_valuation) -> exists ff_p_kmckbc_valuation_candidate_power_product ff_r_kmckbc_valuation_candidate_power_product ff_s_kmckbc_valuation_candidate_power_product. ((((exists ff_h_kmckbc_valuation_candidate_power_product_factor. ff_h_kmckbc_valuation_candidate_power_product_factor + S (ff_p_kmckbc_valuation_candidate_power_product) = S ((S (ff_i_kmckbc_valuation_candidate_power_product)) * ff_c_kmckbc_valuation_candidate_power)) /\ exists ff_q_kmckbc_valuation_candidate_power_product_factor. ff_b_kmckbc_valuation_candidate_power = ff_q_kmckbc_valuation_candidate_power_product_factor * S ((S (ff_i_kmckbc_valuation_candidate_power_product)) * ff_c_kmckbc_valuation_candidate_power) + (ff_p_kmckbc_valuation_candidate_power_product))) /\ ((((exists ff_h_kmckbc_valuation_candidate_power_product_partial. ff_h_kmckbc_valuation_candidate_power_product_partial + S (ff_r_kmckbc_valuation_candidate_power_product) = S ((S (ff_i_kmckbc_valuation_candidate_power_product)) * ff_v_kmckbc_valuation_candidate_power_product)) /\ exists ff_q_kmckbc_valuation_candidate_power_product_partial. ff_u_kmckbc_valuation_candidate_power_product = ff_q_kmckbc_valuation_candidate_power_product_partial * S ((S (ff_i_kmckbc_valuation_candidate_power_product)) * ff_v_kmckbc_valuation_candidate_power_product) + (ff_r_kmckbc_valuation_candidate_power_product))) /\ ((((exists ff_h_kmckbc_valuation_candidate_power_product_successor. ff_h_kmckbc_valuation_candidate_power_product_successor + S (ff_s_kmckbc_valuation_candidate_power_product) = S ((S (S ff_i_kmckbc_valuation_candidate_power_product)) * ff_v_kmckbc_valuation_candidate_power_product)) /\ exists ff_q_kmckbc_valuation_candidate_power_product_successor. ff_u_kmckbc_valuation_candidate_power_product = ff_q_kmckbc_valuation_candidate_power_product_successor * S ((S (S ff_i_kmckbc_valuation_candidate_power_product)) * ff_v_kmckbc_valuation_candidate_power_product) + (ff_s_kmckbc_valuation_candidate_power_product))) /\ ff_s_kmckbc_valuation_candidate_power_product = ff_r_kmckbc_valuation_candidate_power_product * ff_p_kmckbc_valuation_candidate_power_product)))))))) /\ (exists bpv_factor_kmckbc_valuation_candidate_divides. C = bpv_result_kmckbc_valuation_candidate * bpv_factor_kmckbc_valuation_candidate_divides))) -> (exists bpv_gap_kmckbc_valuation_maximal. bpv_gap_kmckbc_valuation_maximal + bpv_candidate_kmckbc_valuation = v)) -> exists lb lc rb rc tb tc cb cc. (forall bls_index_kmckbc_left. (exists bls_gap_kmckbc_left_bound. bls_gap_kmckbc_left_bound + S (bls_index_kmckbc_left) = (a + b)) -> exists bls_power_kmckbc_left bls_quotient_kmckbc_left bls_remainder_kmckbc_left. ((exists bpvi_b_bls_kmckbc_left_power bpvi_c_bls_kmckbc_left_power. ((forall bpvi_i_bls_kmckbc_left_power. (exists bpvi_repeat_gap_bls_kmckbc_left_power. bpvi_repeat_gap_bls_kmckbc_left_power + S bpvi_i_bls_kmckbc_left_power = S bls_index_kmckbc_left) -> (((exists bpvi_h_bls_kmckbc_left_power_repeat. bpvi_h_bls_kmckbc_left_power_repeat + S (p) = S ((S (bpvi_i_bls_kmckbc_left_power)) * bpvi_c_bls_kmckbc_left_power)) /\ exists bpvi_q_bls_kmckbc_left_power_repeat. bpvi_b_bls_kmckbc_left_power = bpvi_q_bls_kmckbc_left_power_repeat * S ((S (bpvi_i_bls_kmckbc_left_power)) * bpvi_c_bls_kmckbc_left_power) + (p)))) /\ (exists bpvi_u_bls_kmckbc_left_power bpvi_v_bls_kmckbc_left_power. ((((exists bpvi_h_bls_kmckbc_left_power_start. bpvi_h_bls_kmckbc_left_power_start + S (1) = S ((S (0)) * bpvi_v_bls_kmckbc_left_power)) /\ exists bpvi_q_bls_kmckbc_left_power_start. bpvi_u_bls_kmckbc_left_power = bpvi_q_bls_kmckbc_left_power_start * S ((S (0)) * bpvi_v_bls_kmckbc_left_power) + (1))) /\ ((((exists bpvi_h_bls_kmckbc_left_power_terminal. bpvi_h_bls_kmckbc_left_power_terminal + S (bls_power_kmckbc_left) = S ((S (S bls_index_kmckbc_left)) * bpvi_v_bls_kmckbc_left_power)) /\ exists bpvi_q_bls_kmckbc_left_power_terminal. bpvi_u_bls_kmckbc_left_power = bpvi_q_bls_kmckbc_left_power_terminal * S ((S (S bls_index_kmckbc_left)) * bpvi_v_bls_kmckbc_left_power) + (bls_power_kmckbc_left))) /\ forall bpvi_j_bls_kmckbc_left_power. (exists bpvi_product_gap_bls_kmckbc_left_power. bpvi_product_gap_bls_kmckbc_left_power + S bpvi_j_bls_kmckbc_left_power = S bls_index_kmckbc_left) -> exists bpvi_factor_bls_kmckbc_left_power bpvi_partial_bls_kmckbc_left_power bpvi_successor_bls_kmckbc_left_power. ((((exists bpvi_h_bls_kmckbc_left_power_factor. bpvi_h_bls_kmckbc_left_power_factor + S (bpvi_factor_bls_kmckbc_left_power) = S ((S (bpvi_j_bls_kmckbc_left_power)) * bpvi_c_bls_kmckbc_left_power)) /\ exists bpvi_q_bls_kmckbc_left_power_factor. bpvi_b_bls_kmckbc_left_power = bpvi_q_bls_kmckbc_left_power_factor * S ((S (bpvi_j_bls_kmckbc_left_power)) * bpvi_c_bls_kmckbc_left_power) + (bpvi_factor_bls_kmckbc_left_power))) /\ ((((exists bpvi_h_bls_kmckbc_left_power_partial. bpvi_h_bls_kmckbc_left_power_partial + S (bpvi_partial_bls_kmckbc_left_power) = S ((S (bpvi_j_bls_kmckbc_left_power)) * bpvi_v_bls_kmckbc_left_power)) /\ exists bpvi_q_bls_kmckbc_left_power_partial. bpvi_u_bls_kmckbc_left_power = bpvi_q_bls_kmckbc_left_power_partial * S ((S (bpvi_j_bls_kmckbc_left_power)) * bpvi_v_bls_kmckbc_left_power) + (bpvi_partial_bls_kmckbc_left_power))) /\ ((((exists bpvi_h_bls_kmckbc_left_power_successor. bpvi_h_bls_kmckbc_left_power_successor + S (bpvi_successor_bls_kmckbc_left_power) = S ((S (S bpvi_j_bls_kmckbc_left_power)) * bpvi_v_bls_kmckbc_left_power)) /\ exists bpvi_q_bls_kmckbc_left_power_successor. bpvi_u_bls_kmckbc_left_power = bpvi_q_bls_kmckbc_left_power_successor * S ((S (S bpvi_j_bls_kmckbc_left_power)) * bpvi_v_bls_kmckbc_left_power) + (bpvi_successor_bls_kmckbc_left_power))) /\ bpvi_successor_bls_kmckbc_left_power = bpvi_partial_bls_kmckbc_left_power * bpvi_factor_bls_kmckbc_left_power)))))))) /\ ((((exists ff_h_bls_kmckbc_left_quotient_entry. ff_h_bls_kmckbc_left_quotient_entry + S (bls_quotient_kmckbc_left) = S ((S (bls_index_kmckbc_left)) * lc)) /\ exists ff_q_bls_kmckbc_left_quotient_entry. lb = ff_q_bls_kmckbc_left_quotient_entry * S ((S (bls_index_kmckbc_left)) * lc) + (bls_quotient_kmckbc_left))) /\ ((a = bls_power_kmckbc_left * bls_quotient_kmckbc_left + bls_remainder_kmckbc_left /\ exists bls_remainder_gap_kmckbc_left_division. bls_remainder_gap_kmckbc_left_division + S (bls_remainder_kmckbc_left) = bls_power_kmckbc_left))))) /\ ((forall bls_index_kmckbc_right. (exists bls_gap_kmckbc_right_bound. bls_gap_kmckbc_right_bound + S (bls_index_kmckbc_right) = (a + b)) -> exists bls_power_kmckbc_right bls_quotient_kmckbc_right bls_remainder_kmckbc_right. ((exists bpvi_b_bls_kmckbc_right_power bpvi_c_bls_kmckbc_right_power. ((forall bpvi_i_bls_kmckbc_right_power. (exists bpvi_repeat_gap_bls_kmckbc_right_power. bpvi_repeat_gap_bls_kmckbc_right_power + S bpvi_i_bls_kmckbc_right_power = S bls_index_kmckbc_right) -> (((exists bpvi_h_bls_kmckbc_right_power_repeat. bpvi_h_bls_kmckbc_right_power_repeat + S (p) = S ((S (bpvi_i_bls_kmckbc_right_power)) * bpvi_c_bls_kmckbc_right_power)) /\ exists bpvi_q_bls_kmckbc_right_power_repeat. bpvi_b_bls_kmckbc_right_power = bpvi_q_bls_kmckbc_right_power_repeat * S ((S (bpvi_i_bls_kmckbc_right_power)) * bpvi_c_bls_kmckbc_right_power) + (p)))) /\ (exists bpvi_u_bls_kmckbc_right_power bpvi_v_bls_kmckbc_right_power. ((((exists bpvi_h_bls_kmckbc_right_power_start. bpvi_h_bls_kmckbc_right_power_start + S (1) = S ((S (0)) * bpvi_v_bls_kmckbc_right_power)) /\ exists bpvi_q_bls_kmckbc_right_power_start. bpvi_u_bls_kmckbc_right_power = bpvi_q_bls_kmckbc_right_power_start * S ((S (0)) * bpvi_v_bls_kmckbc_right_power) + (1))) /\ ((((exists bpvi_h_bls_kmckbc_right_power_terminal. bpvi_h_bls_kmckbc_right_power_terminal + S (bls_power_kmckbc_right) = S ((S (S bls_index_kmckbc_right)) * bpvi_v_bls_kmckbc_right_power)) /\ exists bpvi_q_bls_kmckbc_right_power_terminal. bpvi_u_bls_kmckbc_right_power = bpvi_q_bls_kmckbc_right_power_terminal * S ((S (S bls_index_kmckbc_right)) * bpvi_v_bls_kmckbc_right_power) + (bls_power_kmckbc_right))) /\ forall bpvi_j_bls_kmckbc_right_power. (exists bpvi_product_gap_bls_kmckbc_right_power. bpvi_product_gap_bls_kmckbc_right_power + S bpvi_j_bls_kmckbc_right_power = S bls_index_kmckbc_right) -> exists bpvi_factor_bls_kmckbc_right_power bpvi_partial_bls_kmckbc_right_power bpvi_successor_bls_kmckbc_right_power. ((((exists bpvi_h_bls_kmckbc_right_power_factor. bpvi_h_bls_kmckbc_right_power_factor + S (bpvi_factor_bls_kmckbc_right_power) = S ((S (bpvi_j_bls_kmckbc_right_power)) * bpvi_c_bls_kmckbc_right_power)) /\ exists bpvi_q_bls_kmckbc_right_power_factor. bpvi_b_bls_kmckbc_right_power = bpvi_q_bls_kmckbc_right_power_factor * S ((S (bpvi_j_bls_kmckbc_right_power)) * bpvi_c_bls_kmckbc_right_power) + (bpvi_factor_bls_kmckbc_right_power))) /\ ((((exists bpvi_h_bls_kmckbc_right_power_partial. bpvi_h_bls_kmckbc_right_power_partial + S (bpvi_partial_bls_kmckbc_right_power) = S ((S (bpvi_j_bls_kmckbc_right_power)) * bpvi_v_bls_kmckbc_right_power)) /\ exists bpvi_q_bls_kmckbc_right_power_partial. bpvi_u_bls_kmckbc_right_power = bpvi_q_bls_kmckbc_right_power_partial * S ((S (bpvi_j_bls_kmckbc_right_power)) * bpvi_v_bls_kmckbc_right_power) + (bpvi_partial_bls_kmckbc_right_power))) /\ ((((exists bpvi_h_bls_kmckbc_right_power_successor. bpvi_h_bls_kmckbc_right_power_successor + S (bpvi_successor_bls_kmckbc_right_power) = S ((S (S bpvi_j_bls_kmckbc_right_power)) * bpvi_v_bls_kmckbc_right_power)) /\ exists bpvi_q_bls_kmckbc_right_power_successor. bpvi_u_bls_kmckbc_right_power = bpvi_q_bls_kmckbc_right_power_successor * S ((S (S bpvi_j_bls_kmckbc_right_power)) * bpvi_v_bls_kmckbc_right_power) + (bpvi_successor_bls_kmckbc_right_power))) /\ bpvi_successor_bls_kmckbc_right_power = bpvi_partial_bls_kmckbc_right_power * bpvi_factor_bls_kmckbc_right_power)))))))) /\ ((((exists ff_h_bls_kmckbc_right_quotient_entry. ff_h_bls_kmckbc_right_quotient_entry + S (bls_quotient_kmckbc_right) = S ((S (bls_index_kmckbc_right)) * rc)) /\ exists ff_q_bls_kmckbc_right_quotient_entry. rb = ff_q_bls_kmckbc_right_quotient_entry * S ((S (bls_index_kmckbc_right)) * rc) + (bls_quotient_kmckbc_right))) /\ ((b = bls_power_kmckbc_right * bls_quotient_kmckbc_right + bls_remainder_kmckbc_right /\ exists bls_remainder_gap_kmckbc_right_division. bls_remainder_gap_kmckbc_right_division + S (bls_remainder_kmckbc_right) = bls_power_kmckbc_right))))) /\ ((forall bls_index_kmckbc_total. (exists bls_gap_kmckbc_total_bound. bls_gap_kmckbc_total_bound + S (bls_index_kmckbc_total) = (a + b)) -> exists bls_power_kmckbc_total bls_quotient_kmckbc_total bls_remainder_kmckbc_total. ((exists bpvi_b_bls_kmckbc_total_power bpvi_c_bls_kmckbc_total_power. ((forall bpvi_i_bls_kmckbc_total_power. (exists bpvi_repeat_gap_bls_kmckbc_total_power. bpvi_repeat_gap_bls_kmckbc_total_power + S bpvi_i_bls_kmckbc_total_power = S bls_index_kmckbc_total) -> (((exists bpvi_h_bls_kmckbc_total_power_repeat. bpvi_h_bls_kmckbc_total_power_repeat + S (p) = S ((S (bpvi_i_bls_kmckbc_total_power)) * bpvi_c_bls_kmckbc_total_power)) /\ exists bpvi_q_bls_kmckbc_total_power_repeat. bpvi_b_bls_kmckbc_total_power = bpvi_q_bls_kmckbc_total_power_repeat * S ((S (bpvi_i_bls_kmckbc_total_power)) * bpvi_c_bls_kmckbc_total_power) + (p)))) /\ (exists bpvi_u_bls_kmckbc_total_power bpvi_v_bls_kmckbc_total_power. ((((exists bpvi_h_bls_kmckbc_total_power_start. bpvi_h_bls_kmckbc_total_power_start + S (1) = S ((S (0)) * bpvi_v_bls_kmckbc_total_power)) /\ exists bpvi_q_bls_kmckbc_total_power_start. bpvi_u_bls_kmckbc_total_power = bpvi_q_bls_kmckbc_total_power_start * S ((S (0)) * bpvi_v_bls_kmckbc_total_power) + (1))) /\ ((((exists bpvi_h_bls_kmckbc_total_power_terminal. bpvi_h_bls_kmckbc_total_power_terminal + S (bls_power_kmckbc_total) = S ((S (S bls_index_kmckbc_total)) * bpvi_v_bls_kmckbc_total_power)) /\ exists bpvi_q_bls_kmckbc_total_power_terminal. bpvi_u_bls_kmckbc_total_power = bpvi_q_bls_kmckbc_total_power_terminal * S ((S (S bls_index_kmckbc_total)) * bpvi_v_bls_kmckbc_total_power) + (bls_power_kmckbc_total))) /\ forall bpvi_j_bls_kmckbc_total_power. (exists bpvi_product_gap_bls_kmckbc_total_power. bpvi_product_gap_bls_kmckbc_total_power + S bpvi_j_bls_kmckbc_total_power = S bls_index_kmckbc_total) -> exists bpvi_factor_bls_kmckbc_total_power bpvi_partial_bls_kmckbc_total_power bpvi_successor_bls_kmckbc_total_power. ((((exists bpvi_h_bls_kmckbc_total_power_factor. bpvi_h_bls_kmckbc_total_power_factor + S (bpvi_factor_bls_kmckbc_total_power) = S ((S (bpvi_j_bls_kmckbc_total_power)) * bpvi_c_bls_kmckbc_total_power)) /\ exists bpvi_q_bls_kmckbc_total_power_factor. bpvi_b_bls_kmckbc_total_power = bpvi_q_bls_kmckbc_total_power_factor * S ((S (bpvi_j_bls_kmckbc_total_power)) * bpvi_c_bls_kmckbc_total_power) + (bpvi_factor_bls_kmckbc_total_power))) /\ ((((exists bpvi_h_bls_kmckbc_total_power_partial. bpvi_h_bls_kmckbc_total_power_partial + S (bpvi_partial_bls_kmckbc_total_power) = S ((S (bpvi_j_bls_kmckbc_total_power)) * bpvi_v_bls_kmckbc_total_power)) /\ exists bpvi_q_bls_kmckbc_total_power_partial. bpvi_u_bls_kmckbc_total_power = bpvi_q_bls_kmckbc_total_power_partial * S ((S (bpvi_j_bls_kmckbc_total_power)) * bpvi_v_bls_kmckbc_total_power) + (bpvi_partial_bls_kmckbc_total_power))) /\ ((((exists bpvi_h_bls_kmckbc_total_power_successor. bpvi_h_bls_kmckbc_total_power_successor + S (bpvi_successor_bls_kmckbc_total_power) = S ((S (S bpvi_j_bls_kmckbc_total_power)) * bpvi_v_bls_kmckbc_total_power)) /\ exists bpvi_q_bls_kmckbc_total_power_successor. bpvi_u_bls_kmckbc_total_power = bpvi_q_bls_kmckbc_total_power_successor * S ((S (S bpvi_j_bls_kmckbc_total_power)) * bpvi_v_bls_kmckbc_total_power) + (bpvi_successor_bls_kmckbc_total_power))) /\ bpvi_successor_bls_kmckbc_total_power = bpvi_partial_bls_kmckbc_total_power * bpvi_factor_bls_kmckbc_total_power)))))))) /\ ((((exists ff_h_bls_kmckbc_total_quotient_entry. ff_h_bls_kmckbc_total_quotient_entry + S (bls_quotient_kmckbc_total) = S ((S (bls_index_kmckbc_total)) * tc)) /\ exists ff_q_bls_kmckbc_total_quotient_entry. tb = ff_q_bls_kmckbc_total_quotient_entry * S ((S (bls_index_kmckbc_total)) * tc) + (bls_quotient_kmckbc_total))) /\ ((a + b = bls_power_kmckbc_total * bls_quotient_kmckbc_total + bls_remainder_kmckbc_total /\ exists bls_remainder_gap_kmckbc_total_division. bls_remainder_gap_kmckbc_total_division + S (bls_remainder_kmckbc_total) = bls_power_kmckbc_total))))) /\ ((forall kmc_index_kmckbc_carries. (exists bcf_lt_gap_kmckbc_carries_bound. bcf_lt_gap_kmckbc_carries_bound + S (kmc_index_kmckbc_carries) = a + b) -> exists kmc_left_kmckbc_carries kmc_right_kmckbc_carries kmc_total_kmckbc_carries kmc_bit_kmckbc_carries. (((exists fs_h_kmckbc_carries_left. fs_h_kmckbc_carries_left + S (kmc_left_kmckbc_carries) = S ((S (kmc_index_kmckbc_carries)) * lc)) /\ exists fs_q_kmckbc_carries_left. lb = fs_q_kmckbc_carries_left * S ((S (kmc_index_kmckbc_carries)) * lc) + (kmc_left_kmckbc_carries))) /\ ((((exists fs_h_kmckbc_carries_right. fs_h_kmckbc_carries_right + S (kmc_right_kmckbc_carries) = S ((S (kmc_index_kmckbc_carries)) * rc)) /\ exists fs_q_kmckbc_carries_right. rb = fs_q_kmckbc_carries_right * S ((S (kmc_index_kmckbc_carries)) * rc) + (kmc_right_kmckbc_carries))) /\ ((((exists fs_h_kmckbc_carries_total. fs_h_kmckbc_carries_total + S (kmc_total_kmckbc_carries) = S ((S (kmc_index_kmckbc_carries)) * tc)) /\ exists fs_q_kmckbc_carries_total. tb = fs_q_kmckbc_carries_total * S ((S (kmc_index_kmckbc_carries)) * tc) + (kmc_total_kmckbc_carries))) /\ ((((exists fs_h_kmckbc_carries_bit. fs_h_kmckbc_carries_bit + S (kmc_bit_kmckbc_carries) = S ((S (kmc_index_kmckbc_carries)) * cc)) /\ exists fs_q_kmckbc_carries_bit. cb = fs_q_kmckbc_carries_bit * S ((S (kmc_index_kmckbc_carries)) * cc) + (kmc_bit_kmckbc_carries))) /\ (((kmc_bit_kmckbc_carries = 0 /\ kmc_total_kmckbc_carries = kmc_left_kmckbc_carries + kmc_right_kmckbc_carries) \/ (kmc_bit_kmckbc_carries = 1 /\ kmc_total_kmckbc_carries = S (kmc_left_kmckbc_carries + kmc_right_kmckbc_carries)))))))) /\ (((exists ff_u_kmckbc_count_sum ff_v_kmckbc_count_sum. ((((exists ff_h_kmckbc_count_sum_start. ff_h_kmckbc_count_sum_start + S (0) = S ((S (0)) * ff_v_kmckbc_count_sum)) /\ exists ff_q_kmckbc_count_sum_start. ff_u_kmckbc_count_sum = ff_q_kmckbc_count_sum_start * S ((S (0)) * ff_v_kmckbc_count_sum) + (0))) /\ ((((exists ff_h_kmckbc_count_sum_terminal. ff_h_kmckbc_count_sum_terminal + S ((v)) = S ((S ((a + b))) * ff_v_kmckbc_count_sum)) /\ exists ff_q_kmckbc_count_sum_terminal. ff_u_kmckbc_count_sum = ff_q_kmckbc_count_sum_terminal * S ((S ((a + b))) * ff_v_kmckbc_count_sum) + ((v)))) /\ forall ff_i_kmckbc_count_sum. (exists ff_lt_kmckbc_count_sum_bound. ff_lt_kmckbc_count_sum_bound + S ff_i_kmckbc_count_sum = (a + b)) -> exists ff_a_kmckbc_count_sum ff_r_kmckbc_count_sum ff_s_kmckbc_count_sum. ((((exists ff_h_kmckbc_count_sum_summand. ff_h_kmckbc_count_sum_summand + S (ff_a_kmckbc_count_sum) = S ((S (ff_i_kmckbc_count_sum)) * cc)) /\ exists ff_q_kmckbc_count_sum_summand. cb = ff_q_kmckbc_count_sum_summand * S ((S (ff_i_kmckbc_count_sum)) * cc) + (ff_a_kmckbc_count_sum))) /\ ((((exists ff_h_kmckbc_count_sum_partial. ff_h_kmckbc_count_sum_partial + S (ff_r_kmckbc_count_sum) = S ((S (ff_i_kmckbc_count_sum)) * ff_v_kmckbc_count_sum)) /\ exists ff_q_kmckbc_count_sum_partial. ff_u_kmckbc_count_sum = ff_q_kmckbc_count_sum_partial * S ((S (ff_i_kmckbc_count_sum)) * ff_v_kmckbc_count_sum) + (ff_r_kmckbc_count_sum))) /\ ((((exists ff_h_kmckbc_count_sum_successor. ff_h_kmckbc_count_sum_successor + S (ff_s_kmckbc_count_sum) = S ((S (S ff_i_kmckbc_count_sum)) * ff_v_kmckbc_count_sum)) /\ exists ff_q_kmckbc_count_sum_successor. ff_u_kmckbc_count_sum = ff_q_kmckbc_count_sum_successor * S ((S (S ff_i_kmckbc_count_sum)) * ff_v_kmckbc_count_sum) + (ff_s_kmckbc_count_sum))) /\ ff_s_kmckbc_count_sum = ff_r_kmckbc_count_sum + ff_a_kmckbc_count_sum)))))) /\ (forall ff_i_kmckbc_count_bits. (exists ff_lt_kmckbc_count_bits_bound. ff_lt_kmckbc_count_bits_bound + S ff_i_kmckbc_count_bits = (a + b)) -> exists ff_bit_kmckbc_count_bits. ((((exists ff_h_kmckbc_count_bits_decoded. ff_h_kmckbc_count_bits_decoded + S (ff_bit_kmckbc_count_bits) = S ((S (ff_i_kmckbc_count_bits)) * cc)) /\ exists ff_q_kmckbc_count_bits_decoded. cb = ff_q_kmckbc_count_bits_decoded * S ((S (ff_i_kmckbc_count_bits)) * cc) + (ff_bit_kmckbc_count_bits))) /\ (ff_bit_kmckbc_count_bits = 0 \/ ff_bit_kmckbc_count_bits = 1))))))))Proof neighborhood
Direct theorem prerequisites
KU0005 binomial_legendre_valuation_balance legendre_sum_extended_prefix_exists · Alpha closed add_comm · Stable closed KU0008 add_quotient_carry_prefix_exists KU0009 add_quotient_carry_prefix_all_bits bit_count_exists · Stable closed KU000B beta_sum_add_carry_exact add_left_cancel · Stable closedDirect theorem dependents
Definition-aware tactic body
Only propositions whose conservative expansion has been checked for exact first-order equivalence are compacted. Every changed line retains its immutable exact replay command.
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 (4)
01Fix variables and assumptionsL1–8
02Establish hleft_legendreL9–13
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime legendre sum exists.
- L9
have hleft_legendre : ∃ L. LegendreSum(p,a,L)Definitions: LegendreSum(p,a,L)Original native command in the exact edition - L10
specialize prime_legendre_sum_exists p - L11
specialize prime_legendre_sum_exists a - L12
apply prime_legendre_sum_exists - L13
exact hp
03Separate the logical casesL14–14
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L14
cases hleft_legendre
04Establish hright_legendreL15–19
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime legendre sum exists.
- L15
have hright_legendre : ∃ M. LegendreSum(p,b,M)Definitions: LegendreSum(p,b,M)Original native command in the exact edition - L16
specialize prime_legendre_sum_exists p - L17
specialize prime_legendre_sum_exists b - L18
apply prime_legendre_sum_exists - L19
exact hp
05Separate the logical casesL20–20
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L20
cases hright_legendre
06Establish htotal_legendreL21–25
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime legendre sum exists.
- L21
have htotal_legendre : ∃ T. LegendreSum(p,a + b,T)Definitions: LegendreSum(p,a + b,T)Original native command in the exact edition - L22
specialize prime_legendre_sum_exists p - L23
specialize prime_legendre_sum_exists (a + b) - L24
apply prime_legendre_sum_exists - L25
exact hp
07Separate the logical casesL26–26
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L26
cases htotal_legendre
08Establish hvaluation_balanceL27–36
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply binomial legendre valuation balance.
- L27
have hvaluation_balance : x2 = (x + x1) + v - L28
specialize binomial_legendre_valuation_balance p - L29
specialize binomial_legendre_valuation_balance a - L30
specialize binomial_legendre_valuation_balance b - L31
specialize binomial_legendre_valuation_balance C - L32
specialize binomial_legendre_valuation_balance v - L33
specialize binomial_legendre_valuation_balance x2 - L34
specialize binomial_legendre_valuation_balance x - L35
specialize binomial_legendre_valuation_balance x1 - L36
apply binomial_legendre_valuation_balance
09Use earlier factsL37–42
10Establish hleft_extendedL43–50
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply legendre sum extended prefix exists.
- L43
have hleft_extended : ∃ lb. ∃ lc. PowerQuotPrefix(p,a,lb,lc,a + b) ∧ Sum(lb,lc,a + b,x)Definitions: PowerQuotPrefix(p,a,lb,lc,a + b)Sum(lb,lc,a + b,x)Original native command in the exact edition - L44
specialize legendre_sum_extended_prefix_exists p - L45
specialize legendre_sum_extended_prefix_exists a - L46
specialize legendre_sum_extended_prefix_exists x - L47
specialize legendre_sum_extended_prefix_exists b - L48
apply legendre_sum_extended_prefix_exists - L49
exact hp - L50
exact hleft_legendre_witness
11Separate the logical casesL51–53
12Establish hright_extendedL54–61
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply legendre sum extended prefix exists.
- L54
have hright_extended : ∃ rb. ∃ rc. PowerQuotPrefix(p,b,rb,rc,b + a) ∧ Sum(rb,rc,b + a,x1)Definitions: PowerQuotPrefix(p,b,rb,rc,b + a)Sum(rb,rc,b + a,x1)Original native command in the exact edition - L55
specialize legendre_sum_extended_prefix_exists p - L56
specialize legendre_sum_extended_prefix_exists b - L57
specialize legendre_sum_extended_prefix_exists x1 - L58
specialize legendre_sum_extended_prefix_exists a - L59
apply legendre_sum_extended_prefix_exists - L60
exact hp - L61
exact hright_legendre_witness
13Separate the logical casesL62–64
14Establish hlengthL65–70
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add comm.
15Separate the logical casesL71–73
16Establish hcarry_codesL74–83
Establish this local claim before using it. It is not an additional assumption.
- L74
have hcarry_codes : ∃ cb. ∃ cc. ∀ kmc_index_kmckbc_carry_codes. Lt(kmc_index_kmckbc_carry_codes,a + b) → ∃ x. ∃ y. ∃ z. ∃ n. BetaAt(x3,x4,kmc_index_kmckbc_carry_codes,x) ∧ (BetaAt(x5,x6,kmc_index_kmckbc_carry_codes,y) ∧ (BetaAt(x7,x8,kmc_index_kmckbc_carry_codes,z) ∧ (BetaAt(cb,cc,kmc_index_kmckbc_carry_codes,n) ∧ (n = 0 ∧ z = x + y ∨ n = 1 ∧ z = S (x + y)))))Definitions: Lt(kmc_index_kmckbc_carry_codes,a + b)BetaAt(x3,x4,kmc_index_kmckbc_carry_codes,x)BetaAt(x5,x6,kmc_index_kmckbc_carry_codes,y)BetaAt(x7,x8,kmc_index_kmckbc_carry_codes,z)BetaAt(cb,cc,kmc_index_kmckbc_carry_codes,n)Original native command in the exact edition - L75
specialize add_quotient_carry_prefix_exists p - L76
specialize add_quotient_carry_prefix_exists a - L77
specialize add_quotient_carry_prefix_exists b - L78
specialize add_quotient_carry_prefix_exists x3 - L79
specialize add_quotient_carry_prefix_exists x4 - L80
specialize add_quotient_carry_prefix_exists x5 - L81
specialize add_quotient_carry_prefix_exists x6 - L82
specialize add_quotient_carry_prefix_exists x7 - L83
specialize add_quotient_carry_prefix_exists x8
17Use earlier factsL84–88
Instantiate or apply named facts and discharge the corresponding proof obligations.
18Separate the logical casesL89–90
19Establish hall_bitsL91–100
Establish this local claim before using it. It is not an additional assumption.
- L91
have hall_bits : AllBits(x9,x10,a + b)Definitions: AllBits(x9,x10,a + b)Original native command in the exact edition - L92
specialize add_quotient_carry_prefix_all_bits x3 - L93
specialize add_quotient_carry_prefix_all_bits x4 - L94
specialize add_quotient_carry_prefix_all_bits x5 - L95
specialize add_quotient_carry_prefix_all_bits x6 - L96
specialize add_quotient_carry_prefix_all_bits x7 - L97
specialize add_quotient_carry_prefix_all_bits x8 - L98
specialize add_quotient_carry_prefix_all_bits x9 - L99
specialize add_quotient_carry_prefix_all_bits x10 - L100
specialize add_quotient_carry_prefix_all_bits (a + b)
20Use earlier factsL101–102
21Establish hcountL103–108
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply bit count exists.
- L103
have hcount : ∃ E. BitCount(x9,x10,a + b,E)Definitions: BitCount(x9,x10,a + b,E)Original native command in the exact edition - L104
specialize bit_count_exists x9 - L105
specialize bit_count_exists x10 - L106
specialize bit_count_exists (a + b) - L107
apply bit_count_exists - L108
exact hall_bits
22Separate the logical casesL109–109
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L109
cases hcount
23Establish hcarry_balanceL110–119
Establish this local claim before using it. It is not an additional assumption.
- L110
have hcarry_balance : x2 = (x + x1) + x11 - L111
specialize beta_sum_add_carry_exact x3 - L112
specialize beta_sum_add_carry_exact x4 - L113
specialize beta_sum_add_carry_exact x5 - L114
specialize beta_sum_add_carry_exact x6 - L115
specialize beta_sum_add_carry_exact x7 - L116
specialize beta_sum_add_carry_exact x8 - L117
specialize beta_sum_add_carry_exact x9 - L118
specialize beta_sum_add_carry_exact x10 - L119
specialize beta_sum_add_carry_exact (a + b)
24Use earlier factsL120–129
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L120
specialize beta_sum_add_carry_exact x - L121
specialize beta_sum_add_carry_exact x1 - L122
specialize beta_sum_add_carry_exact x2 - L123
specialize beta_sum_add_carry_exact x11 - L124
apply beta_sum_add_carry_exact - L125
exact hleft_extended_witness_witness_right - L126
exact hright_extended_witness_witness_right - L127
exact htotal_legendre_witness_witness_witness_right - L128
exact hcarry_codes_witness_witness - L129
exact hcount_witness
25Establish hcount_eqL130–139
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add left cancel.
26Calculate and transport equalitiesL140–140
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L140
rewrite hcount_eq at hcount_witness
27Construct an explicit witnessL141–148
28Separate the logical casesL149–149
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L149
split
29Use earlier factsL150–150
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L150
exact hleft_extended_witness_witness_left
30Separate the logical casesL151–151
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L151
split
31Use earlier factsL152–152
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L152
exact hright_extended_witness_witness_left
32Separate the logical casesL153–153
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L153
split
33Use earlier factsL154–154
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L154
exact htotal_legendre_witness_witness_witness_left
34Separate the logical casesL155–155
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L155
split
Original defined command ledger · 157 lines
- 0001
intro p - 0002
intro a - 0003
intro b - 0004
intro C - 0005
intro v - 0006
intro hp - 0007
intro hchoose - 0008
intro hvaluation - 0009
have hleft_legendre : ∃ L. LegendreSum(p,a,L)Exact native replay line
have hleft_legendre : exists L. exists bls_code_kmckbc_left_legendre bls_scale_kmckbc_left_legendre. ((forall bls_index_kmckbc_left_legendre_prefix. (exists bls_gap_kmckbc_left_legendre_prefix_bound. bls_gap_kmckbc_left_legendre_prefix_bound + S (bls_index_kmckbc_left_legendre_prefix) = (a)) -> exists bls_power_kmckbc_left_legendre_prefix bls_quotient_kmckbc_left_legendre_prefix bls_remainder_kmckbc_left_legendre_prefix. ((exists bpvi_b_bls_kmckbc_left_legendre_prefix_power bpvi_c_bls_kmckbc_left_legendre_prefix_power. ((forall bpvi_i_bls_kmckbc_left_legendre_prefix_power. (exists bpvi_repeat_gap_bls_kmckbc_left_legendre_prefix_power. bpvi_repeat_gap_bls_kmckbc_left_legendre_prefix_power + S bpvi_i_bls_kmckbc_left_legendre_prefix_power = S bls_index_kmckbc_left_legendre_prefix) -> (((exists bpvi_h_bls_kmckbc_left_legendre_prefix_power_repeat. bpvi_h_bls_kmckbc_left_legendre_prefix_power_repeat + S (p) = S ((S (bpvi_i_bls_kmckbc_left_legendre_prefix_power)) * bpvi_c_bls_kmckbc_left_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_left_legendre_prefix_power_repeat. bpvi_b_bls_kmckbc_left_legendre_prefix_power = bpvi_q_bls_kmckbc_left_legendre_prefix_power_repeat * S ((S (bpvi_i_bls_kmckbc_left_legendre_prefix_power)) * bpvi_c_bls_kmckbc_left_legendre_prefix_power) + (p)))) /\ (exists bpvi_u_bls_kmckbc_left_legendre_prefix_power bpvi_v_bls_kmckbc_left_legendre_prefix_power. ((((exists bpvi_h_bls_kmckbc_left_legendre_prefix_power_start. bpvi_h_bls_kmckbc_left_legendre_prefix_power_start + S (1) = S ((S (0)) * bpvi_v_bls_kmckbc_left_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_left_legendre_prefix_power_start. bpvi_u_bls_kmckbc_left_legendre_prefix_power = bpvi_q_bls_kmckbc_left_legendre_prefix_power_start * S ((S (0)) * bpvi_v_bls_kmckbc_left_legendre_prefix_power) + (1))) /\ ((((exists bpvi_h_bls_kmckbc_left_legendre_prefix_power_terminal. bpvi_h_bls_kmckbc_left_legendre_prefix_power_terminal + S (bls_power_kmckbc_left_legendre_prefix) = S ((S (S bls_index_kmckbc_left_legendre_prefix)) * bpvi_v_bls_kmckbc_left_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_left_legendre_prefix_power_terminal. bpvi_u_bls_kmckbc_left_legendre_prefix_power = bpvi_q_bls_kmckbc_left_legendre_prefix_power_terminal * S ((S (S bls_index_kmckbc_left_legendre_prefix)) * bpvi_v_bls_kmckbc_left_legendre_prefix_power) + (bls_power_kmckbc_left_legendre_prefix))) /\ forall bpvi_j_bls_kmckbc_left_legendre_prefix_power. (exists bpvi_product_gap_bls_kmckbc_left_legendre_prefix_power. bpvi_product_gap_bls_kmckbc_left_legendre_prefix_power + S bpvi_j_bls_kmckbc_left_legendre_prefix_power = S bls_index_kmckbc_left_legendre_prefix) -> exists bpvi_factor_bls_kmckbc_left_legendre_prefix_power bpvi_partial_bls_kmckbc_left_legendre_prefix_power bpvi_successor_bls_kmckbc_left_legendre_prefix_power. ((((exists bpvi_h_bls_kmckbc_left_legendre_prefix_power_factor. bpvi_h_bls_kmckbc_left_legendre_prefix_power_factor + S (bpvi_factor_bls_kmckbc_left_legendre_prefix_power) = S ((S (bpvi_j_bls_kmckbc_left_legendre_prefix_power)) * bpvi_c_bls_kmckbc_left_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_left_legendre_prefix_power_factor. bpvi_b_bls_kmckbc_left_legendre_prefix_power = bpvi_q_bls_kmckbc_left_legendre_prefix_power_factor * S ((S (bpvi_j_bls_kmckbc_left_legendre_prefix_power)) * bpvi_c_bls_kmckbc_left_legendre_prefix_power) + (bpvi_factor_bls_kmckbc_left_legendre_prefix_power))) /\ ((((exists bpvi_h_bls_kmckbc_left_legendre_prefix_power_partial. bpvi_h_bls_kmckbc_left_legendre_prefix_power_partial + S (bpvi_partial_bls_kmckbc_left_legendre_prefix_power) = S ((S (bpvi_j_bls_kmckbc_left_legendre_prefix_power)) * bpvi_v_bls_kmckbc_left_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_left_legendre_prefix_power_partial. bpvi_u_bls_kmckbc_left_legendre_prefix_power = bpvi_q_bls_kmckbc_left_legendre_prefix_power_partial * S ((S (bpvi_j_bls_kmckbc_left_legendre_prefix_power)) * bpvi_v_bls_kmckbc_left_legendre_prefix_power) + (bpvi_partial_bls_kmckbc_left_legendre_prefix_power))) /\ ((((exists bpvi_h_bls_kmckbc_left_legendre_prefix_power_successor. bpvi_h_bls_kmckbc_left_legendre_prefix_power_successor + S (bpvi_successor_bls_kmckbc_left_legendre_prefix_power) = S ((S (S bpvi_j_bls_kmckbc_left_legendre_prefix_power)) * bpvi_v_bls_kmckbc_left_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_left_legendre_prefix_power_successor. bpvi_u_bls_kmckbc_left_legendre_prefix_power = bpvi_q_bls_kmckbc_left_legendre_prefix_power_successor * S ((S (S bpvi_j_bls_kmckbc_left_legendre_prefix_power)) * bpvi_v_bls_kmckbc_left_legendre_prefix_power) + (bpvi_successor_bls_kmckbc_left_legendre_prefix_power))) /\ bpvi_successor_bls_kmckbc_left_legendre_prefix_power = bpvi_partial_bls_kmckbc_left_legendre_prefix_power * bpvi_factor_bls_kmckbc_left_legendre_prefix_power)))))))) /\ ((((exists ff_h_bls_kmckbc_left_legendre_prefix_quotient_entry. ff_h_bls_kmckbc_left_legendre_prefix_quotient_entry + S (bls_quotient_kmckbc_left_legendre_prefix) = S ((S (bls_index_kmckbc_left_legendre_prefix)) * bls_scale_kmckbc_left_legendre)) /\ exists ff_q_bls_kmckbc_left_legendre_prefix_quotient_entry. bls_code_kmckbc_left_legendre = ff_q_bls_kmckbc_left_legendre_prefix_quotient_entry * S ((S (bls_index_kmckbc_left_legendre_prefix)) * bls_scale_kmckbc_left_legendre) + (bls_quotient_kmckbc_left_legendre_prefix))) /\ ((a = bls_power_kmckbc_left_legendre_prefix * bls_quotient_kmckbc_left_legendre_prefix + bls_remainder_kmckbc_left_legendre_prefix /\ exists bls_remainder_gap_kmckbc_left_legendre_prefix_division. bls_remainder_gap_kmckbc_left_legendre_prefix_division + S (bls_remainder_kmckbc_left_legendre_prefix) = bls_power_kmckbc_left_legendre_prefix))))) /\ (exists ff_u_bls_kmckbc_left_legendre_sum ff_v_bls_kmckbc_left_legendre_sum. ((((exists ff_h_bls_kmckbc_left_legendre_sum_start. ff_h_bls_kmckbc_left_legendre_sum_start + S (0) = S ((S (0)) * ff_v_bls_kmckbc_left_legendre_sum)) /\ exists ff_q_bls_kmckbc_left_legendre_sum_start. ff_u_bls_kmckbc_left_legendre_sum = ff_q_bls_kmckbc_left_legendre_sum_start * S ((S (0)) * ff_v_bls_kmckbc_left_legendre_sum) + (0))) /\ ((((exists ff_h_bls_kmckbc_left_legendre_sum_terminal. ff_h_bls_kmckbc_left_legendre_sum_terminal + S (L) = S ((S (a)) * ff_v_bls_kmckbc_left_legendre_sum)) /\ exists ff_q_bls_kmckbc_left_legendre_sum_terminal. ff_u_bls_kmckbc_left_legendre_sum = ff_q_bls_kmckbc_left_legendre_sum_terminal * S ((S (a)) * ff_v_bls_kmckbc_left_legendre_sum) + (L))) /\ forall ff_i_bls_kmckbc_left_legendre_sum. (exists ff_lt_bls_kmckbc_left_legendre_sum_bound. ff_lt_bls_kmckbc_left_legendre_sum_bound + S ff_i_bls_kmckbc_left_legendre_sum = a) -> exists ff_a_bls_kmckbc_left_legendre_sum ff_r_bls_kmckbc_left_legendre_sum ff_s_bls_kmckbc_left_legendre_sum. ((((exists ff_h_bls_kmckbc_left_legendre_sum_summand. ff_h_bls_kmckbc_left_legendre_sum_summand + S (ff_a_bls_kmckbc_left_legendre_sum) = S ((S (ff_i_bls_kmckbc_left_legendre_sum)) * bls_scale_kmckbc_left_legendre)) /\ exists ff_q_bls_kmckbc_left_legendre_sum_summand. bls_code_kmckbc_left_legendre = ff_q_bls_kmckbc_left_legendre_sum_summand * S ((S (ff_i_bls_kmckbc_left_legendre_sum)) * bls_scale_kmckbc_left_legendre) + (ff_a_bls_kmckbc_left_legendre_sum))) /\ ((((exists ff_h_bls_kmckbc_left_legendre_sum_partial. ff_h_bls_kmckbc_left_legendre_sum_partial + S (ff_r_bls_kmckbc_left_legendre_sum) = S ((S (ff_i_bls_kmckbc_left_legendre_sum)) * ff_v_bls_kmckbc_left_legendre_sum)) /\ exists ff_q_bls_kmckbc_left_legendre_sum_partial. ff_u_bls_kmckbc_left_legendre_sum = ff_q_bls_kmckbc_left_legendre_sum_partial * S ((S (ff_i_bls_kmckbc_left_legendre_sum)) * ff_v_bls_kmckbc_left_legendre_sum) + (ff_r_bls_kmckbc_left_legendre_sum))) /\ ((((exists ff_h_bls_kmckbc_left_legendre_sum_successor. ff_h_bls_kmckbc_left_legendre_sum_successor + S (ff_s_bls_kmckbc_left_legendre_sum) = S ((S (S ff_i_bls_kmckbc_left_legendre_sum)) * ff_v_bls_kmckbc_left_legendre_sum)) /\ exists ff_q_bls_kmckbc_left_legendre_sum_successor. ff_u_bls_kmckbc_left_legendre_sum = ff_q_bls_kmckbc_left_legendre_sum_successor * S ((S (S ff_i_bls_kmckbc_left_legendre_sum)) * ff_v_bls_kmckbc_left_legendre_sum) + (ff_s_bls_kmckbc_left_legendre_sum))) /\ ff_s_bls_kmckbc_left_legendre_sum = ff_r_bls_kmckbc_left_legendre_sum + ff_a_bls_kmckbc_left_legendre_sum))))))) - 0010
specialize prime_legendre_sum_exists p - 0011
specialize prime_legendre_sum_exists a - 0012
apply prime_legendre_sum_exists - 0013
exact hp - 0014
cases hleft_legendre - 0015
have hright_legendre : ∃ M. LegendreSum(p,b,M)Exact native replay line
have hright_legendre : exists M. exists bls_code_kmckbc_right_legendre bls_scale_kmckbc_right_legendre. ((forall bls_index_kmckbc_right_legendre_prefix. (exists bls_gap_kmckbc_right_legendre_prefix_bound. bls_gap_kmckbc_right_legendre_prefix_bound + S (bls_index_kmckbc_right_legendre_prefix) = (b)) -> exists bls_power_kmckbc_right_legendre_prefix bls_quotient_kmckbc_right_legendre_prefix bls_remainder_kmckbc_right_legendre_prefix. ((exists bpvi_b_bls_kmckbc_right_legendre_prefix_power bpvi_c_bls_kmckbc_right_legendre_prefix_power. ((forall bpvi_i_bls_kmckbc_right_legendre_prefix_power. (exists bpvi_repeat_gap_bls_kmckbc_right_legendre_prefix_power. bpvi_repeat_gap_bls_kmckbc_right_legendre_prefix_power + S bpvi_i_bls_kmckbc_right_legendre_prefix_power = S bls_index_kmckbc_right_legendre_prefix) -> (((exists bpvi_h_bls_kmckbc_right_legendre_prefix_power_repeat. bpvi_h_bls_kmckbc_right_legendre_prefix_power_repeat + S (p) = S ((S (bpvi_i_bls_kmckbc_right_legendre_prefix_power)) * bpvi_c_bls_kmckbc_right_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_right_legendre_prefix_power_repeat. bpvi_b_bls_kmckbc_right_legendre_prefix_power = bpvi_q_bls_kmckbc_right_legendre_prefix_power_repeat * S ((S (bpvi_i_bls_kmckbc_right_legendre_prefix_power)) * bpvi_c_bls_kmckbc_right_legendre_prefix_power) + (p)))) /\ (exists bpvi_u_bls_kmckbc_right_legendre_prefix_power bpvi_v_bls_kmckbc_right_legendre_prefix_power. ((((exists bpvi_h_bls_kmckbc_right_legendre_prefix_power_start. bpvi_h_bls_kmckbc_right_legendre_prefix_power_start + S (1) = S ((S (0)) * bpvi_v_bls_kmckbc_right_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_right_legendre_prefix_power_start. bpvi_u_bls_kmckbc_right_legendre_prefix_power = bpvi_q_bls_kmckbc_right_legendre_prefix_power_start * S ((S (0)) * bpvi_v_bls_kmckbc_right_legendre_prefix_power) + (1))) /\ ((((exists bpvi_h_bls_kmckbc_right_legendre_prefix_power_terminal. bpvi_h_bls_kmckbc_right_legendre_prefix_power_terminal + S (bls_power_kmckbc_right_legendre_prefix) = S ((S (S bls_index_kmckbc_right_legendre_prefix)) * bpvi_v_bls_kmckbc_right_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_right_legendre_prefix_power_terminal. bpvi_u_bls_kmckbc_right_legendre_prefix_power = bpvi_q_bls_kmckbc_right_legendre_prefix_power_terminal * S ((S (S bls_index_kmckbc_right_legendre_prefix)) * bpvi_v_bls_kmckbc_right_legendre_prefix_power) + (bls_power_kmckbc_right_legendre_prefix))) /\ forall bpvi_j_bls_kmckbc_right_legendre_prefix_power. (exists bpvi_product_gap_bls_kmckbc_right_legendre_prefix_power. bpvi_product_gap_bls_kmckbc_right_legendre_prefix_power + S bpvi_j_bls_kmckbc_right_legendre_prefix_power = S bls_index_kmckbc_right_legendre_prefix) -> exists bpvi_factor_bls_kmckbc_right_legendre_prefix_power bpvi_partial_bls_kmckbc_right_legendre_prefix_power bpvi_successor_bls_kmckbc_right_legendre_prefix_power. ((((exists bpvi_h_bls_kmckbc_right_legendre_prefix_power_factor. bpvi_h_bls_kmckbc_right_legendre_prefix_power_factor + S (bpvi_factor_bls_kmckbc_right_legendre_prefix_power) = S ((S (bpvi_j_bls_kmckbc_right_legendre_prefix_power)) * bpvi_c_bls_kmckbc_right_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_right_legendre_prefix_power_factor. bpvi_b_bls_kmckbc_right_legendre_prefix_power = bpvi_q_bls_kmckbc_right_legendre_prefix_power_factor * S ((S (bpvi_j_bls_kmckbc_right_legendre_prefix_power)) * bpvi_c_bls_kmckbc_right_legendre_prefix_power) + (bpvi_factor_bls_kmckbc_right_legendre_prefix_power))) /\ ((((exists bpvi_h_bls_kmckbc_right_legendre_prefix_power_partial. bpvi_h_bls_kmckbc_right_legendre_prefix_power_partial + S (bpvi_partial_bls_kmckbc_right_legendre_prefix_power) = S ((S (bpvi_j_bls_kmckbc_right_legendre_prefix_power)) * bpvi_v_bls_kmckbc_right_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_right_legendre_prefix_power_partial. bpvi_u_bls_kmckbc_right_legendre_prefix_power = bpvi_q_bls_kmckbc_right_legendre_prefix_power_partial * S ((S (bpvi_j_bls_kmckbc_right_legendre_prefix_power)) * bpvi_v_bls_kmckbc_right_legendre_prefix_power) + (bpvi_partial_bls_kmckbc_right_legendre_prefix_power))) /\ ((((exists bpvi_h_bls_kmckbc_right_legendre_prefix_power_successor. bpvi_h_bls_kmckbc_right_legendre_prefix_power_successor + S (bpvi_successor_bls_kmckbc_right_legendre_prefix_power) = S ((S (S bpvi_j_bls_kmckbc_right_legendre_prefix_power)) * bpvi_v_bls_kmckbc_right_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_right_legendre_prefix_power_successor. bpvi_u_bls_kmckbc_right_legendre_prefix_power = bpvi_q_bls_kmckbc_right_legendre_prefix_power_successor * S ((S (S bpvi_j_bls_kmckbc_right_legendre_prefix_power)) * bpvi_v_bls_kmckbc_right_legendre_prefix_power) + (bpvi_successor_bls_kmckbc_right_legendre_prefix_power))) /\ bpvi_successor_bls_kmckbc_right_legendre_prefix_power = bpvi_partial_bls_kmckbc_right_legendre_prefix_power * bpvi_factor_bls_kmckbc_right_legendre_prefix_power)))))))) /\ ((((exists ff_h_bls_kmckbc_right_legendre_prefix_quotient_entry. ff_h_bls_kmckbc_right_legendre_prefix_quotient_entry + S (bls_quotient_kmckbc_right_legendre_prefix) = S ((S (bls_index_kmckbc_right_legendre_prefix)) * bls_scale_kmckbc_right_legendre)) /\ exists ff_q_bls_kmckbc_right_legendre_prefix_quotient_entry. bls_code_kmckbc_right_legendre = ff_q_bls_kmckbc_right_legendre_prefix_quotient_entry * S ((S (bls_index_kmckbc_right_legendre_prefix)) * bls_scale_kmckbc_right_legendre) + (bls_quotient_kmckbc_right_legendre_prefix))) /\ ((b = bls_power_kmckbc_right_legendre_prefix * bls_quotient_kmckbc_right_legendre_prefix + bls_remainder_kmckbc_right_legendre_prefix /\ exists bls_remainder_gap_kmckbc_right_legendre_prefix_division. bls_remainder_gap_kmckbc_right_legendre_prefix_division + S (bls_remainder_kmckbc_right_legendre_prefix) = bls_power_kmckbc_right_legendre_prefix))))) /\ (exists ff_u_bls_kmckbc_right_legendre_sum ff_v_bls_kmckbc_right_legendre_sum. ((((exists ff_h_bls_kmckbc_right_legendre_sum_start. ff_h_bls_kmckbc_right_legendre_sum_start + S (0) = S ((S (0)) * ff_v_bls_kmckbc_right_legendre_sum)) /\ exists ff_q_bls_kmckbc_right_legendre_sum_start. ff_u_bls_kmckbc_right_legendre_sum = ff_q_bls_kmckbc_right_legendre_sum_start * S ((S (0)) * ff_v_bls_kmckbc_right_legendre_sum) + (0))) /\ ((((exists ff_h_bls_kmckbc_right_legendre_sum_terminal. ff_h_bls_kmckbc_right_legendre_sum_terminal + S (M) = S ((S (b)) * ff_v_bls_kmckbc_right_legendre_sum)) /\ exists ff_q_bls_kmckbc_right_legendre_sum_terminal. ff_u_bls_kmckbc_right_legendre_sum = ff_q_bls_kmckbc_right_legendre_sum_terminal * S ((S (b)) * ff_v_bls_kmckbc_right_legendre_sum) + (M))) /\ forall ff_i_bls_kmckbc_right_legendre_sum. (exists ff_lt_bls_kmckbc_right_legendre_sum_bound. ff_lt_bls_kmckbc_right_legendre_sum_bound + S ff_i_bls_kmckbc_right_legendre_sum = b) -> exists ff_a_bls_kmckbc_right_legendre_sum ff_r_bls_kmckbc_right_legendre_sum ff_s_bls_kmckbc_right_legendre_sum. ((((exists ff_h_bls_kmckbc_right_legendre_sum_summand. ff_h_bls_kmckbc_right_legendre_sum_summand + S (ff_a_bls_kmckbc_right_legendre_sum) = S ((S (ff_i_bls_kmckbc_right_legendre_sum)) * bls_scale_kmckbc_right_legendre)) /\ exists ff_q_bls_kmckbc_right_legendre_sum_summand. bls_code_kmckbc_right_legendre = ff_q_bls_kmckbc_right_legendre_sum_summand * S ((S (ff_i_bls_kmckbc_right_legendre_sum)) * bls_scale_kmckbc_right_legendre) + (ff_a_bls_kmckbc_right_legendre_sum))) /\ ((((exists ff_h_bls_kmckbc_right_legendre_sum_partial. ff_h_bls_kmckbc_right_legendre_sum_partial + S (ff_r_bls_kmckbc_right_legendre_sum) = S ((S (ff_i_bls_kmckbc_right_legendre_sum)) * ff_v_bls_kmckbc_right_legendre_sum)) /\ exists ff_q_bls_kmckbc_right_legendre_sum_partial. ff_u_bls_kmckbc_right_legendre_sum = ff_q_bls_kmckbc_right_legendre_sum_partial * S ((S (ff_i_bls_kmckbc_right_legendre_sum)) * ff_v_bls_kmckbc_right_legendre_sum) + (ff_r_bls_kmckbc_right_legendre_sum))) /\ ((((exists ff_h_bls_kmckbc_right_legendre_sum_successor. ff_h_bls_kmckbc_right_legendre_sum_successor + S (ff_s_bls_kmckbc_right_legendre_sum) = S ((S (S ff_i_bls_kmckbc_right_legendre_sum)) * ff_v_bls_kmckbc_right_legendre_sum)) /\ exists ff_q_bls_kmckbc_right_legendre_sum_successor. ff_u_bls_kmckbc_right_legendre_sum = ff_q_bls_kmckbc_right_legendre_sum_successor * S ((S (S ff_i_bls_kmckbc_right_legendre_sum)) * ff_v_bls_kmckbc_right_legendre_sum) + (ff_s_bls_kmckbc_right_legendre_sum))) /\ ff_s_bls_kmckbc_right_legendre_sum = ff_r_bls_kmckbc_right_legendre_sum + ff_a_bls_kmckbc_right_legendre_sum))))))) - 0016
specialize prime_legendre_sum_exists p - 0017
specialize prime_legendre_sum_exists b - 0018
apply prime_legendre_sum_exists - 0019
exact hp - 0020
cases hright_legendre - 0021
have htotal_legendre : ∃ T. LegendreSum(p,a + b,T)Exact native replay line
have htotal_legendre : exists T. exists bls_code_kmckbc_total_legendre bls_scale_kmckbc_total_legendre. ((forall bls_index_kmckbc_total_legendre_prefix. (exists bls_gap_kmckbc_total_legendre_prefix_bound. bls_gap_kmckbc_total_legendre_prefix_bound + S (bls_index_kmckbc_total_legendre_prefix) = ((a + b))) -> exists bls_power_kmckbc_total_legendre_prefix bls_quotient_kmckbc_total_legendre_prefix bls_remainder_kmckbc_total_legendre_prefix. ((exists bpvi_b_bls_kmckbc_total_legendre_prefix_power bpvi_c_bls_kmckbc_total_legendre_prefix_power. ((forall bpvi_i_bls_kmckbc_total_legendre_prefix_power. (exists bpvi_repeat_gap_bls_kmckbc_total_legendre_prefix_power. bpvi_repeat_gap_bls_kmckbc_total_legendre_prefix_power + S bpvi_i_bls_kmckbc_total_legendre_prefix_power = S bls_index_kmckbc_total_legendre_prefix) -> (((exists bpvi_h_bls_kmckbc_total_legendre_prefix_power_repeat. bpvi_h_bls_kmckbc_total_legendre_prefix_power_repeat + S (p) = S ((S (bpvi_i_bls_kmckbc_total_legendre_prefix_power)) * bpvi_c_bls_kmckbc_total_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_total_legendre_prefix_power_repeat. bpvi_b_bls_kmckbc_total_legendre_prefix_power = bpvi_q_bls_kmckbc_total_legendre_prefix_power_repeat * S ((S (bpvi_i_bls_kmckbc_total_legendre_prefix_power)) * bpvi_c_bls_kmckbc_total_legendre_prefix_power) + (p)))) /\ (exists bpvi_u_bls_kmckbc_total_legendre_prefix_power bpvi_v_bls_kmckbc_total_legendre_prefix_power. ((((exists bpvi_h_bls_kmckbc_total_legendre_prefix_power_start. bpvi_h_bls_kmckbc_total_legendre_prefix_power_start + S (1) = S ((S (0)) * bpvi_v_bls_kmckbc_total_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_total_legendre_prefix_power_start. bpvi_u_bls_kmckbc_total_legendre_prefix_power = bpvi_q_bls_kmckbc_total_legendre_prefix_power_start * S ((S (0)) * bpvi_v_bls_kmckbc_total_legendre_prefix_power) + (1))) /\ ((((exists bpvi_h_bls_kmckbc_total_legendre_prefix_power_terminal. bpvi_h_bls_kmckbc_total_legendre_prefix_power_terminal + S (bls_power_kmckbc_total_legendre_prefix) = S ((S (S bls_index_kmckbc_total_legendre_prefix)) * bpvi_v_bls_kmckbc_total_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_total_legendre_prefix_power_terminal. bpvi_u_bls_kmckbc_total_legendre_prefix_power = bpvi_q_bls_kmckbc_total_legendre_prefix_power_terminal * S ((S (S bls_index_kmckbc_total_legendre_prefix)) * bpvi_v_bls_kmckbc_total_legendre_prefix_power) + (bls_power_kmckbc_total_legendre_prefix))) /\ forall bpvi_j_bls_kmckbc_total_legendre_prefix_power. (exists bpvi_product_gap_bls_kmckbc_total_legendre_prefix_power. bpvi_product_gap_bls_kmckbc_total_legendre_prefix_power + S bpvi_j_bls_kmckbc_total_legendre_prefix_power = S bls_index_kmckbc_total_legendre_prefix) -> exists bpvi_factor_bls_kmckbc_total_legendre_prefix_power bpvi_partial_bls_kmckbc_total_legendre_prefix_power bpvi_successor_bls_kmckbc_total_legendre_prefix_power. ((((exists bpvi_h_bls_kmckbc_total_legendre_prefix_power_factor. bpvi_h_bls_kmckbc_total_legendre_prefix_power_factor + S (bpvi_factor_bls_kmckbc_total_legendre_prefix_power) = S ((S (bpvi_j_bls_kmckbc_total_legendre_prefix_power)) * bpvi_c_bls_kmckbc_total_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_total_legendre_prefix_power_factor. bpvi_b_bls_kmckbc_total_legendre_prefix_power = bpvi_q_bls_kmckbc_total_legendre_prefix_power_factor * S ((S (bpvi_j_bls_kmckbc_total_legendre_prefix_power)) * bpvi_c_bls_kmckbc_total_legendre_prefix_power) + (bpvi_factor_bls_kmckbc_total_legendre_prefix_power))) /\ ((((exists bpvi_h_bls_kmckbc_total_legendre_prefix_power_partial. bpvi_h_bls_kmckbc_total_legendre_prefix_power_partial + S (bpvi_partial_bls_kmckbc_total_legendre_prefix_power) = S ((S (bpvi_j_bls_kmckbc_total_legendre_prefix_power)) * bpvi_v_bls_kmckbc_total_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_total_legendre_prefix_power_partial. bpvi_u_bls_kmckbc_total_legendre_prefix_power = bpvi_q_bls_kmckbc_total_legendre_prefix_power_partial * S ((S (bpvi_j_bls_kmckbc_total_legendre_prefix_power)) * bpvi_v_bls_kmckbc_total_legendre_prefix_power) + (bpvi_partial_bls_kmckbc_total_legendre_prefix_power))) /\ ((((exists bpvi_h_bls_kmckbc_total_legendre_prefix_power_successor. bpvi_h_bls_kmckbc_total_legendre_prefix_power_successor + S (bpvi_successor_bls_kmckbc_total_legendre_prefix_power) = S ((S (S bpvi_j_bls_kmckbc_total_legendre_prefix_power)) * bpvi_v_bls_kmckbc_total_legendre_prefix_power)) /\ exists bpvi_q_bls_kmckbc_total_legendre_prefix_power_successor. bpvi_u_bls_kmckbc_total_legendre_prefix_power = bpvi_q_bls_kmckbc_total_legendre_prefix_power_successor * S ((S (S bpvi_j_bls_kmckbc_total_legendre_prefix_power)) * bpvi_v_bls_kmckbc_total_legendre_prefix_power) + (bpvi_successor_bls_kmckbc_total_legendre_prefix_power))) /\ bpvi_successor_bls_kmckbc_total_legendre_prefix_power = bpvi_partial_bls_kmckbc_total_legendre_prefix_power * bpvi_factor_bls_kmckbc_total_legendre_prefix_power)))))))) /\ ((((exists ff_h_bls_kmckbc_total_legendre_prefix_quotient_entry. ff_h_bls_kmckbc_total_legendre_prefix_quotient_entry + S (bls_quotient_kmckbc_total_legendre_prefix) = S ((S (bls_index_kmckbc_total_legendre_prefix)) * bls_scale_kmckbc_total_legendre)) /\ exists ff_q_bls_kmckbc_total_legendre_prefix_quotient_entry. bls_code_kmckbc_total_legendre = ff_q_bls_kmckbc_total_legendre_prefix_quotient_entry * S ((S (bls_index_kmckbc_total_legendre_prefix)) * bls_scale_kmckbc_total_legendre) + (bls_quotient_kmckbc_total_legendre_prefix))) /\ (((a + b) = bls_power_kmckbc_total_legendre_prefix * bls_quotient_kmckbc_total_legendre_prefix + bls_remainder_kmckbc_total_legendre_prefix /\ exists bls_remainder_gap_kmckbc_total_legendre_prefix_division. bls_remainder_gap_kmckbc_total_legendre_prefix_division + S (bls_remainder_kmckbc_total_legendre_prefix) = bls_power_kmckbc_total_legendre_prefix))))) /\ (exists ff_u_bls_kmckbc_total_legendre_sum ff_v_bls_kmckbc_total_legendre_sum. ((((exists ff_h_bls_kmckbc_total_legendre_sum_start. ff_h_bls_kmckbc_total_legendre_sum_start + S (0) = S ((S (0)) * ff_v_bls_kmckbc_total_legendre_sum)) /\ exists ff_q_bls_kmckbc_total_legendre_sum_start. ff_u_bls_kmckbc_total_legendre_sum = ff_q_bls_kmckbc_total_legendre_sum_start * S ((S (0)) * ff_v_bls_kmckbc_total_legendre_sum) + (0))) /\ ((((exists ff_h_bls_kmckbc_total_legendre_sum_terminal. ff_h_bls_kmckbc_total_legendre_sum_terminal + S (T) = S ((S ((a + b))) * ff_v_bls_kmckbc_total_legendre_sum)) /\ exists ff_q_bls_kmckbc_total_legendre_sum_terminal. ff_u_bls_kmckbc_total_legendre_sum = ff_q_bls_kmckbc_total_legendre_sum_terminal * S ((S ((a + b))) * ff_v_bls_kmckbc_total_legendre_sum) + (T))) /\ forall ff_i_bls_kmckbc_total_legendre_sum. (exists ff_lt_bls_kmckbc_total_legendre_sum_bound. ff_lt_bls_kmckbc_total_legendre_sum_bound + S ff_i_bls_kmckbc_total_legendre_sum = (a + b)) -> exists ff_a_bls_kmckbc_total_legendre_sum ff_r_bls_kmckbc_total_legendre_sum ff_s_bls_kmckbc_total_legendre_sum. ((((exists ff_h_bls_kmckbc_total_legendre_sum_summand. ff_h_bls_kmckbc_total_legendre_sum_summand + S (ff_a_bls_kmckbc_total_legendre_sum) = S ((S (ff_i_bls_kmckbc_total_legendre_sum)) * bls_scale_kmckbc_total_legendre)) /\ exists ff_q_bls_kmckbc_total_legendre_sum_summand. bls_code_kmckbc_total_legendre = ff_q_bls_kmckbc_total_legendre_sum_summand * S ((S (ff_i_bls_kmckbc_total_legendre_sum)) * bls_scale_kmckbc_total_legendre) + (ff_a_bls_kmckbc_total_legendre_sum))) /\ ((((exists ff_h_bls_kmckbc_total_legendre_sum_partial. ff_h_bls_kmckbc_total_legendre_sum_partial + S (ff_r_bls_kmckbc_total_legendre_sum) = S ((S (ff_i_bls_kmckbc_total_legendre_sum)) * ff_v_bls_kmckbc_total_legendre_sum)) /\ exists ff_q_bls_kmckbc_total_legendre_sum_partial. ff_u_bls_kmckbc_total_legendre_sum = ff_q_bls_kmckbc_total_legendre_sum_partial * S ((S (ff_i_bls_kmckbc_total_legendre_sum)) * ff_v_bls_kmckbc_total_legendre_sum) + (ff_r_bls_kmckbc_total_legendre_sum))) /\ ((((exists ff_h_bls_kmckbc_total_legendre_sum_successor. ff_h_bls_kmckbc_total_legendre_sum_successor + S (ff_s_bls_kmckbc_total_legendre_sum) = S ((S (S ff_i_bls_kmckbc_total_legendre_sum)) * ff_v_bls_kmckbc_total_legendre_sum)) /\ exists ff_q_bls_kmckbc_total_legendre_sum_successor. ff_u_bls_kmckbc_total_legendre_sum = ff_q_bls_kmckbc_total_legendre_sum_successor * S ((S (S ff_i_bls_kmckbc_total_legendre_sum)) * ff_v_bls_kmckbc_total_legendre_sum) + (ff_s_bls_kmckbc_total_legendre_sum))) /\ ff_s_bls_kmckbc_total_legendre_sum = ff_r_bls_kmckbc_total_legendre_sum + ff_a_bls_kmckbc_total_legendre_sum))))))) - 0022
specialize prime_legendre_sum_exists p - 0023
specialize prime_legendre_sum_exists (a + b) - 0024
apply prime_legendre_sum_exists - 0025
exact hp - 0026
cases htotal_legendre - 0027
have hvaluation_balance : x2 = (x + x1) + v - 0028
specialize binomial_legendre_valuation_balance p - 0029
specialize binomial_legendre_valuation_balance a - 0030
specialize binomial_legendre_valuation_balance b - 0031
specialize binomial_legendre_valuation_balance C - 0032
specialize binomial_legendre_valuation_balance v - 0033
specialize binomial_legendre_valuation_balance x2 - 0034
specialize binomial_legendre_valuation_balance x - 0035
specialize binomial_legendre_valuation_balance x1 - 0036
apply binomial_legendre_valuation_balance - 0037
exact hp - 0038
exact hchoose - 0039
exact hvaluation - 0040
exact htotal_legendre_witness - 0041
exact hleft_legendre_witness - 0042
exact hright_legendre_witness - 0043
have hleft_extended : ∃ lb. ∃ lc. PowerQuotPrefix(p,a,lb,lc,a + b) ∧ Sum(lb,lc,a + b,x)Exact native replay line
have hleft_extended : exists lb lc. (forall bls_index_kmckbc_left_extended_prefix. (exists bls_gap_kmckbc_left_extended_prefix_bound. bls_gap_kmckbc_left_extended_prefix_bound + S (bls_index_kmckbc_left_extended_prefix) = (a + b)) -> exists bls_power_kmckbc_left_extended_prefix bls_quotient_kmckbc_left_extended_prefix bls_remainder_kmckbc_left_extended_prefix. ((exists bpvi_b_bls_kmckbc_left_extended_prefix_power bpvi_c_bls_kmckbc_left_extended_prefix_power. ((forall bpvi_i_bls_kmckbc_left_extended_prefix_power. (exists bpvi_repeat_gap_bls_kmckbc_left_extended_prefix_power. bpvi_repeat_gap_bls_kmckbc_left_extended_prefix_power + S bpvi_i_bls_kmckbc_left_extended_prefix_power = S bls_index_kmckbc_left_extended_prefix) -> (((exists bpvi_h_bls_kmckbc_left_extended_prefix_power_repeat. bpvi_h_bls_kmckbc_left_extended_prefix_power_repeat + S (p) = S ((S (bpvi_i_bls_kmckbc_left_extended_prefix_power)) * bpvi_c_bls_kmckbc_left_extended_prefix_power)) /\ exists bpvi_q_bls_kmckbc_left_extended_prefix_power_repeat. bpvi_b_bls_kmckbc_left_extended_prefix_power = bpvi_q_bls_kmckbc_left_extended_prefix_power_repeat * S ((S (bpvi_i_bls_kmckbc_left_extended_prefix_power)) * bpvi_c_bls_kmckbc_left_extended_prefix_power) + (p)))) /\ (exists bpvi_u_bls_kmckbc_left_extended_prefix_power bpvi_v_bls_kmckbc_left_extended_prefix_power. ((((exists bpvi_h_bls_kmckbc_left_extended_prefix_power_start. bpvi_h_bls_kmckbc_left_extended_prefix_power_start + S (1) = S ((S (0)) * bpvi_v_bls_kmckbc_left_extended_prefix_power)) /\ exists bpvi_q_bls_kmckbc_left_extended_prefix_power_start. bpvi_u_bls_kmckbc_left_extended_prefix_power = bpvi_q_bls_kmckbc_left_extended_prefix_power_start * S ((S (0)) * bpvi_v_bls_kmckbc_left_extended_prefix_power) + (1))) /\ ((((exists bpvi_h_bls_kmckbc_left_extended_prefix_power_terminal. bpvi_h_bls_kmckbc_left_extended_prefix_power_terminal + S (bls_power_kmckbc_left_extended_prefix) = S ((S (S bls_index_kmckbc_left_extended_prefix)) * bpvi_v_bls_kmckbc_left_extended_prefix_power)) /\ exists bpvi_q_bls_kmckbc_left_extended_prefix_power_terminal. bpvi_u_bls_kmckbc_left_extended_prefix_power = bpvi_q_bls_kmckbc_left_extended_prefix_power_terminal * S ((S (S bls_index_kmckbc_left_extended_prefix)) * bpvi_v_bls_kmckbc_left_extended_prefix_power) + (bls_power_kmckbc_left_extended_prefix))) /\ forall bpvi_j_bls_kmckbc_left_extended_prefix_power. (exists bpvi_product_gap_bls_kmckbc_left_extended_prefix_power. bpvi_product_gap_bls_kmckbc_left_extended_prefix_power + S bpvi_j_bls_kmckbc_left_extended_prefix_power = S bls_index_kmckbc_left_extended_prefix) -> exists bpvi_factor_bls_kmckbc_left_extended_prefix_power bpvi_partial_bls_kmckbc_left_extended_prefix_power bpvi_successor_bls_kmckbc_left_extended_prefix_power. ((((exists bpvi_h_bls_kmckbc_left_extended_prefix_power_factor. bpvi_h_bls_kmckbc_left_extended_prefix_power_factor + S (bpvi_factor_bls_kmckbc_left_extended_prefix_power) = S ((S (bpvi_j_bls_kmckbc_left_extended_prefix_power)) * bpvi_c_bls_kmckbc_left_extended_prefix_power)) /\ exists bpvi_q_bls_kmckbc_left_extended_prefix_power_factor. bpvi_b_bls_kmckbc_left_extended_prefix_power = bpvi_q_bls_kmckbc_left_extended_prefix_power_factor * S ((S (bpvi_j_bls_kmckbc_left_extended_prefix_power)) * bpvi_c_bls_kmckbc_left_extended_prefix_power) + (bpvi_factor_bls_kmckbc_left_extended_prefix_power))) /\ ((((exists bpvi_h_bls_kmckbc_left_extended_prefix_power_partial. bpvi_h_bls_kmckbc_left_extended_prefix_power_partial + S (bpvi_partial_bls_kmckbc_left_extended_prefix_power) = S ((S (bpvi_j_bls_kmckbc_left_extended_prefix_power)) * bpvi_v_bls_kmckbc_left_extended_prefix_power)) /\ exists bpvi_q_bls_kmckbc_left_extended_prefix_power_partial. bpvi_u_bls_kmckbc_left_extended_prefix_power = bpvi_q_bls_kmckbc_left_extended_prefix_power_partial * S ((S (bpvi_j_bls_kmckbc_left_extended_prefix_power)) * bpvi_v_bls_kmckbc_left_extended_prefix_power) + (bpvi_partial_bls_kmckbc_left_extended_prefix_power))) /\ ((((exists bpvi_h_bls_kmckbc_left_extended_prefix_power_successor. bpvi_h_bls_kmckbc_left_extended_prefix_power_successor + S (bpvi_successor_bls_kmckbc_left_extended_prefix_power) = S ((S (S bpvi_j_bls_kmckbc_left_extended_prefix_power)) * bpvi_v_bls_kmckbc_left_extended_prefix_power)) /\ exists bpvi_q_bls_kmckbc_left_extended_prefix_power_successor. bpvi_u_bls_kmckbc_left_extended_prefix_power = bpvi_q_bls_kmckbc_left_extended_prefix_power_successor * S ((S (S bpvi_j_bls_kmckbc_left_extended_prefix_power)) * bpvi_v_bls_kmckbc_left_extended_prefix_power) + (bpvi_successor_bls_kmckbc_left_extended_prefix_power))) /\ bpvi_successor_bls_kmckbc_left_extended_prefix_power = bpvi_partial_bls_kmckbc_left_extended_prefix_power * bpvi_factor_bls_kmckbc_left_extended_prefix_power)))))))) /\ ((((exists ff_h_bls_kmckbc_left_extended_prefix_quotient_entry. ff_h_bls_kmckbc_left_extended_prefix_quotient_entry + S (bls_quotient_kmckbc_left_extended_prefix) = S ((S (bls_index_kmckbc_left_extended_prefix)) * lc)) /\ exists ff_q_bls_kmckbc_left_extended_prefix_quotient_entry. lb = ff_q_bls_kmckbc_left_extended_prefix_quotient_entry * S ((S (bls_index_kmckbc_left_extended_prefix)) * lc) + (bls_quotient_kmckbc_left_extended_prefix))) /\ ((a = bls_power_kmckbc_left_extended_prefix * bls_quotient_kmckbc_left_extended_prefix + bls_remainder_kmckbc_left_extended_prefix /\ exists bls_remainder_gap_kmckbc_left_extended_prefix_division. bls_remainder_gap_kmckbc_left_extended_prefix_division + S (bls_remainder_kmckbc_left_extended_prefix) = bls_power_kmckbc_left_extended_prefix))))) /\ (exists fs_u_kmckbc_left_extended_sum fs_v_kmckbc_left_extended_sum. ((((exists fs_h_kmckbc_left_extended_sum_body_start. fs_h_kmckbc_left_extended_sum_body_start + S (0) = S ((S (0)) * fs_v_kmckbc_left_extended_sum)) /\ exists fs_q_kmckbc_left_extended_sum_body_start. fs_u_kmckbc_left_extended_sum = fs_q_kmckbc_left_extended_sum_body_start * S ((S (0)) * fs_v_kmckbc_left_extended_sum) + (0))) /\ ((((exists fs_h_kmckbc_left_extended_sum_body_terminal. fs_h_kmckbc_left_extended_sum_body_terminal + S (x) = S ((S (a + b)) * fs_v_kmckbc_left_extended_sum)) /\ exists fs_q_kmckbc_left_extended_sum_body_terminal. fs_u_kmckbc_left_extended_sum = fs_q_kmckbc_left_extended_sum_body_terminal * S ((S (a + b)) * fs_v_kmckbc_left_extended_sum) + (x))) /\ forall fs_i_kmckbc_left_extended_sum_body_steps. (exists fs_lt_kmckbc_left_extended_sum_body_steps_bound. fs_lt_kmckbc_left_extended_sum_body_steps_bound + S fs_i_kmckbc_left_extended_sum_body_steps = a + b) -> exists fs_a_kmckbc_left_extended_sum_body_steps fs_r_kmckbc_left_extended_sum_body_steps fs_s_kmckbc_left_extended_sum_body_steps. ((((exists fs_h_kmckbc_left_extended_sum_body_steps_summand. fs_h_kmckbc_left_extended_sum_body_steps_summand + S (fs_a_kmckbc_left_extended_sum_body_steps) = S ((S (fs_i_kmckbc_left_extended_sum_body_steps)) * lc)) /\ exists fs_q_kmckbc_left_extended_sum_body_steps_summand. lb = fs_q_kmckbc_left_extended_sum_body_steps_summand * S ((S (fs_i_kmckbc_left_extended_sum_body_steps)) * lc) + (fs_a_kmckbc_left_extended_sum_body_steps))) /\ ((((exists fs_h_kmckbc_left_extended_sum_body_steps_partial. fs_h_kmckbc_left_extended_sum_body_steps_partial + S (fs_r_kmckbc_left_extended_sum_body_steps) = S ((S (fs_i_kmckbc_left_extended_sum_body_steps)) * fs_v_kmckbc_left_extended_sum)) /\ exists fs_q_kmckbc_left_extended_sum_body_steps_partial. fs_u_kmckbc_left_extended_sum = fs_q_kmckbc_left_extended_sum_body_steps_partial * S ((S (fs_i_kmckbc_left_extended_sum_body_steps)) * fs_v_kmckbc_left_extended_sum) + (fs_r_kmckbc_left_extended_sum_body_steps))) /\ ((((exists fs_h_kmckbc_left_extended_sum_body_steps_successor. fs_h_kmckbc_left_extended_sum_body_steps_successor + S (fs_s_kmckbc_left_extended_sum_body_steps) = S ((S (S fs_i_kmckbc_left_extended_sum_body_steps)) * fs_v_kmckbc_left_extended_sum)) /\ exists fs_q_kmckbc_left_extended_sum_body_steps_successor. fs_u_kmckbc_left_extended_sum = fs_q_kmckbc_left_extended_sum_body_steps_successor * S ((S (S fs_i_kmckbc_left_extended_sum_body_steps)) * fs_v_kmckbc_left_extended_sum) + (fs_s_kmckbc_left_extended_sum_body_steps))) /\ fs_s_kmckbc_left_extended_sum_body_steps = fs_r_kmckbc_left_extended_sum_body_steps + fs_a_kmckbc_left_extended_sum_body_steps)))))) - 0044
specialize legendre_sum_extended_prefix_exists p - 0045
specialize legendre_sum_extended_prefix_exists a - 0046
specialize legendre_sum_extended_prefix_exists x - 0047
specialize legendre_sum_extended_prefix_exists b - 0048
apply legendre_sum_extended_prefix_exists - 0049
exact hp - 0050
exact hleft_legendre_witness - 0051
cases hleft_extended - 0052
cases hleft_extended_witness - 0053
cases hleft_extended_witness_witness - 0054
have hright_extended : ∃ rb. ∃ rc. PowerQuotPrefix(p,b,rb,rc,b + a) ∧ Sum(rb,rc,b + a,x1)Exact native replay line
have hright_extended : exists rb rc. (forall bls_index_kmckbc_right_extended_prefix. (exists bls_gap_kmckbc_right_extended_prefix_bound. bls_gap_kmckbc_right_extended_prefix_bound + S (bls_index_kmckbc_right_extended_prefix) = (b + a)) -> exists bls_power_kmckbc_right_extended_prefix bls_quotient_kmckbc_right_extended_prefix bls_remainder_kmckbc_right_extended_prefix. ((exists bpvi_b_bls_kmckbc_right_extended_prefix_power bpvi_c_bls_kmckbc_right_extended_prefix_power. ((forall bpvi_i_bls_kmckbc_right_extended_prefix_power. (exists bpvi_repeat_gap_bls_kmckbc_right_extended_prefix_power. bpvi_repeat_gap_bls_kmckbc_right_extended_prefix_power + S bpvi_i_bls_kmckbc_right_extended_prefix_power = S bls_index_kmckbc_right_extended_prefix) -> (((exists bpvi_h_bls_kmckbc_right_extended_prefix_power_repeat. bpvi_h_bls_kmckbc_right_extended_prefix_power_repeat + S (p) = S ((S (bpvi_i_bls_kmckbc_right_extended_prefix_power)) * bpvi_c_bls_kmckbc_right_extended_prefix_power)) /\ exists bpvi_q_bls_kmckbc_right_extended_prefix_power_repeat. bpvi_b_bls_kmckbc_right_extended_prefix_power = bpvi_q_bls_kmckbc_right_extended_prefix_power_repeat * S ((S (bpvi_i_bls_kmckbc_right_extended_prefix_power)) * bpvi_c_bls_kmckbc_right_extended_prefix_power) + (p)))) /\ (exists bpvi_u_bls_kmckbc_right_extended_prefix_power bpvi_v_bls_kmckbc_right_extended_prefix_power. ((((exists bpvi_h_bls_kmckbc_right_extended_prefix_power_start. bpvi_h_bls_kmckbc_right_extended_prefix_power_start + S (1) = S ((S (0)) * bpvi_v_bls_kmckbc_right_extended_prefix_power)) /\ exists bpvi_q_bls_kmckbc_right_extended_prefix_power_start. bpvi_u_bls_kmckbc_right_extended_prefix_power = bpvi_q_bls_kmckbc_right_extended_prefix_power_start * S ((S (0)) * bpvi_v_bls_kmckbc_right_extended_prefix_power) + (1))) /\ ((((exists bpvi_h_bls_kmckbc_right_extended_prefix_power_terminal. bpvi_h_bls_kmckbc_right_extended_prefix_power_terminal + S (bls_power_kmckbc_right_extended_prefix) = S ((S (S bls_index_kmckbc_right_extended_prefix)) * bpvi_v_bls_kmckbc_right_extended_prefix_power)) /\ exists bpvi_q_bls_kmckbc_right_extended_prefix_power_terminal. bpvi_u_bls_kmckbc_right_extended_prefix_power = bpvi_q_bls_kmckbc_right_extended_prefix_power_terminal * S ((S (S bls_index_kmckbc_right_extended_prefix)) * bpvi_v_bls_kmckbc_right_extended_prefix_power) + (bls_power_kmckbc_right_extended_prefix))) /\ forall bpvi_j_bls_kmckbc_right_extended_prefix_power. (exists bpvi_product_gap_bls_kmckbc_right_extended_prefix_power. bpvi_product_gap_bls_kmckbc_right_extended_prefix_power + S bpvi_j_bls_kmckbc_right_extended_prefix_power = S bls_index_kmckbc_right_extended_prefix) -> exists bpvi_factor_bls_kmckbc_right_extended_prefix_power bpvi_partial_bls_kmckbc_right_extended_prefix_power bpvi_successor_bls_kmckbc_right_extended_prefix_power. ((((exists bpvi_h_bls_kmckbc_right_extended_prefix_power_factor. bpvi_h_bls_kmckbc_right_extended_prefix_power_factor + S (bpvi_factor_bls_kmckbc_right_extended_prefix_power) = S ((S (bpvi_j_bls_kmckbc_right_extended_prefix_power)) * bpvi_c_bls_kmckbc_right_extended_prefix_power)) /\ exists bpvi_q_bls_kmckbc_right_extended_prefix_power_factor. bpvi_b_bls_kmckbc_right_extended_prefix_power = bpvi_q_bls_kmckbc_right_extended_prefix_power_factor * S ((S (bpvi_j_bls_kmckbc_right_extended_prefix_power)) * bpvi_c_bls_kmckbc_right_extended_prefix_power) + (bpvi_factor_bls_kmckbc_right_extended_prefix_power))) /\ ((((exists bpvi_h_bls_kmckbc_right_extended_prefix_power_partial. bpvi_h_bls_kmckbc_right_extended_prefix_power_partial + S (bpvi_partial_bls_kmckbc_right_extended_prefix_power) = S ((S (bpvi_j_bls_kmckbc_right_extended_prefix_power)) * bpvi_v_bls_kmckbc_right_extended_prefix_power)) /\ exists bpvi_q_bls_kmckbc_right_extended_prefix_power_partial. bpvi_u_bls_kmckbc_right_extended_prefix_power = bpvi_q_bls_kmckbc_right_extended_prefix_power_partial * S ((S (bpvi_j_bls_kmckbc_right_extended_prefix_power)) * bpvi_v_bls_kmckbc_right_extended_prefix_power) + (bpvi_partial_bls_kmckbc_right_extended_prefix_power))) /\ ((((exists bpvi_h_bls_kmckbc_right_extended_prefix_power_successor. bpvi_h_bls_kmckbc_right_extended_prefix_power_successor + S (bpvi_successor_bls_kmckbc_right_extended_prefix_power) = S ((S (S bpvi_j_bls_kmckbc_right_extended_prefix_power)) * bpvi_v_bls_kmckbc_right_extended_prefix_power)) /\ exists bpvi_q_bls_kmckbc_right_extended_prefix_power_successor. bpvi_u_bls_kmckbc_right_extended_prefix_power = bpvi_q_bls_kmckbc_right_extended_prefix_power_successor * S ((S (S bpvi_j_bls_kmckbc_right_extended_prefix_power)) * bpvi_v_bls_kmckbc_right_extended_prefix_power) + (bpvi_successor_bls_kmckbc_right_extended_prefix_power))) /\ bpvi_successor_bls_kmckbc_right_extended_prefix_power = bpvi_partial_bls_kmckbc_right_extended_prefix_power * bpvi_factor_bls_kmckbc_right_extended_prefix_power)))))))) /\ ((((exists ff_h_bls_kmckbc_right_extended_prefix_quotient_entry. ff_h_bls_kmckbc_right_extended_prefix_quotient_entry + S (bls_quotient_kmckbc_right_extended_prefix) = S ((S (bls_index_kmckbc_right_extended_prefix)) * rc)) /\ exists ff_q_bls_kmckbc_right_extended_prefix_quotient_entry. rb = ff_q_bls_kmckbc_right_extended_prefix_quotient_entry * S ((S (bls_index_kmckbc_right_extended_prefix)) * rc) + (bls_quotient_kmckbc_right_extended_prefix))) /\ ((b = bls_power_kmckbc_right_extended_prefix * bls_quotient_kmckbc_right_extended_prefix + bls_remainder_kmckbc_right_extended_prefix /\ exists bls_remainder_gap_kmckbc_right_extended_prefix_division. bls_remainder_gap_kmckbc_right_extended_prefix_division + S (bls_remainder_kmckbc_right_extended_prefix) = bls_power_kmckbc_right_extended_prefix))))) /\ (exists fs_u_kmckbc_right_extended_sum fs_v_kmckbc_right_extended_sum. ((((exists fs_h_kmckbc_right_extended_sum_body_start. fs_h_kmckbc_right_extended_sum_body_start + S (0) = S ((S (0)) * fs_v_kmckbc_right_extended_sum)) /\ exists fs_q_kmckbc_right_extended_sum_body_start. fs_u_kmckbc_right_extended_sum = fs_q_kmckbc_right_extended_sum_body_start * S ((S (0)) * fs_v_kmckbc_right_extended_sum) + (0))) /\ ((((exists fs_h_kmckbc_right_extended_sum_body_terminal. fs_h_kmckbc_right_extended_sum_body_terminal + S (x1) = S ((S (b + a)) * fs_v_kmckbc_right_extended_sum)) /\ exists fs_q_kmckbc_right_extended_sum_body_terminal. fs_u_kmckbc_right_extended_sum = fs_q_kmckbc_right_extended_sum_body_terminal * S ((S (b + a)) * fs_v_kmckbc_right_extended_sum) + (x1))) /\ forall fs_i_kmckbc_right_extended_sum_body_steps. (exists fs_lt_kmckbc_right_extended_sum_body_steps_bound. fs_lt_kmckbc_right_extended_sum_body_steps_bound + S fs_i_kmckbc_right_extended_sum_body_steps = b + a) -> exists fs_a_kmckbc_right_extended_sum_body_steps fs_r_kmckbc_right_extended_sum_body_steps fs_s_kmckbc_right_extended_sum_body_steps. ((((exists fs_h_kmckbc_right_extended_sum_body_steps_summand. fs_h_kmckbc_right_extended_sum_body_steps_summand + S (fs_a_kmckbc_right_extended_sum_body_steps) = S ((S (fs_i_kmckbc_right_extended_sum_body_steps)) * rc)) /\ exists fs_q_kmckbc_right_extended_sum_body_steps_summand. rb = fs_q_kmckbc_right_extended_sum_body_steps_summand * S ((S (fs_i_kmckbc_right_extended_sum_body_steps)) * rc) + (fs_a_kmckbc_right_extended_sum_body_steps))) /\ ((((exists fs_h_kmckbc_right_extended_sum_body_steps_partial. fs_h_kmckbc_right_extended_sum_body_steps_partial + S (fs_r_kmckbc_right_extended_sum_body_steps) = S ((S (fs_i_kmckbc_right_extended_sum_body_steps)) * fs_v_kmckbc_right_extended_sum)) /\ exists fs_q_kmckbc_right_extended_sum_body_steps_partial. fs_u_kmckbc_right_extended_sum = fs_q_kmckbc_right_extended_sum_body_steps_partial * S ((S (fs_i_kmckbc_right_extended_sum_body_steps)) * fs_v_kmckbc_right_extended_sum) + (fs_r_kmckbc_right_extended_sum_body_steps))) /\ ((((exists fs_h_kmckbc_right_extended_sum_body_steps_successor. fs_h_kmckbc_right_extended_sum_body_steps_successor + S (fs_s_kmckbc_right_extended_sum_body_steps) = S ((S (S fs_i_kmckbc_right_extended_sum_body_steps)) * fs_v_kmckbc_right_extended_sum)) /\ exists fs_q_kmckbc_right_extended_sum_body_steps_successor. fs_u_kmckbc_right_extended_sum = fs_q_kmckbc_right_extended_sum_body_steps_successor * S ((S (S fs_i_kmckbc_right_extended_sum_body_steps)) * fs_v_kmckbc_right_extended_sum) + (fs_s_kmckbc_right_extended_sum_body_steps))) /\ fs_s_kmckbc_right_extended_sum_body_steps = fs_r_kmckbc_right_extended_sum_body_steps + fs_a_kmckbc_right_extended_sum_body_steps)))))) - 0055
specialize legendre_sum_extended_prefix_exists p - 0056
specialize legendre_sum_extended_prefix_exists b - 0057
specialize legendre_sum_extended_prefix_exists x1 - 0058
specialize legendre_sum_extended_prefix_exists a - 0059
apply legendre_sum_extended_prefix_exists - 0060
exact hp - 0061
exact hright_legendre_witness - 0062
cases hright_extended - 0063
cases hright_extended_witness - 0064
cases hright_extended_witness_witness - 0065
have hlength : b + a = a + b - 0066
apply add_comm - 0067
rewrite hlength at hright_extended_witness_witness_left - 0068
rewrite hlength at hright_extended_witness_witness_right - 0069
rewrite hlength at hright_extended_witness_witness_right - 0070
rewrite hlength at hright_extended_witness_witness_right - 0071
cases htotal_legendre_witness - 0072
cases htotal_legendre_witness_witness - 0073
cases htotal_legendre_witness_witness_witness - 0074
have hcarry_codes : ∃ cb. ∃ cc. ∀ kmc_index_kmckbc_carry_codes. Lt(kmc_index_kmckbc_carry_codes,a + b) → ∃ x. ∃ y. ∃ z. ∃ n. BetaAt(x3,x4,kmc_index_kmckbc_carry_codes,x) ∧ (BetaAt(x5,x6,kmc_index_kmckbc_carry_codes,y) ∧ (BetaAt(x7,x8,kmc_index_kmckbc_carry_codes,z) ∧ (BetaAt(cb,cc,kmc_index_kmckbc_carry_codes,n) ∧ (n = 0 ∧ z = x + y ∨ n = 1 ∧ z = S (x + y)))))Exact native replay line
have hcarry_codes : exists cb cc. forall kmc_index_kmckbc_carry_codes. (exists bcf_lt_gap_kmckbc_carry_codes_bound. bcf_lt_gap_kmckbc_carry_codes_bound + S (kmc_index_kmckbc_carry_codes) = a + b) -> exists kmc_left_kmckbc_carry_codes kmc_right_kmckbc_carry_codes kmc_total_kmckbc_carry_codes kmc_bit_kmckbc_carry_codes. (((exists fs_h_kmckbc_carry_codes_left. fs_h_kmckbc_carry_codes_left + S (kmc_left_kmckbc_carry_codes) = S ((S (kmc_index_kmckbc_carry_codes)) * x4)) /\ exists fs_q_kmckbc_carry_codes_left. x3 = fs_q_kmckbc_carry_codes_left * S ((S (kmc_index_kmckbc_carry_codes)) * x4) + (kmc_left_kmckbc_carry_codes))) /\ ((((exists fs_h_kmckbc_carry_codes_right. fs_h_kmckbc_carry_codes_right + S (kmc_right_kmckbc_carry_codes) = S ((S (kmc_index_kmckbc_carry_codes)) * x6)) /\ exists fs_q_kmckbc_carry_codes_right. x5 = fs_q_kmckbc_carry_codes_right * S ((S (kmc_index_kmckbc_carry_codes)) * x6) + (kmc_right_kmckbc_carry_codes))) /\ ((((exists fs_h_kmckbc_carry_codes_total. fs_h_kmckbc_carry_codes_total + S (kmc_total_kmckbc_carry_codes) = S ((S (kmc_index_kmckbc_carry_codes)) * x8)) /\ exists fs_q_kmckbc_carry_codes_total. x7 = fs_q_kmckbc_carry_codes_total * S ((S (kmc_index_kmckbc_carry_codes)) * x8) + (kmc_total_kmckbc_carry_codes))) /\ ((((exists fs_h_kmckbc_carry_codes_bit. fs_h_kmckbc_carry_codes_bit + S (kmc_bit_kmckbc_carry_codes) = S ((S (kmc_index_kmckbc_carry_codes)) * cc)) /\ exists fs_q_kmckbc_carry_codes_bit. cb = fs_q_kmckbc_carry_codes_bit * S ((S (kmc_index_kmckbc_carry_codes)) * cc) + (kmc_bit_kmckbc_carry_codes))) /\ (((kmc_bit_kmckbc_carry_codes = 0 /\ kmc_total_kmckbc_carry_codes = kmc_left_kmckbc_carry_codes + kmc_right_kmckbc_carry_codes) \/ (kmc_bit_kmckbc_carry_codes = 1 /\ kmc_total_kmckbc_carry_codes = S (kmc_left_kmckbc_carry_codes + kmc_right_kmckbc_carry_codes))))))) - 0075
specialize add_quotient_carry_prefix_exists p - 0076
specialize add_quotient_carry_prefix_exists a - 0077
specialize add_quotient_carry_prefix_exists b - 0078
specialize add_quotient_carry_prefix_exists x3 - 0079
specialize add_quotient_carry_prefix_exists x4 - 0080
specialize add_quotient_carry_prefix_exists x5 - 0081
specialize add_quotient_carry_prefix_exists x6 - 0082
specialize add_quotient_carry_prefix_exists x7 - 0083
specialize add_quotient_carry_prefix_exists x8 - 0084
specialize add_quotient_carry_prefix_exists (a + b) - 0085
apply add_quotient_carry_prefix_exists - 0086
exact hleft_extended_witness_witness_left - 0087
exact hright_extended_witness_witness_left - 0088
exact htotal_legendre_witness_witness_witness_left - 0089
cases hcarry_codes - 0090
cases hcarry_codes_witness - 0091
have hall_bits : AllBits(x9,x10,a + b)Exact native replay line
have hall_bits : forall ff_i_kmckbc_all_bits. (exists ff_lt_kmckbc_all_bits_bound. ff_lt_kmckbc_all_bits_bound + S ff_i_kmckbc_all_bits = (a + b)) -> exists ff_bit_kmckbc_all_bits. ((((exists ff_h_kmckbc_all_bits_decoded. ff_h_kmckbc_all_bits_decoded + S (ff_bit_kmckbc_all_bits) = S ((S (ff_i_kmckbc_all_bits)) * x10)) /\ exists ff_q_kmckbc_all_bits_decoded. x9 = ff_q_kmckbc_all_bits_decoded * S ((S (ff_i_kmckbc_all_bits)) * x10) + (ff_bit_kmckbc_all_bits))) /\ (ff_bit_kmckbc_all_bits = 0 \/ ff_bit_kmckbc_all_bits = 1)) - 0092
specialize add_quotient_carry_prefix_all_bits x3 - 0093
specialize add_quotient_carry_prefix_all_bits x4 - 0094
specialize add_quotient_carry_prefix_all_bits x5 - 0095
specialize add_quotient_carry_prefix_all_bits x6 - 0096
specialize add_quotient_carry_prefix_all_bits x7 - 0097
specialize add_quotient_carry_prefix_all_bits x8 - 0098
specialize add_quotient_carry_prefix_all_bits x9 - 0099
specialize add_quotient_carry_prefix_all_bits x10 - 0100
specialize add_quotient_carry_prefix_all_bits (a + b) - 0101
apply add_quotient_carry_prefix_all_bits - 0102
exact hcarry_codes_witness_witness - 0103
have hcount : ∃ E. BitCount(x9,x10,a + b,E)Exact native replay line
have hcount : exists E. ((exists ff_u_kmckbc_count_exists_sum ff_v_kmckbc_count_exists_sum. ((((exists ff_h_kmckbc_count_exists_sum_start. ff_h_kmckbc_count_exists_sum_start + S (0) = S ((S (0)) * ff_v_kmckbc_count_exists_sum)) /\ exists ff_q_kmckbc_count_exists_sum_start. ff_u_kmckbc_count_exists_sum = ff_q_kmckbc_count_exists_sum_start * S ((S (0)) * ff_v_kmckbc_count_exists_sum) + (0))) /\ ((((exists ff_h_kmckbc_count_exists_sum_terminal. ff_h_kmckbc_count_exists_sum_terminal + S ((E)) = S ((S ((a + b))) * ff_v_kmckbc_count_exists_sum)) /\ exists ff_q_kmckbc_count_exists_sum_terminal. ff_u_kmckbc_count_exists_sum = ff_q_kmckbc_count_exists_sum_terminal * S ((S ((a + b))) * ff_v_kmckbc_count_exists_sum) + ((E)))) /\ forall ff_i_kmckbc_count_exists_sum. (exists ff_lt_kmckbc_count_exists_sum_bound. ff_lt_kmckbc_count_exists_sum_bound + S ff_i_kmckbc_count_exists_sum = (a + b)) -> exists ff_a_kmckbc_count_exists_sum ff_r_kmckbc_count_exists_sum ff_s_kmckbc_count_exists_sum. ((((exists ff_h_kmckbc_count_exists_sum_summand. ff_h_kmckbc_count_exists_sum_summand + S (ff_a_kmckbc_count_exists_sum) = S ((S (ff_i_kmckbc_count_exists_sum)) * x10)) /\ exists ff_q_kmckbc_count_exists_sum_summand. x9 = ff_q_kmckbc_count_exists_sum_summand * S ((S (ff_i_kmckbc_count_exists_sum)) * x10) + (ff_a_kmckbc_count_exists_sum))) /\ ((((exists ff_h_kmckbc_count_exists_sum_partial. ff_h_kmckbc_count_exists_sum_partial + S (ff_r_kmckbc_count_exists_sum) = S ((S (ff_i_kmckbc_count_exists_sum)) * ff_v_kmckbc_count_exists_sum)) /\ exists ff_q_kmckbc_count_exists_sum_partial. ff_u_kmckbc_count_exists_sum = ff_q_kmckbc_count_exists_sum_partial * S ((S (ff_i_kmckbc_count_exists_sum)) * ff_v_kmckbc_count_exists_sum) + (ff_r_kmckbc_count_exists_sum))) /\ ((((exists ff_h_kmckbc_count_exists_sum_successor. ff_h_kmckbc_count_exists_sum_successor + S (ff_s_kmckbc_count_exists_sum) = S ((S (S ff_i_kmckbc_count_exists_sum)) * ff_v_kmckbc_count_exists_sum)) /\ exists ff_q_kmckbc_count_exists_sum_successor. ff_u_kmckbc_count_exists_sum = ff_q_kmckbc_count_exists_sum_successor * S ((S (S ff_i_kmckbc_count_exists_sum)) * ff_v_kmckbc_count_exists_sum) + (ff_s_kmckbc_count_exists_sum))) /\ ff_s_kmckbc_count_exists_sum = ff_r_kmckbc_count_exists_sum + ff_a_kmckbc_count_exists_sum)))))) /\ (forall ff_i_kmckbc_count_exists_bits. (exists ff_lt_kmckbc_count_exists_bits_bound. ff_lt_kmckbc_count_exists_bits_bound + S ff_i_kmckbc_count_exists_bits = (a + b)) -> exists ff_bit_kmckbc_count_exists_bits. ((((exists ff_h_kmckbc_count_exists_bits_decoded. ff_h_kmckbc_count_exists_bits_decoded + S (ff_bit_kmckbc_count_exists_bits) = S ((S (ff_i_kmckbc_count_exists_bits)) * x10)) /\ exists ff_q_kmckbc_count_exists_bits_decoded. x9 = ff_q_kmckbc_count_exists_bits_decoded * S ((S (ff_i_kmckbc_count_exists_bits)) * x10) + (ff_bit_kmckbc_count_exists_bits))) /\ (ff_bit_kmckbc_count_exists_bits = 0 \/ ff_bit_kmckbc_count_exists_bits = 1)))) - 0104
specialize bit_count_exists x9 - 0105
specialize bit_count_exists x10 - 0106
specialize bit_count_exists (a + b) - 0107
apply bit_count_exists - 0108
exact hall_bits - 0109
cases hcount - 0110
have hcarry_balance : x2 = (x + x1) + x11 - 0111
specialize beta_sum_add_carry_exact x3 - 0112
specialize beta_sum_add_carry_exact x4 - 0113
specialize beta_sum_add_carry_exact x5 - 0114
specialize beta_sum_add_carry_exact x6 - 0115
specialize beta_sum_add_carry_exact x7 - 0116
specialize beta_sum_add_carry_exact x8 - 0117
specialize beta_sum_add_carry_exact x9 - 0118
specialize beta_sum_add_carry_exact x10 - 0119
specialize beta_sum_add_carry_exact (a + b) - 0120
specialize beta_sum_add_carry_exact x - 0121
specialize beta_sum_add_carry_exact x1 - 0122
specialize beta_sum_add_carry_exact x2 - 0123
specialize beta_sum_add_carry_exact x11 - 0124
apply beta_sum_add_carry_exact - 0125
exact hleft_extended_witness_witness_right - 0126
exact hright_extended_witness_witness_right - 0127
exact htotal_legendre_witness_witness_witness_right - 0128
exact hcarry_codes_witness_witness - 0129
exact hcount_witness - 0130
have hcount_eq : x11 = v - 0131
specialize add_left_cancel (x + x1) - 0132
specialize add_left_cancel x11 - 0133
specialize add_left_cancel v - 0134
apply add_left_cancel - 0135
trans x2 - 0136
symm - 0137
exact hcarry_balance - 0138
exact hvaluation_balance - 0139
rewrite hcount_eq at hcount_witness - 0140
rewrite hcount_eq at hcount_witness - 0141
exists x3 - 0142
exists x4 - 0143
exists x5 - 0144
exists x6 - 0145
exists x7 - 0146
exists x8 - 0147
exists x9 - 0148
exists x10 - 0149
split - 0150
exact hleft_extended_witness_witness_left - 0151
split - 0152
exact hright_extended_witness_witness_left - 0153
split - 0154
exact htotal_legendre_witness_witness_witness_left - 0155
split - 0156
exact hcarry_codes_witness_witness - 0157
exact hcount_witness