MK0010

multinomial_valuations_give_carry_prefix

Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable

Apply the actual checked binary Kummer proof to every decoded addition row; the resulting certificate contains real quotient columns and carry bits.

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.

Exact expanded first-order arithmetic statement

forall p b c sb sc cb cc vb vc l. ((~(p = 1) /\ forall frm_prime_left_mkm_rows_prime frm_prime_right_mkm_rows_prime. p = frm_prime_left_mkm_rows_prime * frm_prime_right_mkm_rows_prime -> frm_prime_left_mkm_rows_prime = 1 \/ frm_prime_right_mkm_rows_prime = 1)) -> (forall mkm_index_rows_binomial. (exists mkm_lt_rows_binomial_bound. mkm_lt_rows_binomial_bound + S (mkm_index_rows_binomial) = (l)) -> (exists mkm_value_rows_binomial_point mkm_partial_rows_binomial_point mkm_factor_rows_binomial_point. (((exists fs_h_mkm_rows_binomial_point_source. fs_h_mkm_rows_binomial_point_source + S (mkm_value_rows_binomial_point) = S ((S (mkm_index_rows_binomial)) * c)) /\ exists fs_q_mkm_rows_binomial_point_source. b = fs_q_mkm_rows_binomial_point_source * S ((S (mkm_index_rows_binomial)) * c) + (mkm_value_rows_binomial_point))) /\ ((((exists fs_h_mkm_rows_binomial_point_partial. fs_h_mkm_rows_binomial_point_partial + S (mkm_partial_rows_binomial_point) = S ((S (mkm_index_rows_binomial)) * sc)) /\ exists fs_q_mkm_rows_binomial_point_partial. sb = fs_q_mkm_rows_binomial_point_partial * S ((S (mkm_index_rows_binomial)) * sc) + (mkm_partial_rows_binomial_point))) /\ ((((exists bcf_lt_gap_mkm_rows_binomial_point_choose_out_of_range. bcf_lt_gap_mkm_rows_binomial_point_choose_out_of_range + S (mkm_partial_rows_binomial_point + mkm_value_rows_binomial_point) = mkm_partial_rows_binomial_point) /\ mkm_factor_rows_binomial_point = 0) \/ ((exists bcf_le_gap_mkm_rows_binomial_point_choose_in_range. bcf_le_gap_mkm_rows_binomial_point_choose_in_range + (mkm_partial_rows_binomial_point) = mkm_partial_rows_binomial_point + mkm_value_rows_binomial_point) /\ (exists bcf_row_code_code_mkm_rows_binomial_point_choose bcf_row_code_scale_mkm_rows_binomial_point_choose bcf_row_scale_code_mkm_rows_binomial_point_choose bcf_row_scale_scale_mkm_rows_binomial_point_choose bcf_row_code_mkm_rows_binomial_point_choose bcf_row_scale_mkm_rows_binomial_point_choose. ((forall bcf_row_index_mkm_rows_binomial_point_choose_table. (exists bcf_lt_gap_mkm_rows_binomial_point_choose_table_row_bound. bcf_lt_gap_mkm_rows_binomial_point_choose_table_row_bound + S (bcf_row_index_mkm_rows_binomial_point_choose_table) = S (mkm_partial_rows_binomial_point + mkm_value_rows_binomial_point)) -> exists bcf_row_code_mkm_rows_binomial_point_choose_table bcf_row_scale_mkm_rows_binomial_point_choose_table. ((((exists bcf_height_mkm_rows_binomial_point_choose_table_decoded_row_code. bcf_height_mkm_rows_binomial_point_choose_table_decoded_row_code + S (bcf_row_code_mkm_rows_binomial_point_choose_table) = S ((S (bcf_row_index_mkm_rows_binomial_point_choose_table)) * bcf_row_code_scale_mkm_rows_binomial_point_choose)) /\ exists bcf_quotient_mkm_rows_binomial_point_choose_table_decoded_row_code. bcf_row_code_code_mkm_rows_binomial_point_choose = bcf_quotient_mkm_rows_binomial_point_choose_table_decoded_row_code * S ((S (bcf_row_index_mkm_rows_binomial_point_choose_table)) * bcf_row_code_scale_mkm_rows_binomial_point_choose) + (bcf_row_code_mkm_rows_binomial_point_choose_table))) /\ ((((exists bcf_height_mkm_rows_binomial_point_choose_table_decoded_row_scale. bcf_height_mkm_rows_binomial_point_choose_table_decoded_row_scale + S (bcf_row_scale_mkm_rows_binomial_point_choose_table) = S ((S (bcf_row_index_mkm_rows_binomial_point_choose_table)) * bcf_row_scale_scale_mkm_rows_binomial_point_choose)) /\ exists bcf_quotient_mkm_rows_binomial_point_choose_table_decoded_row_scale. bcf_row_scale_code_mkm_rows_binomial_point_choose = bcf_quotient_mkm_rows_binomial_point_choose_table_decoded_row_scale * S ((S (bcf_row_index_mkm_rows_binomial_point_choose_table)) * bcf_row_scale_scale_mkm_rows_binomial_point_choose) + (bcf_row_scale_mkm_rows_binomial_point_choose_table))) /\ ((bcf_row_index_mkm_rows_binomial_point_choose_table = 0 /\ (forall bcf_index_mkm_rows_binomial_point_choose_table_zero_row. (exists bcf_lt_gap_mkm_rows_binomial_point_choose_table_zero_row_bound. bcf_lt_gap_mkm_rows_binomial_point_choose_table_zero_row_bound + S (bcf_index_mkm_rows_binomial_point_choose_table_zero_row) = S (mkm_partial_rows_binomial_point + mkm_value_rows_binomial_point)) -> exists bcf_value_mkm_rows_binomial_point_choose_table_zero_row. ((((exists bcf_height_mkm_rows_binomial_point_choose_table_zero_row_entry. bcf_height_mkm_rows_binomial_point_choose_table_zero_row_entry + S (bcf_value_mkm_rows_binomial_point_choose_table_zero_row) = S ((S (bcf_index_mkm_rows_binomial_point_choose_table_zero_row)) * bcf_row_scale_mkm_rows_binomial_point_choose_table)) /\ exists bcf_quotient_mkm_rows_binomial_point_choose_table_zero_row_entry. bcf_row_code_mkm_rows_binomial_point_choose_table = bcf_quotient_mkm_rows_binomial_point_choose_table_zero_row_entry * S ((S (bcf_index_mkm_rows_binomial_point_choose_table_zero_row)) * bcf_row_scale_mkm_rows_binomial_point_choose_table) + (bcf_value_mkm_rows_binomial_point_choose_table_zero_row))) /\ ((bcf_index_mkm_rows_binomial_point_choose_table_zero_row = 0 /\ bcf_value_mkm_rows_binomial_point_choose_table_zero_row = 1) \/ exists bcf_predecessor_mkm_rows_binomial_point_choose_table_zero_row. bcf_index_mkm_rows_binomial_point_choose_table_zero_row = S bcf_predecessor_mkm_rows_binomial_point_choose_table_zero_row /\ bcf_value_mkm_rows_binomial_point_choose_table_zero_row = 0)))) \/ exists bcf_predecessor_mkm_rows_binomial_point_choose_table bcf_previous_code_mkm_rows_binomial_point_choose_table bcf_previous_scale_mkm_rows_binomial_point_choose_table. bcf_row_index_mkm_rows_binomial_point_choose_table = S bcf_predecessor_mkm_rows_binomial_point_choose_table /\ ((((exists bcf_height_mkm_rows_binomial_point_choose_table_decoded_previous_code. bcf_height_mkm_rows_binomial_point_choose_table_decoded_previous_code + S (bcf_previous_code_mkm_rows_binomial_point_choose_table) = S ((S (bcf_predecessor_mkm_rows_binomial_point_choose_table)) * bcf_row_code_scale_mkm_rows_binomial_point_choose)) /\ exists bcf_quotient_mkm_rows_binomial_point_choose_table_decoded_previous_code. bcf_row_code_code_mkm_rows_binomial_point_choose = bcf_quotient_mkm_rows_binomial_point_choose_table_decoded_previous_code * S ((S (bcf_predecessor_mkm_rows_binomial_point_choose_table)) * bcf_row_code_scale_mkm_rows_binomial_point_choose) + (bcf_previous_code_mkm_rows_binomial_point_choose_table))) /\ ((((exists bcf_height_mkm_rows_binomial_point_choose_table_decoded_previous_scale. bcf_height_mkm_rows_binomial_point_choose_table_decoded_previous_scale + S (bcf_previous_scale_mkm_rows_binomial_point_choose_table) = S ((S (bcf_predecessor_mkm_rows_binomial_point_choose_table)) * bcf_row_scale_scale_mkm_rows_binomial_point_choose)) /\ exists bcf_quotient_mkm_rows_binomial_point_choose_table_decoded_previous_scale. bcf_row_scale_code_mkm_rows_binomial_point_choose = bcf_quotient_mkm_rows_binomial_point_choose_table_decoded_previous_scale * S ((S (bcf_predecessor_mkm_rows_binomial_point_choose_table)) * bcf_row_scale_scale_mkm_rows_binomial_point_choose) + (bcf_previous_scale_mkm_rows_binomial_point_choose_table))) /\ (forall bcf_index_mkm_rows_binomial_point_choose_table_row_step. (exists bcf_lt_gap_mkm_rows_binomial_point_choose_table_row_step_bound. bcf_lt_gap_mkm_rows_binomial_point_choose_table_row_step_bound + S (bcf_index_mkm_rows_binomial_point_choose_table_row_step) = S (mkm_partial_rows_binomial_point + mkm_value_rows_binomial_point)) -> exists bcf_value_mkm_rows_binomial_point_choose_table_row_step. ((((exists bcf_height_mkm_rows_binomial_point_choose_table_row_step_entry. bcf_height_mkm_rows_binomial_point_choose_table_row_step_entry + S (bcf_value_mkm_rows_binomial_point_choose_table_row_step) = S ((S (bcf_index_mkm_rows_binomial_point_choose_table_row_step)) * bcf_row_scale_mkm_rows_binomial_point_choose_table)) /\ exists bcf_quotient_mkm_rows_binomial_point_choose_table_row_step_entry. bcf_row_code_mkm_rows_binomial_point_choose_table = bcf_quotient_mkm_rows_binomial_point_choose_table_row_step_entry * S ((S (bcf_index_mkm_rows_binomial_point_choose_table_row_step)) * bcf_row_scale_mkm_rows_binomial_point_choose_table) + (bcf_value_mkm_rows_binomial_point_choose_table_row_step))) /\ ((bcf_index_mkm_rows_binomial_point_choose_table_row_step = 0 /\ bcf_value_mkm_rows_binomial_point_choose_table_row_step = 1) \/ exists bcf_predecessor_mkm_rows_binomial_point_choose_table_row_step bcf_left_mkm_rows_binomial_point_choose_table_row_step bcf_right_mkm_rows_binomial_point_choose_table_row_step. bcf_index_mkm_rows_binomial_point_choose_table_row_step = S bcf_predecessor_mkm_rows_binomial_point_choose_table_row_step /\ ((((exists bcf_height_mkm_rows_binomial_point_choose_table_row_step_previous_left. bcf_height_mkm_rows_binomial_point_choose_table_row_step_previous_left + S (bcf_left_mkm_rows_binomial_point_choose_table_row_step) = S ((S (bcf_predecessor_mkm_rows_binomial_point_choose_table_row_step)) * bcf_previous_scale_mkm_rows_binomial_point_choose_table)) /\ exists bcf_quotient_mkm_rows_binomial_point_choose_table_row_step_previous_left. bcf_previous_code_mkm_rows_binomial_point_choose_table = bcf_quotient_mkm_rows_binomial_point_choose_table_row_step_previous_left * S ((S (bcf_predecessor_mkm_rows_binomial_point_choose_table_row_step)) * bcf_previous_scale_mkm_rows_binomial_point_choose_table) + (bcf_left_mkm_rows_binomial_point_choose_table_row_step))) /\ ((((exists bcf_height_mkm_rows_binomial_point_choose_table_row_step_previous_right. bcf_height_mkm_rows_binomial_point_choose_table_row_step_previous_right + S (bcf_right_mkm_rows_binomial_point_choose_table_row_step) = S ((S (S (bcf_predecessor_mkm_rows_binomial_point_choose_table_row_step))) * bcf_previous_scale_mkm_rows_binomial_point_choose_table)) /\ exists bcf_quotient_mkm_rows_binomial_point_choose_table_row_step_previous_right. bcf_previous_code_mkm_rows_binomial_point_choose_table = bcf_quotient_mkm_rows_binomial_point_choose_table_row_step_previous_right * S ((S (S (bcf_predecessor_mkm_rows_binomial_point_choose_table_row_step))) * bcf_previous_scale_mkm_rows_binomial_point_choose_table) + (bcf_right_mkm_rows_binomial_point_choose_table_row_step))) /\ bcf_value_mkm_rows_binomial_point_choose_table_row_step = bcf_left_mkm_rows_binomial_point_choose_table_row_step + bcf_right_mkm_rows_binomial_point_choose_table_row_step))))))))))) /\ ((((exists bcf_height_mkm_rows_binomial_point_choose_decoded_row_code. bcf_height_mkm_rows_binomial_point_choose_decoded_row_code + S (bcf_row_code_mkm_rows_binomial_point_choose) = S ((S (mkm_partial_rows_binomial_point + mkm_value_rows_binomial_point)) * bcf_row_code_scale_mkm_rows_binomial_point_choose)) /\ exists bcf_quotient_mkm_rows_binomial_point_choose_decoded_row_code. bcf_row_code_code_mkm_rows_binomial_point_choose = bcf_quotient_mkm_rows_binomial_point_choose_decoded_row_code * S ((S (mkm_partial_rows_binomial_point + mkm_value_rows_binomial_point)) * bcf_row_code_scale_mkm_rows_binomial_point_choose) + (bcf_row_code_mkm_rows_binomial_point_choose))) /\ ((((exists bcf_height_mkm_rows_binomial_point_choose_decoded_row_scale. bcf_height_mkm_rows_binomial_point_choose_decoded_row_scale + S (bcf_row_scale_mkm_rows_binomial_point_choose) = S ((S (mkm_partial_rows_binomial_point + mkm_value_rows_binomial_point)) * bcf_row_scale_scale_mkm_rows_binomial_point_choose)) /\ exists bcf_quotient_mkm_rows_binomial_point_choose_decoded_row_scale. bcf_row_scale_code_mkm_rows_binomial_point_choose = bcf_quotient_mkm_rows_binomial_point_choose_decoded_row_scale * S ((S (mkm_partial_rows_binomial_point + mkm_value_rows_binomial_point)) * bcf_row_scale_scale_mkm_rows_binomial_point_choose) + (bcf_row_scale_mkm_rows_binomial_point_choose))) /\ (((exists bcf_height_mkm_rows_binomial_point_choose_decoded_value. bcf_height_mkm_rows_binomial_point_choose_decoded_value + S (mkm_factor_rows_binomial_point) = S ((S (mkm_partial_rows_binomial_point)) * bcf_row_scale_mkm_rows_binomial_point_choose)) /\ exists bcf_quotient_mkm_rows_binomial_point_choose_decoded_value. bcf_row_code_mkm_rows_binomial_point_choose = bcf_quotient_mkm_rows_binomial_point_choose_decoded_value * S ((S (mkm_partial_rows_binomial_point)) * bcf_row_scale_mkm_rows_binomial_point_choose) + (mkm_factor_rows_binomial_point))))))))) /\ (((exists fs_h_mkm_rows_binomial_point_factor. fs_h_mkm_rows_binomial_point_factor + S (mkm_factor_rows_binomial_point) = S ((S (mkm_index_rows_binomial)) * cc)) /\ exists fs_q_mkm_rows_binomial_point_factor. cb = fs_q_mkm_rows_binomial_point_factor * S ((S (mkm_index_rows_binomial)) * cc) + (mkm_factor_rows_binomial_point))))))) -> (forall mkm_index_rows_valuations. (exists mkm_lt_rows_valuations_bound. mkm_lt_rows_valuations_bound + S (mkm_index_rows_valuations) = (l)) -> (exists mkm_value_rows_valuations_point mkm_exponent_rows_valuations_point. (((exists fs_h_mkm_rows_valuations_point_source. fs_h_mkm_rows_valuations_point_source + S (mkm_value_rows_valuations_point) = S ((S (mkm_index_rows_valuations)) * cc)) /\ exists fs_q_mkm_rows_valuations_point_source. cb = fs_q_mkm_rows_valuations_point_source * S ((S (mkm_index_rows_valuations)) * cc) + (mkm_value_rows_valuations_point))) /\ ((((exists fs_h_mkm_rows_valuations_point_decoded. fs_h_mkm_rows_valuations_point_decoded + S (mkm_exponent_rows_valuations_point) = S ((S (mkm_index_rows_valuations)) * vc)) /\ exists fs_q_mkm_rows_valuations_point_decoded. vb = fs_q_mkm_rows_valuations_point_decoded * S ((S (mkm_index_rows_valuations)) * vc) + (mkm_exponent_rows_valuations_point))) /\ (((exists bpv_gap_mkm_rows_valuations_point_valuation_exponent_bound. bpv_gap_mkm_rows_valuations_point_valuation_exponent_bound + mkm_exponent_rows_valuations_point = (mkm_value_rows_valuations_point)) /\ (exists bpv_result_mkm_rows_valuations_point_valuation_selected. ((exists ff_b_mkm_rows_valuations_point_valuation_selected_power ff_c_mkm_rows_valuations_point_valuation_selected_power. ((forall ff_i_mkm_rows_valuations_point_valuation_selected_power_repeat. (exists ff_lt_mkm_rows_valuations_point_valuation_selected_power_repeat_bound. ff_lt_mkm_rows_valuations_point_valuation_selected_power_repeat_bound + S ff_i_mkm_rows_valuations_point_valuation_selected_power_repeat = mkm_exponent_rows_valuations_point) -> (((exists ff_h_mkm_rows_valuations_point_valuation_selected_power_repeat_decoded. ff_h_mkm_rows_valuations_point_valuation_selected_power_repeat_decoded + S (p) = S ((S (ff_i_mkm_rows_valuations_point_valuation_selected_power_repeat)) * ff_c_mkm_rows_valuations_point_valuation_selected_power)) /\ exists ff_q_mkm_rows_valuations_point_valuation_selected_power_repeat_decoded. ff_b_mkm_rows_valuations_point_valuation_selected_power = ff_q_mkm_rows_valuations_point_valuation_selected_power_repeat_decoded * S ((S (ff_i_mkm_rows_valuations_point_valuation_selected_power_repeat)) * ff_c_mkm_rows_valuations_point_valuation_selected_power) + (p)))) /\ (exists ff_u_mkm_rows_valuations_point_valuation_selected_power_product ff_v_mkm_rows_valuations_point_valuation_selected_power_product. ((((exists ff_h_mkm_rows_valuations_point_valuation_selected_power_product_start. ff_h_mkm_rows_valuations_point_valuation_selected_power_product_start + S (1) = S ((S (0)) * ff_v_mkm_rows_valuations_point_valuation_selected_power_product)) /\ exists ff_q_mkm_rows_valuations_point_valuation_selected_power_product_start. ff_u_mkm_rows_valuations_point_valuation_selected_power_product = ff_q_mkm_rows_valuations_point_valuation_selected_power_product_start * S ((S (0)) * ff_v_mkm_rows_valuations_point_valuation_selected_power_product) + (1))) /\ ((((exists ff_h_mkm_rows_valuations_point_valuation_selected_power_product_terminal. ff_h_mkm_rows_valuations_point_valuation_selected_power_product_terminal + S (bpv_result_mkm_rows_valuations_point_valuation_selected) = S ((S (mkm_exponent_rows_valuations_point)) * ff_v_mkm_rows_valuations_point_valuation_selected_power_product)) /\ exists ff_q_mkm_rows_valuations_point_valuation_selected_power_product_terminal. ff_u_mkm_rows_valuations_point_valuation_selected_power_product = ff_q_mkm_rows_valuations_point_valuation_selected_power_product_terminal * S ((S (mkm_exponent_rows_valuations_point)) * ff_v_mkm_rows_valuations_point_valuation_selected_power_product) + (bpv_result_mkm_rows_valuations_point_valuation_selected))) /\ forall ff_i_mkm_rows_valuations_point_valuation_selected_power_product. (exists ff_lt_mkm_rows_valuations_point_valuation_selected_power_product_bound. ff_lt_mkm_rows_valuations_point_valuation_selected_power_product_bound + S ff_i_mkm_rows_valuations_point_valuation_selected_power_product = mkm_exponent_rows_valuations_point) -> exists ff_p_mkm_rows_valuations_point_valuation_selected_power_product ff_r_mkm_rows_valuations_point_valuation_selected_power_product ff_s_mkm_rows_valuations_point_valuation_selected_power_product. ((((exists ff_h_mkm_rows_valuations_point_valuation_selected_power_product_factor. ff_h_mkm_rows_valuations_point_valuation_selected_power_product_factor + S (ff_p_mkm_rows_valuations_point_valuation_selected_power_product) = S ((S (ff_i_mkm_rows_valuations_point_valuation_selected_power_product)) * ff_c_mkm_rows_valuations_point_valuation_selected_power)) /\ exists ff_q_mkm_rows_valuations_point_valuation_selected_power_product_factor. ff_b_mkm_rows_valuations_point_valuation_selected_power = ff_q_mkm_rows_valuations_point_valuation_selected_power_product_factor * S ((S (ff_i_mkm_rows_valuations_point_valuation_selected_power_product)) * ff_c_mkm_rows_valuations_point_valuation_selected_power) + (ff_p_mkm_rows_valuations_point_valuation_selected_power_product))) /\ ((((exists ff_h_mkm_rows_valuations_point_valuation_selected_power_product_partial. ff_h_mkm_rows_valuations_point_valuation_selected_power_product_partial + S (ff_r_mkm_rows_valuations_point_valuation_selected_power_product) = S ((S (ff_i_mkm_rows_valuations_point_valuation_selected_power_product)) * ff_v_mkm_rows_valuations_point_valuation_selected_power_product)) /\ exists ff_q_mkm_rows_valuations_point_valuation_selected_power_product_partial. ff_u_mkm_rows_valuations_point_valuation_selected_power_product = ff_q_mkm_rows_valuations_point_valuation_selected_power_product_partial * S ((S (ff_i_mkm_rows_valuations_point_valuation_selected_power_product)) * ff_v_mkm_rows_valuations_point_valuation_selected_power_product) + (ff_r_mkm_rows_valuations_point_valuation_selected_power_product))) /\ ((((exists ff_h_mkm_rows_valuations_point_valuation_selected_power_product_successor. ff_h_mkm_rows_valuations_point_valuation_selected_power_product_successor + S (ff_s_mkm_rows_valuations_point_valuation_selected_power_product) = S ((S (S ff_i_mkm_rows_valuations_point_valuation_selected_power_product)) * ff_v_mkm_rows_valuations_point_valuation_selected_power_product)) /\ exists ff_q_mkm_rows_valuations_point_valuation_selected_power_product_successor. ff_u_mkm_rows_valuations_point_valuation_selected_power_product = ff_q_mkm_rows_valuations_point_valuation_selected_power_product_successor * S ((S (S ff_i_mkm_rows_valuations_point_valuation_selected_power_product)) * ff_v_mkm_rows_valuations_point_valuation_selected_power_product) + (ff_s_mkm_rows_valuations_point_valuation_selected_power_product))) /\ ff_s_mkm_rows_valuations_point_valuation_selected_power_product = ff_r_mkm_rows_valuations_point_valuation_selected_power_product * ff_p_mkm_rows_valuations_point_valuation_selected_power_product)))))))) /\ (exists bpv_factor_mkm_rows_valuations_point_valuation_selected_divides. (mkm_value_rows_valuations_point) = bpv_result_mkm_rows_valuations_point_valuation_selected * bpv_factor_mkm_rows_valuations_point_valuation_selected_divides)))) /\ forall bpv_candidate_mkm_rows_valuations_point_valuation. (exists bpv_gap_mkm_rows_valuations_point_valuation_candidate_bound. bpv_gap_mkm_rows_valuations_point_valuation_candidate_bound + bpv_candidate_mkm_rows_valuations_point_valuation = (mkm_value_rows_valuations_point)) -> (exists bpv_result_mkm_rows_valuations_point_valuation_candidate. ((exists ff_b_mkm_rows_valuations_point_valuation_candidate_power ff_c_mkm_rows_valuations_point_valuation_candidate_power. ((forall ff_i_mkm_rows_valuations_point_valuation_candidate_power_repeat. (exists ff_lt_mkm_rows_valuations_point_valuation_candidate_power_repeat_bound. ff_lt_mkm_rows_valuations_point_valuation_candidate_power_repeat_bound + S ff_i_mkm_rows_valuations_point_valuation_candidate_power_repeat = bpv_candidate_mkm_rows_valuations_point_valuation) -> (((exists ff_h_mkm_rows_valuations_point_valuation_candidate_power_repeat_decoded. ff_h_mkm_rows_valuations_point_valuation_candidate_power_repeat_decoded + S (p) = S ((S (ff_i_mkm_rows_valuations_point_valuation_candidate_power_repeat)) * ff_c_mkm_rows_valuations_point_valuation_candidate_power)) /\ exists ff_q_mkm_rows_valuations_point_valuation_candidate_power_repeat_decoded. ff_b_mkm_rows_valuations_point_valuation_candidate_power = ff_q_mkm_rows_valuations_point_valuation_candidate_power_repeat_decoded * S ((S (ff_i_mkm_rows_valuations_point_valuation_candidate_power_repeat)) * ff_c_mkm_rows_valuations_point_valuation_candidate_power) + (p)))) /\ (exists ff_u_mkm_rows_valuations_point_valuation_candidate_power_product ff_v_mkm_rows_valuations_point_valuation_candidate_power_product. ((((exists ff_h_mkm_rows_valuations_point_valuation_candidate_power_product_start. ff_h_mkm_rows_valuations_point_valuation_candidate_power_product_start + S (1) = S ((S (0)) * ff_v_mkm_rows_valuations_point_valuation_candidate_power_product)) /\ exists ff_q_mkm_rows_valuations_point_valuation_candidate_power_product_start. ff_u_mkm_rows_valuations_point_valuation_candidate_power_product = ff_q_mkm_rows_valuations_point_valuation_candidate_power_product_start * S ((S (0)) * ff_v_mkm_rows_valuations_point_valuation_candidate_power_product) + (1))) /\ ((((exists ff_h_mkm_rows_valuations_point_valuation_candidate_power_product_terminal. ff_h_mkm_rows_valuations_point_valuation_candidate_power_product_terminal + S (bpv_result_mkm_rows_valuations_point_valuation_candidate) = S ((S (bpv_candidate_mkm_rows_valuations_point_valuation)) * ff_v_mkm_rows_valuations_point_valuation_candidate_power_product)) /\ exists ff_q_mkm_rows_valuations_point_valuation_candidate_power_product_terminal. ff_u_mkm_rows_valuations_point_valuation_candidate_power_product = ff_q_mkm_rows_valuations_point_valuation_candidate_power_product_terminal * S ((S (bpv_candidate_mkm_rows_valuations_point_valuation)) * ff_v_mkm_rows_valuations_point_valuation_candidate_power_product) + (bpv_result_mkm_rows_valuations_point_valuation_candidate))) /\ forall ff_i_mkm_rows_valuations_point_valuation_candidate_power_product. (exists ff_lt_mkm_rows_valuations_point_valuation_candidate_power_product_bound. ff_lt_mkm_rows_valuations_point_valuation_candidate_power_product_bound + S ff_i_mkm_rows_valuations_point_valuation_candidate_power_product = bpv_candidate_mkm_rows_valuations_point_valuation) -> exists ff_p_mkm_rows_valuations_point_valuation_candidate_power_product ff_r_mkm_rows_valuations_point_valuation_candidate_power_product ff_s_mkm_rows_valuations_point_valuation_candidate_power_product. ((((exists ff_h_mkm_rows_valuations_point_valuation_candidate_power_product_factor. ff_h_mkm_rows_valuations_point_valuation_candidate_power_product_factor + S (ff_p_mkm_rows_valuations_point_valuation_candidate_power_product) = S ((S (ff_i_mkm_rows_valuations_point_valuation_candidate_power_product)) * ff_c_mkm_rows_valuations_point_valuation_candidate_power)) /\ exists ff_q_mkm_rows_valuations_point_valuation_candidate_power_product_factor. ff_b_mkm_rows_valuations_point_valuation_candidate_power = ff_q_mkm_rows_valuations_point_valuation_candidate_power_product_factor * S ((S (ff_i_mkm_rows_valuations_point_valuation_candidate_power_product)) * ff_c_mkm_rows_valuations_point_valuation_candidate_power) + (ff_p_mkm_rows_valuations_point_valuation_candidate_power_product))) /\ ((((exists ff_h_mkm_rows_valuations_point_valuation_candidate_power_product_partial. ff_h_mkm_rows_valuations_point_valuation_candidate_power_product_partial + S (ff_r_mkm_rows_valuations_point_valuation_candidate_power_product) = S ((S (ff_i_mkm_rows_valuations_point_valuation_candidate_power_product)) * ff_v_mkm_rows_valuations_point_valuation_candidate_power_product)) /\ exists ff_q_mkm_rows_valuations_point_valuation_candidate_power_product_partial. ff_u_mkm_rows_valuations_point_valuation_candidate_power_product = ff_q_mkm_rows_valuations_point_valuation_candidate_power_product_partial * S ((S (ff_i_mkm_rows_valuations_point_valuation_candidate_power_product)) * ff_v_mkm_rows_valuations_point_valuation_candidate_power_product) + (ff_r_mkm_rows_valuations_point_valuation_candidate_power_product))) /\ ((((exists ff_h_mkm_rows_valuations_point_valuation_candidate_power_product_successor. ff_h_mkm_rows_valuations_point_valuation_candidate_power_product_successor + S (ff_s_mkm_rows_valuations_point_valuation_candidate_power_product) = S ((S (S ff_i_mkm_rows_valuations_point_valuation_candidate_power_product)) * ff_v_mkm_rows_valuations_point_valuation_candidate_power_product)) /\ exists ff_q_mkm_rows_valuations_point_valuation_candidate_power_product_successor. ff_u_mkm_rows_valuations_point_valuation_candidate_power_product = ff_q_mkm_rows_valuations_point_valuation_candidate_power_product_successor * S ((S (S ff_i_mkm_rows_valuations_point_valuation_candidate_power_product)) * ff_v_mkm_rows_valuations_point_valuation_candidate_power_product) + (ff_s_mkm_rows_valuations_point_valuation_candidate_power_product))) /\ ff_s_mkm_rows_valuations_point_valuation_candidate_power_product = ff_r_mkm_rows_valuations_point_valuation_candidate_power_product * ff_p_mkm_rows_valuations_point_valuation_candidate_power_product)))))))) /\ (exists bpv_factor_mkm_rows_valuations_point_valuation_candidate_divides. (mkm_value_rows_valuations_point) = bpv_result_mkm_rows_valuations_point_valuation_candidate * bpv_factor_mkm_rows_valuations_point_valuation_candidate_divides))) -> (exists bpv_gap_mkm_rows_valuations_point_valuation_maximal. bpv_gap_mkm_rows_valuations_point_valuation_maximal + bpv_candidate_mkm_rows_valuations_point_valuation = mkm_exponent_rows_valuations_point))))) -> (forall mkm_index_rows_carries. (exists mkm_lt_rows_carries_bound. mkm_lt_rows_carries_bound + S (mkm_index_rows_carries) = (l)) -> (exists mkm_value_rows_carries_point mkm_partial_rows_carries_point mkm_count_rows_carries_point. (((exists fs_h_mkm_rows_carries_point_source. fs_h_mkm_rows_carries_point_source + S (mkm_value_rows_carries_point) = S ((S (mkm_index_rows_carries)) * c)) /\ exists fs_q_mkm_rows_carries_point_source. b = fs_q_mkm_rows_carries_point_source * S ((S (mkm_index_rows_carries)) * c) + (mkm_value_rows_carries_point))) /\ ((((exists fs_h_mkm_rows_carries_point_partial. fs_h_mkm_rows_carries_point_partial + S (mkm_partial_rows_carries_point) = S ((S (mkm_index_rows_carries)) * sc)) /\ exists fs_q_mkm_rows_carries_point_partial. sb = fs_q_mkm_rows_carries_point_partial * S ((S (mkm_index_rows_carries)) * sc) + (mkm_partial_rows_carries_point))) /\ ((((exists fs_h_mkm_rows_carries_point_stored. fs_h_mkm_rows_carries_point_stored + S (mkm_count_rows_carries_point) = S ((S (mkm_index_rows_carries)) * vc)) /\ exists fs_q_mkm_rows_carries_point_stored. vb = fs_q_mkm_rows_carries_point_stored * S ((S (mkm_index_rows_carries)) * vc) + (mkm_count_rows_carries_point))) /\ (exists mkm_lb_rows_carries_point_binary mkm_lc_rows_carries_point_binary mkm_rb_rows_carries_point_binary mkm_rc_rows_carries_point_binary mkm_tb_rows_carries_point_binary mkm_tc_rows_carries_point_binary mkm_cb_rows_carries_point_binary mkm_cc_rows_carries_point_binary. (forall bls_index_mkm_rows_carries_point_binary_left. (exists bls_gap_mkm_rows_carries_point_binary_left_bound. bls_gap_mkm_rows_carries_point_binary_left_bound + S (bls_index_mkm_rows_carries_point_binary_left) = (mkm_partial_rows_carries_point + mkm_value_rows_carries_point)) -> exists bls_power_mkm_rows_carries_point_binary_left bls_quotient_mkm_rows_carries_point_binary_left bls_remainder_mkm_rows_carries_point_binary_left. ((exists bpvi_b_bls_mkm_rows_carries_point_binary_left_power bpvi_c_bls_mkm_rows_carries_point_binary_left_power. ((forall bpvi_i_bls_mkm_rows_carries_point_binary_left_power. (exists bpvi_repeat_gap_bls_mkm_rows_carries_point_binary_left_power. bpvi_repeat_gap_bls_mkm_rows_carries_point_binary_left_power + S bpvi_i_bls_mkm_rows_carries_point_binary_left_power = S bls_index_mkm_rows_carries_point_binary_left) -> (((exists bpvi_h_bls_mkm_rows_carries_point_binary_left_power_repeat. bpvi_h_bls_mkm_rows_carries_point_binary_left_power_repeat + S (p) = S ((S (bpvi_i_bls_mkm_rows_carries_point_binary_left_power)) * bpvi_c_bls_mkm_rows_carries_point_binary_left_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_left_power_repeat. bpvi_b_bls_mkm_rows_carries_point_binary_left_power = bpvi_q_bls_mkm_rows_carries_point_binary_left_power_repeat * S ((S (bpvi_i_bls_mkm_rows_carries_point_binary_left_power)) * bpvi_c_bls_mkm_rows_carries_point_binary_left_power) + (p)))) /\ (exists bpvi_u_bls_mkm_rows_carries_point_binary_left_power bpvi_v_bls_mkm_rows_carries_point_binary_left_power. ((((exists bpvi_h_bls_mkm_rows_carries_point_binary_left_power_start. bpvi_h_bls_mkm_rows_carries_point_binary_left_power_start + S (1) = S ((S (0)) * bpvi_v_bls_mkm_rows_carries_point_binary_left_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_left_power_start. bpvi_u_bls_mkm_rows_carries_point_binary_left_power = bpvi_q_bls_mkm_rows_carries_point_binary_left_power_start * S ((S (0)) * bpvi_v_bls_mkm_rows_carries_point_binary_left_power) + (1))) /\ ((((exists bpvi_h_bls_mkm_rows_carries_point_binary_left_power_terminal. bpvi_h_bls_mkm_rows_carries_point_binary_left_power_terminal + S (bls_power_mkm_rows_carries_point_binary_left) = S ((S (S bls_index_mkm_rows_carries_point_binary_left)) * bpvi_v_bls_mkm_rows_carries_point_binary_left_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_left_power_terminal. bpvi_u_bls_mkm_rows_carries_point_binary_left_power = bpvi_q_bls_mkm_rows_carries_point_binary_left_power_terminal * S ((S (S bls_index_mkm_rows_carries_point_binary_left)) * bpvi_v_bls_mkm_rows_carries_point_binary_left_power) + (bls_power_mkm_rows_carries_point_binary_left))) /\ forall bpvi_j_bls_mkm_rows_carries_point_binary_left_power. (exists bpvi_product_gap_bls_mkm_rows_carries_point_binary_left_power. bpvi_product_gap_bls_mkm_rows_carries_point_binary_left_power + S bpvi_j_bls_mkm_rows_carries_point_binary_left_power = S bls_index_mkm_rows_carries_point_binary_left) -> exists bpvi_factor_bls_mkm_rows_carries_point_binary_left_power bpvi_partial_bls_mkm_rows_carries_point_binary_left_power bpvi_successor_bls_mkm_rows_carries_point_binary_left_power. ((((exists bpvi_h_bls_mkm_rows_carries_point_binary_left_power_factor. bpvi_h_bls_mkm_rows_carries_point_binary_left_power_factor + S (bpvi_factor_bls_mkm_rows_carries_point_binary_left_power) = S ((S (bpvi_j_bls_mkm_rows_carries_point_binary_left_power)) * bpvi_c_bls_mkm_rows_carries_point_binary_left_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_left_power_factor. bpvi_b_bls_mkm_rows_carries_point_binary_left_power = bpvi_q_bls_mkm_rows_carries_point_binary_left_power_factor * S ((S (bpvi_j_bls_mkm_rows_carries_point_binary_left_power)) * bpvi_c_bls_mkm_rows_carries_point_binary_left_power) + (bpvi_factor_bls_mkm_rows_carries_point_binary_left_power))) /\ ((((exists bpvi_h_bls_mkm_rows_carries_point_binary_left_power_partial. bpvi_h_bls_mkm_rows_carries_point_binary_left_power_partial + S (bpvi_partial_bls_mkm_rows_carries_point_binary_left_power) = S ((S (bpvi_j_bls_mkm_rows_carries_point_binary_left_power)) * bpvi_v_bls_mkm_rows_carries_point_binary_left_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_left_power_partial. bpvi_u_bls_mkm_rows_carries_point_binary_left_power = bpvi_q_bls_mkm_rows_carries_point_binary_left_power_partial * S ((S (bpvi_j_bls_mkm_rows_carries_point_binary_left_power)) * bpvi_v_bls_mkm_rows_carries_point_binary_left_power) + (bpvi_partial_bls_mkm_rows_carries_point_binary_left_power))) /\ ((((exists bpvi_h_bls_mkm_rows_carries_point_binary_left_power_successor. bpvi_h_bls_mkm_rows_carries_point_binary_left_power_successor + S (bpvi_successor_bls_mkm_rows_carries_point_binary_left_power) = S ((S (S bpvi_j_bls_mkm_rows_carries_point_binary_left_power)) * bpvi_v_bls_mkm_rows_carries_point_binary_left_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_left_power_successor. bpvi_u_bls_mkm_rows_carries_point_binary_left_power = bpvi_q_bls_mkm_rows_carries_point_binary_left_power_successor * S ((S (S bpvi_j_bls_mkm_rows_carries_point_binary_left_power)) * bpvi_v_bls_mkm_rows_carries_point_binary_left_power) + (bpvi_successor_bls_mkm_rows_carries_point_binary_left_power))) /\ bpvi_successor_bls_mkm_rows_carries_point_binary_left_power = bpvi_partial_bls_mkm_rows_carries_point_binary_left_power * bpvi_factor_bls_mkm_rows_carries_point_binary_left_power)))))))) /\ ((((exists ff_h_bls_mkm_rows_carries_point_binary_left_quotient_entry. ff_h_bls_mkm_rows_carries_point_binary_left_quotient_entry + S (bls_quotient_mkm_rows_carries_point_binary_left) = S ((S (bls_index_mkm_rows_carries_point_binary_left)) * mkm_lc_rows_carries_point_binary)) /\ exists ff_q_bls_mkm_rows_carries_point_binary_left_quotient_entry. mkm_lb_rows_carries_point_binary = ff_q_bls_mkm_rows_carries_point_binary_left_quotient_entry * S ((S (bls_index_mkm_rows_carries_point_binary_left)) * mkm_lc_rows_carries_point_binary) + (bls_quotient_mkm_rows_carries_point_binary_left))) /\ ((mkm_partial_rows_carries_point = bls_power_mkm_rows_carries_point_binary_left * bls_quotient_mkm_rows_carries_point_binary_left + bls_remainder_mkm_rows_carries_point_binary_left /\ exists bls_remainder_gap_mkm_rows_carries_point_binary_left_division. bls_remainder_gap_mkm_rows_carries_point_binary_left_division + S (bls_remainder_mkm_rows_carries_point_binary_left) = bls_power_mkm_rows_carries_point_binary_left))))) /\ ((forall bls_index_mkm_rows_carries_point_binary_right. (exists bls_gap_mkm_rows_carries_point_binary_right_bound. bls_gap_mkm_rows_carries_point_binary_right_bound + S (bls_index_mkm_rows_carries_point_binary_right) = (mkm_partial_rows_carries_point + mkm_value_rows_carries_point)) -> exists bls_power_mkm_rows_carries_point_binary_right bls_quotient_mkm_rows_carries_point_binary_right bls_remainder_mkm_rows_carries_point_binary_right. ((exists bpvi_b_bls_mkm_rows_carries_point_binary_right_power bpvi_c_bls_mkm_rows_carries_point_binary_right_power. ((forall bpvi_i_bls_mkm_rows_carries_point_binary_right_power. (exists bpvi_repeat_gap_bls_mkm_rows_carries_point_binary_right_power. bpvi_repeat_gap_bls_mkm_rows_carries_point_binary_right_power + S bpvi_i_bls_mkm_rows_carries_point_binary_right_power = S bls_index_mkm_rows_carries_point_binary_right) -> (((exists bpvi_h_bls_mkm_rows_carries_point_binary_right_power_repeat. bpvi_h_bls_mkm_rows_carries_point_binary_right_power_repeat + S (p) = S ((S (bpvi_i_bls_mkm_rows_carries_point_binary_right_power)) * bpvi_c_bls_mkm_rows_carries_point_binary_right_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_right_power_repeat. bpvi_b_bls_mkm_rows_carries_point_binary_right_power = bpvi_q_bls_mkm_rows_carries_point_binary_right_power_repeat * S ((S (bpvi_i_bls_mkm_rows_carries_point_binary_right_power)) * bpvi_c_bls_mkm_rows_carries_point_binary_right_power) + (p)))) /\ (exists bpvi_u_bls_mkm_rows_carries_point_binary_right_power bpvi_v_bls_mkm_rows_carries_point_binary_right_power. ((((exists bpvi_h_bls_mkm_rows_carries_point_binary_right_power_start. bpvi_h_bls_mkm_rows_carries_point_binary_right_power_start + S (1) = S ((S (0)) * bpvi_v_bls_mkm_rows_carries_point_binary_right_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_right_power_start. bpvi_u_bls_mkm_rows_carries_point_binary_right_power = bpvi_q_bls_mkm_rows_carries_point_binary_right_power_start * S ((S (0)) * bpvi_v_bls_mkm_rows_carries_point_binary_right_power) + (1))) /\ ((((exists bpvi_h_bls_mkm_rows_carries_point_binary_right_power_terminal. bpvi_h_bls_mkm_rows_carries_point_binary_right_power_terminal + S (bls_power_mkm_rows_carries_point_binary_right) = S ((S (S bls_index_mkm_rows_carries_point_binary_right)) * bpvi_v_bls_mkm_rows_carries_point_binary_right_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_right_power_terminal. bpvi_u_bls_mkm_rows_carries_point_binary_right_power = bpvi_q_bls_mkm_rows_carries_point_binary_right_power_terminal * S ((S (S bls_index_mkm_rows_carries_point_binary_right)) * bpvi_v_bls_mkm_rows_carries_point_binary_right_power) + (bls_power_mkm_rows_carries_point_binary_right))) /\ forall bpvi_j_bls_mkm_rows_carries_point_binary_right_power. (exists bpvi_product_gap_bls_mkm_rows_carries_point_binary_right_power. bpvi_product_gap_bls_mkm_rows_carries_point_binary_right_power + S bpvi_j_bls_mkm_rows_carries_point_binary_right_power = S bls_index_mkm_rows_carries_point_binary_right) -> exists bpvi_factor_bls_mkm_rows_carries_point_binary_right_power bpvi_partial_bls_mkm_rows_carries_point_binary_right_power bpvi_successor_bls_mkm_rows_carries_point_binary_right_power. ((((exists bpvi_h_bls_mkm_rows_carries_point_binary_right_power_factor. bpvi_h_bls_mkm_rows_carries_point_binary_right_power_factor + S (bpvi_factor_bls_mkm_rows_carries_point_binary_right_power) = S ((S (bpvi_j_bls_mkm_rows_carries_point_binary_right_power)) * bpvi_c_bls_mkm_rows_carries_point_binary_right_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_right_power_factor. bpvi_b_bls_mkm_rows_carries_point_binary_right_power = bpvi_q_bls_mkm_rows_carries_point_binary_right_power_factor * S ((S (bpvi_j_bls_mkm_rows_carries_point_binary_right_power)) * bpvi_c_bls_mkm_rows_carries_point_binary_right_power) + (bpvi_factor_bls_mkm_rows_carries_point_binary_right_power))) /\ ((((exists bpvi_h_bls_mkm_rows_carries_point_binary_right_power_partial. bpvi_h_bls_mkm_rows_carries_point_binary_right_power_partial + S (bpvi_partial_bls_mkm_rows_carries_point_binary_right_power) = S ((S (bpvi_j_bls_mkm_rows_carries_point_binary_right_power)) * bpvi_v_bls_mkm_rows_carries_point_binary_right_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_right_power_partial. bpvi_u_bls_mkm_rows_carries_point_binary_right_power = bpvi_q_bls_mkm_rows_carries_point_binary_right_power_partial * S ((S (bpvi_j_bls_mkm_rows_carries_point_binary_right_power)) * bpvi_v_bls_mkm_rows_carries_point_binary_right_power) + (bpvi_partial_bls_mkm_rows_carries_point_binary_right_power))) /\ ((((exists bpvi_h_bls_mkm_rows_carries_point_binary_right_power_successor. bpvi_h_bls_mkm_rows_carries_point_binary_right_power_successor + S (bpvi_successor_bls_mkm_rows_carries_point_binary_right_power) = S ((S (S bpvi_j_bls_mkm_rows_carries_point_binary_right_power)) * bpvi_v_bls_mkm_rows_carries_point_binary_right_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_right_power_successor. bpvi_u_bls_mkm_rows_carries_point_binary_right_power = bpvi_q_bls_mkm_rows_carries_point_binary_right_power_successor * S ((S (S bpvi_j_bls_mkm_rows_carries_point_binary_right_power)) * bpvi_v_bls_mkm_rows_carries_point_binary_right_power) + (bpvi_successor_bls_mkm_rows_carries_point_binary_right_power))) /\ bpvi_successor_bls_mkm_rows_carries_point_binary_right_power = bpvi_partial_bls_mkm_rows_carries_point_binary_right_power * bpvi_factor_bls_mkm_rows_carries_point_binary_right_power)))))))) /\ ((((exists ff_h_bls_mkm_rows_carries_point_binary_right_quotient_entry. ff_h_bls_mkm_rows_carries_point_binary_right_quotient_entry + S (bls_quotient_mkm_rows_carries_point_binary_right) = S ((S (bls_index_mkm_rows_carries_point_binary_right)) * mkm_rc_rows_carries_point_binary)) /\ exists ff_q_bls_mkm_rows_carries_point_binary_right_quotient_entry. mkm_rb_rows_carries_point_binary = ff_q_bls_mkm_rows_carries_point_binary_right_quotient_entry * S ((S (bls_index_mkm_rows_carries_point_binary_right)) * mkm_rc_rows_carries_point_binary) + (bls_quotient_mkm_rows_carries_point_binary_right))) /\ ((mkm_value_rows_carries_point = bls_power_mkm_rows_carries_point_binary_right * bls_quotient_mkm_rows_carries_point_binary_right + bls_remainder_mkm_rows_carries_point_binary_right /\ exists bls_remainder_gap_mkm_rows_carries_point_binary_right_division. bls_remainder_gap_mkm_rows_carries_point_binary_right_division + S (bls_remainder_mkm_rows_carries_point_binary_right) = bls_power_mkm_rows_carries_point_binary_right))))) /\ ((forall bls_index_mkm_rows_carries_point_binary_total. (exists bls_gap_mkm_rows_carries_point_binary_total_bound. bls_gap_mkm_rows_carries_point_binary_total_bound + S (bls_index_mkm_rows_carries_point_binary_total) = (mkm_partial_rows_carries_point + mkm_value_rows_carries_point)) -> exists bls_power_mkm_rows_carries_point_binary_total bls_quotient_mkm_rows_carries_point_binary_total bls_remainder_mkm_rows_carries_point_binary_total. ((exists bpvi_b_bls_mkm_rows_carries_point_binary_total_power bpvi_c_bls_mkm_rows_carries_point_binary_total_power. ((forall bpvi_i_bls_mkm_rows_carries_point_binary_total_power. (exists bpvi_repeat_gap_bls_mkm_rows_carries_point_binary_total_power. bpvi_repeat_gap_bls_mkm_rows_carries_point_binary_total_power + S bpvi_i_bls_mkm_rows_carries_point_binary_total_power = S bls_index_mkm_rows_carries_point_binary_total) -> (((exists bpvi_h_bls_mkm_rows_carries_point_binary_total_power_repeat. bpvi_h_bls_mkm_rows_carries_point_binary_total_power_repeat + S (p) = S ((S (bpvi_i_bls_mkm_rows_carries_point_binary_total_power)) * bpvi_c_bls_mkm_rows_carries_point_binary_total_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_total_power_repeat. bpvi_b_bls_mkm_rows_carries_point_binary_total_power = bpvi_q_bls_mkm_rows_carries_point_binary_total_power_repeat * S ((S (bpvi_i_bls_mkm_rows_carries_point_binary_total_power)) * bpvi_c_bls_mkm_rows_carries_point_binary_total_power) + (p)))) /\ (exists bpvi_u_bls_mkm_rows_carries_point_binary_total_power bpvi_v_bls_mkm_rows_carries_point_binary_total_power. ((((exists bpvi_h_bls_mkm_rows_carries_point_binary_total_power_start. bpvi_h_bls_mkm_rows_carries_point_binary_total_power_start + S (1) = S ((S (0)) * bpvi_v_bls_mkm_rows_carries_point_binary_total_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_total_power_start. bpvi_u_bls_mkm_rows_carries_point_binary_total_power = bpvi_q_bls_mkm_rows_carries_point_binary_total_power_start * S ((S (0)) * bpvi_v_bls_mkm_rows_carries_point_binary_total_power) + (1))) /\ ((((exists bpvi_h_bls_mkm_rows_carries_point_binary_total_power_terminal. bpvi_h_bls_mkm_rows_carries_point_binary_total_power_terminal + S (bls_power_mkm_rows_carries_point_binary_total) = S ((S (S bls_index_mkm_rows_carries_point_binary_total)) * bpvi_v_bls_mkm_rows_carries_point_binary_total_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_total_power_terminal. bpvi_u_bls_mkm_rows_carries_point_binary_total_power = bpvi_q_bls_mkm_rows_carries_point_binary_total_power_terminal * S ((S (S bls_index_mkm_rows_carries_point_binary_total)) * bpvi_v_bls_mkm_rows_carries_point_binary_total_power) + (bls_power_mkm_rows_carries_point_binary_total))) /\ forall bpvi_j_bls_mkm_rows_carries_point_binary_total_power. (exists bpvi_product_gap_bls_mkm_rows_carries_point_binary_total_power. bpvi_product_gap_bls_mkm_rows_carries_point_binary_total_power + S bpvi_j_bls_mkm_rows_carries_point_binary_total_power = S bls_index_mkm_rows_carries_point_binary_total) -> exists bpvi_factor_bls_mkm_rows_carries_point_binary_total_power bpvi_partial_bls_mkm_rows_carries_point_binary_total_power bpvi_successor_bls_mkm_rows_carries_point_binary_total_power. ((((exists bpvi_h_bls_mkm_rows_carries_point_binary_total_power_factor. bpvi_h_bls_mkm_rows_carries_point_binary_total_power_factor + S (bpvi_factor_bls_mkm_rows_carries_point_binary_total_power) = S ((S (bpvi_j_bls_mkm_rows_carries_point_binary_total_power)) * bpvi_c_bls_mkm_rows_carries_point_binary_total_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_total_power_factor. bpvi_b_bls_mkm_rows_carries_point_binary_total_power = bpvi_q_bls_mkm_rows_carries_point_binary_total_power_factor * S ((S (bpvi_j_bls_mkm_rows_carries_point_binary_total_power)) * bpvi_c_bls_mkm_rows_carries_point_binary_total_power) + (bpvi_factor_bls_mkm_rows_carries_point_binary_total_power))) /\ ((((exists bpvi_h_bls_mkm_rows_carries_point_binary_total_power_partial. bpvi_h_bls_mkm_rows_carries_point_binary_total_power_partial + S (bpvi_partial_bls_mkm_rows_carries_point_binary_total_power) = S ((S (bpvi_j_bls_mkm_rows_carries_point_binary_total_power)) * bpvi_v_bls_mkm_rows_carries_point_binary_total_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_total_power_partial. bpvi_u_bls_mkm_rows_carries_point_binary_total_power = bpvi_q_bls_mkm_rows_carries_point_binary_total_power_partial * S ((S (bpvi_j_bls_mkm_rows_carries_point_binary_total_power)) * bpvi_v_bls_mkm_rows_carries_point_binary_total_power) + (bpvi_partial_bls_mkm_rows_carries_point_binary_total_power))) /\ ((((exists bpvi_h_bls_mkm_rows_carries_point_binary_total_power_successor. bpvi_h_bls_mkm_rows_carries_point_binary_total_power_successor + S (bpvi_successor_bls_mkm_rows_carries_point_binary_total_power) = S ((S (S bpvi_j_bls_mkm_rows_carries_point_binary_total_power)) * bpvi_v_bls_mkm_rows_carries_point_binary_total_power)) /\ exists bpvi_q_bls_mkm_rows_carries_point_binary_total_power_successor. bpvi_u_bls_mkm_rows_carries_point_binary_total_power = bpvi_q_bls_mkm_rows_carries_point_binary_total_power_successor * S ((S (S bpvi_j_bls_mkm_rows_carries_point_binary_total_power)) * bpvi_v_bls_mkm_rows_carries_point_binary_total_power) + (bpvi_successor_bls_mkm_rows_carries_point_binary_total_power))) /\ bpvi_successor_bls_mkm_rows_carries_point_binary_total_power = bpvi_partial_bls_mkm_rows_carries_point_binary_total_power * bpvi_factor_bls_mkm_rows_carries_point_binary_total_power)))))))) /\ ((((exists ff_h_bls_mkm_rows_carries_point_binary_total_quotient_entry. ff_h_bls_mkm_rows_carries_point_binary_total_quotient_entry + S (bls_quotient_mkm_rows_carries_point_binary_total) = S ((S (bls_index_mkm_rows_carries_point_binary_total)) * mkm_tc_rows_carries_point_binary)) /\ exists ff_q_bls_mkm_rows_carries_point_binary_total_quotient_entry. mkm_tb_rows_carries_point_binary = ff_q_bls_mkm_rows_carries_point_binary_total_quotient_entry * S ((S (bls_index_mkm_rows_carries_point_binary_total)) * mkm_tc_rows_carries_point_binary) + (bls_quotient_mkm_rows_carries_point_binary_total))) /\ ((mkm_partial_rows_carries_point + mkm_value_rows_carries_point = bls_power_mkm_rows_carries_point_binary_total * bls_quotient_mkm_rows_carries_point_binary_total + bls_remainder_mkm_rows_carries_point_binary_total /\ exists bls_remainder_gap_mkm_rows_carries_point_binary_total_division. bls_remainder_gap_mkm_rows_carries_point_binary_total_division + S (bls_remainder_mkm_rows_carries_point_binary_total) = bls_power_mkm_rows_carries_point_binary_total))))) /\ ((forall kmc_index_mkm_rows_carries_point_binary_carries. (exists bcf_lt_gap_mkm_rows_carries_point_binary_carries_bound. bcf_lt_gap_mkm_rows_carries_point_binary_carries_bound + S (kmc_index_mkm_rows_carries_point_binary_carries) = mkm_partial_rows_carries_point + mkm_value_rows_carries_point) -> exists kmc_left_mkm_rows_carries_point_binary_carries kmc_right_mkm_rows_carries_point_binary_carries kmc_total_mkm_rows_carries_point_binary_carries kmc_bit_mkm_rows_carries_point_binary_carries. (((exists fs_h_mkm_rows_carries_point_binary_carries_left. fs_h_mkm_rows_carries_point_binary_carries_left + S (kmc_left_mkm_rows_carries_point_binary_carries) = S ((S (kmc_index_mkm_rows_carries_point_binary_carries)) * mkm_lc_rows_carries_point_binary)) /\ exists fs_q_mkm_rows_carries_point_binary_carries_left. mkm_lb_rows_carries_point_binary = fs_q_mkm_rows_carries_point_binary_carries_left * S ((S (kmc_index_mkm_rows_carries_point_binary_carries)) * mkm_lc_rows_carries_point_binary) + (kmc_left_mkm_rows_carries_point_binary_carries))) /\ ((((exists fs_h_mkm_rows_carries_point_binary_carries_right. fs_h_mkm_rows_carries_point_binary_carries_right + S (kmc_right_mkm_rows_carries_point_binary_carries) = S ((S (kmc_index_mkm_rows_carries_point_binary_carries)) * mkm_rc_rows_carries_point_binary)) /\ exists fs_q_mkm_rows_carries_point_binary_carries_right. mkm_rb_rows_carries_point_binary = fs_q_mkm_rows_carries_point_binary_carries_right * S ((S (kmc_index_mkm_rows_carries_point_binary_carries)) * mkm_rc_rows_carries_point_binary) + (kmc_right_mkm_rows_carries_point_binary_carries))) /\ ((((exists fs_h_mkm_rows_carries_point_binary_carries_total. fs_h_mkm_rows_carries_point_binary_carries_total + S (kmc_total_mkm_rows_carries_point_binary_carries) = S ((S (kmc_index_mkm_rows_carries_point_binary_carries)) * mkm_tc_rows_carries_point_binary)) /\ exists fs_q_mkm_rows_carries_point_binary_carries_total. mkm_tb_rows_carries_point_binary = fs_q_mkm_rows_carries_point_binary_carries_total * S ((S (kmc_index_mkm_rows_carries_point_binary_carries)) * mkm_tc_rows_carries_point_binary) + (kmc_total_mkm_rows_carries_point_binary_carries))) /\ ((((exists fs_h_mkm_rows_carries_point_binary_carries_bit. fs_h_mkm_rows_carries_point_binary_carries_bit + S (kmc_bit_mkm_rows_carries_point_binary_carries) = S ((S (kmc_index_mkm_rows_carries_point_binary_carries)) * mkm_cc_rows_carries_point_binary)) /\ exists fs_q_mkm_rows_carries_point_binary_carries_bit. mkm_cb_rows_carries_point_binary = fs_q_mkm_rows_carries_point_binary_carries_bit * S ((S (kmc_index_mkm_rows_carries_point_binary_carries)) * mkm_cc_rows_carries_point_binary) + (kmc_bit_mkm_rows_carries_point_binary_carries))) /\ (((kmc_bit_mkm_rows_carries_point_binary_carries = 0 /\ kmc_total_mkm_rows_carries_point_binary_carries = kmc_left_mkm_rows_carries_point_binary_carries + kmc_right_mkm_rows_carries_point_binary_carries) \/ (kmc_bit_mkm_rows_carries_point_binary_carries = 1 /\ kmc_total_mkm_rows_carries_point_binary_carries = S (kmc_left_mkm_rows_carries_point_binary_carries + kmc_right_mkm_rows_carries_point_binary_carries)))))))) /\ (((exists ff_u_mkm_rows_carries_point_binary_count_sum ff_v_mkm_rows_carries_point_binary_count_sum. ((((exists ff_h_mkm_rows_carries_point_binary_count_sum_start. ff_h_mkm_rows_carries_point_binary_count_sum_start + S (0) = S ((S (0)) * ff_v_mkm_rows_carries_point_binary_count_sum)) /\ exists ff_q_mkm_rows_carries_point_binary_count_sum_start. ff_u_mkm_rows_carries_point_binary_count_sum = ff_q_mkm_rows_carries_point_binary_count_sum_start * S ((S (0)) * ff_v_mkm_rows_carries_point_binary_count_sum) + (0))) /\ ((((exists ff_h_mkm_rows_carries_point_binary_count_sum_terminal. ff_h_mkm_rows_carries_point_binary_count_sum_terminal + S ((mkm_count_rows_carries_point)) = S ((S ((mkm_partial_rows_carries_point + mkm_value_rows_carries_point))) * ff_v_mkm_rows_carries_point_binary_count_sum)) /\ exists ff_q_mkm_rows_carries_point_binary_count_sum_terminal. ff_u_mkm_rows_carries_point_binary_count_sum = ff_q_mkm_rows_carries_point_binary_count_sum_terminal * S ((S ((mkm_partial_rows_carries_point + mkm_value_rows_carries_point))) * ff_v_mkm_rows_carries_point_binary_count_sum) + ((mkm_count_rows_carries_point)))) /\ forall ff_i_mkm_rows_carries_point_binary_count_sum. (exists ff_lt_mkm_rows_carries_point_binary_count_sum_bound. ff_lt_mkm_rows_carries_point_binary_count_sum_bound + S ff_i_mkm_rows_carries_point_binary_count_sum = (mkm_partial_rows_carries_point + mkm_value_rows_carries_point)) -> exists ff_a_mkm_rows_carries_point_binary_count_sum ff_r_mkm_rows_carries_point_binary_count_sum ff_s_mkm_rows_carries_point_binary_count_sum. ((((exists ff_h_mkm_rows_carries_point_binary_count_sum_summand. ff_h_mkm_rows_carries_point_binary_count_sum_summand + S (ff_a_mkm_rows_carries_point_binary_count_sum) = S ((S (ff_i_mkm_rows_carries_point_binary_count_sum)) * mkm_cc_rows_carries_point_binary)) /\ exists ff_q_mkm_rows_carries_point_binary_count_sum_summand. mkm_cb_rows_carries_point_binary = ff_q_mkm_rows_carries_point_binary_count_sum_summand * S ((S (ff_i_mkm_rows_carries_point_binary_count_sum)) * mkm_cc_rows_carries_point_binary) + (ff_a_mkm_rows_carries_point_binary_count_sum))) /\ ((((exists ff_h_mkm_rows_carries_point_binary_count_sum_partial. ff_h_mkm_rows_carries_point_binary_count_sum_partial + S (ff_r_mkm_rows_carries_point_binary_count_sum) = S ((S (ff_i_mkm_rows_carries_point_binary_count_sum)) * ff_v_mkm_rows_carries_point_binary_count_sum)) /\ exists ff_q_mkm_rows_carries_point_binary_count_sum_partial. ff_u_mkm_rows_carries_point_binary_count_sum = ff_q_mkm_rows_carries_point_binary_count_sum_partial * S ((S (ff_i_mkm_rows_carries_point_binary_count_sum)) * ff_v_mkm_rows_carries_point_binary_count_sum) + (ff_r_mkm_rows_carries_point_binary_count_sum))) /\ ((((exists ff_h_mkm_rows_carries_point_binary_count_sum_successor. ff_h_mkm_rows_carries_point_binary_count_sum_successor + S (ff_s_mkm_rows_carries_point_binary_count_sum) = S ((S (S ff_i_mkm_rows_carries_point_binary_count_sum)) * ff_v_mkm_rows_carries_point_binary_count_sum)) /\ exists ff_q_mkm_rows_carries_point_binary_count_sum_successor. ff_u_mkm_rows_carries_point_binary_count_sum = ff_q_mkm_rows_carries_point_binary_count_sum_successor * S ((S (S ff_i_mkm_rows_carries_point_binary_count_sum)) * ff_v_mkm_rows_carries_point_binary_count_sum) + (ff_s_mkm_rows_carries_point_binary_count_sum))) /\ ff_s_mkm_rows_carries_point_binary_count_sum = ff_r_mkm_rows_carries_point_binary_count_sum + ff_a_mkm_rows_carries_point_binary_count_sum)))))) /\ (forall ff_i_mkm_rows_carries_point_binary_count_bits. (exists ff_lt_mkm_rows_carries_point_binary_count_bits_bound. ff_lt_mkm_rows_carries_point_binary_count_bits_bound + S ff_i_mkm_rows_carries_point_binary_count_bits = (mkm_partial_rows_carries_point + mkm_value_rows_carries_point)) -> exists ff_bit_mkm_rows_carries_point_binary_count_bits. ((((exists ff_h_mkm_rows_carries_point_binary_count_bits_decoded. ff_h_mkm_rows_carries_point_binary_count_bits_decoded + S (ff_bit_mkm_rows_carries_point_binary_count_bits) = S ((S (ff_i_mkm_rows_carries_point_binary_count_bits)) * mkm_cc_rows_carries_point_binary)) /\ exists ff_q_mkm_rows_carries_point_binary_count_bits_decoded. mkm_cb_rows_carries_point_binary = ff_q_mkm_rows_carries_point_binary_count_bits_decoded * S ((S (ff_i_mkm_rows_carries_point_binary_count_bits)) * mkm_cc_rows_carries_point_binary) + (ff_bit_mkm_rows_carries_point_binary_count_bits))) /\ (ff_bit_mkm_rows_carries_point_binary_count_bits = 0 \/ ff_bit_mkm_rows_carries_point_binary_count_bits = 1)))))))))))))

Constructive proof overview

Generated structural guide

Apply the actual checked binary Kummer proof to every decoded addition row; the resulting certificate contains real quotient columns and carry bits.

The unchanged tactic script uses 2 declared prerequisites and contains 64 exact native proof lines.

Alpha v34 checked-use · first admitted v27 · independently kernel and Lean verified; not Stable

Proof neighborhood

Direct dependencies

beta_at_unique Stable theorem; checked-use authorized kummer_binomial_carry_bit_count Alpha theorem; checked-use authorized

Direct dependents

Formal native tactic body

Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This exact body belongs to a complete independently kernel-checked constructive proof bundle and has Alpha checked-use authority; it does not imply Stable membership.

Read the argument

Proof checkpoints

64 script commands · 15 reading checkpoints · 3 local claims

This is a reading aid, not a new proof or a proof-tree certificate. Checkpoint groups are consecutive commands, not inferred branch boundaries. Every step links to the preserved script.

Long local formulas use this family’s existing definitions. Each new abbreviation was expanded back to the identical native formula, including its free-variable context. The original edition is preserved below.

01Fix variables and assumptionsL1–10

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

  1. L1
    intro p
  2. L2
    intro b
  3. L3
    intro c
  4. L4
    intro sb
  5. L5
    intro sc
  6. L6
    intro cb
  7. L7
    intro cc
  8. L8
    intro vb
  9. L9
    intro vc
  10. L10
    intro l
02Fix variables and assumptionsL11–15

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

  1. L11
    intro hp
  2. L12
    intro hbin
  3. L13
    intro hval
  4. L14
    intro i
  5. L15
    intro hi
03Establish hpointL16–19

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

  1. L16
    have hpoint : ∃ mkm_value_rows_binpoint. ∃ mkm_partial_rows_binpoint. ∃ mkm_factor_rows_binpoint. BetaAt(b,c,i,mkm_value_rows_binpoint) ∧ (BetaAt(sb,sc,i,mkm_partial_rows_binpoint) ∧ (Choose(mkm_partial_rows_binpoint + mkm_value_rows_binpoint,mkm_partial_rows_binpoint,mkm_factor_rows_binpoint) ∧ BetaAt(cb,cc,i,mkm_factor_rows_binpoint)))Definitions: BetaAtChoose
  2. L17
    specialize hbin i
  3. L18
    apply hbin
  4. L19
    exact hi
04Separate the logical casesL20–25

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

  1. L20
    cases hpoint
  2. L21
    cases hpoint_witness
  3. L22
    cases hpoint_witness_witness
  4. L23
    cases hpoint_witness_witness_witness
  5. L24
    cases hpoint_witness_witness_witness_right
  6. L25
    cases hpoint_witness_witness_witness_right_right
05Establish hvalueL26–29

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

  1. L26
    have hvalue : ∃ mkm_value_rows_valpoint. ∃ mkm_exponent_rows_valpoint. BetaAt(cb,cc,i,mkm_value_rows_valpoint) ∧ (BetaAt(vb,vc,i,mkm_exponent_rows_valpoint) ∧ BoundedPowerValuation(p,mkm_value_rows_valpoint,mkm_value_rows_valpoint,mkm_exponent_rows_valpoint))Definitions: BetaAtBoundedPowerValuation
  2. L27
    specialize hval i
  3. L28
    apply hval
  4. L29
    exact hi
06Separate the logical casesL30–33

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

  1. L30
    cases hvalue
  2. L31
    cases hvalue_witness
  3. L32
    cases hvalue_witness_witness
  4. L33
    cases hvalue_witness_witness_right
07Establish hfactorL34–43

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

  1. L34
    have hfactor : x3 = x2
  2. L35
    specialize beta_at_unique cb
  3. L36
    specialize beta_at_unique cc
  4. L37
    specialize beta_at_unique i
  5. L38
    specialize beta_at_unique x3
  6. L39
    specialize beta_at_unique x2
  7. L40
    apply beta_at_unique
  8. L41
    exact hvalue_witness_witness_left
  9. L42
    exact hpoint_witness_witness_witness_right_right_right
  10. L43
    rewrite hfactor at hvalue_witness_witness_right_right
08Calculate and transport equalitiesL44–46

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

  1. L44
    rewrite hfactor at hvalue_witness_witness_right_right
  2. L45
    rewrite hfactor at hvalue_witness_witness_right_right
  3. L46
    rewrite hfactor at hvalue_witness_witness_right_right
09Construct an explicit witnessL47–49

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

  1. L47
    exists x
  2. L48
    exists x1
  3. L49
    exists x4
10Separate the logical casesL50–50

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

  1. L50
    split
11Use earlier factsL51–51

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

  1. L51
    exact hpoint_witness_witness_witness_left
12Separate the logical casesL52–52

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

  1. L52
    split
13Use earlier factsL53–53

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

  1. L53
    exact hpoint_witness_witness_witness_right_left
14Separate the logical casesL54–54

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

  1. L54
    split
15Use earlier factsL55–64

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

  1. L55
    exact hvalue_witness_witness_right_left
  2. L56
    specialize kummer_binomial_carry_bit_count p
  3. L57
    specialize kummer_binomial_carry_bit_count x1
  4. L58
    specialize kummer_binomial_carry_bit_count x
  5. L59
    specialize kummer_binomial_carry_bit_count x2
  6. L60
    specialize kummer_binomial_carry_bit_count x4
  7. L61
    apply kummer_binomial_carry_bit_count
  8. L62
    exact hp
  9. L63
    exact hpoint_witness_witness_witness_right_right_left
  10. L64
    exact hvalue_witness_witness_right_right

Library-wide reading audit

Original exact command ledger · 64 lines
  1. 0001intro p
  2. 0002intro b
  3. 0003intro c
  4. 0004intro sb
  5. 0005intro sc
  6. 0006intro cb
  7. 0007intro cc
  8. 0008intro vb
  9. 0009intro vc
  10. 0010intro l
  11. 0011intro hp
  12. 0012intro hbin
  13. 0013intro hval
  14. 0014intro i
  15. 0015intro hi
  16. 0016have hpoint : exists mkm_value_rows_binpoint mkm_partial_rows_binpoint mkm_factor_rows_binpoint. (((exists fs_h_mkm_rows_binpoint_source. fs_h_mkm_rows_binpoint_source + S (mkm_value_rows_binpoint) = S ((S (i)) * c)) /\ exists fs_q_mkm_rows_binpoint_source. b = fs_q_mkm_rows_binpoint_source * S ((S (i)) * c) + (mkm_value_rows_binpoint))) /\ ((((exists fs_h_mkm_rows_binpoint_partial. fs_h_mkm_rows_binpoint_partial + S (mkm_partial_rows_binpoint) = S ((S (i)) * sc)) /\ exists fs_q_mkm_rows_binpoint_partial. sb = fs_q_mkm_rows_binpoint_partial * S ((S (i)) * sc) + (mkm_partial_rows_binpoint))) /\ ((((exists bcf_lt_gap_mkm_rows_binpoint_choose_out_of_range. bcf_lt_gap_mkm_rows_binpoint_choose_out_of_range + S (mkm_partial_rows_binpoint + mkm_value_rows_binpoint) = mkm_partial_rows_binpoint) /\ mkm_factor_rows_binpoint = 0) \/ ((exists bcf_le_gap_mkm_rows_binpoint_choose_in_range. bcf_le_gap_mkm_rows_binpoint_choose_in_range + (mkm_partial_rows_binpoint) = mkm_partial_rows_binpoint + mkm_value_rows_binpoint) /\ (exists bcf_row_code_code_mkm_rows_binpoint_choose bcf_row_code_scale_mkm_rows_binpoint_choose bcf_row_scale_code_mkm_rows_binpoint_choose bcf_row_scale_scale_mkm_rows_binpoint_choose bcf_row_code_mkm_rows_binpoint_choose bcf_row_scale_mkm_rows_binpoint_choose. ((forall bcf_row_index_mkm_rows_binpoint_choose_table. (exists bcf_lt_gap_mkm_rows_binpoint_choose_table_row_bound. bcf_lt_gap_mkm_rows_binpoint_choose_table_row_bound + S (bcf_row_index_mkm_rows_binpoint_choose_table) = S (mkm_partial_rows_binpoint + mkm_value_rows_binpoint)) -> exists bcf_row_code_mkm_rows_binpoint_choose_table bcf_row_scale_mkm_rows_binpoint_choose_table. ((((exists bcf_height_mkm_rows_binpoint_choose_table_decoded_row_code. bcf_height_mkm_rows_binpoint_choose_table_decoded_row_code + S (bcf_row_code_mkm_rows_binpoint_choose_table) = S ((S (bcf_row_index_mkm_rows_binpoint_choose_table)) * bcf_row_code_scale_mkm_rows_binpoint_choose)) /\ exists bcf_quotient_mkm_rows_binpoint_choose_table_decoded_row_code. bcf_row_code_code_mkm_rows_binpoint_choose = bcf_quotient_mkm_rows_binpoint_choose_table_decoded_row_code * S ((S (bcf_row_index_mkm_rows_binpoint_choose_table)) * bcf_row_code_scale_mkm_rows_binpoint_choose) + (bcf_row_code_mkm_rows_binpoint_choose_table))) /\ ((((exists bcf_height_mkm_rows_binpoint_choose_table_decoded_row_scale. bcf_height_mkm_rows_binpoint_choose_table_decoded_row_scale + S (bcf_row_scale_mkm_rows_binpoint_choose_table) = S ((S (bcf_row_index_mkm_rows_binpoint_choose_table)) * bcf_row_scale_scale_mkm_rows_binpoint_choose)) /\ exists bcf_quotient_mkm_rows_binpoint_choose_table_decoded_row_scale. bcf_row_scale_code_mkm_rows_binpoint_choose = bcf_quotient_mkm_rows_binpoint_choose_table_decoded_row_scale * S ((S (bcf_row_index_mkm_rows_binpoint_choose_table)) * bcf_row_scale_scale_mkm_rows_binpoint_choose) + (bcf_row_scale_mkm_rows_binpoint_choose_table))) /\ ((bcf_row_index_mkm_rows_binpoint_choose_table = 0 /\ (forall bcf_index_mkm_rows_binpoint_choose_table_zero_row. (exists bcf_lt_gap_mkm_rows_binpoint_choose_table_zero_row_bound. bcf_lt_gap_mkm_rows_binpoint_choose_table_zero_row_bound + S (bcf_index_mkm_rows_binpoint_choose_table_zero_row) = S (mkm_partial_rows_binpoint + mkm_value_rows_binpoint)) -> exists bcf_value_mkm_rows_binpoint_choose_table_zero_row. ((((exists bcf_height_mkm_rows_binpoint_choose_table_zero_row_entry. bcf_height_mkm_rows_binpoint_choose_table_zero_row_entry + S (bcf_value_mkm_rows_binpoint_choose_table_zero_row) = S ((S (bcf_index_mkm_rows_binpoint_choose_table_zero_row)) * bcf_row_scale_mkm_rows_binpoint_choose_table)) /\ exists bcf_quotient_mkm_rows_binpoint_choose_table_zero_row_entry. bcf_row_code_mkm_rows_binpoint_choose_table = bcf_quotient_mkm_rows_binpoint_choose_table_zero_row_entry * S ((S (bcf_index_mkm_rows_binpoint_choose_table_zero_row)) * bcf_row_scale_mkm_rows_binpoint_choose_table) + (bcf_value_mkm_rows_binpoint_choose_table_zero_row))) /\ ((bcf_index_mkm_rows_binpoint_choose_table_zero_row = 0 /\ bcf_value_mkm_rows_binpoint_choose_table_zero_row = 1) \/ exists bcf_predecessor_mkm_rows_binpoint_choose_table_zero_row. bcf_index_mkm_rows_binpoint_choose_table_zero_row = S bcf_predecessor_mkm_rows_binpoint_choose_table_zero_row /\ bcf_value_mkm_rows_binpoint_choose_table_zero_row = 0)))) \/ exists bcf_predecessor_mkm_rows_binpoint_choose_table bcf_previous_code_mkm_rows_binpoint_choose_table bcf_previous_scale_mkm_rows_binpoint_choose_table. bcf_row_index_mkm_rows_binpoint_choose_table = S bcf_predecessor_mkm_rows_binpoint_choose_table /\ ((((exists bcf_height_mkm_rows_binpoint_choose_table_decoded_previous_code. bcf_height_mkm_rows_binpoint_choose_table_decoded_previous_code + S (bcf_previous_code_mkm_rows_binpoint_choose_table) = S ((S (bcf_predecessor_mkm_rows_binpoint_choose_table)) * bcf_row_code_scale_mkm_rows_binpoint_choose)) /\ exists bcf_quotient_mkm_rows_binpoint_choose_table_decoded_previous_code. bcf_row_code_code_mkm_rows_binpoint_choose = bcf_quotient_mkm_rows_binpoint_choose_table_decoded_previous_code * S ((S (bcf_predecessor_mkm_rows_binpoint_choose_table)) * bcf_row_code_scale_mkm_rows_binpoint_choose) + (bcf_previous_code_mkm_rows_binpoint_choose_table))) /\ ((((exists bcf_height_mkm_rows_binpoint_choose_table_decoded_previous_scale. bcf_height_mkm_rows_binpoint_choose_table_decoded_previous_scale + S (bcf_previous_scale_mkm_rows_binpoint_choose_table) = S ((S (bcf_predecessor_mkm_rows_binpoint_choose_table)) * bcf_row_scale_scale_mkm_rows_binpoint_choose)) /\ exists bcf_quotient_mkm_rows_binpoint_choose_table_decoded_previous_scale. bcf_row_scale_code_mkm_rows_binpoint_choose = bcf_quotient_mkm_rows_binpoint_choose_table_decoded_previous_scale * S ((S (bcf_predecessor_mkm_rows_binpoint_choose_table)) * bcf_row_scale_scale_mkm_rows_binpoint_choose) + (bcf_previous_scale_mkm_rows_binpoint_choose_table))) /\ (forall bcf_index_mkm_rows_binpoint_choose_table_row_step. (exists bcf_lt_gap_mkm_rows_binpoint_choose_table_row_step_bound. bcf_lt_gap_mkm_rows_binpoint_choose_table_row_step_bound + S (bcf_index_mkm_rows_binpoint_choose_table_row_step) = S (mkm_partial_rows_binpoint + mkm_value_rows_binpoint)) -> exists bcf_value_mkm_rows_binpoint_choose_table_row_step. ((((exists bcf_height_mkm_rows_binpoint_choose_table_row_step_entry. bcf_height_mkm_rows_binpoint_choose_table_row_step_entry + S (bcf_value_mkm_rows_binpoint_choose_table_row_step) = S ((S (bcf_index_mkm_rows_binpoint_choose_table_row_step)) * bcf_row_scale_mkm_rows_binpoint_choose_table)) /\ exists bcf_quotient_mkm_rows_binpoint_choose_table_row_step_entry. bcf_row_code_mkm_rows_binpoint_choose_table = bcf_quotient_mkm_rows_binpoint_choose_table_row_step_entry * S ((S (bcf_index_mkm_rows_binpoint_choose_table_row_step)) * bcf_row_scale_mkm_rows_binpoint_choose_table) + (bcf_value_mkm_rows_binpoint_choose_table_row_step))) /\ ((bcf_index_mkm_rows_binpoint_choose_table_row_step = 0 /\ bcf_value_mkm_rows_binpoint_choose_table_row_step = 1) \/ exists bcf_predecessor_mkm_rows_binpoint_choose_table_row_step bcf_left_mkm_rows_binpoint_choose_table_row_step bcf_right_mkm_rows_binpoint_choose_table_row_step. bcf_index_mkm_rows_binpoint_choose_table_row_step = S bcf_predecessor_mkm_rows_binpoint_choose_table_row_step /\ ((((exists bcf_height_mkm_rows_binpoint_choose_table_row_step_previous_left. bcf_height_mkm_rows_binpoint_choose_table_row_step_previous_left + S (bcf_left_mkm_rows_binpoint_choose_table_row_step) = S ((S (bcf_predecessor_mkm_rows_binpoint_choose_table_row_step)) * bcf_previous_scale_mkm_rows_binpoint_choose_table)) /\ exists bcf_quotient_mkm_rows_binpoint_choose_table_row_step_previous_left. bcf_previous_code_mkm_rows_binpoint_choose_table = bcf_quotient_mkm_rows_binpoint_choose_table_row_step_previous_left * S ((S (bcf_predecessor_mkm_rows_binpoint_choose_table_row_step)) * bcf_previous_scale_mkm_rows_binpoint_choose_table) + (bcf_left_mkm_rows_binpoint_choose_table_row_step))) /\ ((((exists bcf_height_mkm_rows_binpoint_choose_table_row_step_previous_right. bcf_height_mkm_rows_binpoint_choose_table_row_step_previous_right + S (bcf_right_mkm_rows_binpoint_choose_table_row_step) = S ((S (S (bcf_predecessor_mkm_rows_binpoint_choose_table_row_step))) * bcf_previous_scale_mkm_rows_binpoint_choose_table)) /\ exists bcf_quotient_mkm_rows_binpoint_choose_table_row_step_previous_right. bcf_previous_code_mkm_rows_binpoint_choose_table = bcf_quotient_mkm_rows_binpoint_choose_table_row_step_previous_right * S ((S (S (bcf_predecessor_mkm_rows_binpoint_choose_table_row_step))) * bcf_previous_scale_mkm_rows_binpoint_choose_table) + (bcf_right_mkm_rows_binpoint_choose_table_row_step))) /\ bcf_value_mkm_rows_binpoint_choose_table_row_step = bcf_left_mkm_rows_binpoint_choose_table_row_step + bcf_right_mkm_rows_binpoint_choose_table_row_step))))))))))) /\ ((((exists bcf_height_mkm_rows_binpoint_choose_decoded_row_code. bcf_height_mkm_rows_binpoint_choose_decoded_row_code + S (bcf_row_code_mkm_rows_binpoint_choose) = S ((S (mkm_partial_rows_binpoint + mkm_value_rows_binpoint)) * bcf_row_code_scale_mkm_rows_binpoint_choose)) /\ exists bcf_quotient_mkm_rows_binpoint_choose_decoded_row_code. bcf_row_code_code_mkm_rows_binpoint_choose = bcf_quotient_mkm_rows_binpoint_choose_decoded_row_code * S ((S (mkm_partial_rows_binpoint + mkm_value_rows_binpoint)) * bcf_row_code_scale_mkm_rows_binpoint_choose) + (bcf_row_code_mkm_rows_binpoint_choose))) /\ ((((exists bcf_height_mkm_rows_binpoint_choose_decoded_row_scale. bcf_height_mkm_rows_binpoint_choose_decoded_row_scale + S (bcf_row_scale_mkm_rows_binpoint_choose) = S ((S (mkm_partial_rows_binpoint + mkm_value_rows_binpoint)) * bcf_row_scale_scale_mkm_rows_binpoint_choose)) /\ exists bcf_quotient_mkm_rows_binpoint_choose_decoded_row_scale. bcf_row_scale_code_mkm_rows_binpoint_choose = bcf_quotient_mkm_rows_binpoint_choose_decoded_row_scale * S ((S (mkm_partial_rows_binpoint + mkm_value_rows_binpoint)) * bcf_row_scale_scale_mkm_rows_binpoint_choose) + (bcf_row_scale_mkm_rows_binpoint_choose))) /\ (((exists bcf_height_mkm_rows_binpoint_choose_decoded_value. bcf_height_mkm_rows_binpoint_choose_decoded_value + S (mkm_factor_rows_binpoint) = S ((S (mkm_partial_rows_binpoint)) * bcf_row_scale_mkm_rows_binpoint_choose)) /\ exists bcf_quotient_mkm_rows_binpoint_choose_decoded_value. bcf_row_code_mkm_rows_binpoint_choose = bcf_quotient_mkm_rows_binpoint_choose_decoded_value * S ((S (mkm_partial_rows_binpoint)) * bcf_row_scale_mkm_rows_binpoint_choose) + (mkm_factor_rows_binpoint))))))))) /\ (((exists fs_h_mkm_rows_binpoint_factor. fs_h_mkm_rows_binpoint_factor + S (mkm_factor_rows_binpoint) = S ((S (i)) * cc)) /\ exists fs_q_mkm_rows_binpoint_factor. cb = fs_q_mkm_rows_binpoint_factor * S ((S (i)) * cc) + (mkm_factor_rows_binpoint)))))
  17. 0017specialize hbin i
  18. 0018apply hbin
  19. 0019exact hi
  20. 0020cases hpoint
  21. 0021cases hpoint_witness
  22. 0022cases hpoint_witness_witness
  23. 0023cases hpoint_witness_witness_witness
  24. 0024cases hpoint_witness_witness_witness_right
  25. 0025cases hpoint_witness_witness_witness_right_right
  26. 0026have hvalue : exists mkm_value_rows_valpoint mkm_exponent_rows_valpoint. (((exists fs_h_mkm_rows_valpoint_source. fs_h_mkm_rows_valpoint_source + S (mkm_value_rows_valpoint) = S ((S (i)) * cc)) /\ exists fs_q_mkm_rows_valpoint_source. cb = fs_q_mkm_rows_valpoint_source * S ((S (i)) * cc) + (mkm_value_rows_valpoint))) /\ ((((exists fs_h_mkm_rows_valpoint_decoded. fs_h_mkm_rows_valpoint_decoded + S (mkm_exponent_rows_valpoint) = S ((S (i)) * vc)) /\ exists fs_q_mkm_rows_valpoint_decoded. vb = fs_q_mkm_rows_valpoint_decoded * S ((S (i)) * vc) + (mkm_exponent_rows_valpoint))) /\ (((exists bpv_gap_mkm_rows_valpoint_valuation_exponent_bound. bpv_gap_mkm_rows_valpoint_valuation_exponent_bound + mkm_exponent_rows_valpoint = (mkm_value_rows_valpoint)) /\ (exists bpv_result_mkm_rows_valpoint_valuation_selected. ((exists ff_b_mkm_rows_valpoint_valuation_selected_power ff_c_mkm_rows_valpoint_valuation_selected_power. ((forall ff_i_mkm_rows_valpoint_valuation_selected_power_repeat. (exists ff_lt_mkm_rows_valpoint_valuation_selected_power_repeat_bound. ff_lt_mkm_rows_valpoint_valuation_selected_power_repeat_bound + S ff_i_mkm_rows_valpoint_valuation_selected_power_repeat = mkm_exponent_rows_valpoint) -> (((exists ff_h_mkm_rows_valpoint_valuation_selected_power_repeat_decoded. ff_h_mkm_rows_valpoint_valuation_selected_power_repeat_decoded + S (p) = S ((S (ff_i_mkm_rows_valpoint_valuation_selected_power_repeat)) * ff_c_mkm_rows_valpoint_valuation_selected_power)) /\ exists ff_q_mkm_rows_valpoint_valuation_selected_power_repeat_decoded. ff_b_mkm_rows_valpoint_valuation_selected_power = ff_q_mkm_rows_valpoint_valuation_selected_power_repeat_decoded * S ((S (ff_i_mkm_rows_valpoint_valuation_selected_power_repeat)) * ff_c_mkm_rows_valpoint_valuation_selected_power) + (p)))) /\ (exists ff_u_mkm_rows_valpoint_valuation_selected_power_product ff_v_mkm_rows_valpoint_valuation_selected_power_product. ((((exists ff_h_mkm_rows_valpoint_valuation_selected_power_product_start. ff_h_mkm_rows_valpoint_valuation_selected_power_product_start + S (1) = S ((S (0)) * ff_v_mkm_rows_valpoint_valuation_selected_power_product)) /\ exists ff_q_mkm_rows_valpoint_valuation_selected_power_product_start. ff_u_mkm_rows_valpoint_valuation_selected_power_product = ff_q_mkm_rows_valpoint_valuation_selected_power_product_start * S ((S (0)) * ff_v_mkm_rows_valpoint_valuation_selected_power_product) + (1))) /\ ((((exists ff_h_mkm_rows_valpoint_valuation_selected_power_product_terminal. ff_h_mkm_rows_valpoint_valuation_selected_power_product_terminal + S (bpv_result_mkm_rows_valpoint_valuation_selected) = S ((S (mkm_exponent_rows_valpoint)) * ff_v_mkm_rows_valpoint_valuation_selected_power_product)) /\ exists ff_q_mkm_rows_valpoint_valuation_selected_power_product_terminal. ff_u_mkm_rows_valpoint_valuation_selected_power_product = ff_q_mkm_rows_valpoint_valuation_selected_power_product_terminal * S ((S (mkm_exponent_rows_valpoint)) * ff_v_mkm_rows_valpoint_valuation_selected_power_product) + (bpv_result_mkm_rows_valpoint_valuation_selected))) /\ forall ff_i_mkm_rows_valpoint_valuation_selected_power_product. (exists ff_lt_mkm_rows_valpoint_valuation_selected_power_product_bound. ff_lt_mkm_rows_valpoint_valuation_selected_power_product_bound + S ff_i_mkm_rows_valpoint_valuation_selected_power_product = mkm_exponent_rows_valpoint) -> exists ff_p_mkm_rows_valpoint_valuation_selected_power_product ff_r_mkm_rows_valpoint_valuation_selected_power_product ff_s_mkm_rows_valpoint_valuation_selected_power_product. ((((exists ff_h_mkm_rows_valpoint_valuation_selected_power_product_factor. ff_h_mkm_rows_valpoint_valuation_selected_power_product_factor + S (ff_p_mkm_rows_valpoint_valuation_selected_power_product) = S ((S (ff_i_mkm_rows_valpoint_valuation_selected_power_product)) * ff_c_mkm_rows_valpoint_valuation_selected_power)) /\ exists ff_q_mkm_rows_valpoint_valuation_selected_power_product_factor. ff_b_mkm_rows_valpoint_valuation_selected_power = ff_q_mkm_rows_valpoint_valuation_selected_power_product_factor * S ((S (ff_i_mkm_rows_valpoint_valuation_selected_power_product)) * ff_c_mkm_rows_valpoint_valuation_selected_power) + (ff_p_mkm_rows_valpoint_valuation_selected_power_product))) /\ ((((exists ff_h_mkm_rows_valpoint_valuation_selected_power_product_partial. ff_h_mkm_rows_valpoint_valuation_selected_power_product_partial + S (ff_r_mkm_rows_valpoint_valuation_selected_power_product) = S ((S (ff_i_mkm_rows_valpoint_valuation_selected_power_product)) * ff_v_mkm_rows_valpoint_valuation_selected_power_product)) /\ exists ff_q_mkm_rows_valpoint_valuation_selected_power_product_partial. ff_u_mkm_rows_valpoint_valuation_selected_power_product = ff_q_mkm_rows_valpoint_valuation_selected_power_product_partial * S ((S (ff_i_mkm_rows_valpoint_valuation_selected_power_product)) * ff_v_mkm_rows_valpoint_valuation_selected_power_product) + (ff_r_mkm_rows_valpoint_valuation_selected_power_product))) /\ ((((exists ff_h_mkm_rows_valpoint_valuation_selected_power_product_successor. ff_h_mkm_rows_valpoint_valuation_selected_power_product_successor + S (ff_s_mkm_rows_valpoint_valuation_selected_power_product) = S ((S (S ff_i_mkm_rows_valpoint_valuation_selected_power_product)) * ff_v_mkm_rows_valpoint_valuation_selected_power_product)) /\ exists ff_q_mkm_rows_valpoint_valuation_selected_power_product_successor. ff_u_mkm_rows_valpoint_valuation_selected_power_product = ff_q_mkm_rows_valpoint_valuation_selected_power_product_successor * S ((S (S ff_i_mkm_rows_valpoint_valuation_selected_power_product)) * ff_v_mkm_rows_valpoint_valuation_selected_power_product) + (ff_s_mkm_rows_valpoint_valuation_selected_power_product))) /\ ff_s_mkm_rows_valpoint_valuation_selected_power_product = ff_r_mkm_rows_valpoint_valuation_selected_power_product * ff_p_mkm_rows_valpoint_valuation_selected_power_product)))))))) /\ (exists bpv_factor_mkm_rows_valpoint_valuation_selected_divides. (mkm_value_rows_valpoint) = bpv_result_mkm_rows_valpoint_valuation_selected * bpv_factor_mkm_rows_valpoint_valuation_selected_divides)))) /\ forall bpv_candidate_mkm_rows_valpoint_valuation. (exists bpv_gap_mkm_rows_valpoint_valuation_candidate_bound. bpv_gap_mkm_rows_valpoint_valuation_candidate_bound + bpv_candidate_mkm_rows_valpoint_valuation = (mkm_value_rows_valpoint)) -> (exists bpv_result_mkm_rows_valpoint_valuation_candidate. ((exists ff_b_mkm_rows_valpoint_valuation_candidate_power ff_c_mkm_rows_valpoint_valuation_candidate_power. ((forall ff_i_mkm_rows_valpoint_valuation_candidate_power_repeat. (exists ff_lt_mkm_rows_valpoint_valuation_candidate_power_repeat_bound. ff_lt_mkm_rows_valpoint_valuation_candidate_power_repeat_bound + S ff_i_mkm_rows_valpoint_valuation_candidate_power_repeat = bpv_candidate_mkm_rows_valpoint_valuation) -> (((exists ff_h_mkm_rows_valpoint_valuation_candidate_power_repeat_decoded. ff_h_mkm_rows_valpoint_valuation_candidate_power_repeat_decoded + S (p) = S ((S (ff_i_mkm_rows_valpoint_valuation_candidate_power_repeat)) * ff_c_mkm_rows_valpoint_valuation_candidate_power)) /\ exists ff_q_mkm_rows_valpoint_valuation_candidate_power_repeat_decoded. ff_b_mkm_rows_valpoint_valuation_candidate_power = ff_q_mkm_rows_valpoint_valuation_candidate_power_repeat_decoded * S ((S (ff_i_mkm_rows_valpoint_valuation_candidate_power_repeat)) * ff_c_mkm_rows_valpoint_valuation_candidate_power) + (p)))) /\ (exists ff_u_mkm_rows_valpoint_valuation_candidate_power_product ff_v_mkm_rows_valpoint_valuation_candidate_power_product. ((((exists ff_h_mkm_rows_valpoint_valuation_candidate_power_product_start. ff_h_mkm_rows_valpoint_valuation_candidate_power_product_start + S (1) = S ((S (0)) * ff_v_mkm_rows_valpoint_valuation_candidate_power_product)) /\ exists ff_q_mkm_rows_valpoint_valuation_candidate_power_product_start. ff_u_mkm_rows_valpoint_valuation_candidate_power_product = ff_q_mkm_rows_valpoint_valuation_candidate_power_product_start * S ((S (0)) * ff_v_mkm_rows_valpoint_valuation_candidate_power_product) + (1))) /\ ((((exists ff_h_mkm_rows_valpoint_valuation_candidate_power_product_terminal. ff_h_mkm_rows_valpoint_valuation_candidate_power_product_terminal + S (bpv_result_mkm_rows_valpoint_valuation_candidate) = S ((S (bpv_candidate_mkm_rows_valpoint_valuation)) * ff_v_mkm_rows_valpoint_valuation_candidate_power_product)) /\ exists ff_q_mkm_rows_valpoint_valuation_candidate_power_product_terminal. ff_u_mkm_rows_valpoint_valuation_candidate_power_product = ff_q_mkm_rows_valpoint_valuation_candidate_power_product_terminal * S ((S (bpv_candidate_mkm_rows_valpoint_valuation)) * ff_v_mkm_rows_valpoint_valuation_candidate_power_product) + (bpv_result_mkm_rows_valpoint_valuation_candidate))) /\ forall ff_i_mkm_rows_valpoint_valuation_candidate_power_product. (exists ff_lt_mkm_rows_valpoint_valuation_candidate_power_product_bound. ff_lt_mkm_rows_valpoint_valuation_candidate_power_product_bound + S ff_i_mkm_rows_valpoint_valuation_candidate_power_product = bpv_candidate_mkm_rows_valpoint_valuation) -> exists ff_p_mkm_rows_valpoint_valuation_candidate_power_product ff_r_mkm_rows_valpoint_valuation_candidate_power_product ff_s_mkm_rows_valpoint_valuation_candidate_power_product. ((((exists ff_h_mkm_rows_valpoint_valuation_candidate_power_product_factor. ff_h_mkm_rows_valpoint_valuation_candidate_power_product_factor + S (ff_p_mkm_rows_valpoint_valuation_candidate_power_product) = S ((S (ff_i_mkm_rows_valpoint_valuation_candidate_power_product)) * ff_c_mkm_rows_valpoint_valuation_candidate_power)) /\ exists ff_q_mkm_rows_valpoint_valuation_candidate_power_product_factor. ff_b_mkm_rows_valpoint_valuation_candidate_power = ff_q_mkm_rows_valpoint_valuation_candidate_power_product_factor * S ((S (ff_i_mkm_rows_valpoint_valuation_candidate_power_product)) * ff_c_mkm_rows_valpoint_valuation_candidate_power) + (ff_p_mkm_rows_valpoint_valuation_candidate_power_product))) /\ ((((exists ff_h_mkm_rows_valpoint_valuation_candidate_power_product_partial. ff_h_mkm_rows_valpoint_valuation_candidate_power_product_partial + S (ff_r_mkm_rows_valpoint_valuation_candidate_power_product) = S ((S (ff_i_mkm_rows_valpoint_valuation_candidate_power_product)) * ff_v_mkm_rows_valpoint_valuation_candidate_power_product)) /\ exists ff_q_mkm_rows_valpoint_valuation_candidate_power_product_partial. ff_u_mkm_rows_valpoint_valuation_candidate_power_product = ff_q_mkm_rows_valpoint_valuation_candidate_power_product_partial * S ((S (ff_i_mkm_rows_valpoint_valuation_candidate_power_product)) * ff_v_mkm_rows_valpoint_valuation_candidate_power_product) + (ff_r_mkm_rows_valpoint_valuation_candidate_power_product))) /\ ((((exists ff_h_mkm_rows_valpoint_valuation_candidate_power_product_successor. ff_h_mkm_rows_valpoint_valuation_candidate_power_product_successor + S (ff_s_mkm_rows_valpoint_valuation_candidate_power_product) = S ((S (S ff_i_mkm_rows_valpoint_valuation_candidate_power_product)) * ff_v_mkm_rows_valpoint_valuation_candidate_power_product)) /\ exists ff_q_mkm_rows_valpoint_valuation_candidate_power_product_successor. ff_u_mkm_rows_valpoint_valuation_candidate_power_product = ff_q_mkm_rows_valpoint_valuation_candidate_power_product_successor * S ((S (S ff_i_mkm_rows_valpoint_valuation_candidate_power_product)) * ff_v_mkm_rows_valpoint_valuation_candidate_power_product) + (ff_s_mkm_rows_valpoint_valuation_candidate_power_product))) /\ ff_s_mkm_rows_valpoint_valuation_candidate_power_product = ff_r_mkm_rows_valpoint_valuation_candidate_power_product * ff_p_mkm_rows_valpoint_valuation_candidate_power_product)))))))) /\ (exists bpv_factor_mkm_rows_valpoint_valuation_candidate_divides. (mkm_value_rows_valpoint) = bpv_result_mkm_rows_valpoint_valuation_candidate * bpv_factor_mkm_rows_valpoint_valuation_candidate_divides))) -> (exists bpv_gap_mkm_rows_valpoint_valuation_maximal. bpv_gap_mkm_rows_valpoint_valuation_maximal + bpv_candidate_mkm_rows_valpoint_valuation = mkm_exponent_rows_valpoint)))
  27. 0027specialize hval i
  28. 0028apply hval
  29. 0029exact hi
  30. 0030cases hvalue
  31. 0031cases hvalue_witness
  32. 0032cases hvalue_witness_witness
  33. 0033cases hvalue_witness_witness_right
  34. 0034have hfactor : x3 = x2
  35. 0035specialize beta_at_unique cb
  36. 0036specialize beta_at_unique cc
  37. 0037specialize beta_at_unique i
  38. 0038specialize beta_at_unique x3
  39. 0039specialize beta_at_unique x2
  40. 0040apply beta_at_unique
  41. 0041exact hvalue_witness_witness_left
  42. 0042exact hpoint_witness_witness_witness_right_right_right
  43. 0043rewrite hfactor at hvalue_witness_witness_right_right
  44. 0044rewrite hfactor at hvalue_witness_witness_right_right
  45. 0045rewrite hfactor at hvalue_witness_witness_right_right
  46. 0046rewrite hfactor at hvalue_witness_witness_right_right
  47. 0047exists x
  48. 0048exists x1
  49. 0049exists x4
  50. 0050split
  51. 0051exact hpoint_witness_witness_witness_left
  52. 0052split
  53. 0053exact hpoint_witness_witness_witness_right_left
  54. 0054split
  55. 0055exact hvalue_witness_witness_right_left
  56. 0056specialize kummer_binomial_carry_bit_count p
  57. 0057specialize kummer_binomial_carry_bit_count x1
  58. 0058specialize kummer_binomial_carry_bit_count x
  59. 0059specialize kummer_binomial_carry_bit_count x2
  60. 0060specialize kummer_binomial_carry_bit_count x4
  61. 0061apply kummer_binomial_carry_bit_count
  62. 0062exact hp
  63. 0063exact hpoint_witness_witness_witness_right_right_left
  64. 0064exact hvalue_witness_witness_right_right