EL0018

lte_valuation_product_exact

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

Construct the exact sum valuation of a nonzero product instead of requiring its output valuation as an input.

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 a b e f. (~((p) = 1) /\ forall pvs_left_product_prime pvs_right_product_prime. (p) = pvs_left_product_prime * pvs_right_product_prime -> pvs_left_product_prime = 1 \/ pvs_right_product_prime = 1) -> ~(a = 0) -> ~(b = 0) -> (((exists bpd_gap_pvs_product_left_selected_bound. bpd_gap_pvs_product_left_selected_bound + (e) = (a)) /\ (exists bpvi_result_pvs_product_left_selected. ((exists bpvi_b_pvs_product_left_selected_power bpvi_c_pvs_product_left_selected_power. ((forall bpvi_i_pvs_product_left_selected_power. (exists bpvi_repeat_gap_pvs_product_left_selected_power. bpvi_repeat_gap_pvs_product_left_selected_power + S bpvi_i_pvs_product_left_selected_power = e) -> (((exists bpvi_h_pvs_product_left_selected_power_repeat. bpvi_h_pvs_product_left_selected_power_repeat + S (p) = S ((S (bpvi_i_pvs_product_left_selected_power)) * bpvi_c_pvs_product_left_selected_power)) /\ exists bpvi_q_pvs_product_left_selected_power_repeat. bpvi_b_pvs_product_left_selected_power = bpvi_q_pvs_product_left_selected_power_repeat * S ((S (bpvi_i_pvs_product_left_selected_power)) * bpvi_c_pvs_product_left_selected_power) + (p)))) /\ (exists bpvi_u_pvs_product_left_selected_power bpvi_v_pvs_product_left_selected_power. ((((exists bpvi_h_pvs_product_left_selected_power_start. bpvi_h_pvs_product_left_selected_power_start + S (1) = S ((S (0)) * bpvi_v_pvs_product_left_selected_power)) /\ exists bpvi_q_pvs_product_left_selected_power_start. bpvi_u_pvs_product_left_selected_power = bpvi_q_pvs_product_left_selected_power_start * S ((S (0)) * bpvi_v_pvs_product_left_selected_power) + (1))) /\ ((((exists bpvi_h_pvs_product_left_selected_power_terminal. bpvi_h_pvs_product_left_selected_power_terminal + S (bpvi_result_pvs_product_left_selected) = S ((S (e)) * bpvi_v_pvs_product_left_selected_power)) /\ exists bpvi_q_pvs_product_left_selected_power_terminal. bpvi_u_pvs_product_left_selected_power = bpvi_q_pvs_product_left_selected_power_terminal * S ((S (e)) * bpvi_v_pvs_product_left_selected_power) + (bpvi_result_pvs_product_left_selected))) /\ forall bpvi_j_pvs_product_left_selected_power. (exists bpvi_product_gap_pvs_product_left_selected_power. bpvi_product_gap_pvs_product_left_selected_power + S bpvi_j_pvs_product_left_selected_power = e) -> exists bpvi_factor_pvs_product_left_selected_power bpvi_partial_pvs_product_left_selected_power bpvi_successor_pvs_product_left_selected_power. ((((exists bpvi_h_pvs_product_left_selected_power_factor. bpvi_h_pvs_product_left_selected_power_factor + S (bpvi_factor_pvs_product_left_selected_power) = S ((S (bpvi_j_pvs_product_left_selected_power)) * bpvi_c_pvs_product_left_selected_power)) /\ exists bpvi_q_pvs_product_left_selected_power_factor. bpvi_b_pvs_product_left_selected_power = bpvi_q_pvs_product_left_selected_power_factor * S ((S (bpvi_j_pvs_product_left_selected_power)) * bpvi_c_pvs_product_left_selected_power) + (bpvi_factor_pvs_product_left_selected_power))) /\ ((((exists bpvi_h_pvs_product_left_selected_power_partial. bpvi_h_pvs_product_left_selected_power_partial + S (bpvi_partial_pvs_product_left_selected_power) = S ((S (bpvi_j_pvs_product_left_selected_power)) * bpvi_v_pvs_product_left_selected_power)) /\ exists bpvi_q_pvs_product_left_selected_power_partial. bpvi_u_pvs_product_left_selected_power = bpvi_q_pvs_product_left_selected_power_partial * S ((S (bpvi_j_pvs_product_left_selected_power)) * bpvi_v_pvs_product_left_selected_power) + (bpvi_partial_pvs_product_left_selected_power))) /\ ((((exists bpvi_h_pvs_product_left_selected_power_successor. bpvi_h_pvs_product_left_selected_power_successor + S (bpvi_successor_pvs_product_left_selected_power) = S ((S (S bpvi_j_pvs_product_left_selected_power)) * bpvi_v_pvs_product_left_selected_power)) /\ exists bpvi_q_pvs_product_left_selected_power_successor. bpvi_u_pvs_product_left_selected_power = bpvi_q_pvs_product_left_selected_power_successor * S ((S (S bpvi_j_pvs_product_left_selected_power)) * bpvi_v_pvs_product_left_selected_power) + (bpvi_successor_pvs_product_left_selected_power))) /\ bpvi_successor_pvs_product_left_selected_power = bpvi_partial_pvs_product_left_selected_power * bpvi_factor_pvs_product_left_selected_power)))))))) /\ exists bpvi_divisor_factor_pvs_product_left_selected. a = bpvi_result_pvs_product_left_selected * bpvi_divisor_factor_pvs_product_left_selected))) /\ forall bpd_candidate_pvs_product_left. (exists bpd_gap_pvs_product_left_candidate_bound. bpd_gap_pvs_product_left_candidate_bound + (bpd_candidate_pvs_product_left) = (a)) -> (exists bpvi_result_pvs_product_left_candidate. ((exists bpvi_b_pvs_product_left_candidate_power bpvi_c_pvs_product_left_candidate_power. ((forall bpvi_i_pvs_product_left_candidate_power. (exists bpvi_repeat_gap_pvs_product_left_candidate_power. bpvi_repeat_gap_pvs_product_left_candidate_power + S bpvi_i_pvs_product_left_candidate_power = bpd_candidate_pvs_product_left) -> (((exists bpvi_h_pvs_product_left_candidate_power_repeat. bpvi_h_pvs_product_left_candidate_power_repeat + S (p) = S ((S (bpvi_i_pvs_product_left_candidate_power)) * bpvi_c_pvs_product_left_candidate_power)) /\ exists bpvi_q_pvs_product_left_candidate_power_repeat. bpvi_b_pvs_product_left_candidate_power = bpvi_q_pvs_product_left_candidate_power_repeat * S ((S (bpvi_i_pvs_product_left_candidate_power)) * bpvi_c_pvs_product_left_candidate_power) + (p)))) /\ (exists bpvi_u_pvs_product_left_candidate_power bpvi_v_pvs_product_left_candidate_power. ((((exists bpvi_h_pvs_product_left_candidate_power_start. bpvi_h_pvs_product_left_candidate_power_start + S (1) = S ((S (0)) * bpvi_v_pvs_product_left_candidate_power)) /\ exists bpvi_q_pvs_product_left_candidate_power_start. bpvi_u_pvs_product_left_candidate_power = bpvi_q_pvs_product_left_candidate_power_start * S ((S (0)) * bpvi_v_pvs_product_left_candidate_power) + (1))) /\ ((((exists bpvi_h_pvs_product_left_candidate_power_terminal. bpvi_h_pvs_product_left_candidate_power_terminal + S (bpvi_result_pvs_product_left_candidate) = S ((S (bpd_candidate_pvs_product_left)) * bpvi_v_pvs_product_left_candidate_power)) /\ exists bpvi_q_pvs_product_left_candidate_power_terminal. bpvi_u_pvs_product_left_candidate_power = bpvi_q_pvs_product_left_candidate_power_terminal * S ((S (bpd_candidate_pvs_product_left)) * bpvi_v_pvs_product_left_candidate_power) + (bpvi_result_pvs_product_left_candidate))) /\ forall bpvi_j_pvs_product_left_candidate_power. (exists bpvi_product_gap_pvs_product_left_candidate_power. bpvi_product_gap_pvs_product_left_candidate_power + S bpvi_j_pvs_product_left_candidate_power = bpd_candidate_pvs_product_left) -> exists bpvi_factor_pvs_product_left_candidate_power bpvi_partial_pvs_product_left_candidate_power bpvi_successor_pvs_product_left_candidate_power. ((((exists bpvi_h_pvs_product_left_candidate_power_factor. bpvi_h_pvs_product_left_candidate_power_factor + S (bpvi_factor_pvs_product_left_candidate_power) = S ((S (bpvi_j_pvs_product_left_candidate_power)) * bpvi_c_pvs_product_left_candidate_power)) /\ exists bpvi_q_pvs_product_left_candidate_power_factor. bpvi_b_pvs_product_left_candidate_power = bpvi_q_pvs_product_left_candidate_power_factor * S ((S (bpvi_j_pvs_product_left_candidate_power)) * bpvi_c_pvs_product_left_candidate_power) + (bpvi_factor_pvs_product_left_candidate_power))) /\ ((((exists bpvi_h_pvs_product_left_candidate_power_partial. bpvi_h_pvs_product_left_candidate_power_partial + S (bpvi_partial_pvs_product_left_candidate_power) = S ((S (bpvi_j_pvs_product_left_candidate_power)) * bpvi_v_pvs_product_left_candidate_power)) /\ exists bpvi_q_pvs_product_left_candidate_power_partial. bpvi_u_pvs_product_left_candidate_power = bpvi_q_pvs_product_left_candidate_power_partial * S ((S (bpvi_j_pvs_product_left_candidate_power)) * bpvi_v_pvs_product_left_candidate_power) + (bpvi_partial_pvs_product_left_candidate_power))) /\ ((((exists bpvi_h_pvs_product_left_candidate_power_successor. bpvi_h_pvs_product_left_candidate_power_successor + S (bpvi_successor_pvs_product_left_candidate_power) = S ((S (S bpvi_j_pvs_product_left_candidate_power)) * bpvi_v_pvs_product_left_candidate_power)) /\ exists bpvi_q_pvs_product_left_candidate_power_successor. bpvi_u_pvs_product_left_candidate_power = bpvi_q_pvs_product_left_candidate_power_successor * S ((S (S bpvi_j_pvs_product_left_candidate_power)) * bpvi_v_pvs_product_left_candidate_power) + (bpvi_successor_pvs_product_left_candidate_power))) /\ bpvi_successor_pvs_product_left_candidate_power = bpvi_partial_pvs_product_left_candidate_power * bpvi_factor_pvs_product_left_candidate_power)))))))) /\ exists bpvi_divisor_factor_pvs_product_left_candidate. a = bpvi_result_pvs_product_left_candidate * bpvi_divisor_factor_pvs_product_left_candidate)) -> (exists bpd_gap_pvs_product_left_maximal. bpd_gap_pvs_product_left_maximal + (bpd_candidate_pvs_product_left) = (e))) -> (((exists bpd_gap_pvs_product_right_selected_bound. bpd_gap_pvs_product_right_selected_bound + (f) = (b)) /\ (exists bpvi_result_pvs_product_right_selected. ((exists bpvi_b_pvs_product_right_selected_power bpvi_c_pvs_product_right_selected_power. ((forall bpvi_i_pvs_product_right_selected_power. (exists bpvi_repeat_gap_pvs_product_right_selected_power. bpvi_repeat_gap_pvs_product_right_selected_power + S bpvi_i_pvs_product_right_selected_power = f) -> (((exists bpvi_h_pvs_product_right_selected_power_repeat. bpvi_h_pvs_product_right_selected_power_repeat + S (p) = S ((S (bpvi_i_pvs_product_right_selected_power)) * bpvi_c_pvs_product_right_selected_power)) /\ exists bpvi_q_pvs_product_right_selected_power_repeat. bpvi_b_pvs_product_right_selected_power = bpvi_q_pvs_product_right_selected_power_repeat * S ((S (bpvi_i_pvs_product_right_selected_power)) * bpvi_c_pvs_product_right_selected_power) + (p)))) /\ (exists bpvi_u_pvs_product_right_selected_power bpvi_v_pvs_product_right_selected_power. ((((exists bpvi_h_pvs_product_right_selected_power_start. bpvi_h_pvs_product_right_selected_power_start + S (1) = S ((S (0)) * bpvi_v_pvs_product_right_selected_power)) /\ exists bpvi_q_pvs_product_right_selected_power_start. bpvi_u_pvs_product_right_selected_power = bpvi_q_pvs_product_right_selected_power_start * S ((S (0)) * bpvi_v_pvs_product_right_selected_power) + (1))) /\ ((((exists bpvi_h_pvs_product_right_selected_power_terminal. bpvi_h_pvs_product_right_selected_power_terminal + S (bpvi_result_pvs_product_right_selected) = S ((S (f)) * bpvi_v_pvs_product_right_selected_power)) /\ exists bpvi_q_pvs_product_right_selected_power_terminal. bpvi_u_pvs_product_right_selected_power = bpvi_q_pvs_product_right_selected_power_terminal * S ((S (f)) * bpvi_v_pvs_product_right_selected_power) + (bpvi_result_pvs_product_right_selected))) /\ forall bpvi_j_pvs_product_right_selected_power. (exists bpvi_product_gap_pvs_product_right_selected_power. bpvi_product_gap_pvs_product_right_selected_power + S bpvi_j_pvs_product_right_selected_power = f) -> exists bpvi_factor_pvs_product_right_selected_power bpvi_partial_pvs_product_right_selected_power bpvi_successor_pvs_product_right_selected_power. ((((exists bpvi_h_pvs_product_right_selected_power_factor. bpvi_h_pvs_product_right_selected_power_factor + S (bpvi_factor_pvs_product_right_selected_power) = S ((S (bpvi_j_pvs_product_right_selected_power)) * bpvi_c_pvs_product_right_selected_power)) /\ exists bpvi_q_pvs_product_right_selected_power_factor. bpvi_b_pvs_product_right_selected_power = bpvi_q_pvs_product_right_selected_power_factor * S ((S (bpvi_j_pvs_product_right_selected_power)) * bpvi_c_pvs_product_right_selected_power) + (bpvi_factor_pvs_product_right_selected_power))) /\ ((((exists bpvi_h_pvs_product_right_selected_power_partial. bpvi_h_pvs_product_right_selected_power_partial + S (bpvi_partial_pvs_product_right_selected_power) = S ((S (bpvi_j_pvs_product_right_selected_power)) * bpvi_v_pvs_product_right_selected_power)) /\ exists bpvi_q_pvs_product_right_selected_power_partial. bpvi_u_pvs_product_right_selected_power = bpvi_q_pvs_product_right_selected_power_partial * S ((S (bpvi_j_pvs_product_right_selected_power)) * bpvi_v_pvs_product_right_selected_power) + (bpvi_partial_pvs_product_right_selected_power))) /\ ((((exists bpvi_h_pvs_product_right_selected_power_successor. bpvi_h_pvs_product_right_selected_power_successor + S (bpvi_successor_pvs_product_right_selected_power) = S ((S (S bpvi_j_pvs_product_right_selected_power)) * bpvi_v_pvs_product_right_selected_power)) /\ exists bpvi_q_pvs_product_right_selected_power_successor. bpvi_u_pvs_product_right_selected_power = bpvi_q_pvs_product_right_selected_power_successor * S ((S (S bpvi_j_pvs_product_right_selected_power)) * bpvi_v_pvs_product_right_selected_power) + (bpvi_successor_pvs_product_right_selected_power))) /\ bpvi_successor_pvs_product_right_selected_power = bpvi_partial_pvs_product_right_selected_power * bpvi_factor_pvs_product_right_selected_power)))))))) /\ exists bpvi_divisor_factor_pvs_product_right_selected. b = bpvi_result_pvs_product_right_selected * bpvi_divisor_factor_pvs_product_right_selected))) /\ forall bpd_candidate_pvs_product_right. (exists bpd_gap_pvs_product_right_candidate_bound. bpd_gap_pvs_product_right_candidate_bound + (bpd_candidate_pvs_product_right) = (b)) -> (exists bpvi_result_pvs_product_right_candidate. ((exists bpvi_b_pvs_product_right_candidate_power bpvi_c_pvs_product_right_candidate_power. ((forall bpvi_i_pvs_product_right_candidate_power. (exists bpvi_repeat_gap_pvs_product_right_candidate_power. bpvi_repeat_gap_pvs_product_right_candidate_power + S bpvi_i_pvs_product_right_candidate_power = bpd_candidate_pvs_product_right) -> (((exists bpvi_h_pvs_product_right_candidate_power_repeat. bpvi_h_pvs_product_right_candidate_power_repeat + S (p) = S ((S (bpvi_i_pvs_product_right_candidate_power)) * bpvi_c_pvs_product_right_candidate_power)) /\ exists bpvi_q_pvs_product_right_candidate_power_repeat. bpvi_b_pvs_product_right_candidate_power = bpvi_q_pvs_product_right_candidate_power_repeat * S ((S (bpvi_i_pvs_product_right_candidate_power)) * bpvi_c_pvs_product_right_candidate_power) + (p)))) /\ (exists bpvi_u_pvs_product_right_candidate_power bpvi_v_pvs_product_right_candidate_power. ((((exists bpvi_h_pvs_product_right_candidate_power_start. bpvi_h_pvs_product_right_candidate_power_start + S (1) = S ((S (0)) * bpvi_v_pvs_product_right_candidate_power)) /\ exists bpvi_q_pvs_product_right_candidate_power_start. bpvi_u_pvs_product_right_candidate_power = bpvi_q_pvs_product_right_candidate_power_start * S ((S (0)) * bpvi_v_pvs_product_right_candidate_power) + (1))) /\ ((((exists bpvi_h_pvs_product_right_candidate_power_terminal. bpvi_h_pvs_product_right_candidate_power_terminal + S (bpvi_result_pvs_product_right_candidate) = S ((S (bpd_candidate_pvs_product_right)) * bpvi_v_pvs_product_right_candidate_power)) /\ exists bpvi_q_pvs_product_right_candidate_power_terminal. bpvi_u_pvs_product_right_candidate_power = bpvi_q_pvs_product_right_candidate_power_terminal * S ((S (bpd_candidate_pvs_product_right)) * bpvi_v_pvs_product_right_candidate_power) + (bpvi_result_pvs_product_right_candidate))) /\ forall bpvi_j_pvs_product_right_candidate_power. (exists bpvi_product_gap_pvs_product_right_candidate_power. bpvi_product_gap_pvs_product_right_candidate_power + S bpvi_j_pvs_product_right_candidate_power = bpd_candidate_pvs_product_right) -> exists bpvi_factor_pvs_product_right_candidate_power bpvi_partial_pvs_product_right_candidate_power bpvi_successor_pvs_product_right_candidate_power. ((((exists bpvi_h_pvs_product_right_candidate_power_factor. bpvi_h_pvs_product_right_candidate_power_factor + S (bpvi_factor_pvs_product_right_candidate_power) = S ((S (bpvi_j_pvs_product_right_candidate_power)) * bpvi_c_pvs_product_right_candidate_power)) /\ exists bpvi_q_pvs_product_right_candidate_power_factor. bpvi_b_pvs_product_right_candidate_power = bpvi_q_pvs_product_right_candidate_power_factor * S ((S (bpvi_j_pvs_product_right_candidate_power)) * bpvi_c_pvs_product_right_candidate_power) + (bpvi_factor_pvs_product_right_candidate_power))) /\ ((((exists bpvi_h_pvs_product_right_candidate_power_partial. bpvi_h_pvs_product_right_candidate_power_partial + S (bpvi_partial_pvs_product_right_candidate_power) = S ((S (bpvi_j_pvs_product_right_candidate_power)) * bpvi_v_pvs_product_right_candidate_power)) /\ exists bpvi_q_pvs_product_right_candidate_power_partial. bpvi_u_pvs_product_right_candidate_power = bpvi_q_pvs_product_right_candidate_power_partial * S ((S (bpvi_j_pvs_product_right_candidate_power)) * bpvi_v_pvs_product_right_candidate_power) + (bpvi_partial_pvs_product_right_candidate_power))) /\ ((((exists bpvi_h_pvs_product_right_candidate_power_successor. bpvi_h_pvs_product_right_candidate_power_successor + S (bpvi_successor_pvs_product_right_candidate_power) = S ((S (S bpvi_j_pvs_product_right_candidate_power)) * bpvi_v_pvs_product_right_candidate_power)) /\ exists bpvi_q_pvs_product_right_candidate_power_successor. bpvi_u_pvs_product_right_candidate_power = bpvi_q_pvs_product_right_candidate_power_successor * S ((S (S bpvi_j_pvs_product_right_candidate_power)) * bpvi_v_pvs_product_right_candidate_power) + (bpvi_successor_pvs_product_right_candidate_power))) /\ bpvi_successor_pvs_product_right_candidate_power = bpvi_partial_pvs_product_right_candidate_power * bpvi_factor_pvs_product_right_candidate_power)))))))) /\ exists bpvi_divisor_factor_pvs_product_right_candidate. b = bpvi_result_pvs_product_right_candidate * bpvi_divisor_factor_pvs_product_right_candidate)) -> (exists bpd_gap_pvs_product_right_maximal. bpd_gap_pvs_product_right_maximal + (bpd_candidate_pvs_product_right) = (f))) -> (((exists bpd_gap_pvs_product_result_selected_bound. bpd_gap_pvs_product_result_selected_bound + (e + f) = (a * b)) /\ (exists bpvi_result_pvs_product_result_selected. ((exists bpvi_b_pvs_product_result_selected_power bpvi_c_pvs_product_result_selected_power. ((forall bpvi_i_pvs_product_result_selected_power. (exists bpvi_repeat_gap_pvs_product_result_selected_power. bpvi_repeat_gap_pvs_product_result_selected_power + S bpvi_i_pvs_product_result_selected_power = e + f) -> (((exists bpvi_h_pvs_product_result_selected_power_repeat. bpvi_h_pvs_product_result_selected_power_repeat + S (p) = S ((S (bpvi_i_pvs_product_result_selected_power)) * bpvi_c_pvs_product_result_selected_power)) /\ exists bpvi_q_pvs_product_result_selected_power_repeat. bpvi_b_pvs_product_result_selected_power = bpvi_q_pvs_product_result_selected_power_repeat * S ((S (bpvi_i_pvs_product_result_selected_power)) * bpvi_c_pvs_product_result_selected_power) + (p)))) /\ (exists bpvi_u_pvs_product_result_selected_power bpvi_v_pvs_product_result_selected_power. ((((exists bpvi_h_pvs_product_result_selected_power_start. bpvi_h_pvs_product_result_selected_power_start + S (1) = S ((S (0)) * bpvi_v_pvs_product_result_selected_power)) /\ exists bpvi_q_pvs_product_result_selected_power_start. bpvi_u_pvs_product_result_selected_power = bpvi_q_pvs_product_result_selected_power_start * S ((S (0)) * bpvi_v_pvs_product_result_selected_power) + (1))) /\ ((((exists bpvi_h_pvs_product_result_selected_power_terminal. bpvi_h_pvs_product_result_selected_power_terminal + S (bpvi_result_pvs_product_result_selected) = S ((S (e + f)) * bpvi_v_pvs_product_result_selected_power)) /\ exists bpvi_q_pvs_product_result_selected_power_terminal. bpvi_u_pvs_product_result_selected_power = bpvi_q_pvs_product_result_selected_power_terminal * S ((S (e + f)) * bpvi_v_pvs_product_result_selected_power) + (bpvi_result_pvs_product_result_selected))) /\ forall bpvi_j_pvs_product_result_selected_power. (exists bpvi_product_gap_pvs_product_result_selected_power. bpvi_product_gap_pvs_product_result_selected_power + S bpvi_j_pvs_product_result_selected_power = e + f) -> exists bpvi_factor_pvs_product_result_selected_power bpvi_partial_pvs_product_result_selected_power bpvi_successor_pvs_product_result_selected_power. ((((exists bpvi_h_pvs_product_result_selected_power_factor. bpvi_h_pvs_product_result_selected_power_factor + S (bpvi_factor_pvs_product_result_selected_power) = S ((S (bpvi_j_pvs_product_result_selected_power)) * bpvi_c_pvs_product_result_selected_power)) /\ exists bpvi_q_pvs_product_result_selected_power_factor. bpvi_b_pvs_product_result_selected_power = bpvi_q_pvs_product_result_selected_power_factor * S ((S (bpvi_j_pvs_product_result_selected_power)) * bpvi_c_pvs_product_result_selected_power) + (bpvi_factor_pvs_product_result_selected_power))) /\ ((((exists bpvi_h_pvs_product_result_selected_power_partial. bpvi_h_pvs_product_result_selected_power_partial + S (bpvi_partial_pvs_product_result_selected_power) = S ((S (bpvi_j_pvs_product_result_selected_power)) * bpvi_v_pvs_product_result_selected_power)) /\ exists bpvi_q_pvs_product_result_selected_power_partial. bpvi_u_pvs_product_result_selected_power = bpvi_q_pvs_product_result_selected_power_partial * S ((S (bpvi_j_pvs_product_result_selected_power)) * bpvi_v_pvs_product_result_selected_power) + (bpvi_partial_pvs_product_result_selected_power))) /\ ((((exists bpvi_h_pvs_product_result_selected_power_successor. bpvi_h_pvs_product_result_selected_power_successor + S (bpvi_successor_pvs_product_result_selected_power) = S ((S (S bpvi_j_pvs_product_result_selected_power)) * bpvi_v_pvs_product_result_selected_power)) /\ exists bpvi_q_pvs_product_result_selected_power_successor. bpvi_u_pvs_product_result_selected_power = bpvi_q_pvs_product_result_selected_power_successor * S ((S (S bpvi_j_pvs_product_result_selected_power)) * bpvi_v_pvs_product_result_selected_power) + (bpvi_successor_pvs_product_result_selected_power))) /\ bpvi_successor_pvs_product_result_selected_power = bpvi_partial_pvs_product_result_selected_power * bpvi_factor_pvs_product_result_selected_power)))))))) /\ exists bpvi_divisor_factor_pvs_product_result_selected. a * b = bpvi_result_pvs_product_result_selected * bpvi_divisor_factor_pvs_product_result_selected))) /\ forall bpd_candidate_pvs_product_result. (exists bpd_gap_pvs_product_result_candidate_bound. bpd_gap_pvs_product_result_candidate_bound + (bpd_candidate_pvs_product_result) = (a * b)) -> (exists bpvi_result_pvs_product_result_candidate. ((exists bpvi_b_pvs_product_result_candidate_power bpvi_c_pvs_product_result_candidate_power. ((forall bpvi_i_pvs_product_result_candidate_power. (exists bpvi_repeat_gap_pvs_product_result_candidate_power. bpvi_repeat_gap_pvs_product_result_candidate_power + S bpvi_i_pvs_product_result_candidate_power = bpd_candidate_pvs_product_result) -> (((exists bpvi_h_pvs_product_result_candidate_power_repeat. bpvi_h_pvs_product_result_candidate_power_repeat + S (p) = S ((S (bpvi_i_pvs_product_result_candidate_power)) * bpvi_c_pvs_product_result_candidate_power)) /\ exists bpvi_q_pvs_product_result_candidate_power_repeat. bpvi_b_pvs_product_result_candidate_power = bpvi_q_pvs_product_result_candidate_power_repeat * S ((S (bpvi_i_pvs_product_result_candidate_power)) * bpvi_c_pvs_product_result_candidate_power) + (p)))) /\ (exists bpvi_u_pvs_product_result_candidate_power bpvi_v_pvs_product_result_candidate_power. ((((exists bpvi_h_pvs_product_result_candidate_power_start. bpvi_h_pvs_product_result_candidate_power_start + S (1) = S ((S (0)) * bpvi_v_pvs_product_result_candidate_power)) /\ exists bpvi_q_pvs_product_result_candidate_power_start. bpvi_u_pvs_product_result_candidate_power = bpvi_q_pvs_product_result_candidate_power_start * S ((S (0)) * bpvi_v_pvs_product_result_candidate_power) + (1))) /\ ((((exists bpvi_h_pvs_product_result_candidate_power_terminal. bpvi_h_pvs_product_result_candidate_power_terminal + S (bpvi_result_pvs_product_result_candidate) = S ((S (bpd_candidate_pvs_product_result)) * bpvi_v_pvs_product_result_candidate_power)) /\ exists bpvi_q_pvs_product_result_candidate_power_terminal. bpvi_u_pvs_product_result_candidate_power = bpvi_q_pvs_product_result_candidate_power_terminal * S ((S (bpd_candidate_pvs_product_result)) * bpvi_v_pvs_product_result_candidate_power) + (bpvi_result_pvs_product_result_candidate))) /\ forall bpvi_j_pvs_product_result_candidate_power. (exists bpvi_product_gap_pvs_product_result_candidate_power. bpvi_product_gap_pvs_product_result_candidate_power + S bpvi_j_pvs_product_result_candidate_power = bpd_candidate_pvs_product_result) -> exists bpvi_factor_pvs_product_result_candidate_power bpvi_partial_pvs_product_result_candidate_power bpvi_successor_pvs_product_result_candidate_power. ((((exists bpvi_h_pvs_product_result_candidate_power_factor. bpvi_h_pvs_product_result_candidate_power_factor + S (bpvi_factor_pvs_product_result_candidate_power) = S ((S (bpvi_j_pvs_product_result_candidate_power)) * bpvi_c_pvs_product_result_candidate_power)) /\ exists bpvi_q_pvs_product_result_candidate_power_factor. bpvi_b_pvs_product_result_candidate_power = bpvi_q_pvs_product_result_candidate_power_factor * S ((S (bpvi_j_pvs_product_result_candidate_power)) * bpvi_c_pvs_product_result_candidate_power) + (bpvi_factor_pvs_product_result_candidate_power))) /\ ((((exists bpvi_h_pvs_product_result_candidate_power_partial. bpvi_h_pvs_product_result_candidate_power_partial + S (bpvi_partial_pvs_product_result_candidate_power) = S ((S (bpvi_j_pvs_product_result_candidate_power)) * bpvi_v_pvs_product_result_candidate_power)) /\ exists bpvi_q_pvs_product_result_candidate_power_partial. bpvi_u_pvs_product_result_candidate_power = bpvi_q_pvs_product_result_candidate_power_partial * S ((S (bpvi_j_pvs_product_result_candidate_power)) * bpvi_v_pvs_product_result_candidate_power) + (bpvi_partial_pvs_product_result_candidate_power))) /\ ((((exists bpvi_h_pvs_product_result_candidate_power_successor. bpvi_h_pvs_product_result_candidate_power_successor + S (bpvi_successor_pvs_product_result_candidate_power) = S ((S (S bpvi_j_pvs_product_result_candidate_power)) * bpvi_v_pvs_product_result_candidate_power)) /\ exists bpvi_q_pvs_product_result_candidate_power_successor. bpvi_u_pvs_product_result_candidate_power = bpvi_q_pvs_product_result_candidate_power_successor * S ((S (S bpvi_j_pvs_product_result_candidate_power)) * bpvi_v_pvs_product_result_candidate_power) + (bpvi_successor_pvs_product_result_candidate_power))) /\ bpvi_successor_pvs_product_result_candidate_power = bpvi_partial_pvs_product_result_candidate_power * bpvi_factor_pvs_product_result_candidate_power)))))))) /\ exists bpvi_divisor_factor_pvs_product_result_candidate. a * b = bpvi_result_pvs_product_result_candidate * bpvi_divisor_factor_pvs_product_result_candidate)) -> (exists bpd_gap_pvs_product_result_maximal. bpd_gap_pvs_product_result_maximal + (bpd_candidate_pvs_product_result) = (e + f)))

Constructive proof overview

Generated structural guide

Construct the exact sum valuation of a nonzero product instead of requiring its output valuation as an input.

The unchanged tactic script uses 3 declared prerequisites and contains 34 exact native proof lines.

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

Proof neighborhood

Direct dependencies

power_valuation_exists Alpha theorem; checked-use authorized prime_power_valuation_mul Alpha theorem; checked-use authorized prime_valuation_exponent_eq_transport 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

34 script commands · 5 reading checkpoints · 1 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 a
  3. L3
    intro b
  4. L4
    intro e
  5. L5
    intro f
  6. L6
    intro hp
  7. L7
    intro ha
  8. L8
    intro hb
  9. L9
    intro hleft
  10. L10
    intro hright
02Establish hexL11–14

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

  1. L11
    have hex : ∃ g. BoundedPowerValuation(p,a · b,a · b,g)Definitions: BoundedPowerValuation
  2. L12
    specialize power_valuation_exists (p)
  3. L13
    specialize power_valuation_exists (a * b)
  4. L14
    apply power_valuation_exists
03Separate the logical casesL15–15

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

  1. L15
    cases hex
04Use earlier factsL16–25

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

  1. L16
    specialize prime_valuation_exponent_eq_transport (p)
  2. L17
    specialize prime_valuation_exponent_eq_transport (a * b)
  3. L18
    specialize prime_valuation_exponent_eq_transport (x)
  4. L19
    specialize prime_valuation_exponent_eq_transport (e + f)
  5. L20
    apply prime_valuation_exponent_eq_transport
  6. L21
    specialize prime_power_valuation_mul (p)
  7. L22
    specialize prime_power_valuation_mul (a)
  8. L23
    specialize prime_power_valuation_mul (b)
  9. L24
    specialize prime_power_valuation_mul (e)
  10. L25
    specialize prime_power_valuation_mul (f)
05Use earlier factsL26–34

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

  1. L26
    specialize prime_power_valuation_mul (x)
  2. L27
    apply prime_power_valuation_mul
  3. L28
    exact hp
  4. L29
    exact ha
  5. L30
    exact hb
  6. L31
    exact hleft
  7. L32
    exact hright
  8. L33
    exact hex_witness
  9. L34
    exact hex_witness

Library-wide reading audit

Original exact command ledger · 34 lines
  1. 0001intro p
  2. 0002intro a
  3. 0003intro b
  4. 0004intro e
  5. 0005intro f
  6. 0006intro hp
  7. 0007intro ha
  8. 0008intro hb
  9. 0009intro hleft
  10. 0010intro hright
  11. 0011have hex : exists g. (((exists bpd_gap_pvs_product_exists_selected_bound. bpd_gap_pvs_product_exists_selected_bound + (g) = (a * b)) /\ (exists bpvi_result_pvs_product_exists_selected. ((exists bpvi_b_pvs_product_exists_selected_power bpvi_c_pvs_product_exists_selected_power. ((forall bpvi_i_pvs_product_exists_selected_power. (exists bpvi_repeat_gap_pvs_product_exists_selected_power. bpvi_repeat_gap_pvs_product_exists_selected_power + S bpvi_i_pvs_product_exists_selected_power = g) -> (((exists bpvi_h_pvs_product_exists_selected_power_repeat. bpvi_h_pvs_product_exists_selected_power_repeat + S (p) = S ((S (bpvi_i_pvs_product_exists_selected_power)) * bpvi_c_pvs_product_exists_selected_power)) /\ exists bpvi_q_pvs_product_exists_selected_power_repeat. bpvi_b_pvs_product_exists_selected_power = bpvi_q_pvs_product_exists_selected_power_repeat * S ((S (bpvi_i_pvs_product_exists_selected_power)) * bpvi_c_pvs_product_exists_selected_power) + (p)))) /\ (exists bpvi_u_pvs_product_exists_selected_power bpvi_v_pvs_product_exists_selected_power. ((((exists bpvi_h_pvs_product_exists_selected_power_start. bpvi_h_pvs_product_exists_selected_power_start + S (1) = S ((S (0)) * bpvi_v_pvs_product_exists_selected_power)) /\ exists bpvi_q_pvs_product_exists_selected_power_start. bpvi_u_pvs_product_exists_selected_power = bpvi_q_pvs_product_exists_selected_power_start * S ((S (0)) * bpvi_v_pvs_product_exists_selected_power) + (1))) /\ ((((exists bpvi_h_pvs_product_exists_selected_power_terminal. bpvi_h_pvs_product_exists_selected_power_terminal + S (bpvi_result_pvs_product_exists_selected) = S ((S (g)) * bpvi_v_pvs_product_exists_selected_power)) /\ exists bpvi_q_pvs_product_exists_selected_power_terminal. bpvi_u_pvs_product_exists_selected_power = bpvi_q_pvs_product_exists_selected_power_terminal * S ((S (g)) * bpvi_v_pvs_product_exists_selected_power) + (bpvi_result_pvs_product_exists_selected))) /\ forall bpvi_j_pvs_product_exists_selected_power. (exists bpvi_product_gap_pvs_product_exists_selected_power. bpvi_product_gap_pvs_product_exists_selected_power + S bpvi_j_pvs_product_exists_selected_power = g) -> exists bpvi_factor_pvs_product_exists_selected_power bpvi_partial_pvs_product_exists_selected_power bpvi_successor_pvs_product_exists_selected_power. ((((exists bpvi_h_pvs_product_exists_selected_power_factor. bpvi_h_pvs_product_exists_selected_power_factor + S (bpvi_factor_pvs_product_exists_selected_power) = S ((S (bpvi_j_pvs_product_exists_selected_power)) * bpvi_c_pvs_product_exists_selected_power)) /\ exists bpvi_q_pvs_product_exists_selected_power_factor. bpvi_b_pvs_product_exists_selected_power = bpvi_q_pvs_product_exists_selected_power_factor * S ((S (bpvi_j_pvs_product_exists_selected_power)) * bpvi_c_pvs_product_exists_selected_power) + (bpvi_factor_pvs_product_exists_selected_power))) /\ ((((exists bpvi_h_pvs_product_exists_selected_power_partial. bpvi_h_pvs_product_exists_selected_power_partial + S (bpvi_partial_pvs_product_exists_selected_power) = S ((S (bpvi_j_pvs_product_exists_selected_power)) * bpvi_v_pvs_product_exists_selected_power)) /\ exists bpvi_q_pvs_product_exists_selected_power_partial. bpvi_u_pvs_product_exists_selected_power = bpvi_q_pvs_product_exists_selected_power_partial * S ((S (bpvi_j_pvs_product_exists_selected_power)) * bpvi_v_pvs_product_exists_selected_power) + (bpvi_partial_pvs_product_exists_selected_power))) /\ ((((exists bpvi_h_pvs_product_exists_selected_power_successor. bpvi_h_pvs_product_exists_selected_power_successor + S (bpvi_successor_pvs_product_exists_selected_power) = S ((S (S bpvi_j_pvs_product_exists_selected_power)) * bpvi_v_pvs_product_exists_selected_power)) /\ exists bpvi_q_pvs_product_exists_selected_power_successor. bpvi_u_pvs_product_exists_selected_power = bpvi_q_pvs_product_exists_selected_power_successor * S ((S (S bpvi_j_pvs_product_exists_selected_power)) * bpvi_v_pvs_product_exists_selected_power) + (bpvi_successor_pvs_product_exists_selected_power))) /\ bpvi_successor_pvs_product_exists_selected_power = bpvi_partial_pvs_product_exists_selected_power * bpvi_factor_pvs_product_exists_selected_power)))))))) /\ exists bpvi_divisor_factor_pvs_product_exists_selected. a * b = bpvi_result_pvs_product_exists_selected * bpvi_divisor_factor_pvs_product_exists_selected))) /\ forall bpd_candidate_pvs_product_exists. (exists bpd_gap_pvs_product_exists_candidate_bound. bpd_gap_pvs_product_exists_candidate_bound + (bpd_candidate_pvs_product_exists) = (a * b)) -> (exists bpvi_result_pvs_product_exists_candidate. ((exists bpvi_b_pvs_product_exists_candidate_power bpvi_c_pvs_product_exists_candidate_power. ((forall bpvi_i_pvs_product_exists_candidate_power. (exists bpvi_repeat_gap_pvs_product_exists_candidate_power. bpvi_repeat_gap_pvs_product_exists_candidate_power + S bpvi_i_pvs_product_exists_candidate_power = bpd_candidate_pvs_product_exists) -> (((exists bpvi_h_pvs_product_exists_candidate_power_repeat. bpvi_h_pvs_product_exists_candidate_power_repeat + S (p) = S ((S (bpvi_i_pvs_product_exists_candidate_power)) * bpvi_c_pvs_product_exists_candidate_power)) /\ exists bpvi_q_pvs_product_exists_candidate_power_repeat. bpvi_b_pvs_product_exists_candidate_power = bpvi_q_pvs_product_exists_candidate_power_repeat * S ((S (bpvi_i_pvs_product_exists_candidate_power)) * bpvi_c_pvs_product_exists_candidate_power) + (p)))) /\ (exists bpvi_u_pvs_product_exists_candidate_power bpvi_v_pvs_product_exists_candidate_power. ((((exists bpvi_h_pvs_product_exists_candidate_power_start. bpvi_h_pvs_product_exists_candidate_power_start + S (1) = S ((S (0)) * bpvi_v_pvs_product_exists_candidate_power)) /\ exists bpvi_q_pvs_product_exists_candidate_power_start. bpvi_u_pvs_product_exists_candidate_power = bpvi_q_pvs_product_exists_candidate_power_start * S ((S (0)) * bpvi_v_pvs_product_exists_candidate_power) + (1))) /\ ((((exists bpvi_h_pvs_product_exists_candidate_power_terminal. bpvi_h_pvs_product_exists_candidate_power_terminal + S (bpvi_result_pvs_product_exists_candidate) = S ((S (bpd_candidate_pvs_product_exists)) * bpvi_v_pvs_product_exists_candidate_power)) /\ exists bpvi_q_pvs_product_exists_candidate_power_terminal. bpvi_u_pvs_product_exists_candidate_power = bpvi_q_pvs_product_exists_candidate_power_terminal * S ((S (bpd_candidate_pvs_product_exists)) * bpvi_v_pvs_product_exists_candidate_power) + (bpvi_result_pvs_product_exists_candidate))) /\ forall bpvi_j_pvs_product_exists_candidate_power. (exists bpvi_product_gap_pvs_product_exists_candidate_power. bpvi_product_gap_pvs_product_exists_candidate_power + S bpvi_j_pvs_product_exists_candidate_power = bpd_candidate_pvs_product_exists) -> exists bpvi_factor_pvs_product_exists_candidate_power bpvi_partial_pvs_product_exists_candidate_power bpvi_successor_pvs_product_exists_candidate_power. ((((exists bpvi_h_pvs_product_exists_candidate_power_factor. bpvi_h_pvs_product_exists_candidate_power_factor + S (bpvi_factor_pvs_product_exists_candidate_power) = S ((S (bpvi_j_pvs_product_exists_candidate_power)) * bpvi_c_pvs_product_exists_candidate_power)) /\ exists bpvi_q_pvs_product_exists_candidate_power_factor. bpvi_b_pvs_product_exists_candidate_power = bpvi_q_pvs_product_exists_candidate_power_factor * S ((S (bpvi_j_pvs_product_exists_candidate_power)) * bpvi_c_pvs_product_exists_candidate_power) + (bpvi_factor_pvs_product_exists_candidate_power))) /\ ((((exists bpvi_h_pvs_product_exists_candidate_power_partial. bpvi_h_pvs_product_exists_candidate_power_partial + S (bpvi_partial_pvs_product_exists_candidate_power) = S ((S (bpvi_j_pvs_product_exists_candidate_power)) * bpvi_v_pvs_product_exists_candidate_power)) /\ exists bpvi_q_pvs_product_exists_candidate_power_partial. bpvi_u_pvs_product_exists_candidate_power = bpvi_q_pvs_product_exists_candidate_power_partial * S ((S (bpvi_j_pvs_product_exists_candidate_power)) * bpvi_v_pvs_product_exists_candidate_power) + (bpvi_partial_pvs_product_exists_candidate_power))) /\ ((((exists bpvi_h_pvs_product_exists_candidate_power_successor. bpvi_h_pvs_product_exists_candidate_power_successor + S (bpvi_successor_pvs_product_exists_candidate_power) = S ((S (S bpvi_j_pvs_product_exists_candidate_power)) * bpvi_v_pvs_product_exists_candidate_power)) /\ exists bpvi_q_pvs_product_exists_candidate_power_successor. bpvi_u_pvs_product_exists_candidate_power = bpvi_q_pvs_product_exists_candidate_power_successor * S ((S (S bpvi_j_pvs_product_exists_candidate_power)) * bpvi_v_pvs_product_exists_candidate_power) + (bpvi_successor_pvs_product_exists_candidate_power))) /\ bpvi_successor_pvs_product_exists_candidate_power = bpvi_partial_pvs_product_exists_candidate_power * bpvi_factor_pvs_product_exists_candidate_power)))))))) /\ exists bpvi_divisor_factor_pvs_product_exists_candidate. a * b = bpvi_result_pvs_product_exists_candidate * bpvi_divisor_factor_pvs_product_exists_candidate)) -> (exists bpd_gap_pvs_product_exists_maximal. bpd_gap_pvs_product_exists_maximal + (bpd_candidate_pvs_product_exists) = (g)))
  12. 0012specialize power_valuation_exists (p)
  13. 0013specialize power_valuation_exists (a * b)
  14. 0014apply power_valuation_exists
  15. 0015cases hex
  16. 0016specialize prime_valuation_exponent_eq_transport (p)
  17. 0017specialize prime_valuation_exponent_eq_transport (a * b)
  18. 0018specialize prime_valuation_exponent_eq_transport (x)
  19. 0019specialize prime_valuation_exponent_eq_transport (e + f)
  20. 0020apply prime_valuation_exponent_eq_transport
  21. 0021specialize prime_power_valuation_mul (p)
  22. 0022specialize prime_power_valuation_mul (a)
  23. 0023specialize prime_power_valuation_mul (b)
  24. 0024specialize prime_power_valuation_mul (e)
  25. 0025specialize prime_power_valuation_mul (f)
  26. 0026specialize prime_power_valuation_mul (x)
  27. 0027apply prime_power_valuation_mul
  28. 0028exact hp
  29. 0029exact ha
  30. 0030exact hb
  31. 0031exact hleft
  32. 0032exact hright
  33. 0033exact hex_witness
  34. 0034exact hex_witness