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 n a m. (exists ff_modulus_gap_binary_bd_modulus. ff_modulus_gap_binary_bd_modulus + S 1 = m) -> exists l b c r. ((((((((n) = 0 /\ (l) = 1) \/ exists ff_exponent_bl_bd_total_run_canonical_length ff_lower_bl_bd_total_run_canonical_length ff_upper_bl_bd_total_run_canonical_length. (((l) = S ff_exponent_bl_bd_total_run_canonical_length) /\ ((exists ff_positive_bl_bd_total_run_canonical_length. ff_positive_bl_bd_total_run_canonical_length + 1 = (n)) /\ ((exists pa_b_bl_bd_total_run_canonical_length_lower pa_c_bl_bd_total_run_canonical_length_lower. ((forall pa_i_bl_bd_total_run_canonical_length_lower_repeat. (exists pa_lt_bl_bd_total_run_canonical_length_lower_repeat_bound. pa_lt_bl_bd_total_run_canonical_length_lower_repeat_bound + S pa_i_bl_bd_total_run_canonical_length_lower_repeat = ff_exponent_bl_bd_total_run_canonical_length) -> (((exists pa_h_bl_bd_total_run_canonical_length_lower_repeat_decoded. pa_h_bl_bd_total_run_canonical_length_lower_repeat_decoded + S (2) = S ((S (pa_i_bl_bd_total_run_canonical_length_lower_repeat)) * pa_c_bl_bd_total_run_canonical_length_lower)) /\ exists pa_q_bl_bd_total_run_canonical_length_lower_repeat_decoded. pa_b_bl_bd_total_run_canonical_length_lower = pa_q_bl_bd_total_run_canonical_length_lower_repeat_decoded * S ((S (pa_i_bl_bd_total_run_canonical_length_lower_repeat)) * pa_c_bl_bd_total_run_canonical_length_lower) + (2)))) /\ (exists pa_u_bl_bd_total_run_canonical_length_lower_product pa_v_bl_bd_total_run_canonical_length_lower_product. ((((exists pa_h_bl_bd_total_run_canonical_length_lower_product_start. pa_h_bl_bd_total_run_canonical_length_lower_product_start + S (1) = S ((S (0)) * pa_v_bl_bd_total_run_canonical_length_lower_product)) /\ exists pa_q_bl_bd_total_run_canonical_length_lower_product_start. pa_u_bl_bd_total_run_canonical_length_lower_product = pa_q_bl_bd_total_run_canonical_length_lower_product_start * S ((S (0)) * pa_v_bl_bd_total_run_canonical_length_lower_product) + (1))) /\ ((((exists pa_h_bl_bd_total_run_canonical_length_lower_product_terminal. pa_h_bl_bd_total_run_canonical_length_lower_product_terminal + S (ff_lower_bl_bd_total_run_canonical_length) = S ((S (ff_exponent_bl_bd_total_run_canonical_length)) * pa_v_bl_bd_total_run_canonical_length_lower_product)) /\ exists pa_q_bl_bd_total_run_canonical_length_lower_product_terminal. pa_u_bl_bd_total_run_canonical_length_lower_product = pa_q_bl_bd_total_run_canonical_length_lower_product_terminal * S ((S (ff_exponent_bl_bd_total_run_canonical_length)) * pa_v_bl_bd_total_run_canonical_length_lower_product) + (ff_lower_bl_bd_total_run_canonical_length))) /\ forall pa_i_bl_bd_total_run_canonical_length_lower_product. (exists pa_lt_bl_bd_total_run_canonical_length_lower_product_bound. pa_lt_bl_bd_total_run_canonical_length_lower_product_bound + S pa_i_bl_bd_total_run_canonical_length_lower_product = ff_exponent_bl_bd_total_run_canonical_length) -> exists pa_p_bl_bd_total_run_canonical_length_lower_product pa_r_bl_bd_total_run_canonical_length_lower_product pa_s_bl_bd_total_run_canonical_length_lower_product. ((((exists pa_h_bl_bd_total_run_canonical_length_lower_product_factor. pa_h_bl_bd_total_run_canonical_length_lower_product_factor + S (pa_p_bl_bd_total_run_canonical_length_lower_product) = S ((S (pa_i_bl_bd_total_run_canonical_length_lower_product)) * pa_c_bl_bd_total_run_canonical_length_lower)) /\ exists pa_q_bl_bd_total_run_canonical_length_lower_product_factor. pa_b_bl_bd_total_run_canonical_length_lower = pa_q_bl_bd_total_run_canonical_length_lower_product_factor * S ((S (pa_i_bl_bd_total_run_canonical_length_lower_product)) * pa_c_bl_bd_total_run_canonical_length_lower) + (pa_p_bl_bd_total_run_canonical_length_lower_product))) /\ ((((exists pa_h_bl_bd_total_run_canonical_length_lower_product_partial. pa_h_bl_bd_total_run_canonical_length_lower_product_partial + S (pa_r_bl_bd_total_run_canonical_length_lower_product) = S ((S (pa_i_bl_bd_total_run_canonical_length_lower_product)) * pa_v_bl_bd_total_run_canonical_length_lower_product)) /\ exists pa_q_bl_bd_total_run_canonical_length_lower_product_partial. pa_u_bl_bd_total_run_canonical_length_lower_product = pa_q_bl_bd_total_run_canonical_length_lower_product_partial * S ((S (pa_i_bl_bd_total_run_canonical_length_lower_product)) * pa_v_bl_bd_total_run_canonical_length_lower_product) + (pa_r_bl_bd_total_run_canonical_length_lower_product))) /\ ((((exists pa_h_bl_bd_total_run_canonical_length_lower_product_successor. pa_h_bl_bd_total_run_canonical_length_lower_product_successor + S (pa_s_bl_bd_total_run_canonical_length_lower_product) = S ((S (S pa_i_bl_bd_total_run_canonical_length_lower_product)) * pa_v_bl_bd_total_run_canonical_length_lower_product)) /\ exists pa_q_bl_bd_total_run_canonical_length_lower_product_successor. pa_u_bl_bd_total_run_canonical_length_lower_product = pa_q_bl_bd_total_run_canonical_length_lower_product_successor * S ((S (S pa_i_bl_bd_total_run_canonical_length_lower_product)) * pa_v_bl_bd_total_run_canonical_length_lower_product) + (pa_s_bl_bd_total_run_canonical_length_lower_product))) /\ pa_s_bl_bd_total_run_canonical_length_lower_product = pa_r_bl_bd_total_run_canonical_length_lower_product * pa_p_bl_bd_total_run_canonical_length_lower_product)))))))) /\ ((exists pa_b_bl_bd_total_run_canonical_length_upper pa_c_bl_bd_total_run_canonical_length_upper. ((forall pa_i_bl_bd_total_run_canonical_length_upper_repeat. (exists pa_lt_bl_bd_total_run_canonical_length_upper_repeat_bound. pa_lt_bl_bd_total_run_canonical_length_upper_repeat_bound + S pa_i_bl_bd_total_run_canonical_length_upper_repeat = l) -> (((exists pa_h_bl_bd_total_run_canonical_length_upper_repeat_decoded. pa_h_bl_bd_total_run_canonical_length_upper_repeat_decoded + S (2) = S ((S (pa_i_bl_bd_total_run_canonical_length_upper_repeat)) * pa_c_bl_bd_total_run_canonical_length_upper)) /\ exists pa_q_bl_bd_total_run_canonical_length_upper_repeat_decoded. pa_b_bl_bd_total_run_canonical_length_upper = pa_q_bl_bd_total_run_canonical_length_upper_repeat_decoded * S ((S (pa_i_bl_bd_total_run_canonical_length_upper_repeat)) * pa_c_bl_bd_total_run_canonical_length_upper) + (2)))) /\ (exists pa_u_bl_bd_total_run_canonical_length_upper_product pa_v_bl_bd_total_run_canonical_length_upper_product. ((((exists pa_h_bl_bd_total_run_canonical_length_upper_product_start. pa_h_bl_bd_total_run_canonical_length_upper_product_start + S (1) = S ((S (0)) * pa_v_bl_bd_total_run_canonical_length_upper_product)) /\ exists pa_q_bl_bd_total_run_canonical_length_upper_product_start. pa_u_bl_bd_total_run_canonical_length_upper_product = pa_q_bl_bd_total_run_canonical_length_upper_product_start * S ((S (0)) * pa_v_bl_bd_total_run_canonical_length_upper_product) + (1))) /\ ((((exists pa_h_bl_bd_total_run_canonical_length_upper_product_terminal. pa_h_bl_bd_total_run_canonical_length_upper_product_terminal + S (ff_upper_bl_bd_total_run_canonical_length) = S ((S (l)) * pa_v_bl_bd_total_run_canonical_length_upper_product)) /\ exists pa_q_bl_bd_total_run_canonical_length_upper_product_terminal. pa_u_bl_bd_total_run_canonical_length_upper_product = pa_q_bl_bd_total_run_canonical_length_upper_product_terminal * S ((S (l)) * pa_v_bl_bd_total_run_canonical_length_upper_product) + (ff_upper_bl_bd_total_run_canonical_length))) /\ forall pa_i_bl_bd_total_run_canonical_length_upper_product. (exists pa_lt_bl_bd_total_run_canonical_length_upper_product_bound. pa_lt_bl_bd_total_run_canonical_length_upper_product_bound + S pa_i_bl_bd_total_run_canonical_length_upper_product = l) -> exists pa_p_bl_bd_total_run_canonical_length_upper_product pa_r_bl_bd_total_run_canonical_length_upper_product pa_s_bl_bd_total_run_canonical_length_upper_product. ((((exists pa_h_bl_bd_total_run_canonical_length_upper_product_factor. pa_h_bl_bd_total_run_canonical_length_upper_product_factor + S (pa_p_bl_bd_total_run_canonical_length_upper_product) = S ((S (pa_i_bl_bd_total_run_canonical_length_upper_product)) * pa_c_bl_bd_total_run_canonical_length_upper)) /\ exists pa_q_bl_bd_total_run_canonical_length_upper_product_factor. pa_b_bl_bd_total_run_canonical_length_upper = pa_q_bl_bd_total_run_canonical_length_upper_product_factor * S ((S (pa_i_bl_bd_total_run_canonical_length_upper_product)) * pa_c_bl_bd_total_run_canonical_length_upper) + (pa_p_bl_bd_total_run_canonical_length_upper_product))) /\ ((((exists pa_h_bl_bd_total_run_canonical_length_upper_product_partial. pa_h_bl_bd_total_run_canonical_length_upper_product_partial + S (pa_r_bl_bd_total_run_canonical_length_upper_product) = S ((S (pa_i_bl_bd_total_run_canonical_length_upper_product)) * pa_v_bl_bd_total_run_canonical_length_upper_product)) /\ exists pa_q_bl_bd_total_run_canonical_length_upper_product_partial. pa_u_bl_bd_total_run_canonical_length_upper_product = pa_q_bl_bd_total_run_canonical_length_upper_product_partial * S ((S (pa_i_bl_bd_total_run_canonical_length_upper_product)) * pa_v_bl_bd_total_run_canonical_length_upper_product) + (pa_r_bl_bd_total_run_canonical_length_upper_product))) /\ ((((exists pa_h_bl_bd_total_run_canonical_length_upper_product_successor. pa_h_bl_bd_total_run_canonical_length_upper_product_successor + S (pa_s_bl_bd_total_run_canonical_length_upper_product) = S ((S (S pa_i_bl_bd_total_run_canonical_length_upper_product)) * pa_v_bl_bd_total_run_canonical_length_upper_product)) /\ exists pa_q_bl_bd_total_run_canonical_length_upper_product_successor. pa_u_bl_bd_total_run_canonical_length_upper_product = pa_q_bl_bd_total_run_canonical_length_upper_product_successor * S ((S (S pa_i_bl_bd_total_run_canonical_length_upper_product)) * pa_v_bl_bd_total_run_canonical_length_upper_product) + (pa_s_bl_bd_total_run_canonical_length_upper_product))) /\ pa_s_bl_bd_total_run_canonical_length_upper_product = pa_r_bl_bd_total_run_canonical_length_upper_product * pa_p_bl_bd_total_run_canonical_length_upper_product)))))))) /\ ((exists ff_lower_gap_bl_bd_total_run_canonical_length. ff_lower_gap_bl_bd_total_run_canonical_length + (ff_lower_bl_bd_total_run_canonical_length) = (n)) /\ (exists ff_upper_gap_bl_bd_total_run_canonical_length. ff_upper_gap_bl_bd_total_run_canonical_length + S (n) = (ff_upper_bl_bd_total_run_canonical_length))))))))) /\ (((forall ff_index_be_bd_total_run_canonical_code_digits ff_digit_be_bd_total_run_canonical_code_digits. (exists ff_lt_be_bd_total_run_canonical_code_digits_bound. ff_lt_be_bd_total_run_canonical_code_digits_bound + S ff_index_be_bd_total_run_canonical_code_digits = l) -> (((exists ff_h_be_bd_total_run_canonical_code_digits_digit. ff_h_be_bd_total_run_canonical_code_digits_digit + S (ff_digit_be_bd_total_run_canonical_code_digits) = S ((S (ff_index_be_bd_total_run_canonical_code_digits)) * c)) /\ exists ff_q_be_bd_total_run_canonical_code_digits_digit. b = ff_q_be_bd_total_run_canonical_code_digits_digit * S ((S (ff_index_be_bd_total_run_canonical_code_digits)) * c) + (ff_digit_be_bd_total_run_canonical_code_digits))) -> (ff_digit_be_bd_total_run_canonical_code_digits = 0 \/ ff_digit_be_bd_total_run_canonical_code_digits = 1)) /\ (exists ff_u_ph_bd_total_run_canonical_code_horner ff_v_ph_bd_total_run_canonical_code_horner. ((((exists fs_h_ph_bd_total_run_canonical_code_horner_body_start. fs_h_ph_bd_total_run_canonical_code_horner_body_start + S (0) = S ((S (0)) * ff_v_ph_bd_total_run_canonical_code_horner)) /\ exists fs_q_ph_bd_total_run_canonical_code_horner_body_start. ff_u_ph_bd_total_run_canonical_code_horner = fs_q_ph_bd_total_run_canonical_code_horner_body_start * S ((S (0)) * ff_v_ph_bd_total_run_canonical_code_horner) + (0))) /\ ((((exists fs_h_ph_bd_total_run_canonical_code_horner_body_terminal. fs_h_ph_bd_total_run_canonical_code_horner_body_terminal + S (n) = S ((S (l)) * ff_v_ph_bd_total_run_canonical_code_horner)) /\ exists fs_q_ph_bd_total_run_canonical_code_horner_body_terminal. ff_u_ph_bd_total_run_canonical_code_horner = fs_q_ph_bd_total_run_canonical_code_horner_body_terminal * S ((S (l)) * ff_v_ph_bd_total_run_canonical_code_horner) + (n))) /\ forall ff_i_ph_bd_total_run_canonical_code_horner_body_steps. (exists ph_bound_bd_total_run_canonical_code_horner_body_steps. ph_bound_bd_total_run_canonical_code_horner_body_steps + S ff_i_ph_bd_total_run_canonical_code_horner_body_steps = l) -> exists ff_coefficient_ph_bd_total_run_canonical_code_horner_body_steps ff_previous_ph_bd_total_run_canonical_code_horner_body_steps ff_current_ph_bd_total_run_canonical_code_horner_body_steps. ((((exists fs_h_ph_bd_total_run_canonical_code_horner_body_steps_coefficient. fs_h_ph_bd_total_run_canonical_code_horner_body_steps_coefficient + S (ff_coefficient_ph_bd_total_run_canonical_code_horner_body_steps) = S ((S (ff_i_ph_bd_total_run_canonical_code_horner_body_steps)) * c)) /\ exists fs_q_ph_bd_total_run_canonical_code_horner_body_steps_coefficient. b = fs_q_ph_bd_total_run_canonical_code_horner_body_steps_coefficient * S ((S (ff_i_ph_bd_total_run_canonical_code_horner_body_steps)) * c) + (ff_coefficient_ph_bd_total_run_canonical_code_horner_body_steps))) /\ ((((exists fs_h_ph_bd_total_run_canonical_code_horner_body_steps_before. fs_h_ph_bd_total_run_canonical_code_horner_body_steps_before + S (ff_previous_ph_bd_total_run_canonical_code_horner_body_steps) = S ((S (ff_i_ph_bd_total_run_canonical_code_horner_body_steps)) * ff_v_ph_bd_total_run_canonical_code_horner)) /\ exists fs_q_ph_bd_total_run_canonical_code_horner_body_steps_before. ff_u_ph_bd_total_run_canonical_code_horner = fs_q_ph_bd_total_run_canonical_code_horner_body_steps_before * S ((S (ff_i_ph_bd_total_run_canonical_code_horner_body_steps)) * ff_v_ph_bd_total_run_canonical_code_horner) + (ff_previous_ph_bd_total_run_canonical_code_horner_body_steps))) /\ ((((exists fs_h_ph_bd_total_run_canonical_code_horner_body_steps_after. fs_h_ph_bd_total_run_canonical_code_horner_body_steps_after + S (ff_current_ph_bd_total_run_canonical_code_horner_body_steps) = S ((S (S ff_i_ph_bd_total_run_canonical_code_horner_body_steps)) * ff_v_ph_bd_total_run_canonical_code_horner)) /\ exists fs_q_ph_bd_total_run_canonical_code_horner_body_steps_after. ff_u_ph_bd_total_run_canonical_code_horner = fs_q_ph_bd_total_run_canonical_code_horner_body_steps_after * S ((S (S ff_i_ph_bd_total_run_canonical_code_horner_body_steps)) * ff_v_ph_bd_total_run_canonical_code_horner) + (ff_current_ph_bd_total_run_canonical_code_horner_body_steps))) /\ ff_current_ph_bd_total_run_canonical_code_horner_body_steps = ff_previous_ph_bd_total_run_canonical_code_horner_body_steps * 2 + ff_coefficient_ph_bd_total_run_canonical_code_horner_body_steps)))))))))) /\ ((exists ff_trace_code_be_bd_total_run_execution ff_trace_scale_be_bd_total_run_execution. ((((((exists ff_h_be_bd_total_run_execution_trace_start. ff_h_be_bd_total_run_execution_trace_start + S (1) = S ((S (0)) * ff_trace_scale_be_bd_total_run_execution)) /\ exists ff_q_be_bd_total_run_execution_trace_start. ff_trace_code_be_bd_total_run_execution = ff_q_be_bd_total_run_execution_trace_start * S ((S (0)) * ff_trace_scale_be_bd_total_run_execution) + (1))) /\ forall ff_index_be_bd_total_run_execution_trace. (exists ff_lt_be_bd_total_run_execution_trace_bound. ff_lt_be_bd_total_run_execution_trace_bound + S ff_index_be_bd_total_run_execution_trace = l) -> exists ff_digit_be_bd_total_run_execution_trace ff_previous_be_bd_total_run_execution_trace ff_current_be_bd_total_run_execution_trace. ((((exists ff_h_be_bd_total_run_execution_trace_source. ff_h_be_bd_total_run_execution_trace_source + S (ff_digit_be_bd_total_run_execution_trace) = S ((S (ff_index_be_bd_total_run_execution_trace)) * c)) /\ exists ff_q_be_bd_total_run_execution_trace_source. b = ff_q_be_bd_total_run_execution_trace_source * S ((S (ff_index_be_bd_total_run_execution_trace)) * c) + (ff_digit_be_bd_total_run_execution_trace))) /\ ((((exists ff_h_be_bd_total_run_execution_trace_before. ff_h_be_bd_total_run_execution_trace_before + S (ff_previous_be_bd_total_run_execution_trace) = S ((S (ff_index_be_bd_total_run_execution_trace)) * ff_trace_scale_be_bd_total_run_execution)) /\ exists ff_q_be_bd_total_run_execution_trace_before. ff_trace_code_be_bd_total_run_execution = ff_q_be_bd_total_run_execution_trace_before * S ((S (ff_index_be_bd_total_run_execution_trace)) * ff_trace_scale_be_bd_total_run_execution) + (ff_previous_be_bd_total_run_execution_trace))) /\ ((((exists ff_h_be_bd_total_run_execution_trace_after. ff_h_be_bd_total_run_execution_trace_after + S (ff_current_be_bd_total_run_execution_trace) = S ((S (S ff_index_be_bd_total_run_execution_trace)) * ff_trace_scale_be_bd_total_run_execution)) /\ exists ff_q_be_bd_total_run_execution_trace_after. ff_trace_code_be_bd_total_run_execution = ff_q_be_bd_total_run_execution_trace_after * S ((S (S ff_index_be_bd_total_run_execution_trace)) * ff_trace_scale_be_bd_total_run_execution) + (ff_current_be_bd_total_run_execution_trace))) /\ ((((ff_digit_be_bd_total_run_execution_trace = 0) /\ (((exists ff_gap_binary_be_bd_total_run_execution_trace_transition_square. ff_gap_binary_be_bd_total_run_execution_trace_transition_square + S (ff_current_be_bd_total_run_execution_trace) = m) /\ (exists ff_left_binary_be_bd_total_run_execution_trace_transition_square_congruence ff_right_binary_be_bd_total_run_execution_trace_transition_square_congruence. (ff_previous_be_bd_total_run_execution_trace * ff_previous_be_bd_total_run_execution_trace) + m * ff_left_binary_be_bd_total_run_execution_trace_transition_square_congruence = (ff_current_be_bd_total_run_execution_trace) + m * ff_right_binary_be_bd_total_run_execution_trace_transition_square_congruence)))) \/ ((ff_digit_be_bd_total_run_execution_trace = 1) /\ (((exists ff_gap_binary_be_bd_total_run_execution_trace_transition_multiply. ff_gap_binary_be_bd_total_run_execution_trace_transition_multiply + S (ff_current_be_bd_total_run_execution_trace) = m) /\ (exists ff_left_binary_be_bd_total_run_execution_trace_transition_multiply_congruence ff_right_binary_be_bd_total_run_execution_trace_transition_multiply_congruence. ((ff_previous_be_bd_total_run_execution_trace * ff_previous_be_bd_total_run_execution_trace) * a) + m * ff_left_binary_be_bd_total_run_execution_trace_transition_multiply_congruence = (ff_current_be_bd_total_run_execution_trace) + m * ff_right_binary_be_bd_total_run_execution_trace_transition_multiply_congruence))))))))))) /\ (((exists ff_h_be_bd_total_run_execution_terminal. ff_h_be_bd_total_run_execution_terminal + S (r) = S ((S (l)) * ff_trace_scale_be_bd_total_run_execution)) /\ exists ff_q_be_bd_total_run_execution_terminal. ff_trace_code_be_bd_total_run_execution = ff_q_be_bd_total_run_execution_terminal * S ((S (l)) * ff_trace_scale_be_bd_total_run_execution) + (r))))) /\ (exists ff_power_binary_bd_total_run_power. ((exists ff_b_binary_bd_total_run_power_value ff_c_binary_bd_total_run_power_value. ((forall ff_i_binary_bd_total_run_power_value_repeat. (exists ff_lt_binary_bd_total_run_power_value_repeat_bound. ff_lt_binary_bd_total_run_power_value_repeat_bound + S ff_i_binary_bd_total_run_power_value_repeat = n) -> (((exists ff_h_binary_bd_total_run_power_value_repeat_decoded. ff_h_binary_bd_total_run_power_value_repeat_decoded + S (a) = S ((S (ff_i_binary_bd_total_run_power_value_repeat)) * ff_c_binary_bd_total_run_power_value)) /\ exists ff_q_binary_bd_total_run_power_value_repeat_decoded. ff_b_binary_bd_total_run_power_value = ff_q_binary_bd_total_run_power_value_repeat_decoded * S ((S (ff_i_binary_bd_total_run_power_value_repeat)) * ff_c_binary_bd_total_run_power_value) + (a)))) /\ (exists ff_u_binary_bd_total_run_power_value_product ff_v_binary_bd_total_run_power_value_product. ((((exists ff_h_binary_bd_total_run_power_value_product_start. ff_h_binary_bd_total_run_power_value_product_start + S (1) = S ((S (0)) * ff_v_binary_bd_total_run_power_value_product)) /\ exists ff_q_binary_bd_total_run_power_value_product_start. ff_u_binary_bd_total_run_power_value_product = ff_q_binary_bd_total_run_power_value_product_start * S ((S (0)) * ff_v_binary_bd_total_run_power_value_product) + (1))) /\ ((((exists ff_h_binary_bd_total_run_power_value_product_terminal. ff_h_binary_bd_total_run_power_value_product_terminal + S (ff_power_binary_bd_total_run_power) = S ((S (n)) * ff_v_binary_bd_total_run_power_value_product)) /\ exists ff_q_binary_bd_total_run_power_value_product_terminal. ff_u_binary_bd_total_run_power_value_product = ff_q_binary_bd_total_run_power_value_product_terminal * S ((S (n)) * ff_v_binary_bd_total_run_power_value_product) + (ff_power_binary_bd_total_run_power))) /\ forall ff_i_binary_bd_total_run_power_value_product. (exists ff_lt_binary_bd_total_run_power_value_product_bound. ff_lt_binary_bd_total_run_power_value_product_bound + S ff_i_binary_bd_total_run_power_value_product = n) -> exists ff_p_binary_bd_total_run_power_value_product ff_r_binary_bd_total_run_power_value_product ff_s_binary_bd_total_run_power_value_product. ((((exists ff_h_binary_bd_total_run_power_value_product_factor. ff_h_binary_bd_total_run_power_value_product_factor + S (ff_p_binary_bd_total_run_power_value_product) = S ((S (ff_i_binary_bd_total_run_power_value_product)) * ff_c_binary_bd_total_run_power_value)) /\ exists ff_q_binary_bd_total_run_power_value_product_factor. ff_b_binary_bd_total_run_power_value = ff_q_binary_bd_total_run_power_value_product_factor * S ((S (ff_i_binary_bd_total_run_power_value_product)) * ff_c_binary_bd_total_run_power_value) + (ff_p_binary_bd_total_run_power_value_product))) /\ ((((exists ff_h_binary_bd_total_run_power_value_product_partial. ff_h_binary_bd_total_run_power_value_product_partial + S (ff_r_binary_bd_total_run_power_value_product) = S ((S (ff_i_binary_bd_total_run_power_value_product)) * ff_v_binary_bd_total_run_power_value_product)) /\ exists ff_q_binary_bd_total_run_power_value_product_partial. ff_u_binary_bd_total_run_power_value_product = ff_q_binary_bd_total_run_power_value_product_partial * S ((S (ff_i_binary_bd_total_run_power_value_product)) * ff_v_binary_bd_total_run_power_value_product) + (ff_r_binary_bd_total_run_power_value_product))) /\ ((((exists ff_h_binary_bd_total_run_power_value_product_successor. ff_h_binary_bd_total_run_power_value_product_successor + S (ff_s_binary_bd_total_run_power_value_product) = S ((S (S ff_i_binary_bd_total_run_power_value_product)) * ff_v_binary_bd_total_run_power_value_product)) /\ exists ff_q_binary_bd_total_run_power_value_product_successor. ff_u_binary_bd_total_run_power_value_product = ff_q_binary_bd_total_run_power_value_product_successor * S ((S (S ff_i_binary_bd_total_run_power_value_product)) * ff_v_binary_bd_total_run_power_value_product) + (ff_s_binary_bd_total_run_power_value_product))) /\ ff_s_binary_bd_total_run_power_value_product = ff_r_binary_bd_total_run_power_value_product * ff_p_binary_bd_total_run_power_value_product)))))))) /\ (((exists ff_gap_binary_bd_total_run_power_residue. ff_gap_binary_bd_total_run_power_residue + S (r) = m) /\ (exists ff_left_binary_bd_total_run_power_residue_congruence ff_right_binary_bd_total_run_power_residue_congruence. (ff_power_binary_bd_total_run_power) + m * ff_left_binary_bd_total_run_power_residue_congruence = (r) + m * ff_right_binary_bd_total_run_power_residue_congruence))))))))Constructive proof overview
Generated structural guide
For every arbitrary natural exponent and guarded modulus, construct canonical beta-coded digits, their full genuine square-and-multiply history, and its proved modular-power result.
The unchanged tactic script uses 3 declared prerequisites and contains 43 exact native proof lines.
Alpha v34 checked-use · first admitted v23 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
BD000A binary_exponent_digit_prefix_exists binary_modular_execution_exists Alpha theorem; checked-use authorized BD0013 binary_modular_exponent_coded_execution_power_correctDirect 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
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 (2)
01Fix variables and assumptionsL1–4
02Establish hcanonicalL5–7
Establish this local claim before using it. It is not an additional assumption.
- L5
have hcanonical : ∃ l. ∃ b. ∃ c. BinaryCanonicalExponentDigitCode(n,l,b,c)Definitions: BinaryCanonicalExponentDigitCode - L6
specialize binary_exponent_digit_prefix_exists n - L7
exact binary_exponent_digit_prefix_exists
03Separate the logical casesL8–10
04Establish hdigitsL11–11
Establish this local claim before using it. It is not an additional assumption.
- L11
have hdigits : BinaryDigitPrefix(x1,x2,x)Definitions: BinaryDigitPrefix
05Separate the logical casesL12–13
06Use earlier factsL14–14
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L14
exact hcanonical_witness_witness_witness_right_left
07Establish hexecutionL15–23
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply binary modular execution exists.
- L15
have hexecution : ∃ r. BinaryModularExecution(x1,x2,a,m,x,r)Definitions: BinaryModularExecution - L16
specialize binary_modular_execution_exists x1 - L17
specialize binary_modular_execution_exists x2 - L18
specialize binary_modular_execution_exists a - L19
specialize binary_modular_execution_exists m - L20
specialize binary_modular_execution_exists x - L21
apply binary_modular_execution_exists - L22
exact hmodulus - L23
exact hdigits
08Separate the logical casesL24–24
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L24
cases hexecution
09Construct an explicit witnessL25–28
10Separate the logical casesL29–29
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L29
split
11Use earlier factsL30–30
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L30
exact hcanonical_witness_witness_witness
12Separate the logical casesL31–31
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L31
split
13Use earlier factsL32–41
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L32
exact hexecution_witness - L33
specialize binary_modular_exponent_coded_execution_power_correct n - L34
specialize binary_modular_exponent_coded_execution_power_correct a - L35
specialize binary_modular_exponent_coded_execution_power_correct m - L36
specialize binary_modular_exponent_coded_execution_power_correct x - L37
specialize binary_modular_exponent_coded_execution_power_correct x1 - L38
specialize binary_modular_exponent_coded_execution_power_correct x2 - L39
specialize binary_modular_exponent_coded_execution_power_correct x3 - L40
apply binary_modular_exponent_coded_execution_power_correct - L41
exact hmodulus
Original exact command ledger · 43 lines
- 0001
intro n - 0002
intro a - 0003
intro m - 0004
intro hmodulus - 0005
have hcanonical : exists l b c. ((((((n) = 0 /\ (l) = 1) \/ exists ff_exponent_bl_bd_total_run_canonical_length ff_lower_bl_bd_total_run_canonical_length ff_upper_bl_bd_total_run_canonical_length. (((l) = S ff_exponent_bl_bd_total_run_canonical_length) /\ ((exists ff_positive_bl_bd_total_run_canonical_length. ff_positive_bl_bd_total_run_canonical_length + 1 = (n)) /\ ((exists pa_b_bl_bd_total_run_canonical_length_lower pa_c_bl_bd_total_run_canonical_length_lower. ((forall pa_i_bl_bd_total_run_canonical_length_lower_repeat. (exists pa_lt_bl_bd_total_run_canonical_length_lower_repeat_bound. pa_lt_bl_bd_total_run_canonical_length_lower_repeat_bound + S pa_i_bl_bd_total_run_canonical_length_lower_repeat = ff_exponent_bl_bd_total_run_canonical_length) -> (((exists pa_h_bl_bd_total_run_canonical_length_lower_repeat_decoded. pa_h_bl_bd_total_run_canonical_length_lower_repeat_decoded + S (2) = S ((S (pa_i_bl_bd_total_run_canonical_length_lower_repeat)) * pa_c_bl_bd_total_run_canonical_length_lower)) /\ exists pa_q_bl_bd_total_run_canonical_length_lower_repeat_decoded. pa_b_bl_bd_total_run_canonical_length_lower = pa_q_bl_bd_total_run_canonical_length_lower_repeat_decoded * S ((S (pa_i_bl_bd_total_run_canonical_length_lower_repeat)) * pa_c_bl_bd_total_run_canonical_length_lower) + (2)))) /\ (exists pa_u_bl_bd_total_run_canonical_length_lower_product pa_v_bl_bd_total_run_canonical_length_lower_product. ((((exists pa_h_bl_bd_total_run_canonical_length_lower_product_start. pa_h_bl_bd_total_run_canonical_length_lower_product_start + S (1) = S ((S (0)) * pa_v_bl_bd_total_run_canonical_length_lower_product)) /\ exists pa_q_bl_bd_total_run_canonical_length_lower_product_start. pa_u_bl_bd_total_run_canonical_length_lower_product = pa_q_bl_bd_total_run_canonical_length_lower_product_start * S ((S (0)) * pa_v_bl_bd_total_run_canonical_length_lower_product) + (1))) /\ ((((exists pa_h_bl_bd_total_run_canonical_length_lower_product_terminal. pa_h_bl_bd_total_run_canonical_length_lower_product_terminal + S (ff_lower_bl_bd_total_run_canonical_length) = S ((S (ff_exponent_bl_bd_total_run_canonical_length)) * pa_v_bl_bd_total_run_canonical_length_lower_product)) /\ exists pa_q_bl_bd_total_run_canonical_length_lower_product_terminal. pa_u_bl_bd_total_run_canonical_length_lower_product = pa_q_bl_bd_total_run_canonical_length_lower_product_terminal * S ((S (ff_exponent_bl_bd_total_run_canonical_length)) * pa_v_bl_bd_total_run_canonical_length_lower_product) + (ff_lower_bl_bd_total_run_canonical_length))) /\ forall pa_i_bl_bd_total_run_canonical_length_lower_product. (exists pa_lt_bl_bd_total_run_canonical_length_lower_product_bound. pa_lt_bl_bd_total_run_canonical_length_lower_product_bound + S pa_i_bl_bd_total_run_canonical_length_lower_product = ff_exponent_bl_bd_total_run_canonical_length) -> exists pa_p_bl_bd_total_run_canonical_length_lower_product pa_r_bl_bd_total_run_canonical_length_lower_product pa_s_bl_bd_total_run_canonical_length_lower_product. ((((exists pa_h_bl_bd_total_run_canonical_length_lower_product_factor. pa_h_bl_bd_total_run_canonical_length_lower_product_factor + S (pa_p_bl_bd_total_run_canonical_length_lower_product) = S ((S (pa_i_bl_bd_total_run_canonical_length_lower_product)) * pa_c_bl_bd_total_run_canonical_length_lower)) /\ exists pa_q_bl_bd_total_run_canonical_length_lower_product_factor. pa_b_bl_bd_total_run_canonical_length_lower = pa_q_bl_bd_total_run_canonical_length_lower_product_factor * S ((S (pa_i_bl_bd_total_run_canonical_length_lower_product)) * pa_c_bl_bd_total_run_canonical_length_lower) + (pa_p_bl_bd_total_run_canonical_length_lower_product))) /\ ((((exists pa_h_bl_bd_total_run_canonical_length_lower_product_partial. pa_h_bl_bd_total_run_canonical_length_lower_product_partial + S (pa_r_bl_bd_total_run_canonical_length_lower_product) = S ((S (pa_i_bl_bd_total_run_canonical_length_lower_product)) * pa_v_bl_bd_total_run_canonical_length_lower_product)) /\ exists pa_q_bl_bd_total_run_canonical_length_lower_product_partial. pa_u_bl_bd_total_run_canonical_length_lower_product = pa_q_bl_bd_total_run_canonical_length_lower_product_partial * S ((S (pa_i_bl_bd_total_run_canonical_length_lower_product)) * pa_v_bl_bd_total_run_canonical_length_lower_product) + (pa_r_bl_bd_total_run_canonical_length_lower_product))) /\ ((((exists pa_h_bl_bd_total_run_canonical_length_lower_product_successor. pa_h_bl_bd_total_run_canonical_length_lower_product_successor + S (pa_s_bl_bd_total_run_canonical_length_lower_product) = S ((S (S pa_i_bl_bd_total_run_canonical_length_lower_product)) * pa_v_bl_bd_total_run_canonical_length_lower_product)) /\ exists pa_q_bl_bd_total_run_canonical_length_lower_product_successor. pa_u_bl_bd_total_run_canonical_length_lower_product = pa_q_bl_bd_total_run_canonical_length_lower_product_successor * S ((S (S pa_i_bl_bd_total_run_canonical_length_lower_product)) * pa_v_bl_bd_total_run_canonical_length_lower_product) + (pa_s_bl_bd_total_run_canonical_length_lower_product))) /\ pa_s_bl_bd_total_run_canonical_length_lower_product = pa_r_bl_bd_total_run_canonical_length_lower_product * pa_p_bl_bd_total_run_canonical_length_lower_product)))))))) /\ ((exists pa_b_bl_bd_total_run_canonical_length_upper pa_c_bl_bd_total_run_canonical_length_upper. ((forall pa_i_bl_bd_total_run_canonical_length_upper_repeat. (exists pa_lt_bl_bd_total_run_canonical_length_upper_repeat_bound. pa_lt_bl_bd_total_run_canonical_length_upper_repeat_bound + S pa_i_bl_bd_total_run_canonical_length_upper_repeat = l) -> (((exists pa_h_bl_bd_total_run_canonical_length_upper_repeat_decoded. pa_h_bl_bd_total_run_canonical_length_upper_repeat_decoded + S (2) = S ((S (pa_i_bl_bd_total_run_canonical_length_upper_repeat)) * pa_c_bl_bd_total_run_canonical_length_upper)) /\ exists pa_q_bl_bd_total_run_canonical_length_upper_repeat_decoded. pa_b_bl_bd_total_run_canonical_length_upper = pa_q_bl_bd_total_run_canonical_length_upper_repeat_decoded * S ((S (pa_i_bl_bd_total_run_canonical_length_upper_repeat)) * pa_c_bl_bd_total_run_canonical_length_upper) + (2)))) /\ (exists pa_u_bl_bd_total_run_canonical_length_upper_product pa_v_bl_bd_total_run_canonical_length_upper_product. ((((exists pa_h_bl_bd_total_run_canonical_length_upper_product_start. pa_h_bl_bd_total_run_canonical_length_upper_product_start + S (1) = S ((S (0)) * pa_v_bl_bd_total_run_canonical_length_upper_product)) /\ exists pa_q_bl_bd_total_run_canonical_length_upper_product_start. pa_u_bl_bd_total_run_canonical_length_upper_product = pa_q_bl_bd_total_run_canonical_length_upper_product_start * S ((S (0)) * pa_v_bl_bd_total_run_canonical_length_upper_product) + (1))) /\ ((((exists pa_h_bl_bd_total_run_canonical_length_upper_product_terminal. pa_h_bl_bd_total_run_canonical_length_upper_product_terminal + S (ff_upper_bl_bd_total_run_canonical_length) = S ((S (l)) * pa_v_bl_bd_total_run_canonical_length_upper_product)) /\ exists pa_q_bl_bd_total_run_canonical_length_upper_product_terminal. pa_u_bl_bd_total_run_canonical_length_upper_product = pa_q_bl_bd_total_run_canonical_length_upper_product_terminal * S ((S (l)) * pa_v_bl_bd_total_run_canonical_length_upper_product) + (ff_upper_bl_bd_total_run_canonical_length))) /\ forall pa_i_bl_bd_total_run_canonical_length_upper_product. (exists pa_lt_bl_bd_total_run_canonical_length_upper_product_bound. pa_lt_bl_bd_total_run_canonical_length_upper_product_bound + S pa_i_bl_bd_total_run_canonical_length_upper_product = l) -> exists pa_p_bl_bd_total_run_canonical_length_upper_product pa_r_bl_bd_total_run_canonical_length_upper_product pa_s_bl_bd_total_run_canonical_length_upper_product. ((((exists pa_h_bl_bd_total_run_canonical_length_upper_product_factor. pa_h_bl_bd_total_run_canonical_length_upper_product_factor + S (pa_p_bl_bd_total_run_canonical_length_upper_product) = S ((S (pa_i_bl_bd_total_run_canonical_length_upper_product)) * pa_c_bl_bd_total_run_canonical_length_upper)) /\ exists pa_q_bl_bd_total_run_canonical_length_upper_product_factor. pa_b_bl_bd_total_run_canonical_length_upper = pa_q_bl_bd_total_run_canonical_length_upper_product_factor * S ((S (pa_i_bl_bd_total_run_canonical_length_upper_product)) * pa_c_bl_bd_total_run_canonical_length_upper) + (pa_p_bl_bd_total_run_canonical_length_upper_product))) /\ ((((exists pa_h_bl_bd_total_run_canonical_length_upper_product_partial. pa_h_bl_bd_total_run_canonical_length_upper_product_partial + S (pa_r_bl_bd_total_run_canonical_length_upper_product) = S ((S (pa_i_bl_bd_total_run_canonical_length_upper_product)) * pa_v_bl_bd_total_run_canonical_length_upper_product)) /\ exists pa_q_bl_bd_total_run_canonical_length_upper_product_partial. pa_u_bl_bd_total_run_canonical_length_upper_product = pa_q_bl_bd_total_run_canonical_length_upper_product_partial * S ((S (pa_i_bl_bd_total_run_canonical_length_upper_product)) * pa_v_bl_bd_total_run_canonical_length_upper_product) + (pa_r_bl_bd_total_run_canonical_length_upper_product))) /\ ((((exists pa_h_bl_bd_total_run_canonical_length_upper_product_successor. pa_h_bl_bd_total_run_canonical_length_upper_product_successor + S (pa_s_bl_bd_total_run_canonical_length_upper_product) = S ((S (S pa_i_bl_bd_total_run_canonical_length_upper_product)) * pa_v_bl_bd_total_run_canonical_length_upper_product)) /\ exists pa_q_bl_bd_total_run_canonical_length_upper_product_successor. pa_u_bl_bd_total_run_canonical_length_upper_product = pa_q_bl_bd_total_run_canonical_length_upper_product_successor * S ((S (S pa_i_bl_bd_total_run_canonical_length_upper_product)) * pa_v_bl_bd_total_run_canonical_length_upper_product) + (pa_s_bl_bd_total_run_canonical_length_upper_product))) /\ pa_s_bl_bd_total_run_canonical_length_upper_product = pa_r_bl_bd_total_run_canonical_length_upper_product * pa_p_bl_bd_total_run_canonical_length_upper_product)))))))) /\ ((exists ff_lower_gap_bl_bd_total_run_canonical_length. ff_lower_gap_bl_bd_total_run_canonical_length + (ff_lower_bl_bd_total_run_canonical_length) = (n)) /\ (exists ff_upper_gap_bl_bd_total_run_canonical_length. ff_upper_gap_bl_bd_total_run_canonical_length + S (n) = (ff_upper_bl_bd_total_run_canonical_length))))))))) /\ (((forall ff_index_be_bd_total_run_canonical_code_digits ff_digit_be_bd_total_run_canonical_code_digits. (exists ff_lt_be_bd_total_run_canonical_code_digits_bound. ff_lt_be_bd_total_run_canonical_code_digits_bound + S ff_index_be_bd_total_run_canonical_code_digits = l) -> (((exists ff_h_be_bd_total_run_canonical_code_digits_digit. ff_h_be_bd_total_run_canonical_code_digits_digit + S (ff_digit_be_bd_total_run_canonical_code_digits) = S ((S (ff_index_be_bd_total_run_canonical_code_digits)) * c)) /\ exists ff_q_be_bd_total_run_canonical_code_digits_digit. b = ff_q_be_bd_total_run_canonical_code_digits_digit * S ((S (ff_index_be_bd_total_run_canonical_code_digits)) * c) + (ff_digit_be_bd_total_run_canonical_code_digits))) -> (ff_digit_be_bd_total_run_canonical_code_digits = 0 \/ ff_digit_be_bd_total_run_canonical_code_digits = 1)) /\ (exists ff_u_ph_bd_total_run_canonical_code_horner ff_v_ph_bd_total_run_canonical_code_horner. ((((exists fs_h_ph_bd_total_run_canonical_code_horner_body_start. fs_h_ph_bd_total_run_canonical_code_horner_body_start + S (0) = S ((S (0)) * ff_v_ph_bd_total_run_canonical_code_horner)) /\ exists fs_q_ph_bd_total_run_canonical_code_horner_body_start. ff_u_ph_bd_total_run_canonical_code_horner = fs_q_ph_bd_total_run_canonical_code_horner_body_start * S ((S (0)) * ff_v_ph_bd_total_run_canonical_code_horner) + (0))) /\ ((((exists fs_h_ph_bd_total_run_canonical_code_horner_body_terminal. fs_h_ph_bd_total_run_canonical_code_horner_body_terminal + S (n) = S ((S (l)) * ff_v_ph_bd_total_run_canonical_code_horner)) /\ exists fs_q_ph_bd_total_run_canonical_code_horner_body_terminal. ff_u_ph_bd_total_run_canonical_code_horner = fs_q_ph_bd_total_run_canonical_code_horner_body_terminal * S ((S (l)) * ff_v_ph_bd_total_run_canonical_code_horner) + (n))) /\ forall ff_i_ph_bd_total_run_canonical_code_horner_body_steps. (exists ph_bound_bd_total_run_canonical_code_horner_body_steps. ph_bound_bd_total_run_canonical_code_horner_body_steps + S ff_i_ph_bd_total_run_canonical_code_horner_body_steps = l) -> exists ff_coefficient_ph_bd_total_run_canonical_code_horner_body_steps ff_previous_ph_bd_total_run_canonical_code_horner_body_steps ff_current_ph_bd_total_run_canonical_code_horner_body_steps. ((((exists fs_h_ph_bd_total_run_canonical_code_horner_body_steps_coefficient. fs_h_ph_bd_total_run_canonical_code_horner_body_steps_coefficient + S (ff_coefficient_ph_bd_total_run_canonical_code_horner_body_steps) = S ((S (ff_i_ph_bd_total_run_canonical_code_horner_body_steps)) * c)) /\ exists fs_q_ph_bd_total_run_canonical_code_horner_body_steps_coefficient. b = fs_q_ph_bd_total_run_canonical_code_horner_body_steps_coefficient * S ((S (ff_i_ph_bd_total_run_canonical_code_horner_body_steps)) * c) + (ff_coefficient_ph_bd_total_run_canonical_code_horner_body_steps))) /\ ((((exists fs_h_ph_bd_total_run_canonical_code_horner_body_steps_before. fs_h_ph_bd_total_run_canonical_code_horner_body_steps_before + S (ff_previous_ph_bd_total_run_canonical_code_horner_body_steps) = S ((S (ff_i_ph_bd_total_run_canonical_code_horner_body_steps)) * ff_v_ph_bd_total_run_canonical_code_horner)) /\ exists fs_q_ph_bd_total_run_canonical_code_horner_body_steps_before. ff_u_ph_bd_total_run_canonical_code_horner = fs_q_ph_bd_total_run_canonical_code_horner_body_steps_before * S ((S (ff_i_ph_bd_total_run_canonical_code_horner_body_steps)) * ff_v_ph_bd_total_run_canonical_code_horner) + (ff_previous_ph_bd_total_run_canonical_code_horner_body_steps))) /\ ((((exists fs_h_ph_bd_total_run_canonical_code_horner_body_steps_after. fs_h_ph_bd_total_run_canonical_code_horner_body_steps_after + S (ff_current_ph_bd_total_run_canonical_code_horner_body_steps) = S ((S (S ff_i_ph_bd_total_run_canonical_code_horner_body_steps)) * ff_v_ph_bd_total_run_canonical_code_horner)) /\ exists fs_q_ph_bd_total_run_canonical_code_horner_body_steps_after. ff_u_ph_bd_total_run_canonical_code_horner = fs_q_ph_bd_total_run_canonical_code_horner_body_steps_after * S ((S (S ff_i_ph_bd_total_run_canonical_code_horner_body_steps)) * ff_v_ph_bd_total_run_canonical_code_horner) + (ff_current_ph_bd_total_run_canonical_code_horner_body_steps))) /\ ff_current_ph_bd_total_run_canonical_code_horner_body_steps = ff_previous_ph_bd_total_run_canonical_code_horner_body_steps * 2 + ff_coefficient_ph_bd_total_run_canonical_code_horner_body_steps)))))))))) - 0006
specialize binary_exponent_digit_prefix_exists n - 0007
exact binary_exponent_digit_prefix_exists - 0008
cases hcanonical - 0009
cases hcanonical_witness - 0010
cases hcanonical_witness_witness - 0011
have hdigits : (forall ff_index_be_bd_total_run_digits ff_digit_be_bd_total_run_digits. (exists ff_lt_be_bd_total_run_digits_bound. ff_lt_be_bd_total_run_digits_bound + S ff_index_be_bd_total_run_digits = x) -> (((exists ff_h_be_bd_total_run_digits_digit. ff_h_be_bd_total_run_digits_digit + S (ff_digit_be_bd_total_run_digits) = S ((S (ff_index_be_bd_total_run_digits)) * x2)) /\ exists ff_q_be_bd_total_run_digits_digit. x1 = ff_q_be_bd_total_run_digits_digit * S ((S (ff_index_be_bd_total_run_digits)) * x2) + (ff_digit_be_bd_total_run_digits))) -> (ff_digit_be_bd_total_run_digits = 0 \/ ff_digit_be_bd_total_run_digits = 1)) - 0012
cases hcanonical_witness_witness_witness - 0013
cases hcanonical_witness_witness_witness_right - 0014
exact hcanonical_witness_witness_witness_right_left - 0015
have hexecution : exists r. (exists ff_trace_code_be_bd_total_run_execution ff_trace_scale_be_bd_total_run_execution. ((((((exists ff_h_be_bd_total_run_execution_trace_start. ff_h_be_bd_total_run_execution_trace_start + S (1) = S ((S (0)) * ff_trace_scale_be_bd_total_run_execution)) /\ exists ff_q_be_bd_total_run_execution_trace_start. ff_trace_code_be_bd_total_run_execution = ff_q_be_bd_total_run_execution_trace_start * S ((S (0)) * ff_trace_scale_be_bd_total_run_execution) + (1))) /\ forall ff_index_be_bd_total_run_execution_trace. (exists ff_lt_be_bd_total_run_execution_trace_bound. ff_lt_be_bd_total_run_execution_trace_bound + S ff_index_be_bd_total_run_execution_trace = x) -> exists ff_digit_be_bd_total_run_execution_trace ff_previous_be_bd_total_run_execution_trace ff_current_be_bd_total_run_execution_trace. ((((exists ff_h_be_bd_total_run_execution_trace_source. ff_h_be_bd_total_run_execution_trace_source + S (ff_digit_be_bd_total_run_execution_trace) = S ((S (ff_index_be_bd_total_run_execution_trace)) * x2)) /\ exists ff_q_be_bd_total_run_execution_trace_source. x1 = ff_q_be_bd_total_run_execution_trace_source * S ((S (ff_index_be_bd_total_run_execution_trace)) * x2) + (ff_digit_be_bd_total_run_execution_trace))) /\ ((((exists ff_h_be_bd_total_run_execution_trace_before. ff_h_be_bd_total_run_execution_trace_before + S (ff_previous_be_bd_total_run_execution_trace) = S ((S (ff_index_be_bd_total_run_execution_trace)) * ff_trace_scale_be_bd_total_run_execution)) /\ exists ff_q_be_bd_total_run_execution_trace_before. ff_trace_code_be_bd_total_run_execution = ff_q_be_bd_total_run_execution_trace_before * S ((S (ff_index_be_bd_total_run_execution_trace)) * ff_trace_scale_be_bd_total_run_execution) + (ff_previous_be_bd_total_run_execution_trace))) /\ ((((exists ff_h_be_bd_total_run_execution_trace_after. ff_h_be_bd_total_run_execution_trace_after + S (ff_current_be_bd_total_run_execution_trace) = S ((S (S ff_index_be_bd_total_run_execution_trace)) * ff_trace_scale_be_bd_total_run_execution)) /\ exists ff_q_be_bd_total_run_execution_trace_after. ff_trace_code_be_bd_total_run_execution = ff_q_be_bd_total_run_execution_trace_after * S ((S (S ff_index_be_bd_total_run_execution_trace)) * ff_trace_scale_be_bd_total_run_execution) + (ff_current_be_bd_total_run_execution_trace))) /\ ((((ff_digit_be_bd_total_run_execution_trace = 0) /\ (((exists ff_gap_binary_be_bd_total_run_execution_trace_transition_square. ff_gap_binary_be_bd_total_run_execution_trace_transition_square + S (ff_current_be_bd_total_run_execution_trace) = m) /\ (exists ff_left_binary_be_bd_total_run_execution_trace_transition_square_congruence ff_right_binary_be_bd_total_run_execution_trace_transition_square_congruence. (ff_previous_be_bd_total_run_execution_trace * ff_previous_be_bd_total_run_execution_trace) + m * ff_left_binary_be_bd_total_run_execution_trace_transition_square_congruence = (ff_current_be_bd_total_run_execution_trace) + m * ff_right_binary_be_bd_total_run_execution_trace_transition_square_congruence)))) \/ ((ff_digit_be_bd_total_run_execution_trace = 1) /\ (((exists ff_gap_binary_be_bd_total_run_execution_trace_transition_multiply. ff_gap_binary_be_bd_total_run_execution_trace_transition_multiply + S (ff_current_be_bd_total_run_execution_trace) = m) /\ (exists ff_left_binary_be_bd_total_run_execution_trace_transition_multiply_congruence ff_right_binary_be_bd_total_run_execution_trace_transition_multiply_congruence. ((ff_previous_be_bd_total_run_execution_trace * ff_previous_be_bd_total_run_execution_trace) * a) + m * ff_left_binary_be_bd_total_run_execution_trace_transition_multiply_congruence = (ff_current_be_bd_total_run_execution_trace) + m * ff_right_binary_be_bd_total_run_execution_trace_transition_multiply_congruence))))))))))) /\ (((exists ff_h_be_bd_total_run_execution_terminal. ff_h_be_bd_total_run_execution_terminal + S (r) = S ((S (x)) * ff_trace_scale_be_bd_total_run_execution)) /\ exists ff_q_be_bd_total_run_execution_terminal. ff_trace_code_be_bd_total_run_execution = ff_q_be_bd_total_run_execution_terminal * S ((S (x)) * ff_trace_scale_be_bd_total_run_execution) + (r))))) - 0016
specialize binary_modular_execution_exists x1 - 0017
specialize binary_modular_execution_exists x2 - 0018
specialize binary_modular_execution_exists a - 0019
specialize binary_modular_execution_exists m - 0020
specialize binary_modular_execution_exists x - 0021
apply binary_modular_execution_exists - 0022
exact hmodulus - 0023
exact hdigits - 0024
cases hexecution - 0025
exists x - 0026
exists x1 - 0027
exists x2 - 0028
exists x3 - 0029
split - 0030
exact hcanonical_witness_witness_witness - 0031
split - 0032
exact hexecution_witness - 0033
specialize binary_modular_exponent_coded_execution_power_correct n - 0034
specialize binary_modular_exponent_coded_execution_power_correct a - 0035
specialize binary_modular_exponent_coded_execution_power_correct m - 0036
specialize binary_modular_exponent_coded_execution_power_correct x - 0037
specialize binary_modular_exponent_coded_execution_power_correct x1 - 0038
specialize binary_modular_exponent_coded_execution_power_correct x2 - 0039
specialize binary_modular_exponent_coded_execution_power_correct x3 - 0040
apply binary_modular_exponent_coded_execution_power_correct - 0041
exact hmodulus - 0042
exact hcanonical_witness_witness_witness - 0043
exact hexecution_witness
Separate complete second-wave branches: Full T13 proof · Alpha v27.